DeutschEnglishDutchFrench
Accueil Nouvelles Notre monde Communauté
Downloads Compte Arindal Aide & Assistance
Débuter
Macros
F.A.Q.
Règles
Contact
Crédits
Recherche
Mentions légales
Donations
basé sur le texte "Clan Lord Macro Instructions" par Delta Tao

Table des Matières

Informations Générales
Types de Macros
Attributs
Variables
Commandes

Informations Générales

Différences entre fichiers Mac et Windows

Comme le langage macro a été créé à l'origine sur Macintosh, beaucoup de fichiers macros trouvé sur Internet risquent d'être au format Mac (Mac Roman). Malheureusement le programme Windows ne reconnait que les macros au format UTF-8.

Pour faciliter la transition au nouveau format, les utilisateurs Windows bénéficient d'un simple utilitaire de conversion, pour transférer de vieilles macros Mac, quasi inéditables sous Windows, en UTF-8 (choisissez Options -> Convert Mac Macro).

Sous Windows XP vous devez pouvoir ouvrir directement la macro, choisir "save as", dans le champ "coding" choisir "UTF-8" et tout devrait fonctionner.

Au cas où vous prévoyer d'utiliser une macro Mac sans la modifier, il suffit de lui ajouter l'extension .mac — elle sera alors lue comme Mac Roman.

Comment Arindal charge les fichiers Macro

Quand vous vous connectez au jeu ou quand vous choisissez "Reload Macros" dans le menu Options, Arindal va charger le fichier de même nom que votre personnage depuis le dossier Macros. Si le fichier n'existe pas, il est créé. Le dossier macros et un fichier intitulé "Default" sont aussi créés si ils n'existent pas. Vous pouvez indiquer à Arindal de lire d'autres fichiers situés dans le dossier Macros en incluant une ligne comme:

include "Default"
include "Macros de Druide"

Cette commande charge le fichier choisi exactement comme si il était inséré à l'endroit de "include".

Déclarations de Macros

Une macro est l'association d'un "déclencheur" qui définit quand elle doit arriver, et une ou plusieurs "commandes" qui décrivent quoi faire. Il y a deux manières possibles de déclarer une macro. Si elle comprend plus d'une commande il faut utiliser la forme longue, avec une seule commande on peut utiliser forme courte ou longue.

FORME COURTE

déclencheur commande

FORME LONGUE

déclencheur
{
commande
commande
commande
(autant de commandes que vous voulez, 1 par ligne)
}

Contrôler l'Éxécution

Dès qu'une macro est éxécutée, la zone de texte affiche un cadre gris. Taper contrôle-échap (sur Mac) ou maj-échap sur Windows (et Java?)) arrêtera l'éxécution de toutes les macros en cours. Il est possible d'utiliser plusieurs macros en même temps. Certaines variables d'environnement peuvent aussi déterminer comment une macro se comporte. Voir la section sur les variables, plus bas.

Caractères d'Échappement

Afin d'utiliser dans une expression certains caractères qui normalement contrôlent le chargement de macros dans Arindal, vous devez les faire précéder d'un backslash (\). Les plus courants :

\\ backslash
\" double guillemet
\' guillemet simple
\r retour

NOTE: Quand vous tapez directement une commande dans Arindal, vous pouvez commencer indiféremment par un slash en avant ou en arrière : / et \ marcheront ausi bien. A l'intérieur d'une macro cependant, vous DEVEZ utiliser '/ ': écrivez "/action" et NON "\action"

Commentaires

Toute ligne ou texte commençant par // est considéré comme commentaire et est ignoré dans l'éxécution.

// Ceci est une commentaire

Tout texte placé entre /* et */ est aussi un commentaire. Ce type de commentaire peut englober plusieurs lignes.

/*
Ceci est un commentaire plus long
qui occupe plus d'une ligne
*/

Types de Macros

Macro d'Expression

