Bonjour à tous.
Je vous partage un petit script que j'ai réalisé très rapidement la nuit dernière. Ce script vous permet d'afficher les markers seulement si vous zoomez sur la map.
Plutôt pratique quand vous avez beaucoup de markers au même endroit.
Voici un petit exemple :
https://gyazo.com/576b7503b8facdf82bd9ae1671b76c83
Installation du script :Je vous partage un petit script que j'ai réalisé très rapidement la nuit dernière. Ce script vous permet d'afficher les markers seulement si vous zoomez sur la map.
Plutôt pratique quand vous avez beaucoup de markers au même endroit.
Voici un petit exemple :
https://gyazo.com/576b7503b8facdf82bd9ae1671b76c83
- Dans votre fichier function.hpp, ajoutez en dessous de file = "dialog\function"; :
Code:
class mapZoom {};
- Dans votre fichier core/fn_setupEVH.sqf , remplacer :
Code:
addMissionEventHandler ["Map", {_this call life_fnc_checkMap}]
Code:addMissionEventHandler ["Map", {_this call life_fnc_checkMap; _this call life_fnc_mapZoom;}];
- Maintenant, rendez vous dans dialog/function puis créer un fichiez nommé : fn_mapZoom.sqf et insérez ceci à l'intérieur :
Code:params [ ["_mapOpen",false,[false]] ]; if (_mapOpen) then { uiNamespace getVariable "RscDiary" displayCtrl 51 ctrlAddEventHandler [ "MouseZChanged", { params[ "_ctrl" ]; _markerShowMinMax = [ 0.01, 0.1 ]; //select 0 = Min , Select 1 = Max (Entre 0 et 1) _zoom = ctrlMapScale _ctrl; _show = _zoom > ( _markerShowMinMax select 0 ) && _zoom < ( _markerShowMinMax select 1 ); { _x setMarkerAlphaLocal ( parseNumber _show ); } forEach allMapMarkers; }]; };
- Si vous voulez faire en sorte que cela fonctionne seulement pour certains markers alors faites comme ceci :
Code:params [ ["_mapOpen",false,[false]] ]; _markers = ["Marker_Name1","Marker_name2"]; //Remplacer par vos markeurs if (_mapOpen) then { uiNamespace getVariable "RscDiary" displayCtrl 51 ctrlAddEventHandler [ "MouseZChanged", { params[ "_ctrl" ]; _markerShowMinMax = [ 0.01, 0.1 ]; //select 0 = Min , Select 1 = Max (Entre 0 et 1) _zoom = ctrlMapScale _ctrl; _show = _zoom > ( _markerShowMinMax select 0 ) && _zoom < ( _markerShowMinMax select 1 ); { _x setMarkerAlphaLocal ( parseNumber _show ); } forEach _markers; }]; };
Et voilà, bon développement à vous.
Dernière édition: