DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
PersonalLight.c
См. документацию.
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
15 override void OnFrameLightSource(IEntity other, float timeSlice)
16 {
17 if ( GetGame() && IsEnabled() )
18 {
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}
proto native vector GetCurrentCameraPosition()
Определения EnEntity.c:165
override void OnFrameLightSource(IEntity other, float timeSlice)
Определения PersonalLight.c:15
void PersonalLight()
Определения PersonalLight.c:3
Определения EnConvert.c:106
proto native CGame GetGame()
proto native void SetPosition(vector position)
Set the world position of the Effect.
Определения Effect.c:438
proto native vector Vector(float x, float y, float z)
Vector constructor from components.
proto native bool IsEnabled()
Enabled flag getter.