"expression" (l'expression entre guillemets - sensible aux minuscules et majuscules)

Celles-ci sont déclenchées quand elles commencent la ligne et en tapant la touche Retour. Une expression contenant des espaces ne marchera pas comme déclencheur, car seul le premier mot de la ligne est examiné dans la comparaison.

Examples

"lol" "/action éclate de rire.\r"

"jump" "/action saute gracieusement par-dessus " @text "\r"

"grfem"
{
"Bonjour gente damoiselle"
@text
"!\r"
}

Macros de Remplacement

'remplace' (le mot à remplacer entre apostrophes- sensible à la casse)

Celles-ci sont déclenchées quand vous tapez toute touche qui n'est pas une lettre ou un chiffre, et que le déclencheur est le dernier mot avant le point d'insertion. Si vous tapez Retour, le dernier mot de la ligne est comparé au déclencheur. Vous pouvez taper un espace ou Retour sans déclencher une macro de remplacement en maintenant enfonçée la touche Contrôle. Les macros de remplacement sont à effet immédiat, vous ne pouvez donc pas utiliser de commandes qui causent un délai, ni caractères de retour (\r). Un bon usage de macros de remplacement consiste en abbréviations qui se complètent automatiquement, comme dans les deux premiers exemples ci-dessous.

Exemples

'SF' "Forêt du Sud"
'DOA' "Defenders of Arilon"

'hi'
{
random
"\'lut"
or
"Hallo"
or
"Salut"
or
"B\'jour"
end random
}

Macros de Touches

touche
modificateur-touche
modificateur1-modificateur2-touche
(la touche à presser, et autant de modificateurs que vous voulez)

Les macros de touches sont déclenchées en tapant la combinaison de touches spécifiée. Si une combinaison faisait normalement quelque chose et que vous lui attribuez une macro, celle-ci sera utilisée à la place de l'action d'origine. Par exemple, une macro Pomme-p prendrait le dessus sur la Commande de menu "Pull" qui est attribuée par défaut à cette combinaison.

Pour la plupart des touches, le nom de la touche est celui du caractère imprimé en la tapant, mais certaines ont des noms particuliers :

Touches
f1 - f15, escape, minus, delete, tab, return, space, help, home, undo, del, end, pageup, pagedown, up, down, left, right, clear, enter, click

Modificateurs
command, control, numpad, option, shift

Touche Option (mac seulement)
L'utilisation de la touche Option avec des lettres est un peu délicate car cela a souvent pour effet de changer la lettre. Par exemple: sur la plupart des claviers et systèmes américains, taper option-s produit le simple caractère ß. Pour utiliser option-s comme touche de macro, il faudra utiliser le caractère modifié par option dans la définition de macro. C'est-à-dire que des macros définies comme suit produiront le texte "ceci marche" quand vous tapez option-s:

option-s "ceci échoue"
option-ß "ceci marche"

Note : le logiciel Windows résoud ce problème donc utiliser 'option-s' etc marche comme prévu.

Touche"Click"
La touche "click" permet de déclencher des actions en cliquant sur un joueur avec certains modificateurs. Ceci marche aussi bien dans la fenêtre de jeu que dans la liste des joueurs. La seule exception est qu'une macro associée à un simple clic ne marchera pas dans la fenêtre de jeu (cela vous rendrait incapable d'utiliser la fenêtre!).

Win, Java et OS X seulement: Avec une souris multi-boutons, vous pouvez aussi utiliser les noms "click2", "click3", etc. Ceux-ci sont appelés en pressant le bouton correspondant. Il vous faudra peut-être expérimenter un peu pour trouver à quels numéros correspondent les boutons de votre souris. "Click2" est presque toujours le bouton secondaire ou bouton de droite, mais après ça l'ordre dépend du fabricant. "Right-click" est synonyme de "click2".

Exemples

f1 "/action remue la queue.\r"

command-m "/give " @selplayer.simple_name " 1\r"

shift-enter "/action " @text "\r"

command-option-µ "/pull " @selplayer.simple_name "\r"
// Pour Mac µ au lieu de m, à cause de la touche option)

command-control-numpad-option-shift-minus "BEER!\r"

