Logo name

Welcome Guest ( Log In | Register )

Discussion
> Actions déclenchées sur la détection des ennemis
Version du 18 septembre 2013 à 23:02 par Galevsky (discuter | contributions)
Action déclenchées sur la détection des ennemis

Sommaire

Contexte

Soit une station radar EWR, qui pourrait être un AWACS, ou tout autre unité, voire groupe d'unité.

Dès que l'EWR détecte un avion ennemi, cela doit déclencher une action ou des actions, comme l'activation de chasseurs.

Prérequis

  • Mist v2_0: on aura besoin de Mist v2_0, un script apportant un tas de fonctions intéressantes en plus du Scripting Engine fournit par ED. En fait, tout est faisable uniquement avec le Scripting Engine, mais Mist v2_0 nous facilite grandement la vie, en lisant le contenu de la mission au démarrage de celle-ci. Télécharger Mist v2_0
  • Un script à nous: un simple fichier texte qui sera lancé 2 seondes après le démarrage de la mission. Pourquoi 2 secondes ? car il faut être certain que le script Mist ait fini d'être exécuté et donc d'avoir initialisé tout ce dont il a besoin avant d'exécuter notre script qui utilise Mist.

Notre Script

Vous trouverez dans le fichire .zip de Mist un fichire .pdf expliquant toutes les fonctions disponibles. Nous allons utiliser ici:

mist.flagFunc.units_LOS

Cette fonction sert à mettre un flag à TRUE lorsqu'une unité est détecté par une autre. LOS = Line Of Sight = ligne de mire en anglais.

Notre script contiendra le texte suivant:

trigger.action.outText("script chargé", 1)

mist.flagFunc.units_LOS{
     unitset1 = {'Mig-29'},
     altoffset1 = 0,
     unitset2 = {'[URMN]EWR'},
     altoffset2 = 5,
     flag = 10,
     stopflag = 11,
     interval = 8,
}

Lorsque ce script sera exécuté, il affichera "script chargé" en haut à droite de l'écran (normalement 2s après le lâcher de pause), puis la fonction vérifiera toutes les 8s si l'unité qui s'appelle 'Mig-29' est détectée par l'unité qui s'appelle '[URMN]EWR', et à chaque fois que ce sera le cas, elle mettra le flag numéro 10 à TRUE. J'ai rajouté un stop-flag optionnel, le numéro 11, qui permet de désactiver la vérification. Sans cela, la vérification aura lieu toutes les 8s et jusqu'à la fin de la partie. Afin d'alléger l'exécution de la mission, et une fois la première détection réalisée, je souhaite désactiver cette fonction pour des raisons de performances. C'est facultatif est inutile pour les missions non-chargées en script.

Les variables altoffset1 et altoffset2 servent à déplacer vers le haut le 'point de vue' de l'unité. Par exemple, une station EWR avec une antenne à 5m de haut par rapport au sol, si on met altoffset2 = 0, la ligne-de-mire partira du sol, en mettant 5m, la ligne-de-mire part réellement du centre de l'antenne. La valeur est à adapter en fonction des unités choisies.

Dans l'éditeur

Voyons maintenant comment relier notre script et le script Mistv2_0 avec la mission. Tout se fait avec les triggers:

  1. Je rattache mes scripts à la mission

Script load.jpg


  1. Et maintenant, je crée les actions qui se déroulent lorsque le fameux flag N°10 est mis à TRUE (=la détection a lieu):

Script actions.jpg


Et voilà !!!


Astuces: Mode POWAAAAAA

Le truc sympa de Mist, c'est qu'il fournit une fonctionnalité avancée de sélection des unités. Je m'explique. Dans le cas en haut, on à identifié les unités par leur nom.

Exemple, la station EWR qui détecte doit s'appeller '[URMN]EWR'

Discussion
Contenu disponible sous Creative Commons attribution non commercial partage à l'identiqueAvertissements