From c2e137e67c398a45f92fa4c9e9c9d174f3b7848e Mon Sep 17 00:00:00 2001 From: Valmo Trindade Date: Sat, 13 Dec 2025 14:59:05 -0300 Subject: [PATCH] Added lawn map --- .../functions/fnc_convertClientLocation.sqf | 3 +++ addons/main/CfgFunctions.hpp | 3 +++ .../main/functions/map/fn_convert_to_lawn.sqf | 23 +++++++++++++++++++ 3 files changed, 29 insertions(+) create mode 100644 addons/main/functions/map/fn_convert_to_lawn.sqf diff --git a/addons/client/functions/fnc_convertClientLocation.sqf b/addons/client/functions/fnc_convertClientLocation.sqf index 78c5e55..4adb6c2 100644 --- a/addons/client/functions/fnc_convertClientLocation.sqf +++ b/addons/client/functions/fnc_convertClientLocation.sqf @@ -38,6 +38,9 @@ switch (toLower worldName) do { case "vr": { _realLocation = _position call armatak_fnc_convert_to_vr; }; + case "lawn": { + _realLocation = _position call armatak_fnc_convert_to_lawn; + }; case "cucui": { _realLocation = _position call armatak_fnc_convert_to_cucui; }; diff --git a/addons/main/CfgFunctions.hpp b/addons/main/CfgFunctions.hpp index 6eb2ff9..44a7fc3 100644 --- a/addons/main/CfgFunctions.hpp +++ b/addons/main/CfgFunctions.hpp @@ -68,6 +68,9 @@ class CfgFunctions { class convert_to_kunduz_valley { file = "\armatak\armatak\addons\main\functions\map\fn_convert_to_kunduz_valley.sqf"; }; + class convert_to_lawn { + file = "\armatak\armatak\addons\main\functions\map\fn_convert_to_lawn.sqf"; + }; class convert_to_livonia { file = "\armatak\armatak\addons\main\functions\map\fn_convert_to_livonia.sqf"; }; diff --git a/addons/main/functions/map/fn_convert_to_lawn.sqf b/addons/main/functions/map/fn_convert_to_lawn.sqf new file mode 100644 index 0000000..d30e716 --- /dev/null +++ b/addons/main/functions/map/fn_convert_to_lawn.sqf @@ -0,0 +1,23 @@ +params["_latitude", "_longitude", "_altitude"]; + +_playerPosition = [_latitude, _longitude, _altitude]; + +_playerLatitude = _playerPosition select 0; +_playerLongitude = _playerPosition select 1; + +_playerMaxLongitude = 4992; +_playerMaxLatitude = 4992; + +_MapMaxLongitude = -99.722665; +_MapMinLongitude = -99.775505; + +_MapMaxLatitude = 32.159272; +_MapMinLatitude = 32.114011; + +_LongitudeDifference = _MapMaxLongitude - _MapMinLongitude; +_LatitudeDifference = _MapMaxLatitude - _MapMinLatitude; + +_RealLongitude = (_playerLongitude / _playerMaxLongitude) * _LongitudeDifference + _MapMinLongitude; +_RealLatitude = (_playerLatitude / _playerMaxLatitude) * _LatitudeDifference + _MapMinLatitude; + +[_RealLongitude, _RealLatitude, _playerPosition select 2]