Français Cacher des marqueurs sur la carte

Skyrise

User
29/12/19
33
1
9
600
Bienvenue sur ce tutoriel qui vous permettra de cacher des markers sur la carte pour certaines factions ou licences.

Pour pouvoir cacher certains marqueurs sur la carte c'est très simple :

1) Créez un fichier fn_markers.sqf dans le core/functions de la mission :

[CODE title="fn_markers.sqf"]/*
Author: Yuri Zoko & Skyrise
Web site: www.the-programmer.com
Discord: discord.the-programmer.com

Terms of use:
- Out of respect for the author please do not delete this information.
*/
_hideMarkers = [
"heroin_1","heroin_process","cocaine_1","cocaine_process",
"weed_1","weed_process","dispatch_1","dispatch_2","marker_118"
];
{_x setMarkerAlphaLocal 0} foreach _hideMarkers;

if (license_civ_bandit) then {
{_x setMarkerAlphaLocal 1} foreach ["cocaine_1","cocaine_process","weed_1","weed_process"];
};

if (license_civ_rebel) then {
{_x setMarkerAlphaLocal 1} foreach ["heroin_1","heroin_process","cocaine_1","cocaine_process","weed_1","weed_process"];
};

// Police
if (playerSide isEqualTo west) then {
{_x setMarkerAlphaLocal 1} foreach ["dispatch_1","dispatch_2"];
};

// Entreprise (Company System)
if (entreprise_5) then {
{_x setMarkerAlphaLocal 1} foreach ["marker_118"];
};[/CODE]

Il faudra déclarer tous les marqueurs à cacher dans "_hideMarkers" puis les placer dans les licences, side, entreprise ; où on veut qu'ils soient affichés.

2) Dans le Functions.hpp, à la racine de la mission trouvez :
Code:
class moveIn {};
Puis ajoutez en dessous :
Code:
class markers {};

3) Ensuite il faut exécuter cette nouvelle fonction depuis le fichier initPlayerLocal.sqf :

[CODE title="initPlayerLocal.sqf"][] spawn life_fnc_markers;[/CODE]

Cela permettra de cacher les marqueurs avant le spawn du joueur, donc les marqueurs n'apparaitrons pas dans le choix des spawns.

En l’exécutant ici, vous pourrez rencontrer des "erreurs" pour les licences qui ne sont pas de base dans la mission, rien de grave, elles partent une fois le joueur spawn.

4)Dans le core/init.sqf, remettre la même ligne du dessus tout en bas du fichier :

[CODE title="init.sqf"][] spawn life_fnc_markers;[/CODE]

5) Dernier point, dans le fn_buyLicense.sqf dans le dossier core/actions de votre mission, ajoutez tout en bas :
[CODE title="buyLicense.sqf"][] spawn life_fnc_markers;[/CODE]

Ça vous permettra de mettre à jour vos marqueurs lors d'achat de licence, on évite les retours lobby.

Merci à AlexandreWoods AlexandreWoods pour quelques lignes :)
 
Dernière édition par un modérateur:
Salut , pour moi quand le serveur redemarre et que les joueurs se connecte il ne voient plus les points caché
 
Ben tout les fichiers sont de base comme lui les a mis donc licence rebel, et mes marqueurs c'est tout en faite x) donc cela devrais " fonctionné " vu que lui cela fonctionne
 
C'est bien étrange comme problème :unsure:
Est-ce que tu peux m'envoyer un MP sur discord pour me montrer ça via Anydesk ?
Salut dit moi j'ai le problème similaire de la personne au dessus, lors d'une déco reco, one voit plus les points...
 
Bonjour à tous !!
Comment faire pour que le joueur par exemple trouve le point de traitement d'une ressource et quand il achète la licence les point apparaissent ?
 
Bonjour à tous !!
Comment faire pour que le joueur par exemple trouve le point de traitement d'une ressource et quand il achète la licence les point apparaissent ?
La solution la plus simple serait de modifier le nom de la licence ici license_civ_rebel par le nom de la licence que tu obtiens lors du traitement

Tu peux aussi dupliquer la condition ligne 18 et la variable _illegal (en changeant son nom) avoir plusieurs licences qui débloquent l'affichage de marqueurs