Dans certaines missions, en particulier en Instruction ou pour faire de la vidéo, il peut être uitle de disposer d'une vue extérieure pouvant se diriger et se contrôler au clavier et à la souris.
Mode spectateur : vue extérieure de type “camera”.
AddAction : action apparaissant sur le menu de choix d'action du joueur en jeu.
camera.sqs : il existe un script intégré à ArmA qui gère une vue extérieure de type “camera”. Les développeurs de Bohémia Interactiv ont laissé ce script en .sqs sachant qu'il n'est pas très lourd.
camera.sqf : Nous allons créer un script en .sqf qui permet le paramétrage et le lancement du script .sqs intégré à ArmA.
mettre dans l'init.sqf :
où “instructeur1” est le nom donné à l'unité, mise avec l'éditeur dans le champ “NOM” de la fenêtre de création d'une unité (F1).
if ( ! isnil ("instructeur1") ) then { if ( player==instructeur1 ) then { player addAction ["Mode spectateur", "camera.sqf"]; }; };
la première ligne vérifie que la variable “instructeur1” est bien définie (prise par un player en fait), la deuxième ligne affecte l'AddAction à ce player (et non à un autre qui ne serait pas instructeur).
en sachant que si l'on veut faire une version en multilingue mettre
Localize "STR_spec"
à la place de “Mode spectateur”. STR_spec étant définie et traduite dans le fichier stringtable.csv.
Ce script permet de lancer la camera avec option(s)
player Exec "camera.sqs"; showCinemaBorder false; camUseNVG false; enableEnvironment true;
et, en ajoutant les 3 ligne ci dessous, Voici la manière d'inclure un texte court : “Mode spectateur” apparait à l'écran au lancement du mode.
titleCut ["", "BLACK OUT"]; titleFadeOut 9; titleText ["Mode Spectateur", "PLAIN DOWN"]; titleFadeOut 9; cutText ["", "BLACK IN"]; titleFadeOut 9;
En mode solo pour l'instant (pas en mode multijoueur) :
En cliquant sur le nom de l'unité sa position apparait sur la carte. En cliquant sur “Voir Unité” : la caméra se positionne au dessus. Très utile pour les instructions en particulier. Attention : éviter “Changer” qui vous fait passer dans une autre unité !