123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313 |
- #include "../../RD501_main/config_macros.hpp"
- class CfgPatches
- {
- class RD501_patch_weapon_impact_effects
- {
- addonRootClass = MACRO_QUOTE(RD501_patch_particle_effects);
- units[] = {};
- weapons[] = {};
- requiredVersion = 0.1;
- requiredAddons[] = {
- MACRO_QUOTE(RD501_patch_particle_effects)
- };
- version = 1;
- author[] = {"RD501"};
- };
- };
- class CfgCloudlets
- {
- class Default;
- class macro_new_cloudlet(impack_spark_plasma_base):Default
- {
- interval = 0.0004;
- circleRadius = 0;
- circleVelocity[] = {0, 0, 0};
- particleShape = "\A3\data_f\ParticleEffects\Universal\Universal";
- particleFSNtieth = 16;
- particleFSIndex = 13;
- particleFSFrameCount = 2;
- particleFSLoop = 0;
- angleVar = 360;
- animationName = "";
- particleType = "Billboard";
- timerPeriod = 3;
- lifeTime = 3.5;
- moveVelocity[] = {"(- inDirX * 2 + surfNormalX / 2) * inSpeed / 200", "( - inDirY * 2 + surfNormalY / 2) * inSpeed / 200", "( - inDirZ * 2 + surfNormalZ / 2) * inSpeed / 200"};
- rotationVelocity = 1;
- weight = 100;
- volume = 0.01;
- rubbing = 0.3;
- size[] = {0.12, 0};
- sizeCoef = 1;
- color[] = {{1, 0.6, 0.4, -50}};
- colorCoef[] = {1, 1, 1, 1};
- emissiveColor[] = {{10, 6, 4, 1}};
- animationSpeed[] = {1000};
- animationSpeedCoef = 1;
- randomDirectionPeriod = 0;
- randomDirectionIntensity = 0;
- onTimerScript = "";
- beforeDestroyScript = "";
- blockAIVisibility = 0;
- bounceOnSurface = 0.1;
- bounceOnSurfaceVar = 0.1;
- lifeTimeVar = 5;
- position[] = {0, 0, 0};
- positionVar[] = {0.01, 0.01, 0.01};
- moveVelocityVar[] = {1, 3, 1};
- rotationVelocityVar = 0;
- sizeVar = 0;
- colorVar[] = {0.05, 0.05, 0.05, 5};
- randomDirectionPeriodVar = 0;
- randomDirectionIntensityVar = 0;
- };
- class macro_new_cloudlet(impack_spark_plasma2_base):Default
- {
- interval = 0.01;
- circleRadius = 0;
- circleVelocity[] = {0, 0, 0};
- particleShape = "\A3\data_f\ParticleEffects\Universal\Universal";
- particleFSNtieth = 16;
- particleFSIndex = 13;
- particleFSFrameCount = 2;
- particleFSLoop = 0;
- angleVar = 360;
- animationName = "";
- particleType = "Billboard";
- timerPeriod = 3;
- lifeTime = 0.039;
- moveVelocity[] = {0, 0, 0};
- rotationVelocity = 1;
- weight = 1.275;
- volume = 1;
- rubbing = 0;
- size[] = {0.45, 0.225, 0};
- sizeCoef = 1;
- color[] = {{1, 0.6, 0.4, -50}};
- colorCoef[] = {1, 1, 1, 1};
- animationSpeed[] = {1000};
- animationSpeedCoef = 1;
- randomDirectionPeriod = 0;
- randomDirectionIntensity = 0;
- onTimerScript = "";
- beforeDestroyScript = "";
- blockAIVisibility = 0;
- lifeTimeVar = 0.02;
- position[] = {0, 0, 0};
- positionVar[] = {0, 0, 0};
- moveVelocityVar[] = {0, 0, 0};
- rotationVelocityVar = 0;
- sizeVar = 0.03;
- colorVar[] = {0.05, 0.05, 0.05, 5};
- randomDirectionPeriodVar = 0;
- randomDirectionIntensityVar = 0;
- };
- class macro_new_cloudlet(ImpactSmoke_base): Default
- {
- interval = 0.004;
- circleRadius = 0;
- circleVelocity[] = {0, 0, 0};
- particleShape = "\A3\data_f\ParticleEffects\Universal\Universal";
- particleFSNtieth = 16;
- particleFSIndex = 12;
- particleFSFrameCount = 8;
- particleFSLoop = 0;
- angleVar = 1;
- animationName = "";
- particleType = "Billboard";
- timerPeriod = 3;
- lifeTime = 1;
- moveVelocity[] = {"surfNormalX * inSpeed / 250 * 0.66", "surfNormalY * inSpeed / 250 * 0.66", "surfNormalZ * inSpeed / 250 * 0.66"};
- rotationVelocity = 1;
- weight = 1.28;
- volume = 1;
- rubbing = 0.5;
- size[] = {0.5, 0.7};
- sizeCoef = 1;
- color[] = {{0.3, 0.3, 0.3, 0.5}, {0.4, 0.4, 0.4, 0.25}, {0.5, 0.5, 0.5, 0.15}, {0.6, 0.6, 0.6, 0.07}, {0.8, 0.8, 0.8, 0}};
- colorCoef[] = {1, 1, 1, 1};
- animationSpeed[] = {1};
- animationSpeedCoef = 1;
- randomDirectionPeriod = 0.1;
- randomDirectionIntensity = 0.05;
- onTimerScript = "";
- beforeDestroyScript = "";
- lifeTimeVar = 1;
- position[] = {0, 0, 0};
- positionVar[] = {0.2, 0.2, 0.2};
- moveVelocityVar[] = {0.5, 0.5, 0.5};
- rotationVelocityVar = 0;
- sizeVar = 0.15;
- colorVar[] = {0.05, 0.05, 0.05, 0.3};
- randomDirectionPeriodVar = 0;
- randomDirectionIntensityVar = 0;
- };
- class macro_new_cloudlet(impack_spark_plasma): macro_new_cloudlet(impack_spark_plasma_base)
- {
- interval=0.0008;
- circleRadius=0;
- circleVelocity[]={0,0,0};
- particleShape="\A3\data_f\ParticleEffects\Universal\Universal";
- particleFSNtieth=16;
- particleFSIndex=13;
- particleFSFrameCount=2;
- particleFSLoop=0;
- angleVar=360;
- animationName="";
- particleType="Billboard";
- timerPeriod=3;
- lifeTime=0.5;
- moveVelocity[]=
- {
- "(- inDirX * 2 + surfNormalX / 2) * inSpeed / 300",
- "( - inDirY * 2 + surfNormalY / 2) * inSpeed / 300",
- "( - inDirZ * 2 + surfNormalZ / 2) * inSpeed / 300"
- };
- rotationVelocity=1;
- weight=100;
- volume=0.0099999998;
- rubbing=0.30000001;
- size[]={0.12,0};
- sizeCoef=1;
- color[]=
- {
- {1,0.60000002,0.40000001,-50}
- };
- colorCoef[]={1,1,1,1};
- emissiveColor[]=
- {
- {10,6,4,1}
- };
- animationSpeed[]={1000};
- animationSpeedCoef=1;
- randomDirectionPeriod=0;
- randomDirectionIntensity=0;
- onTimerScript="";
- beforeDestroyScript="";
- blockAIVisibility=0;
- bounceOnSurface=0.1;
- bounceOnSurfaceVar=0.1;
- lifeTimeVar=.5;
- position[]={0,0,0};
- positionVar[]={0.001,0.01,0.01};
- moveVelocityVar[]={1,1.5,1};
- rotationVelocityVar=0;
- sizeVar=0;
- colorVar[]={0.050000001,0.050000001,0.050000001,5};
- randomDirectionPeriodVar=0;
- randomDirectionIntensityVar=0;
- };
- class macro_new_cloudlet(impack_spark_plasma2):macro_new_cloudlet(impack_spark_plasma2_base)
- {
- size[] = {0.25, 0.125, 0};
- };
- class macro_new_cloudlet(impack_smoke):macro_new_cloudlet(ImpactSmoke_base)
- {
- interval = 0.008;
- size[] = {0.3, 0.5};
- sizeCoef = 0.8;
- };
- };
- class CfgLights
- {
- class macro_new_light(PlasmaLight)
- {
- diffuse[] = {1, 0.6, 0.4};
- color[] = {1, 0.6, 0.4};
- ambient[] = {0, 0, 0, 0};
- brightness = 10;
- size = 1;
- intensity = 10000;
- drawLight = 0;
- blinking = 1;
- class Attenuation
- {
- start = 0;
- constant = 0;
- linear = 0;
- quadratic = 2.2;
- hardLimitStart = 500;
- hardLimitEnd = 1000;
- };
- position[] = {0, 3.5, 0};
- };
- class macro_new_light(sparks_impact)
- {
- diffuse[] = {1, 0.8, 0.8};
- color[] = {1, 0.8, 0.8};
- ambient[] = {0, 0, 0, 0};
- brightness = 50;
- size = 1;
- intensity = 1000;
- drawLight = 0;
- blinking = 0;
- class Attenuation
- {
- start = 0;
- constant = 0;
- linear = 0;
- quadratic = 1;
- hardLimitStart = 40;
- hardLimitEnd = 80;
- };
- position[] = {0, 0, 0};
- };
- };
- class macro_new_complex_effect(impack_plasma)
- {
- class Light1
- {
- simulation = "light";
- type =macro_new_light(PlasmaLight);
- position[] = {0, 0, 0};
- intensity = 1;
- interval = 1;
- lifeTime = 0.3;
- };
- class SparksLight
- {
- simulation = "light";
- type = macro_new_light(sparks_impact);
- position[] = {0, 0, 0};
- intensity = 1;
- interval = 1;
- lifeTime = 0.5;
- };
- class ImpactSparks1
- {
- simulation = "particles";
- type = macro_new_cloudlet(impack_spark_plasma);
- position[] = {0, 0, 0};
- intensity = 1;
- interval = 1;
- lifeTime = 0.2;
- };
- class ImpactSparks2
- {
- simulation = "particles";
- type = macro_new_cloudlet(impack_spark_plasma2);
- position[] = {0, 0, 0};
- intensity = 1;
- interval = 1;
- lifeTime = 0.2;
- };
- class ImpactSmoke
- {
- simulation = "particles";
- type = macro_new_cloudlet(impack_smoke);
- position[] = {0, 0, 0};
- intensity = 1;
- interval = 1;
- lifeTime = 0.2;
- };
- };
|