mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-13 19:52:38 +03:00
Update Core Patch BIS_Effects again
Updated to same formatting and comments as latest Corepatch files: https://github.com/Goliath86/CorePatch/tree/master/CorePatch_FIS/data/scripts airdestruction.sqf: - fixed _velocity variable was undefined - updated, Sa-Matra removed clearVehicleInit - !isNull checks are not needed because (local objNull) returns false and (speed objNull) returns zero BIS_Effects_startEvent: - 6th parameter is not used in BIS_Effects_Burn, neither in the old nor new version. Although the formatting is ugly, it is better to stay consistent with Bohemia's so they are easy to compare with future updates and scripts.txt exceptions are the same whether the official or custom files are used. Added Sa-Matra's final commit from yesterday:5e696bebdcThis partially revertsc15caf5.
This commit is contained in:
@@ -79,6 +79,7 @@
|
|||||||
[FIXED] server_PublishVehicle3 will no longer dupe a vehicle if it fails to read the vehicle back from the database. @oiad
|
[FIXED] server_PublishVehicle3 will no longer dupe a vehicle if it fails to read the vehicle back from the database. @oiad
|
||||||
[FIXED] Panic sounds will no longer overlap when the player is attacked by zombies. #1861 @DeVloek
|
[FIXED] Panic sounds will no longer overlap when the player is attacked by zombies. #1861 @DeVloek
|
||||||
[FIXED] Melee weapons will no longer be eaten when attempting to add them to a full toolbelt.
|
[FIXED] Melee weapons will no longer be eaten when attempting to add them to a full toolbelt.
|
||||||
|
[FIXED] Updated to Sa-Matra's latest Core Patch BIS Effects which fix the fire in the sky bug again. #1883 @oiad @icomrade
|
||||||
|
|
||||||
[NOTE] The fixes below are included in the 1.0.6 Build C server package released December 29th, 2016 (http://dayzepoch.com/a2dayzepoch.php)
|
[NOTE] The fixes below are included in the 1.0.6 Build C server package released December 29th, 2016 (http://dayzepoch.com/a2dayzepoch.php)
|
||||||
[FIXED] Hive child 309 errors that resulted in broken saving of newly built storage object inventory. @icomrade
|
[FIXED] Hive child 309 errors that resulted in broken saving of newly built storage object inventory. @icomrade
|
||||||
|
|||||||
@@ -93,7 +93,7 @@ class CfgAddons
|
|||||||
};
|
};
|
||||||
|
|
||||||
class DefaultEventhandlers {
|
class DefaultEventhandlers {
|
||||||
init = "if (isNil 'BIS_Effects_Init_DZE') then {[] call compile preProcessFileLineNumbers '\z\addons\dayz_code\system\BIS_Effects\init.sqf';};";
|
init = "if (isNil 'BIS_Effects_Init_DZ') then {[] call compile preProcessFileLineNumbers '\z\addons\dayz_code\system\BIS_Effects\init.sqf';};";
|
||||||
};
|
};
|
||||||
|
|
||||||
#include "Configs\rscTitles.hpp"
|
#include "Configs\rscTitles.hpp"
|
||||||
|
|||||||
@@ -1,16 +1,12 @@
|
|||||||
private ["_fl","_sm","_expl","_dr","_velocity","_tv","_i","_wave","_splash","_velz","_v","_int","_t","_pos"];
|
private ["_fl", "_sm"];
|
||||||
|
_v=_this select 0;
|
||||||
_v =_this select 0;
|
_int = (fuel _v)*(8+random 2);
|
||||||
_int = ((fuel _v) * (8 + (random 2)));
|
_t=time;
|
||||||
_t = time;
|
|
||||||
_i = 0;
|
|
||||||
_dr = 0.2;
|
|
||||||
_tv = 11;
|
|
||||||
|
|
||||||
// No explosion CorePatch flag
|
// No explosion CorePatch flag
|
||||||
_no_explosion = getNumber(configFile >> "CfgVehicles" >> typeOf _v >> "NoDestructionExplosion_CP") > 0;
|
_no_explosion = getNumber(configFile >> "CfgVehicles" >> typeOf _v >> "NoDestructionExplosion_CP") > 0;
|
||||||
|
|
||||||
if (!isDedicated) then {
|
if !(isDedicated) then { //dw, particle stuff don't need run on dedicated
|
||||||
_fl = "#particlesource" createVehicleLocal getpos _v;
|
_fl = "#particlesource" createVehicleLocal getpos _v;
|
||||||
_fl attachto [_v,[0,0,0],"destructionEffect2"];
|
_fl attachto [_v,[0,0,0],"destructionEffect2"];
|
||||||
_fl setParticleRandom [0.3, [1, 1, 0], [0, 0, 0], 0, 0.3, [0, 0, 0, 0], 0, 0];
|
_fl setParticleRandom [0.3, [1, 1, 0], [0, 0, 0], 0, 0.3, [0, 0, 0, 0], 0, 0];
|
||||||
@@ -26,9 +22,17 @@ if (!isDedicated) then {
|
|||||||
[0, 0, 5], 0, 10, 7.9, 0.075, [4,8,12,14], [[0.3, 0.3, 0.3, 1],
|
[0, 0, 5], 0, 10, 7.9, 0.075, [4,8,12,14], [[0.3, 0.3, 0.3, 1],
|
||||||
[0.45, 0.45, 0.45, 1],[0.6, 0.6, 0.6, 0.6], [0.7, 0.7, 0.7, 0.25], [1, 1, 1, 0]], [0.8,0.3,0.25], 1, 0, "", "", _v];
|
[0.45, 0.45, 0.45, 1],[0.6, 0.6, 0.6, 0.6], [0.7, 0.7, 0.7, 0.25], [1, 1, 1, 0]], [0.8,0.3,0.25], 1, 0, "", "", _v];
|
||||||
_sm setDropInterval 1;
|
_sm setDropInterval 1;
|
||||||
};
|
}; // end of dedicated check
|
||||||
|
|
||||||
|
_i=0;
|
||||||
|
_dr=0.2;
|
||||||
|
_tv=11;
|
||||||
|
|
||||||
|
|
||||||
|
//Remove weapons/ammo to prevent explosion. Script will create its own explosions (doesnt work?)
|
||||||
removeallweapons _v;
|
removeallweapons _v;
|
||||||
if ((local _v) && !_no_explosion) then {
|
|
||||||
|
if (local _v && !_no_explosion) then { // Sa-Matra: Small explosion regardless of where vehicle landed
|
||||||
_trig = "EmptyDetector" createVehicleLocal [0,0,0];
|
_trig = "EmptyDetector" createVehicleLocal [0,0,0];
|
||||||
_trig setTriggerArea [0,0,0,false];
|
_trig setTriggerArea [0,0,0,false];
|
||||||
_trig setVariable ["obj", _v];
|
_trig setVariable ["obj", _v];
|
||||||
@@ -40,8 +44,8 @@ if ((local _v) && !_no_explosion) then {
|
|||||||
};
|
};
|
||||||
|
|
||||||
while {_i <1200 && ((velocity _v select 2)<-20 || (getpos _v select 2)>8) && !(alive _v) && !(isnull _v) && (getpos _v select 2)>1} do {
|
while {_i <1200 && ((velocity _v select 2)<-20 || (getpos _v select 2)>8) && !(alive _v) && !(isnull _v) && (getpos _v select 2)>1} do {
|
||||||
if(!isDedicated) then {
|
if(!isDedicated) then { // particle stuff is not needed on dedicated
|
||||||
_tv = (abs(_velocity select 0) + abs(_velocity select 1) + abs(_velocity select 2));
|
_tv=abs(velocity _v select 0)+abs(velocity _v select 1)+abs(velocity _v select 2);
|
||||||
if (_tv>2) then {_dr=1/_tv} else {_dr=1};
|
if (_tv>2) then {_dr=1/_tv} else {_dr=1};
|
||||||
_fl setDropInterval _dr;
|
_fl setDropInterval _dr;
|
||||||
_sm setDropInterval _dr;
|
_sm setDropInterval _dr;
|
||||||
@@ -50,17 +54,15 @@ while {_i <1200 && ((velocity _v select 2)<-20 || (getpos _v select 2)>8) && !(a
|
|||||||
sleep 0.2;
|
sleep 0.2;
|
||||||
};
|
};
|
||||||
|
|
||||||
_pos = getpos _v;
|
if !(isDedicated) then { //dw, particle stuff don't need run on dedicated
|
||||||
clearVehicleInit _v;
|
|
||||||
|
|
||||||
if (!isDedicated) then {
|
|
||||||
deletevehicle _fl;
|
deletevehicle _fl;
|
||||||
deletevehicle _sm;
|
deletevehicle _sm;
|
||||||
};
|
}; // end of dedicated check
|
||||||
|
|
||||||
|
//if (surfaceiswater(_pos) && (_pos select 2)<9 ) then
|
||||||
if((getTerrainHeightASL getPosASL _v < -1) && (getPosASL _v select 2 < 1)) then {
|
if((getTerrainHeightASL getPosASL _v < -1) && (getPosASL _v select 2 < 1)) then {
|
||||||
if (!isDedicated) then {
|
if !(isDedicated) then { //dw, particle stuff don't need run on dedicated
|
||||||
_wave = "#particlesource" createVehicleLocal (getpos _v);
|
_wave = "#particlesource" createVehicleLocal getpos _v;
|
||||||
_wave attachto [_v,[0,0,0],"destructionEffect1"];
|
_wave attachto [_v,[0,0,0],"destructionEffect1"];
|
||||||
_wave setParticleRandom [0.3, [1, 1, 0], [0.5, 0.5, 0], 0, 0.3, [0, 0, 0, 0], 0, 0];
|
_wave setParticleRandom [0.3, [1, 1, 0], [0.5, 0.5, 0], 0, 0.3, [0, 0, 0, 0], 0, 0];
|
||||||
_wave setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 16, 12, 13,0], "", "Billboard", 1, 1.6, "destructionEffect1",
|
_wave setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 16, 12, 13,0], "", "Billboard", 1, 1.6, "destructionEffect1",
|
||||||
@@ -69,7 +71,7 @@ if((getTerrainHeightASL getPosASL _v < -1) && (getPosASL _v select 2 < 1)) then
|
|||||||
_wave setparticlecircle [2,[0,16,0]];
|
_wave setparticlecircle [2,[0,16,0]];
|
||||||
_wave setDropInterval 0.0015;
|
_wave setDropInterval 0.0015;
|
||||||
|
|
||||||
_splash = "#particlesource" createVehicleLocal (getpos _v);
|
_splash = "#particlesource" createVehicleLocal getpos _v;
|
||||||
_splash attachto [_v,[0,0,0],"destructionEffect1"];
|
_splash attachto [_v,[0,0,0],"destructionEffect1"];
|
||||||
_splash setParticleRandom [2, [2, 2, 0], [2, 2, 7], 0, 0.5, [0, 0, 0, 0], 0, 0];
|
_splash setParticleRandom [2, [2, 2, 0], [2, 2, 7], 0, 0.5, [0, 0, 0, 0], 0, 0];
|
||||||
_splash setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 16, 13, 6, 0], "", "Billboard", 1, 4, "destructionEffect1",
|
_splash setParticleParams [["\Ca\Data\ParticleEffects\Universal\Universal", 16, 13, 6, 0], "", "Billboard", 1, 4, "destructionEffect1",
|
||||||
@@ -79,13 +81,19 @@ if((getTerrainHeightASL getPosASL _v < -1) && (getPosASL _v select 2 < 1)) then
|
|||||||
_splash setDropInterval 0.002;
|
_splash setDropInterval 0.002;
|
||||||
|
|
||||||
sleep 0.2;
|
sleep 0.2;
|
||||||
deletevehicle _wave;deletevehicle _splash;
|
|
||||||
};
|
deletevehicle _wave;
|
||||||
|
deletevehicle _splash;
|
||||||
|
}; // end of dedicated check
|
||||||
} else {
|
} else {
|
||||||
if ((local _v) && {!isNull _v}) then {
|
if (local _v) then {
|
||||||
_velz = (velocity _v) select 2;
|
//_velx = velocity _v select 0; _velx = _velx / 4;
|
||||||
if (_velz > 1) then {_v setvelocity [velocity _v select 0,velocity _v select 1,0]};
|
//_vely = velocity _v select 1; _vely = _vely / 4;
|
||||||
//_expl = createVehicle ["HelicopterExploBig", [_pos select 0,_pos select 1,(_pos select 2) + 1], [], 0, "CAN_COLLIDE"];
|
_velz=velocity _v select 2;
|
||||||
|
if (_velz>1) then (_v setvelocity [velocity _v select 0,velocity _v select 1,0]);
|
||||||
|
//_expl="HelicopterExploBig" createvehicle [_pos select 0,_pos select 1,(_pos select 2) + 1];
|
||||||
|
|
||||||
|
// Sa-Matra: Big explosion only if landed on solid ground
|
||||||
if(!_no_explosion) then {
|
if(!_no_explosion) then {
|
||||||
_trig = "EmptyDetector" createVehicleLocal [0,0,0];
|
_trig = "EmptyDetector" createVehicleLocal [0,0,0];
|
||||||
_trig setTriggerArea [0,0,0,false];
|
_trig setTriggerArea [0,0,0,false];
|
||||||
@@ -97,7 +105,9 @@ if((getTerrainHeightASL getPosASL _v < -1) && (getPosASL _v select 2 < 1)) then
|
|||||||
deleteVehicle thisTrigger;
|
deleteVehicle thisTrigger;
|
||||||
", "", ""];
|
", "", ""];
|
||||||
};
|
};
|
||||||
|
|
||||||
sleep 0.05;
|
sleep 0.05;
|
||||||
["AirDestructionStage2", _v, _int, _t, (getPos _v)] call BIS_Effects_globalEvent;
|
|
||||||
|
["AirDestructionStage2", _v, _int, _t] call BIS_Effects_globalEvent;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
@@ -1,95 +1,106 @@
|
|||||||
private ["_dr","_pos","_vel","_xv","_yv","_zv","_dir","_Crater","_speed","_velz","_tv","_smoke","_fire","_dirt","_v","_int","_t"];
|
_v = _this select 0;
|
||||||
|
_int = _this select 1;
|
||||||
|
_t =_this select 2;
|
||||||
|
_pos = getpos _v;
|
||||||
|
|
||||||
_v = _this select 0;
|
// No explosion CorePatch flag
|
||||||
_int = _this select 1;
|
_no_explosion = getNumber(configFile >> "CfgVehicles" >> typeOf _v >> "NoDestructionExplosion_CP") > 0;
|
||||||
_t = _this select 2;
|
|
||||||
_pos = _this select 3;
|
|
||||||
|
|
||||||
// No explosion CorePatch flag
|
// Particle effects
|
||||||
_no_explosion = getNumber(configFile >> "CfgVehicles" >> typeOf _v >> "NoDestructionExplosion_CP") > 0;
|
private ["_smoke", "_fire", "_dirt"];
|
||||||
|
|
||||||
if (!isDedicated) then {
|
if(!isDedicated) then {
|
||||||
_smoke = "#particlesource" createVehicleLocal _pos;
|
_smoke = "#particlesource" createVehicleLocal _pos;
|
||||||
_smoke attachto [_v,[0,0,0],"destructionEffect1"];
|
_smoke attachto [_v,[0,0,0],"destructionEffect1"];
|
||||||
_smoke setParticleParams [["\ca\Data\ParticleEffects\Universal\Universal",16,7,48],
|
_smoke setParticleParams [["\ca\Data\ParticleEffects\Universal\Universal",16,7,48],
|
||||||
"", "Billboard", 1, 15, [0, 0, 0], [0, 0, 0], 1, 1.275, 1, 0, [8,14],
|
"", "Billboard", 1, 15, [0, 0, 0], [0, 0, 0], 1, 1.275, 1, 0, [8,14],
|
||||||
[[0.1,0.1,0.1,1],[0.1,0.1,0.1,0]], [0.5], 0.1, 0.1, "", "", _v];
|
[[0.1,0.1,0.1,1],[0.1,0.1,0.1,0]], [0.5], 0.1, 0.1, "", "", _v];
|
||||||
_smoke setParticleRandom [4, [2, 2, 2], [0, 0, 0], 0, 0, [0, 0, 0, 0], 0, 0];
|
_smoke setParticleRandom [4, [2, 2, 2], [0, 0, 0], 0, 0, [0, 0, 0, 0], 0, 0];
|
||||||
_smoke setDropInterval 0.02;
|
_smoke setDropInterval 0.02;
|
||||||
_fire = "#particlesource" createVehicleLocal _pos;
|
|
||||||
_fire attachto [_v,[0,0,0],"destructionEffect2"];
|
|
||||||
|
|
||||||
_fire setParticleParams [["\ca\Data\ParticleEffects\Universal\Universal",16,2,80],
|
_fire = "#particlesource" createVehicleLocal _pos;
|
||||||
"", "Billboard", 1, 2, [0, 1, 0], [0, 0, 0], 1, 1.275, 1, 0, [7,13],
|
_fire attachto [_v,[0,0,0],"destructionEffect2"];
|
||||||
[[1,1,1,-1],[1,1,1,0]], [0.5], 0.01, 0.01, "", "", _v,360];
|
|
||||||
_fire setParticleRandom [0.5, [0.5, 0.5, 0.5], [0, 0, 0], 0, 0, [0, 0, 0, 0], 0, 0];
|
|
||||||
_fire setDropInterval 0.01;
|
|
||||||
_dirt = "#particlesource" createVehicleLocal _pos;
|
|
||||||
_dirt attachto [_v,[0,0,0],"destructionEffect1"];
|
|
||||||
_dirt setParticleParams [["\ca\Data\ParticleEffects\Universal\Universal",16,12,9,0], "", "Billboard", 1, 5, [0, 0, 0], [0, 0, 5], 0, 5, 1, 0, [10,20],
|
|
||||||
[[0.1,0.1,0.1,1],[0.1,0.1,0.1,0.7],[0.1,0.1,0.1,0]], [1000], 0, 0, "", "", _v,360];
|
|
||||||
_dirt setParticleRandom [0, [1, 1, 1], [1, 1, 2.5], 0, 0, [0, 0, 0, 0.5], 0, 0];
|
|
||||||
_dirt setDropInterval 0.05;
|
|
||||||
};
|
|
||||||
|
|
||||||
if(local _v && !_no_explosion) then {
|
_fire setParticleParams [["\ca\Data\ParticleEffects\Universal\Universal",16,2,80],
|
||||||
_v spawn {
|
"", "Billboard", 1, 2, [0, 1, 0], [0, 0, 0], 1, 1.275, 1, 0, [7,13],
|
||||||
_index = 0;
|
[[1,1,1,-1],[1,1,1,0]], [0.5], 0.01, 0.01, "", "", _v,360];
|
||||||
_old_pos = [0,0,0];
|
_fire setParticleRandom [0.5, [0.5, 0.5, 0.5], [0, 0, 0], 0, 0, [0, 0, 0, 0], 0, 0];
|
||||||
_failsafe = diag_tickTime + 30;
|
_fire setDropInterval 0.01;
|
||||||
waitUntil {
|
|
||||||
_pos = getPosASL _this;
|
|
||||||
_pos set [2, _old_pos select 2];
|
|
||||||
|
|
||||||
if(_old_pos distance _pos > 4 || speed _this <= 0.1) then {
|
_dirt = "#particlesource" createVehicleLocal _pos;
|
||||||
if(getTerrainHeightASL _pos > -1 && getPosATL _this select 2 < 10) then {
|
_dirt attachto [_v,[0,0,0],"destructionEffect1"];
|
||||||
_pos set [2, random 0.1 + (_index min 14) / -14];
|
_dirt setParticleParams [["\ca\Data\ParticleEffects\Universal\Universal",16,12,9,0], "", "Billboard", 1, 5, [0, 0, 0], [0, 0, 5], 0, 5, 1, 0, [10,20],
|
||||||
if(getTerrainHeightASL _pos < 0) then {_pos = ATLtoASL _pos};
|
[[0.1,0.1,0.1,1],[0.1,0.1,0.1,0.7],[0.1,0.1,0.1,0]], [1000], 0, 0, "", "", _v,360];
|
||||||
|
_dirt setParticleRandom [0, [1, 1, 1], [1, 1, 2.5], 0, 0, [0, 0, 0, 0.5], 0, 0];
|
||||||
|
_dirt setDropInterval 0.05;
|
||||||
|
};
|
||||||
|
|
||||||
_crater = createVehicle ["CraterLong", _pos, [], 0, "CAN_COLLIDE"];
|
// Ground craters
|
||||||
_crater setDir ((velocity _this select 0) atan2 (velocity _this select 1) - 5 + random 10 + 180 * (_index % 2));
|
if(local _v && !_no_explosion) then {
|
||||||
_crater setVectorUp surfaceNormal _pos;
|
_v spawn {
|
||||||
|
_index = 0;
|
||||||
|
_old_pos = [0,0,0];
|
||||||
|
_failsafe = diag_tickTime + 30;
|
||||||
|
waitUntil {
|
||||||
|
_pos = getPosASL _this;
|
||||||
|
_pos set [2, _old_pos select 2];
|
||||||
|
|
||||||
_old_pos = _pos;
|
if(_old_pos distance _pos > 4 || speed _this <= 0.1) then {
|
||||||
_index = _index + 1;
|
if(getTerrainHeightASL _pos > -1 && getPosATL _this select 2 < 10) then {
|
||||||
|
_pos set [2, random 0.1 + (_index min 14) / -14];
|
||||||
|
if(getTerrainHeightASL _pos < 0) then {_pos = ATLtoASL _pos};
|
||||||
|
|
||||||
|
_crater = createVehicle ["CraterLong", _pos, [], 0, "CAN_COLLIDE"];
|
||||||
|
_crater setDir ((velocity _this select 0) atan2 (velocity _this select 1) - 5 + random 10 + 180 * (_index % 2));
|
||||||
|
_crater setVectorUp surfaceNormal _pos;
|
||||||
|
|
||||||
|
_old_pos = _pos;
|
||||||
|
_index = _index + 1;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
speed _this <= 0.1 || diag_tickTime > _failsafe;
|
||||||
};
|
};
|
||||||
speed _this <= 0.1 || diag_tickTime > _failsafe;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
while {(speed _v) > 0.1 && (!isNull _v)} do
|
// Ground particles
|
||||||
{
|
_i = 0;
|
||||||
if (!isDedicated) then {
|
while {(speed _v) > 0.1} do
|
||||||
_pos = getpos _v;
|
{
|
||||||
_vel = velocity _v;
|
if(!isDedicated) then {
|
||||||
_xv =_vel select 0;
|
_pos = getpos _v;
|
||||||
_yv = _vel select 1;
|
_xv = velocity _v select 0;
|
||||||
_zv = _vel select 2;
|
_yv = velocity _v select 1;
|
||||||
_dir = abs(_xv atan2 _yv);
|
_dir = abs(_xv atan2 _yv);
|
||||||
_speed = (speed _v);
|
|
||||||
_tv = (abs(_xv) + abs(_yv) + abs(_zv));
|
_speed = (speed _v);
|
||||||
if (_tv > 2) then {_dr = (1/_tv)} else {_dr = 1};
|
_zv = velocity _v select 2;
|
||||||
_smoke setDropInterval (_dr * 1.5);
|
|
||||||
_fire setDropInterval (_dr * 1.5);
|
_tv = abs(_xv)+abs(_yv)+abs(_zv);
|
||||||
_dirt setDropInterval _dr;
|
_dr = 1;
|
||||||
sleep (0.25 - (_speed / 1000));
|
if (_tv>2) then {_dr = 1/_tv};
|
||||||
|
_smoke setDropInterval _dr*1.5;
|
||||||
|
_fire setDropInterval _dr*1.5;
|
||||||
|
_dirt setDropInterval _dr;
|
||||||
|
|
||||||
|
sleep (0.25 - (_speed / 1000));
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
if (!isDedicated) then {
|
if(!isDedicated) then {
|
||||||
deleteVehicle _smoke;
|
deleteVehicle _smoke;
|
||||||
deleteVehicle _fire;
|
deleteVehicle _fire;
|
||||||
deleteVehicle _dirt;
|
deleteVehicle _dirt;
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
_v setvelocity [0,0,-0.01];
|
|
||||||
|
|
||||||
if ((local _v) && (!isNull _v)) then {
|
|
||||||
["Burn", _v, _int, _t] call BIS_Effects_globalEvent;
|
|
||||||
if (!_no_explosion) then {
|
|
||||||
[_v,_int,false] spawn BIS_Effects_Secondaries;
|
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
|
_v setvelocity [0,0,-0.01];
|
||||||
|
|
||||||
|
if (local _v) then {
|
||||||
|
["Burn", _v, _int, _t] call BIS_Effects_globalEvent;
|
||||||
|
if(!_no_explosion) then {
|
||||||
|
[_v,_int,false] spawn BIS_Effects_Secondaries;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
sleep 0.5;
|
||||||
@@ -1,10 +1,11 @@
|
|||||||
BIS_Effects_Init = true;
|
BIS_Effects_Init = true;
|
||||||
Corepatch_Effects_Init = true;
|
Corepatch_Effects_Init = true;
|
||||||
if (isNil "BIS_Effects_Init_DZE") then {
|
if (isNil "BIS_Effects_Init_DZ") then {
|
||||||
BIS_Effects_Init_DZE = true;
|
BIS_Effects_Init_DZ = true;
|
||||||
diag_log "Res3tting B!S effects...";
|
diag_log "Res3tting B!S effects...";
|
||||||
BIS_Effects_EH_Fired=compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\fired.sqf"; // Allows tanks to use smoke counter measures
|
BIS_Effects_EH_Fired=compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\fired.sqf"; // Allows tanks to use smoke counter measures
|
||||||
BIS_Effects_EH_Killed = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\killed.sqf";
|
BIS_Effects_EH_Killed = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\killed.sqf";
|
||||||
|
|
||||||
BIS_Effects_Rifle = {false};
|
BIS_Effects_Rifle = {false};
|
||||||
BIS_Effects_Cannon=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\cannon.sqf";
|
BIS_Effects_Cannon=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\cannon.sqf";
|
||||||
BIS_Effects_HeavyCaliber=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\heavycaliber.sqf";
|
BIS_Effects_HeavyCaliber=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\heavycaliber.sqf";
|
||||||
@@ -13,18 +14,27 @@ if (isNil "BIS_Effects_Init_DZE") then {
|
|||||||
BIS_Effects_SmokeShell=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\smokeshell.sqf";
|
BIS_Effects_SmokeShell=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\smokeshell.sqf";
|
||||||
BIS_Effects_SmokeLauncher=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\smokelauncher.sqf";
|
BIS_Effects_SmokeLauncher=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\smokelauncher.sqf";
|
||||||
BIS_Effects_Flares=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\flares.sqf";
|
BIS_Effects_Flares=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\flares.sqf";
|
||||||
|
|
||||||
|
//must use spawn command for these:
|
||||||
BIS_Effects_Burn=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\destruction\burn.sqf";
|
BIS_Effects_Burn=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\destruction\burn.sqf";
|
||||||
BIS_Effects_AircraftVapour=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\misc\aircraftvapour.sqf";
|
BIS_Effects_AircraftVapour=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\misc\aircraftvapour.sqf";
|
||||||
BIS_Effects_AirDestruction = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\AirDestruction.sqf";
|
BIS_Effects_AirDestruction = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\AirDestruction.sqf";
|
||||||
BIS_Effects_AirDestructionStage2 = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\AirDestructionStage2.sqf";
|
BIS_Effects_AirDestructionStage2 = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\AirDestructionStage2.sqf";
|
||||||
BIS_Effects_Secondaries = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\secondaries.sqf";
|
BIS_Effects_Secondaries = compile preprocessFileLineNumbers "\z\addons\dayz_code\system\BIS_Effects\secondaries.sqf";
|
||||||
BIS_Effects_globalEvent = {
|
//BIS_Effects_RocketTrail=compile preprocessFileLineNumbers "\ca\Data\ParticleEffects\SCRIPTS\muzzle\rockettrail.sqf";
|
||||||
|
|
||||||
|
/////////////////Dwarden fixing fire in the sky bug
|
||||||
|
|
||||||
|
BIS_Effects_globalEvent =
|
||||||
|
{
|
||||||
BIS_effects_gepv = _this;
|
BIS_effects_gepv = _this;
|
||||||
publicVariable "BIS_effects_gepv";
|
publicVariable "BIS_effects_gepv";
|
||||||
_this call BIS_Effects_startEvent;
|
_this call BIS_Effects_startEvent;
|
||||||
|
|
||||||
};
|
};
|
||||||
BIS_Effects_startEvent = {
|
|
||||||
|
BIS_Effects_startEvent =
|
||||||
|
{
|
||||||
private "_KillEject";
|
private "_KillEject";
|
||||||
_KillEject = {
|
_KillEject = {
|
||||||
private "_cancel";
|
private "_cancel";
|
||||||
@@ -42,27 +52,25 @@ if (isNil "BIS_Effects_Init_DZE") then {
|
|||||||
switch (_this select 0) do {
|
switch (_this select 0) do {
|
||||||
case "AirDestruction": {
|
case "AirDestruction": {
|
||||||
[_this select 1] spawn BIS_Effects_AirDestruction;
|
[_this select 1] spawn BIS_Effects_AirDestruction;
|
||||||
[_This select 1] call _KillEject;
|
[_this select 1] call _KillEject;
|
||||||
};
|
};
|
||||||
case "AirDestructionStage2": {
|
case "AirDestructionStage2": {
|
||||||
[_this select 1, _this select 2, _this select 3, _this select 4] spawn BIS_Effects_AirDestructionStage2;
|
[_this select 1, _this select 2, _this select 3] spawn BIS_Effects_AirDestructionStage2;
|
||||||
};
|
};
|
||||||
case "Burn": {
|
case "Burn": {
|
||||||
[_this select 1, _this select 2, _this select 3, false, true, _this select 4] spawn BIS_Effects_Burn;
|
[_this select 1, _this select 2, _this select 3, false, true] spawn BIS_Effects_Burn;
|
||||||
};
|
};
|
||||||
case "Eject": {
|
case "Eject": {
|
||||||
[_This select 1] call _KillEject;
|
[_this select 1] call _KillEject;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
"BIS_effects_gepv" addPublicVariableEventHandler {
|
"BIS_effects_gepv" addPublicVariableEventHandler {
|
||||||
if(time <= 0) then {
|
if(time <= 0) exitWith {(_this select 1) spawn { //Fire in the sky bug fix
|
||||||
(_this select 1) spawn { //Fire in the sky bug fix
|
waitUntil {sleep 1; !isNull findDisplay 46}; // Display 46 is indication that client finished loading
|
||||||
waitUntil {time > 0};
|
_this call BIS_Effects_startEvent;
|
||||||
_this call BIS_Effects_startEvent;
|
}};
|
||||||
};
|
(_this select 1) call BIS_Effects_startEvent;
|
||||||
} else {
|
|
||||||
(_this select 1) call BIS_Effects_startEvent;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user