control-option-click
{
if @click.name != ""
"Hors de mon chemin " @click.name " !\r"
end if
}

Touches "Roulette"
Win, Java et OS X seulement: Si vous avez une souris avec une roulette de défilement, vous pouvez attribuer des macros à cette roulette. Utilisez "wheelup" pour réagir quand vous scrollez vers le haut et "wheeldown" dans la direction inverse. Vous pouvez aussi définir des macros pour "wheelleft" and "wheelright", mais elles ne marcheront que si: (a) vous avez vraiment une roulette horizontale, ou (b) avec OS X 10.2 ou plus récent, vous enfoncez la touche Maj en utilisant la roulette normale (verticale).

Macros de Fonctions

déclencheur (simplement le mot comme nom de la fonction)

Les macros de fonctions sont déclenchées par une commande "call" à l'intérieur d'une autre macro. Voir la section sur les commandes pour plus de détails.

Macro "@login"

Si vous définissez une fonction intitulée "@login", celle-ci se déclenchera automatiquement lors de votre connexion au jeu, ou à chaque fois que rechargez les macros avec l'article de menu "Reload Macros".

Exemples

@login
{
"/action baille et s\'étire\r"
pause 4
"/pose sit\r"
}

Attributs

Un attribut est une ligne que vous pouvez insérer dans une macro pour modifier son comportement. Cet attribut n'est pas éxécuté à un point précis de la macro car il contrôle son interaction même avec Arindal, il peut donc être placé n'importe où dans la macro. Tous les attributs commençent avec le caractère $.

Attributs Valides

$ignore_case
N'affecte que les macros d'expression et de remplacement; fait éxécuter la macro sans tenir compte de la casse.

$any_click
Normalement les macros de clic ne marchent que quand vous cliquez sur un joueur. Une macro utilisant cet attribut fonctionnera au moindre clic dans la fenêtre de jeu.

$no_override
Normalement l'éxécution de macros prend le dessus sur toute action de touche, clic, ou frappe de texte. Avec cet attribut la macro sera exécutée, ainsi que l'action normale de la touche ou du clic.

Exemples

shift-click
{
$no_override
$any_click
"/pref movement toggle\r"
}

click
{
$no_override
$any_click
"/pref movement hold\r"
}

// Un duo de macros qui vous permet avec Maj et clic
// d'utiliser le mode 'click toggles' et de cliquer normalement
// pour le mouvement 'click and hold'.

Variables

Une variable est le mot en programmation pour un nom qui se voit attribuer une autre valeur. Par exemple, on pourrait avoir une variable appelée race; nous pouvons attribuer à cette variable la valeur "Maqua". Maintenant chaque fois que l'on se référera au nom race, "Maqua" y sera substitué. Plus tard nous pouvons changer race en "Elithren". Nous pouvons alors faire exactement ce qu'on a fait avant, mais chaque référence à race utilisera maintenant "Elithren".

Variables Globales

Ces variables sont définies pour toutes les macros que vous utilisez. Pour en définir une, il suffit d'une déclaration set qui ne soit pas à l'intérieur d'une macro..

set num 1
set qui "Keriul"

Remarquez que si la variable est du texte, elle est entre guillemets; pour une valeur numérique, pas de guillemets.Nous pouvons maintenant utilser ces variables dans n'importe quelle macro:

"vartest2"
{
"Salut" qui" tu es numéro " num "\r"
}

Cela produira:
>Salut Keriul tu es numéro 1 (retour)

Variables Locales

Ces variables ne sont définies que pour la macro à l'intérieur de laquelle elles sont déclarées. La déclaration est la même que pour une variable globale, sauf qu'elle s'effectue dans une macro.

"vartest2"
{
set num 1
set qui"Keriul"
"Salut" qui" tu es numéro " num "\r"
}

Cela produira:
>Salut Keriul tu es numéro 1 (retour)

Maintenant imaginons que nous n'avions pas ces déclarations globales comme précédemment, et vartest1 et vartest2 dans le même fichier macro.

"vartest1"
{
"Salut" qui" tu es numéro " num "\r"
}

