Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions addons/main/GELDZEIT/fn_clientInit.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -68,4 +68,8 @@

// Freeze-Time
[] call FUNC(frezztime);

// Dynamische Sichtweite bei den CSAT Seebasen
[] call FUNC(dynamischesichtweite);

}] call CFUNC(addEventhandler);
75 changes: 75 additions & 0 deletions addons/main/GELDZEIT/fn_dynamischesichtweite.sqf
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
/**
* Description:
* Dymamische Sichtweite in Festgelegten bereichen
*
* Author:
* Lord-MDB
*
* Arguments:
* None
*
* Return Value:
* None
*
* Server only:
* No
*
* Public:
* No
*
* Global:
* No
*
* API:
* No
*
* Example:
* [] call FUNC(dynamischesichtweite);
*/
#include "macros.hpp"

// Dynamische Sichtweite bei den CSAT Seebasen
//Gegenseite kann nur bis zur Sichtlinie das Wasser einsehen

GVAR(userviewdistance) = viewDistance;

if (!(OPT_SECTORCONTROL_trainingon)) then
{
if (playerSide == blufor) then
{
[{
private _sichtlinearray = [Opforlinie0,Opforlinie1,Opforlinie2,Opforlinie3,Opforlinie4,Opforlinie5,Opforlinie6,Opforlinie7,Opforlinie8,Opforlinie9,Opforlinie10,Opforlinie11,Opforlinie12,Opforlinie13,Opforlinie14,Opforlinie15,Opforlinie16];
private _sichtwinkelarray = [[90,270],[90,270],[1,270],[1,180],[1,180],[1,180],[1,180],[1,180],[1,235],[45,235],[45,235],[45,235],[45,235],[45,235],[45,235],[45,235],[45,235]];
private _userdistance = 0;
private _userdistancearray = [];
private _userdistancemin = 0;
private _userdir = 0;
private _userdistancearrayindex = 0;
private _sichtwinkelblock = [];

// Distance erfassen für ermittlung des kleines abstands zu Sichtline
{
_userdistance = vehicle Player distance2D _x;
_userdistancearray pushBack _userdistance;

} forEach _sichtlinearray;

// Blickwinkel des Spielers
_userdir = Getdir vehicle Player;
_userdistancemin = selectMin _userdistancearray;
_userdistancearrayindex = _userdistancearray findIf {_userdistancemin isEqualTo _x};
_sichtwinkelblock = _sichtwinkelarray select _userdistancearrayindex;

//systemChat format ["UD:%1 D:%4 X:%2 UDir:%3 I:%5 SWA:%6 ",_userdistancemin,GVAR(userviewdistance),_userdir,viewDistance,_userdistancearrayindex,_sichtwinkelblock];

if ((_userdir > (_sichtwinkelblock select 0)) and (_userdir < (_sichtwinkelblock select 1)) and (_userdistancemin < GVAR(userviewdistance))) then
{
setViewDistance _userdistancemin;
}
else
{
setViewDistance GVAR(userviewdistance);
};
}, 1, _this] call CFUNC(addPerFrameHandler);
};
};
1 change: 1 addition & 0 deletions addons/main/modules.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,7 @@ class CfgCLibModules
FNC(spritverbrauch);
FNC(berggang);
FNC(berggangcheck);
FNC(dynamischesichtweite);
};

MODULE(BEAM)
Expand Down
2 changes: 1 addition & 1 deletion addons/main/script_version.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
#define MAJOR 1
#define MINOR 9
#define PATCHLVL 2
#define BUILD 632
#define BUILD 646


#ifdef VERSION
Expand Down