Ceci est une ancienne révision du document !
Si vous avez déjà utilisé AGS avant, vous serez probablement troublé et peut-être même
décontenancé par ce nouvel éditeur. Mais ne vous inquiétez pas, une fois que vous l'utiliserez,
je suis sûr que vous accepterez les énormes améliorations par rapport à l'ancienne version.
La meilleure façon pour commencer est sans doute par le biais du tutoriel,
qui a été mis à jour pour AGS 3 et par la suite, vous devriez devenir plus
familier avec le fonctionnement de l'éditeur.
Les principaux changements sont expliqués ci-dessous :
Éditeur d'interaction
L'éditeur d'interaction a été supprimé de AGS 3.0. Quand vous importez votre jeu, AGS
tentera de convertir toutes vos interactions dans les scripts. Ceux-ci devraient généralement
marcher, cependant il existe certaines choses dont vous devriez être au courant :
1. Problèmes de conflit – C'était quand, si un script exécuté en 2.72 se bloquait, il était encore possible
pour les interactions de s'exécuter en même temps même si elles n'étaient pas incluses dans les scripts. Maintenant ce n'est plus le cas.
2. Interactions bloquantes – dans la version 2.72, une interaction “Run Dialog” (lancer un dialogue), par exemple,
attendait que le dialogue soit terminé avant d'aller vers la prochaine action. Si vous aviez un “Run Dialog” (lancer un dialogue) suivi d'un “Change Room” (changer de pièce), alors le dialogue se finissait avant que le changement de pièce n'arrive.
Avec le script, vous devez faire attention car la commande “dialog[x].Start()” ne bloque pas ;
au lieu de cela, il attend que le script en cours d'exécution finisse avant de lancer la boîte de dialogue.
Ca veut dire que le changement de room n'arrivera pas nécessairement après le dialogue.
Afin d'atténuer ces types de problèmes, vous pouvez utiliser une autre solution telle qu'une commande “run-script” (lancer le script) à
la fin du dialogue pour lancer le changement de pièce.
Global Messages (messages globaux)
Les messages globaux ne sont plus utilisés et doivent être considérés comme obsolètes –
il n'y a plus besoin d'eux maintenant que l'éditeur d'interaction a été supprimé.
Tous les messages que vous aviez seront encore retenus et fonctionneront,
bien que l'éditeur AGS 3 ne donne aucun moyen de les éditer. Si vous voulez en changer
un, remplacez juste la commande “DisplayMessage” (afficher message) par un simple
“Display()” (afficher).
Dans AGS 3.0.2, il y a maintenant un “Global Variables editor” (Éditeur de Variables Globales)
dans lequel vous pouvez créer des “global string variables” (variables globales de type string),
qui offrent toutes les fonctionnalités des Messages Globaux, et même plus.
Sauvegarder et tester votre jeu
AGS 3.0 fonctionne légèrement différemment des versions précédentes dans la manière de sauvegarder
et tester vos jeux en cours. L'option “Save” (sauvegarder) (Ctrl+S) est l'équivalent de l'ancienne
option “Quick Save” (sauvegarde rapide) – elle permettra de sauver vos modifications, mais sans compiler le fichier EXE.
L'option “Test game” (tester le jeu) est devenu “Run” (lancer) dans le menu “Build” (construire). Cela lance votre jeu
avec le nouveau Débogueur de script, qui vous permet de faire une pause
dans le script afin de traquer les problèmes.
Le débogueur lancera toujours votre jeu dans une fenêtre, donc si vous voulez tester en
plein écran, il y a l'option “Run without debugger” (lancer sans débogueur) (Ctrl+F5).
Utilisez la commande “Build EXE” (construire l'EXE)(F7) quand vous voudrez créer les fichiers compilés
pour distribuer votre jeu.
NOTE : Quand vous utilisez la commande Run (lancer), le fichier EXE de votre jeu N'EST PAS construit.
La commande “Run” (lancer) d'AGS 3 est plus rapide que l'ancienne commande “Test Game” (tester jeu) parce
qu'elle charge les fichiers directement dans le dossier du jeu. Si vous voulez créer
le fichier EXE de votre jeu, vous devez utiliser la commande “Build EXE” (construire EXE).
Changements des fonctions RawDraw
La famille des fonctions RawDraw ont finalement été adaptées à la programmation orientée objets,
et les anciennes versions sont maintenant obsolètes. Vous pouvez désormais utiliser RawDraw sur les sprites dynamiques
ainsi que sur les arrière-plans (background). De fait, les nouvelle commandes vous sembleront plus
compliquées que les anciennes, car vous ne pouvez plus simplement faire “RawDrawImage” pour
dessiner quelque chose sur l'arrière-plan (background) de la pièce.
Au lieu de cela, il y a une nouvelle fonction DrawingSurface qui
vous permet de dessiner sur une surface. Vous en récupérerez une en appelant la commande
DynamicSprite.GetDrawingSurface ou
Room.GetDrawingSurfaceForBackground,
cela dépend de la surface sur laquelle vous voulez dessiner ; et vous pouvez alors utiliser différentes
méthodes pour faire votre dessin.
Vous devez appeler une commande Release sur la surface une fois que vous avez
fini le dessin, cela dit à AGS de mettre à jour les données en mémoire.
Pour voir des exemples, regardez l'aide pour la fonction DrawingSurface.
Autres changements pour le script
Le script n'a pas réellement changé dans AGS 3. Deux nouvelles fonctionnalités (fonctions d'extension
et tableaux dynamiques) ont été ajoutées, mais cela n'affecte aucun code existant.
Les seules grosses modifications sont les suivantes :
1. “new” (nouveau) est maintenant un mot réservé. Cela signifie que si vous aviez des variables
appelées “new”, alors votre script ne pourra pas compiler. Renommez juste la variable en autre chose.
2. A cause de la suppression de certaines limites du système, certaines des constantes d'AGS_MAX_
ont été supprimées (car il n'existe plus de valeur raisonnable pour elles maintenant que les limites
sont enlevées). Cela ne va sans doute affecter que les auteurs de modules, mais probablement
pas votre jeu. Plus précisément, les éléments suivants ont été retirés : AGS_MAX_GUIS,
AGS_MAX_CHARACTERS, AGS_MAX_VIEWS, AGS_MAX_LOOPS_PER_VIEW, AGS_MAX_FRAMES_PER_LOOP.