"vartest2"
{
set num 1
set qui"Keriul"
"Salut" qui" tu es numéro " num "\r"
}

vartest1 produira:
>Salut tu es numéro (Retour)

Dans vartest1 les variables qui et num ne sont pas définies, alors elles ne comptent pour rien!

Définir des Variables Globales à l'intérieur d'une macro

Supposons que vous ayez une variable globale pour qui et que vous voulez une macro capable de la modifier. Pour cela il faut utiliser la commande setglobal à l'intérieur de la macro:

set qui "Kerial"

"set1"
{
setglobal qui "Ternia"
}

"vartest1"
{
"Salut" qui"\r"
}

Utiliser vartest1 produira:
>Salut Kerial (retour)

Mais si vous tapez
>set1 (retour)

la macro set1 macro s'éxécute et change la variable globale, et lancer vartest1 à nouveau produira:
>Salut Ternia (Retour)

Variables Globales et Locales avec le même nom

Ceci est plus clair avec un exemple, mais vous pouvez utiliser le même nom pour une variable globale ET une variable locale. Si vous modifiez la variable localement, la globale ne sera pas affectée; elle restera la même dans toutes les autres macros que celle où une variable locale du même nom est maintenant définie.

set qui "Kerial"

"set1"
{
set qui "Ternia"
"Salut" qui"\r"
}

"vartest1"
{
"Salut" qui"\r"
}

Utiliser set1 produira:
>Salut Ternia (retour)

Mais vartest1 produira encore:
>Salut Kerial (retour)

Variables propres à Arindal

Certaines variables spéciales vous permettent de contrôler comment Arindal charge et gère les macros. D'autres se rapportent à votre personnage ou aux autres. Toutes ces variables spéciales commencent par un @, en voici une liste:

Variables @env
Les variables avec un préfixe @env contrôlent le mode d'éxécution des macros.

@env.echo (true/false)
Quand défini sur true, puis après tout \r dans une macro, remplace le texte dans la zone de frappe par le texte complet produit par la macro.

@env.debug (true/false)
Quand défini sur true, donne plus de détails sur le chargement et l'éxécution des macros.

@env.key_interrupts (true/false)
Quand défini sur true, presser une touche stoppe l'éxécution de macros.

@env.click_interrupts
Quand défini sur true, cliquer dans la fenêtre de jeu (là où ça fait bouger votre perso) stoppe l'éxécution de macros.

Variables @my
Les variables avec un préfixe @my se réfèrent à votre personnage.

@my.name
Le nom de votre personnage.

@my.simple_name
Le nom simplifié de votre personnage (sans espaces ni ponctuation)

@my.right_item, @my.left_item
Le nom des objets dans votre mains droite ou gauche.

@my.forehead_item, @my.neck_item, @my.shoulders_item, @my.arms_item, @my.gloves_item, @my.finger_item, @my.coat_item, @my.cloak_item, @my.torso_item, @my.waist_item, @my.legs_item, @my.feet_item, @my.head_item
Les noms d'objets équipés sur d'autres parties du corps.

@my.selected_item
Le nom de l'objet sélectionné dans la fenêtre d'inventaire.

Variables @selplayer
Les variables avec un préfixe @selplayer se réfèrent au personnage sélectionné.

@selplayer.name
Nom du personnage sélectionné.

@selplayer.simple_name
Nom simplifié du personnage sélectionné (sans espaces ni ponctuation).

Variables @click
Les variables avec un préfixe @click se réfèrent au personnage sur lequel un clic a déclenché une macro.

@click.name
Nom du personnage cliqué.

@click.simple_name
Nom simplifié du personnage cliqué (sans espaces ni ponctuation).

@click.button
Chiffre (de 1 à 8) qui identifie quel bouton de souris a été pressé. Le bouton principal ou de gauche est #1, le bouton secondaire ou de droite est #2, les autres dépendent du fabricant; il faudra faire des tests pour les déterminer sur votre souris.

