DayZ
1.24
Loading...
Searching...
No Matches
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
}
IEntity
Definition
EnEntity.c:164
Param3
Definition
EntityAI.c:95
PointLightBase
Definition
StaticObj_Roadblock_Wood_Small.c:26
PointLightBase::OnFrameLightSource
override void OnFrameLightSource(IEntity other, float timeSlice)
Definition
PersonalLight.c:15
PointLightBase::PersonalLight
void PersonalLight()
Definition
PersonalLight.c:3
vector
Definition
EnConvert.c:106
GetGame
proto native CGame GetGame()
SetPosition
proto native void SetPosition(vector position)
Set the world position of the Effect.
Definition
Effect.c:420
Vector
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
scripts
4_World
Entities
ScriptedLightBase
PointLightBase
PersonalLight.c
Generated by
1.10.0