DayZ 1.24
Loading...
Searching...
No Matches
PersonalLight.c
Go to the documentation of this file.
1class PersonalLight extends PointLightBase
2{
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
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}
override void OnFrameLightSource(IEntity other, float timeSlice)
void PersonalLight()
proto native CGame GetGame()
proto native void SetPosition(vector position)
Set the world position of the Effect.
Definition Effect.c:420
proto native vector Vector(float x, float y, float z)
Vector constructor from components.