@click.chord
Nombre qui indique l'état de l'ensemble des boutons de souris. Cette valeur est un bitmap tous les boutons enfoncés, avec le bit d'ordre le plus faible correspondant au bouton #1.

Variables Diverses

@text
L'ensemble du texte dans la zone de frappe au moment du déclenchement de la macro. (moins l'expression de la macro le cas échéant)

@textsel
Le texte sélectionné dans la zone de frappe au moment du déclenchement de la macro.

@random
Un nombre entre 0 et 9999, généré aléatoirement à chaque appel de cette fonction.

Mots et Lettres

En ajoutant ces suffixes à la fin de n'importe quelle variable, vous pouvez vous référer à des mots ou lettres de sa valeur.

.word[n]
Le n-ième mot d'une variable. Le premier mot est numéroté zéro.

.num_words
Le nombre de mots dans une variable.

.letter[n]
La n-ième lettre d'une variable. La première lettre est numérotée zéro.

.num_letters
Le nombre de lettres dans une variable.

Noms Courts d'Objets

Comme Arindal est multilingue, les objets changent de nom selon le language utilisé, ce qui peut être problématique quand vous voulez utiliser des macros écrites par quelqu'un d'autre (ou pour diffuser les vôtres). La plupart des objets courants ont donc un nom court unique, commençant par la lettre % et en 4 lettres: ex. %lfcy pour le Cristal de Vie. Vous pouvez utiliser le nom court n'importe où dans une macro, en lieu et place du nom complet. Voici une liste temporaire de tous les noms courts actuellement définis.

%prse purse, Geldbörse, Beurs, bourse

%bram brambleberry cluster, Brombeerstrauch, takje braambessen, baie de ronces

%lila lilaberry cluster, Lilabeerstrauch, takje lilabessen, baie des forêts

%orga orgaberry cluster, Orgabeerstrauch, takje orgabessen, baie des marais

%dggr dagger, Dolch, dolk, dague

%shsw short sword, Kurzschwert, kort zwaard, épée courte

%wdsh wooden shield, Holzschild, houten schild, bouclier de bois

%lfcy lifecrystal(moonstone), Heilkristall, levenskristal, Cristal de vie

%club roguewood club, Wurzelholzknüppel, knuppel, gourdin noueux

%hlmt leather helmet, Lederhelm, leren helm, casque de cuir

%mdcy mindcrystal(sunstone), Gedankenkristall, denkkristal, PensePierre

%lcsh lifecrystalshard, Heilkristallsplitter, levenskristalscher, fragment de Cristal de vie

%trdg training dagger, Trainingsdolch, trainingsdolk, dague d'entraînement

%brkg beer keg, Bierfass, biervat, tonneau de bière

%brmg beer mug, Bierkrug, bierkroes, bock de bière

%axee axe, Axt, bijl, hache

%kdzu kudzu seedling, Kudzusetzling, kudzu zaadje, graine de Kudzu

%mgcy strange crystal, Seltsamer Kristall, vreemd kristal, cristal bizarre

%mgst staff, Stab, magiërs staf, bâton

%tnbx tinderbox, Zunderbüchse, vuurdoos, pierre à briquet

%pchm piece of parchment, Stück Pergament, stuk perkament, feuille de parchemin

%ltgl leather gloves, Paar Lederhandschuhe, paar leren handschoenen, paire de gants de cuir

%trch torch, Fackel, fakkel, torche

%inkk bottle of ink, Tintenfass, inktfles, bouteille d'encre

%qull quill, Federkiel, schrijfveer, porte-plume

 

Commandes

Si une ligne de texte commence avec un mot correspondant à une commande, Arindal effectue des actions spéciales (décrites plus bas pour chaque commande). Autrement, les mots de cette ligne sont interprétés comme du texte simple. Vous ne pouvez utiliser qu'une commande par ligne. Vous pouvez utiliser des variables pour tout paramètres des diverses commandes.

Texte

"<texte>"
<variable>

