Les vstr sont des suites d'instructions qui peuvent être éxécutées d'un coup à l'aide de la commande vstr (ou rcon vstr sur un serv distant, ou amvstr sur un serv distant japlus etc).
On peut lire une instruction "vstr X" comme "exécuter les instructions contenues dans la cvar x". Les instructions doivent être séparées par des ";" et le tout entre guillemets :
ex :
Code: Select all
set MaVstr "faitça ; faitci ; faitautrechose"
Les vstr sont utiles pour réaliser des binds dont l'action est complexe:
Extrait de mon fichier de config perso:
Code: Select all
// Alternance simple/double
seta singlesab "saber kyle;bind , vstr doublesab"
seta doublesab "saber dual_5; bind , vstr singlesab"
//seta dualssab "saber kyle kyle; color1 4; color2 3; bind , vstr singlesab"
bind , vstr singlesab
// Alternance bleu/rouge
seta sabrebleu "color1 4;bind SEMICOLON vstr sabrerouge"
seta sabrerouge "color1 0;bind SEMICOLON vstr sabrebleu"
bind SEMICOLON vstr sabrebleu
Il y a aussi un bon exercice d'entraînement corrigé (identique à cet exemple mais avec plus de fonctions) dans ce vieux document :
Les vstr sont aussi utilisées côté serveur, pour gérer les cycles de map par exemple, car chaque changement de map sur le serv est en réalité l'exécution "vstr nextmap".:
Code: Select all
set cy_CHRISTMAS "vstr cy_CHRISTMAS_1"
set cy_CHRISTMAS_1 "sv_timeout 500;g_gametype 0;timelimit 60;fraglimit 0;map christmas_final;set nextmap vstr cy_CHRISTMAS_2"
set cy_CHRISTMAS_2 "sv_timeout 500;g_gametype 0;timelimit 60;map wintersgift_bf_jr;set nextmap vstr cy_CHRISTMAS_3"
set cy_CHRISTMAS_3 "sv_timeout 500;g_gametype 0;timelimit 60;map blueice_twilight;set nextmap vstr cy_CHRISTMAS_1"
set cy_CHRISTMAS_L "^2Cycle cy_CHRISTMAS : ^73 maps : ^5christmas_final, wintersgift_bf_jr, blueice_twilight"
Je te conseille de potasser les exemples que je t'ai donné dans l'ordre pour voir la logique en dessous.
Pour voir plein d'autres exemples plus gros et plus complexes, je te conseille de faire joujou avec mes programmes
viewtopic.php?f=3&t=111 Générateur de cycles de map (qui a généré l'exemple juste au dessus)
viewtopic.php?f=3&t=112 Générateur de scripts de téléportation.
viewtopic.php?f=3&t=128 Vstr côté serveur
Voili voilou