12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- class HeadtorchLight extends SpotLightBase
- {
- private static float m_DefaultBrightness = 3;
- private static float m_DefaultRadius = 20;
-
- void HeadtorchLight()
- {
- SetVisibleDuringDaylight( true );
- SetRadiusTo( m_DefaultRadius );
- SetSpotLightAngle( 95 );
- SetCastShadow( true );
- FadeIn( 0.06 );
- SetBrightnessTo( m_DefaultBrightness );
- SetAmbientColor( 0.92, 0.85, 0.58 );
- SetDiffuseColor( 0.92, 0.85, 0.58 );
- SetFadeOutTime( 0.1 );
- //SetDisableShadowsWithinRadius(0.25); // Idea for optimization: Uncomment this to disable shadows from Headtorch while it's on player's head during 1P view.
- }
-
- void SetColorToWhite()
- {
- SetAmbientColor( 0.92, 0.85, 0.86 );
- SetDiffuseColor( 0.92, 0.85, 0.86 );
- }
-
- void SetColorToRed()
- {
- SetAmbientColor( 1.0, 0.2, 0.2 );
- SetDiffuseColor( 1.0, 0.2, 0.2 );
- }
-
- void SetIntensity( float coef, float time )
- {
- FadeBrightnessTo( m_DefaultBrightness * coef, time );
- FadeRadiusTo( m_DefaultRadius * coef, time );
- }
-
- void PerformVisibilityCheck(EntityAI owner)
- {
- if (!owner.IsFlagSet(EntityFlags.VISIBLE) && IsEnabled())
- {
- SetEnabled(false);
- }
- else if (owner.IsFlagSet(EntityFlags.VISIBLE) && !IsEnabled())
- {
- SetEnabled(true);
- }
- }
- }
|