Si le premier mot d'une ligne n'est pas une autre commande, Arindal considère cette ligne comme du texte. Tout texte entre guillemets est inséré tel quel. Toute expression sans guillemets est considérée comme une variable, et la valeur correspondante (si définie) est insérée. Lors de l'éxécution d'une macro, le texte est mémorisé jusqu'à l'apparition d'un caractère de retour de ligne "\r", auquel moment l'ensemble du texte est envoyé, suivi d'une pause d'une frame. Si il y a du texte après le dernier "\r" de la macro, ce texte est inséré dans la zone de frappe. Cela signifie que si il n'y a aucun caractère "\r", le texte est simplement inséré dans la zone de frappe, sans être envoyé au serveur.

Exemples

"gr"
{
"Salut"
@selplayer.name
"!\r"
}

Produira:
>Salut Robert! (Retour)
// Si vous avez sélectionné Robert.

 

"/dodo"
{
"/pose lie\r" "/action s\'allonge et ferme les yeux.\r"
pause 10
"/sleep\r"
}

Produira:
>/pose lie (Retour)
>/action s\'allonge et ferme les yeux. (Retour)
(Attente pendant 10 frames)
>/sleep (Retour)

 

f1 "/thinkto " @selplayer.simple_name " " @text "\r"

Produira:
>/thinkto Thyin Où est-ce que tu chasses? (Retour)

// Si vous avez tapé "Où est-ce que tu chasses" et avez sélectionné Thyin.

f13 "Tergon d\'Aleria mon\'Savreyte von Wendia"

// Insère votre nom très compliqué comme si vous l'aviez tapé.

Sortie de texte Multilingue

/multi %l<numéro de langue de 1 à 3>

Bien que ce soit une commande de client, insérer l'option /multi après n'importe quelle expression de texte (/say, /yell, /ponder etc) cherchera des balises %l et n'affichera le texte suivant la balise qu'à ceux utilisant le langage correspondant.

Exemple

F1 "/say /multi Hello%l1Hallo%l2Hallo%l3Salut\r"


Produira:
Hallo en allemand et hollandais, Salut en français

Pause

pause <nombre>

Suspend la macro pendant <nombre> frames.

Exemples

shift-#
{
"/pose sit\r"
pause 1
"/pose leanleft\r"
pause 1
"/pose leanright\r"
pause 1
"/pose stand\r"
pause 1
}

// Fait effectuer une petit danse à votre perso (avec maj-3 sur mac)

"pn"
{
"/action s\'asseoit et se gratte la tête.\r"
pause 20
"/ponder " @text "\r"
}

// Si votre personnage est un peu simplet, ajoute une pause à vos réflexions.

Set

set <nom de variable> <valeur>
OU
set <nom de variable> <opérateur> <valeur>
<opérateur> doit être + - * / %

Définit une variable locale ou effectue une opération sur sa valeur actuelle (voir la section sur les variables). L'opérateur + peut être utilisé pour associer deux chaînes de caractères, mais tous les autres opérateurs assument des variables numériques et retourneront une valeur numérique.

chaîne + chaîne = association ("a" + "b" = "ab")
nombre + nombre = addition (1 + 2 = 3)
chaîne + nombre = association ("a" + 2 = "a2")
nombre + chaîne = pas possible (1 + "b" : "Syntax error")

SetGlobal

setglobal <nom de variable> <valeur>
OU
setglobal <nom de variable> <opérateur> <valeur>
<opérateur> doit être + - * / %

Définit une variable globale ou effectue une opération sur sa valeur actuelle.

Exemples

set @env.echo true

f7
{
set @env.echo false
"/action tourne sur elle-même avant de s\'écrouler.\r"
}

// Pendant cette macro, le texte ne sera pas reproduit dans la zone de frappe malgré la variable globale.

f8
{
set num 1
num "\r"
set num + 4
num "\r"
set num2 6
num2 "\r"
set num + num2
num "\r"
}

help
{
if @env.debug == true
setglobal @env.debug false
else
setglobal @env.debug true
end if
}

// active et désactive le mode déboguage avec la touche help

option-return
{
set on @text.num_words
set on - 1
label mark
@text.word[on]
if on > 0
" "
set on - 1
goto mark
end if
"\r"
}

