Induire
la fin de map en passant à un endroit précis.
(Et
création
de mini-campagnes.)
1/ Mapping
Comme d'habitude vous allez créer une map avec 2 pièces séparées par un mur. N'oubliez pas de mettre votre info_player_start et un peu de lumière. A l'endroit du passage vous allez créer un brush que vous allez transformer en trigger_multiple. (Noubliez pas la texture trigger). Tant que votre trigger est sélectionné, entrez les key / value suivantes :
targetname / pas_trigg
Pour faire pointer votre compas sur le point de passage vous allez mettre derrière un scritp_origin auquel vous donnerez les key / values suivantes :
targetname / pointage
Voici ce que ça donne.

Enregistrez votre map en tant que passage.map
Et voila pour le mapping passons maintenant au script.
2/ Scripting
Ceci ce passe en 2 étapes.
a/ Le fichier GSC.
Ouvrez votre éditeur de texte et tapez ceci.
//tuto créé par Tropheus
main()
{
maps\_load::main();
level.player takeallweapons();
level.player giveweapon("thompson");
level.player giveweapon("luger");
level.player switchToWeapon("luger");
iprintlnbold ("Passer derriere le mur");
objective_add(1,"active",&"PASSAGE_OBJ1",getent("pointage","targetname").origin);
objective_current(1);
passage=getent("pas_trigg","targetname");
passage waittill("trigger");
objective_state(1,"done");
missionsuccess("passage",true);
}
Bon j'explique ce que j'ai compris.
//tuto créé par Tropheus // moi le créateur (les 2 // en début de ligne indique au jeu qu'il ne faut pas lire cette ligne)
main()
{
maps\_load::main();
level.player takeallweapons();
level.player giveweapon("thompson");
level.player giveweapon("luger");
level.player switchToWeapon("luger");
iprintlnbold ("Passer derriere le mur"); // message en plein écran
objective_add(1,"active",&"PASSAGE_OBJ1",getent("pointage","targetname").origin); //activation de l'objectif (appel du texte écrit dans le fichier .str)


objective_current(1);
passage=getent("pas_trigg","targetname"); // on donne le nom de passage au trigger.
passage waittill("trigger"); // le trigger attend le déclenchement.
objective_state(1,"done"); // objectif accompli.
missionsuccess("passage",true); // cette ligne induit la fin de la mission.
}
Variantes
missionsuccess("passage",true); // ici on relance la map si dans l'écran suivant on clique sur "niveau suivant".
missionsuccess("credits",true); // ici on lance l'affichage de fin de jeu (non des personnes et petit film de fin)
missionsuccess("ma_seconde_map",true); // ici on lance la map suivante de la campagne que l'on vient de créer.
b/ Le fichier .str
Comme pour le tutorial sur l'écran noir d'ouverture de map il vous faut un fichier .str.
Ce fichier vous allez le mettre dans un dossier french que vous allez mettre dans un un autre dossier appelé localizedstrings.
Dans ce dossier vous allez mettre le texte suivant.
REFERENCE OBJ1
LANG_FRENCH "Passez derrière
le mur."//Ici
vous pouvez mettre des accents, ce que vous ne pouvez pas faire
dans un texte normal.
ENDMARKER.
Voici pour ce petit tutorial.
Bon jeu et bon mapping
Télécharger le pk3. (cod et UO) (Placez-le dans COD ou dans UO, selon le jeu que vous voulez démarrer.)
Pour
CaskAmiProd et MohaaScriptLib
by Tropheus©
mai 2005