1. mapping
Dans un premier temps, réalisez une pièce
avec de la lumière. Rajoutez votre "info_Player_start" Une fois cela terminé, nous allons
mettre une table qui servira pour déposer les "documents à voler".
Pour
cela, dans la vue 2D, clic-droit/static/furniture/bunkertable. et une table apparaît sur l'écran.
Positionnez-la, comme il faut
(mettez en grille 1 si nécessaire).
La seconde étape consiste à
placer les documents à voler.
Positionner un "script_origin" (Vue
2D, clic droit/script/origin) à
l'endroit où doivent venir les documents.
Donnez lui les key et value suivantes
(touche "N")
$targetname / document
model / models/items/documents1a.tik
Positionnez les documents de façon
à les poser sur la table. (utiliser la grille1 si nécessaire).
Créez maintenant un brush qui
englobera les documents, comme ceci :
Gardez-le sélectionné, puis dans la
vue 2D "clic droit/trigger/use"
Appuyer
sur la touche "N" et entrez les données suivantes
: key / value
setthread / objective1
Voici la partie mapping terminée,
passons au script.
2. scripting
Ouvrez comme d'habitude "notepad" et
enregistrez votre script du même nom que votre map sans
oubliez l'extension.scr : ici "test_voldoc.scr"
écrivez ceci :
//mon script "vol de doscuments"
//Architecture : Tropheus
//Script : Tropheus
exec global/ai.scr
exec global/loadout.scr maps/test_voldoc.scr
main:
level waittill prespawn
$player stufftext "tmstart sound/music/mus_15a_mystery.mp3"
level waittill spawn
$player item weapons/colt45.tik
$player ammo pistol 1000
waitthread global/objectives.scr::add_objectives 1 2 "Voler
les documents." $document.origin
set_objective_pos $document
level.script = level.test_voldoc.scr
end
////////////////////////////////////////////////////////////////////////////////
objective1:
$document remove
goto levelend
end
///////////////////////////////////////////////////////////////////////////////
levelend:
waitthread global/objectives.scr::add_objectives 1 2 "Voler
les documents" $obj1.origin
waitthread global/objectives.scr::current_objectives 0
iprintln "Mission terminée."
exec global/missioncomplete.scr test_voldoc
end
Allez, quelques explications.
//mon script "vol de documents"
//Architecture : Tropheus
//Script : Tropheus
exec global/ai.scr
exec global/loadout.scr maps/test_voldoc.scr
main:
level waittill prespawn
$player stufftext "tmstart sound/music/mus_15a_mystery.mp3"//musique
maestro !
level waittill spawn
$player item weapons/colt45.tik//une
arme
$player ammo pistol 1000//des munitions
waitthread global/objectives.scr::add_objectives 1 2 "Voler
les documents." $document.origin//affiche
l'objectif (touche tab)
set_objective_pos $document//attire
le compas vers les documents à voler.
level.script = level.test_voldoc.scr
end
///////////////////////////////
objective1://activé par la
touche action dans le jeu au niveau du trigger_use.
$document remove//enlève les
documents de la table
goto levelend
end
/////////////////////////////
levelend:
waitthread global/objectives.scr::add_objectives 1 2 "Voler
les documents" $document.origin
waitthread global/objectives.scr::current_objectives 0
iprintln "Mission terminée."//s'afiiche à la
fin de la
partie.
exec global/missioncomplete.scr test_voldoc//on
retourne faire un tour pour voir.
end
Bon, voici une encore une map avec un objectif bien défini.
Ce tutorial c'est largement inspiré de celui de Manstein "Scripting SP-Objectives Part I" de "Manstein leveldesign"
Tropheus.