/*
Fallen Empire: Legions
Copyright (C) GarageGames.com, Inc.
*/
//------------------------------------------------------------------------------
datablock ParticleData(PlayerSplashMist)
{
dragCoefficient = 2.0;
gravityCoefficient = -0.05;
inheritedVelFactor = 0.0;
constantAcceleration = 0.0;
lifetimeMS = 400;
lifetimeVarianceMS = 100;
useInvAlpha = false;
spinRandomMin = -90.0;
spinRandomMax = 500.0;
textureName = "legions/data/shapes/particles/Snowdust.dds";
colors[0] = "0.7 0.8 1.0 1.0";
colors[1] = "0.7 0.8 1.0 0.5";
colors[2] = "0.7 0.8 1.0 0.0";
sizes[0] = 0.5;
sizes[1] = 0.5;
sizes[2] = 0.8;
times[0] = 0.0;
times[1] = 0.5;
times[2] = 1.0;
};
datablock ParticleEmitterData(PlayerSplashMistEmitter)
{
ejectionPeriodMS = 5;
periodVarianceMS = 0;
ejectionVelocity = 3.0;
velocityVariance = 2.0;
ejectionOffset = 0.0;
thetaMin = 85;
thetaMax = 85;
phiReferenceVel = 0;
phiVariance = 360;
overrideAdvances = false;
lifetimeMS = 250;
particles = "PlayerSplashMist";
doDistanceFade = true;
startFadeDistance = 10;
endFadeDistance = 500;
};
//------------------------------------------------------------------------------
datablock ParticleData( PlayerSplashParticle )
{
dragCoefficient = 1;
gravityCoefficient = 0.2;
inheritedVelFactor = 0.2;
constantAcceleration = -0.0;
lifetimeMS = 600;
lifetimeVarianceMS = 0;
textureName = "legions/data/shapes/grassy/WaterSpray.dds";
colors[0] = "0.7 0.8 1.0 1.0";
colors[1] = "0.7 0.8 1.0 0.5";
colors[2] = "0.7 0.8 1.0 0.0";
sizes[0] = 0.5;
sizes[1] = 0.5;
sizes[2] = 0.5;
times[0] = 0.0;
times[1] = 0.5;
times[2] = 1.0;
};
datablock ParticleEmitterData( PlayerSplashEmitter )
{
ejectionPeriodMS = 1;
periodVarianceMS = 0;
ejectionVelocity = 3;
velocityVariance = 1.0;
ejectionOffset = 0.0;
thetaMin = 60;
thetaMax = 80;
phiReferenceVel = 0;
phiVariance = 360;
overrideAdvances = false;
orientParticles = true;
lifetimeMS = 100;
particles = "PlayerSplashParticle";
doDistanceFade = true;
startFadeDistance = 10;
endFadeDistance = 500;
};
//------------------------------------------------------------------------------
// Hi_environmental_lake_Trigger_1
//------------------------------------------------------------------------------
datablock TriggerData(Hi_environmental_lake_Trigger_1)
{
tickPeriodMs = 250;
};
//------------------------------------------------------------------------------
function Hi_environmental_lake_Trigger_1::onEnterTrigger( %this, %trigger, %obj )
{
%velocity = VectorLen(%obj.client.player.getVelocity());
if((%obj.getClassName() $= "Player") && (%velocity > 10))
{
echo("\n--------- ( Hi_environmental_lake_Trigger_1 ) ---------");
//ServerPlay3D(Hi_environmental_lake_Spalsh_1, %obj.getTransform());
%emitter1 = new ParticleEmitterNode(){
scale = "2 2 2";
datablock = defaultParticleEmitterNode;
emitter = PlayerSplashMistEmitter;
position = %obj.getWorldBoxCenter();
};
MissionCleanup.add(%emitter1);
%emitter1.schedule(250, delete);
//------------------------------------------------
%emitter2 = new ParticleEmitterNode(){
scale = "2 2 2";
datablock = defaultParticleEmitterNode;
emitter = PlayerSplashEmitter;
position = %obj.getWorldBoxCenter();
};
MissionCleanup.add(%emitter2);
%emitter2.schedule(250, delete);
}
}
//------------------------------------------------------------------------------
function Hi_environmental_lake_Trigger_1::onTickTrigger( %this, %trigger )
{
%numObjects = %trigger.getNumObjects();
for (%i = 0; %i < %numObjects; %i++)
%this.onEnterTrigger(%trigger, %trigger.getObject(%i));
}
//------------------------------------------------------------------------------