Avec ton declencheur tu as fait le contraire: tant que ta variable est différente de 3, à l'instant où une usine est détruite, tu gagnes.
Tu ne sembles pas avoir compris la manière de fonctionner des IF/THEN/ELSE :
Le code derrière Then se lance si les conditions du If sont vérifiées. Si ce n'est pas le cas, c'est le code derrière le Else qui va se déclencher.
______________________________________
Pour que ça marche:
D'abord, vérifie si tu as initialisé la valeur de ta variable à 0, et inspires toi de ces lignes, qui marchent:
E-A unit dies
C-Unit type of Dying unit egal à Usine
A-IF/THEN/ELSE
--On commence par enoncer les conditions de victoire--
If Integer=2
--On met ici =2 et non 3, car cette partie de code se déclenche lorsque la 3eme usine se fait attaquer.--
Then
Quête - Mark quête as Terminé
Quête - Display to (All players) the Quête terminée message: mission acomplie
Wait 2.00 seconds
Déclencheur - Run victoire <gen>
Else
Set Integer= Integer +1
Display to (All players) the text "Vous avez détruit 'Integer' usines."
_____________________________________
Enfin, je tenais à te conseiller de ne pas te lancer dans la création d'une campagne, surtout si tu veux utiliser le game cache, qui utilise des déclencheurs plus complexes que ceux que tu demandes.
Si tu bloques déjà aux triggers basiques, tu vas avoir beaucoup de mal à finir ta campagne.
Fais plutôt pour commencer un scénario simple pour te familiariser aux declencheurs.