Premiers Scripts
Un article de Wiki-Mapping.
(Différences entre les versions)
Version du 5 septembre 2006 à 23:30 (modifier) Psylopat (Discuter | contribs) ← Différence précédente |
Version actuelle (26 octobre 2007 à 09:38) (modifier) (défaire) Psylopat (Discuter | contribs) M |
||
Ligne 127: | Ligne 127: | ||
} | } | ||
</pre> | </pre> | ||
+ | |||
+ | [[Category:Scripting]] |
Version actuelle
Cette page ne decrit pas les entités nécessaire au fonctionnement de ces scripts. Consultez les tutos correspondant dans la section GtkRadiant.
Sommaire |
[modifier] Func_destructible
Les Allies doivent detruire une porte.
door_script { spawn { wait 200 constructible_class 3 //Destructible uniquement avec une dynamite } death //Execute lors de la destruction de la porte { wm_announce "Allies breached the Axis door" setstate door invisible //Fait disparaitre la porte } }
[modifier] Func_constructible
Les Allies doivent dynamiter une porte reconstructible par les Axis ...
door_r_script { spawn { wait 200 constructible_class 2 //Peut etre detruit par une satchel } buildstart final { } built final //Fin de la construction { setstate door default //Afficher la porte setstate door_materials invisible //Rendre invisible les materiaux (generalement les caisses de construction) wm_announce "The Axis door has been constructed" } decayed final //Pour revenir à la position initiale si la porte n'est pas finie de construire { trigger self startup //Appel le sous-bloc startup du bloc actuel (door_r_script) } death //Appellé lors de la destruction de la porte { trigger self startup //Idem que ci-dessus wm_announce "The Axis door has been breached" setstate door_materials default //Euh, je doute de l'utilité de cette ligne puisqu'elle existe plus bas ... } trigger startup //Etat de la porte non construite ou detruite { setstate door invisible //Porte invisible setstate door_materials default //Affiche les matériaux de construction } }
[modifier] Team_CTF_redflag
Radar. Les Axis doivent capturer et rapporter un module de radar ...
allied_radar //Ceci correspond à l'entree 'scriptname' de l'entite team_CTF_red/blueflag { spawn { wait 200 setstate allied_radar_captured invisible //L'objectif dans le camion est invisible } trigger stolen //Execute lorsque les Axis prennent le radar set { wm_announce 0 "Return the Allied radar set to the getaway truck" //Annonce pour les Axis wm_announce 1 "The Axis have stolen the Allied radar set" //Annonce pour les Allies setstate allied_radar_cm_marker invisible } trigger returned //Execute lorsque les Allies recupere le radar set { wm_announce 0 "The Allies have retrieved the radar set" wm_announce 1 "Radar set returned! Protect the radar set" setstate allied_radar_cm_marker default } trigger captured //Execute lorsque les Axis securise le radar set { wm_announce "The Axis have secured the Allied radar components" setstate allied_radar_red invisible //Rend la trace du radar non capture invisible setstate allied_radar_captured default //Affiche le radar capture } }
[modifier] Compteur d'objectif
A placer dans game_manager
trigger objective_counter //Compte le nombre d'objectifs que les Allies ont completes { accum 1 inc 1 //Augmente de 1 la valeur precedente de l'accum 1 trigger game_manager checkgame //Appelle la fonction checkgame de game_manager qui determine si la partie est gagnee }
[modifier] Script pour déterminer si la partie est gagnée
A placer dans game_manager
trigger checkgame { accum 1 abort_if_not_equal 1 //Est-ce que les objectifs sont completes ? wm_setwinner 0 //Les Axis gagnent (Allies=1) wait 1500 wm_endround //Fin de la partie }