// fait parler à l'envers

Call

call <fonction>
<fonction> doit être une fonction déclarée et valide

Exécute la macro de fonction choisie à cet endroit. Cette fonction et la macro qui l'appelle partagent leurs variable locales.

Exemples

subroutine
{
qui" est un(e)" prof ".\r"
}

f6
{
set qui "Reizende"
set prof "Druidesse"
call subroutine
set who "Abe"
set prof "Mage"
call subroutine
}

Random

random <option>
<commandes>
ou
<commandes>
ou
<commandes>
...
end random

<option> peut être "no-repeat"

Choisit au hasard un des éléments de la liste. Si l'option "no-repeat" est spécifiée, le même élément ne sera pas utilisé deux fois de suite, à moins qu'il n'y ait qu'un seul choix possible (auquel cas "no-repeat" est impossible). Si "no-repeat" n'est pas spécifié, chaque possibilité à la même probabilité.

Examples

"greet"
{
random
"\'lut "
or
"Hallo "
or
"Salut "
or
"B\'jour "
end random
@selplayer.name "\r"
}

f10
{
"/action "
random no-repeat
"sourit."
or
"grimace."
or
"ricane."
end random
"\r"
}

// la même expression n'apparaîtra jamais deux fois de suite

If

if <expression> <comparaison> <expression>
<commandes>
else if <expression> <comparaison> <expression>
<commandes>
else
<commandes>
...
end if

<expression> peut être une variable, du texte ou un nombre
<comparaison> peut être >, <, <=, >=, ==, !=
== signifie "égal à"
!= signifie "différent de"

Cette déclaration éxécute les commandes après if si la comparaison entre les expressions est satisfaite. Si elle ne l'est pas, elle passe au else suivant. Les expressions peuvent être des valeurs numériques ou des chaînes de caractères (auquel cas < et > sont interprétés comme "est une sous-chaîne de").

Exemples

f11
{
if @text <= "tue"
"/action hurle de rage!\r"
else if @text <= "paix"
"/action sourit et offre un bouquet de fleurs.\r"
else
"/action reste assis sans rien faire.\r"
end if
}

// Cherche certains mots dans @text

 

"/give"
{
"/give " @selplayer.name " " @text "\r"
set num @text
if @text <= 10
"/action lance à " @selplayer.name " quelques pièces.\r"
else if @text <= 100
"/action tend à " @selplayer.name " une bourse bien pleine.\r"
else if @text <= 1000
"/action dépose un énorme sac de pièces dans les bras de " @selplayer.name ".\r"
else
"/action révèle à " @selplayer.name " l'endroit ou est caché son butin secret.\r"
end if
}

// Pour des transactions un peu personnalisées.

Label

label <nom de label>

Définit un endroit dans une macro comme cible possible pour une commande goto.

Goto

goto <nom de label>

Va directement au label spécifié et continue l'éxécution à ce point. Avec les commandes goto et label vous pouvez définir des opération en boucle (si jamais vous êtes coincé dans une boucle sans fin, pensez à control-échap qui arrête toutes les macros).

Exemples

f12
{
set num 0
label mark
set num + 1
if num < 10
pause 5
"Compte: " num "\r"
goto mark
end if
}

Message

message "<texte>"
message <variable>

Marche tout comme la commande text , mais le résultat apparaît dans la colonne de texte latérale. Il n'est pas nécessaire de spécifier un "\r" en fin de ligne. (Bien sûr le texte ne s'inscrit que dans VOTRE fenêtre latérale, et n'apparaît pas dans les enregistrements).

Exemples

"msg"
{
message @text
}

 

 
Add to: Mr. Wong Add to: Webnews Add to: Favoriten.de Add to: Newsider Add to: Yigg Add to: Digg Add to: Del.icoi.us Add to: Simpy Add to: Slashdot Add to: Yahoo Add to: Technorati Add to: Smarking Add to: Spurl Add to: Google Information
Social Bookmarking

© 2012 FairTales Entertainment, NL • All Rights reserved