Dayz Explorer  1.24.157551 (v105080)
Dayz Code Explorer by Zeroy
personallight.c
Go to the documentation of this file.
1 class PersonalLight extends PointLightBase
2 {
3  void PersonalLight()
4  {
5  SetVisibleDuringDaylight(false);
6  SetRadiusTo( 3 );
7  SetBrightnessTo(0.38);
8  SetDiffuseColor(0.2, 0.23, 0.25);
9  SetCastShadow(false);
10  EnableSpecular(false);
11  EnableLinear(true);
12  SetFlareVisible(false);
13  }
14 
15  override void OnFrameLightSource(IEntity other, float timeSlice)
16  {
17  if ( GetGame() && IsEnabled() )
18  {
19  vector pos = GetGame().GetCurrentCameraPosition();
20  pos += Vector( 0, -0.4, 0 );
21 
22  SetPosition( pos );
23  }
24  }
25 
26  // Experiment with dynamic range of Personal Light based on distance between camera and player's character.
27  /*override void OnFrameLightSource(IEntity other, float timeSlice)
28  {
29  if ( GetGame() && IsEnabled() )
30  {
31  vector pos = GetGame().GetCurrentCameraPosition();
32  vector dir = GetGame().GetCurrentCameraDirection();
33 
34  SetPosition(pos);
35 
36  DayZPlayer plr = GetGame().GetPlayer();
37  if (plr)
38  {
39  vector pos_plr = plr.GetPosition() + Vector(0, 1.64, 0);
40  float distance = vector.Distance( pos_plr, pos );
41  //Print(distance);
42  float radius = 20.0 + distance;
43  SetRadiusTo( radius );
44  }
45  }
46  }*/
47 }
GetGame
proto native CGame GetGame()
PointLightBase
Definition: staticobj_roadblock_wood_small.c:27
IEntity
Definition: enentity.c:164
vector
Definition: enconvert.c:105
SetPosition
proto native void SetPosition(vector position)
Set the world position of the Effect.
Definition: effect.c:436
Vector
proto native vector Vector(float x, float y, float z)
Vector constructor from components.