Quelques astuces générales

A few general tips

désactivation de code
monstre.vie = 10;   Cette ligne est exécutée.
// monstre.vie = 5; Cette ligne n'est pas exécutée.
code deactivation
  monster.life = 10;   This line is executed.
  // monster.life = 5; This line is not executed.
les +=, -=, =
heros.vie += 10; // Ajoute 10 à la vie du heros
heros.vie -= 10; // Retire 10 à la vie du heros
heros.vie =  10; // Le héros aura 10 point de vie
+=, -=, =
  hero.life += 10; // Adds 10 points to your hero’s life
  hero.life -= 10; // Removes 10 points to your hero’s life
  hero.life =  10; // Your hero will have 10 points of life
grilleX, grilleY
  heros.grilleX; // Représente la position du héros en x sur la grille (Sa colonne)
  heros.grilleY; // Représente la position du héros en x sur la grille (Sa ligne)
gridX, gridY
  heros.gridX; // Represents your hero’s x on the grid (his column)
  heros.gridY; // Represents your hero’s y on the grid (his line)


Monstres

Monsters

Quand déclencher ?

When to trigger?

toujours
toujours(function () {
    monstre.vaVers(heros);      // Le monstre va toujours vers le héros
});
always
always(function () {
    monster.goTo(hero);      // The monster always goes towards the hero
});
quand 'est créé'
quand('est créé', function () { // Quand le monstre apparaît...
    monstre.vie = 50;           // il a 50 de vie
});

when 'start'
when('start', function () {    // When the monster appears...
    monster.life = 50;           // he has 50 life points
});

quand 'meurt'
quand('meurt', function () {    // Quand le monstre meurt...
    heros.vie += 10;            // le héros gagne 10 de vie
});
when 'dies'
when('dies', function () {    // When the monster dies...
    hero.life += 10;            // it adds 10 points to your hero’s life
});
quand 'tire'
quand('tire', function (balle) {   // Quand le monstre tire...
    monstre.angleVise += 0.1;      // son angle de visée augmente de 0.1 radians
});

when 'shoot'
when('shoot', function (bullet) { // When the monster shoots...
    monster.shootAngle += 0.1;    // His aiming angle increases by 0.1 radians
});
quand 'est arrivé'
quand('est arrivé', function () {   // Quand le monstre est arrivé à destination...
    monstre.vaVers(3, 2);           // il va à la position x=3, y=2
});

when 'goal reached'
when('goal reached', function () {   // When the monster has reached his destination...
    monster.goTo(3, 2);           // he goes to the position: x=3, y=2
});

quand 'est frappé'
quand('est frappé', function (dommages) {   // Quand le monstre est en train d'être frappé par le héros
    monstre.vie -= dommages;                // il perd un nombre de points de vie précalculé, vous pouvez le modifier ici
});
when 'take damage'
when('take damage', function (damages) {   // When the monster is being struck by your hero
    monster.life -= damages;               // he loses a preset number of life points, you can modify this number here
});


Perception

Perception

espece
monstre.espece();          // fournit le nom de l'espèce du monstre, respectivement 'A', 'B' ou 'C'
species
monster.species();        // provides the name of the monster’s species, respectively 'A', 'B' or 'C'

distance
monstre.distance(4, 8);    // fournit la valeur de la distance entre le monstre et la case 4, 8
monstre.distance(heros);   // fournit la valeur de la distance entre le monstre et le héros
distance
monster.distance(4, 8); // provides the distance value between the monster and square 4, 8
monster.distance(hero); // provides the distance value between the monster and the hero
angleVers
monstre.angleVers(5, 7);  // fournit la valeur de l'angle en radians entre le monstre et la case 5, 7
monstre.angleVers(heros); // fournit la valeur de l'angle en radians entre le monstre et le héros
angleTo
monster.angleTo(4, 8);  // provides the value in radians of the angle between the monster and square 4,8
monster.angleTo(hero);  // provides the value in radians of the angle between the monster and the hero angle
angle
monstre.angle;     // fournit la valeur de l'angle de l'orientation du monstre (en radians)
angle
monster.angle;     // provides the value of the angle of the monster’s orientation (in radians)

angleEntreViseeEtOrientation
monstre.angleEntreViseeEtOrientation();   // fournit la différence d'angle entre l'orientation du monstre et son angle de visée en radians
angleBetweenAimingAndOrientation
monster.angleBetweenAimingAndRotation();   // provides the difference of angle between the monster’s orientation and his aiming angle in radians

monstreLePlusProche
var plusProcheMonstre = monstre.monstreLePlusProche();   // donne le monstre le plus proche
nearestMonster
var closestMonster = monster.nearestMonster();   // gives the nearest monster




Position

Position

grilleX
monstre.grilleX = 6.5;  // Change la position horizontal du monstre pour le mettre au milieu de la ligne 6.
monstre.grilleX += 1;   // Déplace le monstre de 1 case vers la droite.
monstre.grilleX -= 2;   // Déplace le monstre de 2 cases vers le gauche.
gridX
monster.gridX = 6.5;  // Change horizontal monster position to put it in middle of line 6.
monster.gridX += 1;   // Move monster to 1 square left.
monster.gridX -= 2;   // Move monster to 2 squares right.
grilleY
monstre.grilleY = 6.5;  // Change la position verticale du monstre pour le mettre au milieu de la ligne 6.
monstre.grilleY += 1;   // Déplace le monstre de 1 case vers le bas.
monstre.grilleY -= 2;   // Déplace le monstre de 2 cases vers le haut.
gridY
monster.gridY = 6.5;  // Change vertical monster position to put it in middle of line 6.
monster.gridY += 1;   // Move monster to 1 square down.
monster.gridY -= 2;   // Move monster to 2 squares up.

Mouvements

Movements

vaVers
monstre.vaVers(4, 8);           // Définit un point de destination pour le monstre
monstre.vaVers(heros);          // Le monstre se dirige vers le héros

monstre.vaVers(heros.grilleX + 1, heros.grilleY); // Le monstre se dirige vers la case juste à droite du héros

goTo
monster.goTo (4, 8);           // Defines a destination point for the monster
monster.goTo(hero);          // The monster goes towards your hero
 
monster.goTo(hero.gridX + 1, hero.gridY); // The monster goes towards the square 1 space right from the hero
deplacementIntelligent
monstre.deplacementIntelligent = true; // Le monstre contournera les obstacles au lieu de foncer en ligne droite
usePathFinding
monster.usePathFinding = true; // The monster will go around obstacles instead of walking in a straight line
vitesse
monstre.vitesse = 2;    // Le monstre avancera à la vitesse de 2 cases par seconde
monstre.vitesse = 0.5;  // Le monstre avancera à la vitesse d'une demi case par seconde
speed
monster.speed = 2;    // The monster moves forward at a speed of 2 squares per second
monster.speed = 0.5;  // The monster moves forward at a speed of half a square per second
teleporte
monstre.teleporte(4, 8);    // Téléporte le monstre sur la case 4, 8
teleport
monster.teleport(4, 8);    // Teleports the monster to square 4, 8
neBougePlus
monstre.neBougePlus(); // reste sur place tant qu'on n'exécute pas "monstre.vaVers"

freeze
monster.freeze(); // The monster stays put until the command "monster.goTo" is executed
tourne
monstre.tourneADroite(Math.PI / 2);   // angle de rotation, en radian
monstre.tourneADroite(90, 'deg');     // angle de rotation, en degrés

monstre.tourneAGauche(45, 'deg');

// Attention : ceci ne modifie pas la visée du monstre (voir "vise" dans Attaque)

rotate
monster.rotateRight(Math.PI / 2);   // rotation angle, in radians
monster.rotateRight(90, 'deg');     // rotation angle, in degrees
 
monster.rotateLeft(45, 'deg');
// Does not modify the monster’s aim (see "Aim" in Attack)
changeOrientation
monstre.changeOrientation(Math.PI);       // angle en radian
monstre.changeOrientation(180, 'deg');    // angle en degrés

// Attention : ceci ne modifie pas la visée du monstre (voir "vise" dans Attaque)
setRotation
monster.setRotation(Math.PI);       // angle in radians
monster.setRotation(180, 'deg');    // angle in degrees
 
// Does not modify the monster’s aim (see "Aim" in Attack)
regarde
monstre.regarde(4, 8);    // le monstre regarde la case 4, 8
monstre.regarde(heros);   // le monstre regarde le héros

// Attention : ceci ne modifie pas la visée du monstre (voir "vise" dans Attaque)
lookAt
monster.lookAt(4, 8);   // The monster looks at square 4, 8
monster.lookAt(hero);   // The monster looks at the hero





Attaque

Attack

vise
monstre.vise(4, 8);   // Le monstre vise la case 4, 8
monstre.vise(heros);  // Le monstre vise le héros

// Attention : ceci ne modifie pas l'orientation du monstre (voir "regarde" dans Perception)
aimAt
monster.aimAt(4, 8);   // The monster aims at square 4, 8
monster.aimAt(hero);  // The monster aims at the hero

angleVise
monstre.angleVise += 0.2;          // modifie l'angle de visée du monstre
monstre.angleVise = monstre.angle; // le monstre vise là où il regarde

shootAngle
monster.shootAngle += 0.2;          // Modifie the aiming angle of the monster
monster.shootAngle = monstre.angle; // Now the monster will aim the point that he is looking at
activeTirAuto
monstre.activeTirAuto();     // Le monstre tire désormais à intervalles réguliers
autoShootSet
monster.autoShootSet();     // The monster will now shoot at regular intervals
desactiveTirAuto
monstre.desactiveTirAuto();  // Le monstre ne tire plus à intervalles réguliers
autoShootStop
monster.autoShootStop();     // The monster stops shooting at regular intervals
basculeTirAuto
// le monstre tire
monstre.basculeTirAuto();
// le monstre ne tire plus
monstre.basculeTirAuto();
// le monstre tire
autoShootToggle
// the monster shoots
monster.autoShootToggle();
// the monster stops shooting
monster.autoShootToggle();
// the monster shoots
cadenceTirAuto
monstre.cadenceTirAuto = 2;       // Si le monstre est en mode tir automatique, il tirera toutes les 2   secondes
monstre.cadenceTirAuto = 0.2;     // Si le monstre est en mode tir automatique, il tirera toutes les 0.2 secondes
autoShootCadence
monster.autoShootCadence = 2;       // If the monster is in Autoshoot mode, he will shoot every 2 seconds
monster.autoShootCadence = 0.2;     // If the monster is in Autoshoot mode, he will shoot every 0.2 seconds
tirAutoActif
monstre.tirAutoActif;       // 'true' si le tir auto est en marche, 'false' sinon
autoShootEnable
monster.autoShootEnable;       // 'true' if the Autoshoot is on, 'false' if not
tire
monstre.tire();          // tire immédiatement (voir aussi activeTirAuto pour des tirs automatiques espacés)
shoot
monster.shoot();          // shoots immediately (see also autoShootSet for automatic shots at regular intervals)
visePuisTire
monstre.visePuisTire(4, 8);  // Le monstre vise puis tire immédiatement vers la case ciblée
monstre.visePuisTire(heros); // Le monstre vise puis tire immédiatement vers le héros

aimAndShoot
monster.aimAndShoot(4, 8); // The monster aims then immediately shoots at the aimed square
monster.aimAndShoot(hero); // The monster aims then immediately shoots to the hero

vitesseBalles
monstre.vitesseBalles = 3;      // Les tirs du monstre avanceront à la vitesse de 3 cases par seconde
monstre.vitesseBalles = 0.5;    // Les tirs du monstre avanceront à la vitesse d'une demi case par seconde
bulletSpeed
monster.bulletSpeed = 3;      // The bullets shot by the monster will move at a speed of 3 square per second
monster.bulletSpeed = 0.5;    // The bullets shot by the monster will move at a speed of half a square per second

Defense

Defence

vie
monstre.vie += 20;     // ajoute 20 points de vie au monstre
monstre.vie -= 15;     // enlève 15 points de vie au monstre
monstre.vie =  40;     // le monstre aura 40 de vie
life
monster.life += 20;     // adds 20 points to the monster’s life
monster.life -= 15;     // removes 15 points from the monster’s life
monster.life =  40;     // the monster will have 40 life points

Déclencheurs

Tiles

Quand déclencher ?

When to trigger?

quand 'héros entre'
quand('héros entre', function () {   // quand le héros entre dans le déclencheur...
    heros.teleporte(10, 10);         // il est téléporté sur la case 10, 10
});
when 'hero enter'
when('hero enter', function () {   // When the hero enters the trigger...
    hero.teleport(10, 10);    // he is teleported onto square 10, 10
});
quand 'héros sort'
quand('héros sort', function () {   // quand le héros quitte le déclencheur...
    heros.vitesse = 2;              // sa vitesse passe à 2
});
when 'hero exit'
when('hero exit', function () {   // When the hero exits the trigger...
    hero.speed = 2;              // his speed reaches 2
});
quand 'héros est dedans'
quand('héros est dedans', function () {   // tant que le héros est dans le déclencheur...
    heros.vie += 0.1;                     // sa vie augmente de 0.1 points, et ceci 60 fois par seconde
});
when 'hero stay'
when('hero stay', function () {   // as long as the hero is inside the trigger...
    hero.life += 0.1;             // his life increases by 0.1 points 60 times per second
});
quand 'monstre entre'
quand('monstre entre', function (monstre) {    // quand un monstre entre dans le déclencheur...
    monstre.vitesse *= 2;                      // sa vitesse est multipliée par deux
});
when 'monster enter'
when('monster enter', function (monster) {    // when a monster enters a trigger...
    monster.speed *= 2;                        // his speed is multiplied by 2
});
quand 'monstre sort'
quand('monstre sort', function (monstre) {     // quand un monstre sort du déclencheur...
    monstre.vie = 100;                         // sa vie passe à 100 points
});
when 'monster exit'
when('monster exit', function (monster) {     // when a monster exits a trigger...
    monster.life = 100;                         // his life points equal 100
});
quand 'monstre est dedans'
quand('monstre est dedans', function (monstre) {     // tant qu'un monstre est dans le déclencheur ...
    monstre.vie -= 0.2;                              // sa vie diminue de 0.2 points, et ceci 60 fois par seconde
});
when 'monster stay'
when('monster stay', function (monster) {     // as long as a monster is in the trigger ...
    monster.life -= 0.2;                      // his life decreases by 0.2 points 60 times per second
});

Position

Position

grilleX
declencheur.grilleX;  // Fournit la position horizontale du déclencheur
// contrairement au monstre et au héros, modifier cette valeur n'aura pas d'effet
gridX
tile.gridX;  // holds the horizontal position value of the trigger
// as opposed to the hero and monsters, modifying this value has no effect

grilleY
declencheur.grilleY;  // Fournit la position verticale du déclencheur
// contrairement au monstre et au héros, modifier cette valeur n'aura pas d'effet
gridX
tile.gridY;  // holds the vertical position value of the trigger
// as opposed to the hero and monsters, modifying this value has no effect


Perception

Perception

distance
declencheur.distance(4, 8);      // distance entre le déclencheur et la case 4, 8
declencheur.distance(heros);     // distance entre le déclencheur et le héros
distance
tile.distance(4, 8);      // distance between the trigger and square 4, 8
tile.distance(hero);     // distance between the trigger and the hero
monstreLePlusProche
var monstre = declencheur.monstreLePlusProche(); // donne le monstre le plus proche du déclencheur
nearestMonster
var monster = tile.nearestMonster(); // shows the closest monster to the trigger

Transformation

Transformation

modifier
declencheur.modifier('trou'); // modifie la case sur laquelle se trouve le déclencheur ('sol', 'mur')
declencheur.modifier('bleu'); // modifie le type du déclencheur ('vert', 'orange', 'violet', 'incolore')
modify
tile.modify('hole'); // modifies the square where the trigger is located ('floor', 'wall')
tile.modify('blue'); // modifies the type of trigger ('green', 'orange', 'purple', 'colorless')

Héros

Hero

Position

Position

grilleX
heros.grilleX = 6.5;  // Change la position horizontal du héros pour le mettre au milieu de la ligne 6.
heros.grilleX += 1;   // Déplace le héros de 1 case vers la droite.
heros.grilleX -= 2;   // Déplace le héros de 2 cases vers le gauche.
gridX
hero.gridX = 6.5;  // Change horizontal hero position to put it in middle of line 6.
hero.gridX += 1;   // Move hero to 1 square left.
hero.gridX -= 2;   // Move hero to 2 squares right.
grilleY
heros.grilleY = 6.5;  // Change la position verticale du heros pour le mettre au milieu de la ligne 6.
heros.grilleY += 1;   // Déplace le héros de 1 case vers le bas.
heros.grilleY -= 2;   // Déplace le héros de 2 cases vers le haut.
gridY
hero.gridY = 6.5;  // Change vertical hero position to put it in middle of line 6.
hero.gridY += 1;   // Move hero to 1 square down.
hero.gridY -= 2;   // Move hero to 2 squares up.
orientation
heros.orientation;  // vers où le héros regarde : 'down', 'up', 'right', 'left'
// ne pas confondre avec heros.angle
direction
hero.direction;  // where the hero is looking at : 'down', 'up', 'right', 'left'
// not to confuse with hero.angle

Mouvement

Movement

vitesse
heros.vitesse = 2; // définit la vitesse du héros en cases par seconde
heros.vitesse = 0.5;
speed
hero.speed = 2; // defines the hero’s speed in squares per second
hero.speed = 0.5;
mouvement
// donne la direction du mouvement du héros
heros.mouvement.x;  // 1 (va vers la droite) ou -1 (va vers la gauche) ou 0 (immobile en x)
heros.mouvement.y;  // 1 (va vers le bas) ou -1 (va vers le haut) ou 0 (immobile en y)
// note : le héros peut aller en diagonale, par exemple si heros.mouvement.x et heros.mouvement.y valent 1
dir
// gives the direction of the hero’s movement
hero.dir.x;  // 1 (turn right) or -1 (turn left) or 0 (stay put in x)
hero.dir.y;  // 1 (go down) or -1 (go up) or 0 (stay put in y)
angle
heros.angle;  // vers quel angle se déplace le héros, entre -180° et 180°. Vaut 'false' si le héros est immobile
// ne pas confondre avec heros.orientation
angle
heros.angle;  // towards which angle the hero moves, between -180° and 180°. Is 'false' si le héros est immobile
// not to confus with hero.direction

teleporte
heros.teleporte(4, 8);  // téléporte le héros sur la case 4, 8
teleport
heros.teleport(4, 8);  // teleports the hero to square 4, 8
fige / defige
heros.fige(4);  // immobilise le héros 4 secondes
heros.defige();
freeze / unfreeze
hero.freeze(4);  // freezes the hero 4 seconds
hero.unfreeze();

Perception

Perception

distance
heros.distance(4, 8);        // donne la distance entre le héros et la case 4, 8
distance
hero.distance(4, 8);        // provides the distance between the hero and square 4, 8
monstreLePlusProche
heros.monstreLePlusProche(); // donne le monstre le plus proche du héros
nearestMonster
hero.nearestMonster(); // shows the closest monster to the hero

Defense

Defence

vie
heros.vie -= 10;     // retire 10 points de vie au héros
life
hero.life -= 10;     // removes 10 points from the hero’s life
damageOnShield
heros.damageOnShield = 0.85;   // the hero’s shield now blocks 85% of damages
bouclierProtection
heros.bouclierProtection = 0.85;   // Le bouclier du héros bloque 85% des dommages

Parler

Talk

dit
heros.dit("Bonjour, je suis le chevalier Tartempion du chateau Guaquamole");
// Affiche une fenêtre de texte.

heros.dit([
  "Bonjour camarade !",
  "Utilise les flèches pour me déplacer.",
  "Utilise espace pour l'épée, et W pour le bouclier."
]);
//Affiche les 3 messages à la suite


//Il est possible d'executer des fonctions pendant le dialogue, par exemple :

function brule () {
  heros.vie -= 10;
}

heros.dit([brule, "Le sol me brûle !"]);

say
hero.say("Hello, I’m the proud knight of Codesalot from the Castle of Guacamole");
// Displays a text box.
 
hero.say([
  "Hello mate !",
  "Use the arrows to move me.",
  "Use space for the sword and W for the shield."
]);
//Displays the 3 messages one after the other
 
 
//It is possible to execute certain functions during the dialogue, for example:
 
function burning () {
  hero.life -= 10;
}
 
hero.say([burning, "The ground is burning me!"]);

Quand déclencher ?

When to trigger?

quand 'est frappé'
quand('est frappé', function (balle) {          // Quand le héros est frappé...
    heros.fige(1);                              // Il se fige pendant 1 seconde
});

quand('est frappé', function (balle) {          // Quand le héros est frappé...
    if (balle.vitesse > 3) {                    // Si la balle a une vitesse supérieure à 3 cases / seconde
        heros.vie = 0;                          // Le héros est tué
    }
});

quand('est frappé', function (balle) {          // Quand le héros est frappé...
    if (balle.tireur.espece() === "A") {        // Si la balle provient d'un monstre de type "A"
        heros.teleporte(4, 5);                  // Le héros est téléporté
    }
});
when 'has been shot'
when('has been shot', function (bullet) {     // When hero has been shot...
    hero.freeze(1);                           // He freezes during 1 second
});

when('has been shot', function (bullet) {     // When hero has been shot...
    if (bullet.speed > 3) {                   // If bullet speed's > 3
        hero.life = 0;                        // Hero is killed
    }
});

when('has been shot', function (bullet) {     // When hero has been shot...
    if (bullet.shooter.species() === "A") {   // If bullet come from shooter of "A" type
        hero.teleport(4, 5);                  // Teleports hero to square 4, 5
    }
});
debut
debut(function () {
    heros.teleporte(10, 10);   // Au début, téléporte le heros sur la case 10/10
});
start
start(function () {
  hero.teleport(10, 10); // At the start, teleports the hero on square 10, 10
});
toujours
toujours(function () {
    heros.grilleX += 0.01;    // Pousse le heros petit à petit sur la droite
});
always
always(function () {
  hero.gridX += 0.01; // Gradually pushes the hero towards the right
});

Balles

Bullets

grilleX
balle.grilleX = 3.5;  // Change la position horizontale de la balle pour le mettre au milieu de la colonne 3
balle.grilleX += 1;   // déplace la balle de 1 case à droite
balle.grilleX -= 2;   // déplace la balle de 2 cases à gauche
gridX
bullet.gridX = 3.5;  // Set the horizontal position value of the bullet so that it is at the center of the 3rd column
bullet.gridX += 1;   // moves the bullet 1 square to the right
bullet.gridX -= 2;   // moves the bullet 2 squares to the left
grilleY
balle.grilleY = 6.5;  // Change la position verticale de la balle pour le mettre au milieu de la ligne 6.
balle.grilleY += 1;   // déplace la balle de 1 case vers le bas
balle.grilleY -= 2;   // déplace la balle de 2 cases vers le haut
gridY
bullet.gridY = 6.5;  // Set the vertical position value of the bullet so that it is at the center of the 6th column
bullet.gridY += 1;   // moves the bullet 1 square down
bullet.gridY -= 2;   // moves the bullet 2 squares up
vitesse
balle.vitesse = 2;    // La balle avancera à la vitesse de 2 cases par seconde
balle.vitesse = 0.5;  // La balle avancera à la vitesse d'une demie case par seconde
speed
bullet.speed = 2;    // the bullet will move at the speed of 2 squares per second
bullet.speed = 0.5;  // the bullet will move at the speed of 1 square and a half per second
tireur
balle.tireur;        // fournit le monstre qui a tiré la balle

if (balle.tireur.vie < 10) {  // si la balle provient d'un monstre qui a peu de vie
    heros.vie += 50;          // le héros gagne de la vie
}
shooter
bullet.shooter;        // holds the value of the monster who shot

Utilisables partout

Usable everywhere

pourChaqueMonstre
pourChaqueMonstre(function (monstre) {
  // ce code est exécuté pour chaque monstre présent dans le donjon

  if (monstre.vie < 50) {
    monstre.vitesse = 5;
  }
});
forEachMonster
forEachMonster (function (monster) {
  // this code is executed for each monster present in the dungeon
 
  if (monster.life < 50) {
    monster.speed = 5;
  }
});   

creerMonstre
creerMonstre('vert', 4, 8);    // crée un monstre vert à la case 4, 8
// couleurs de monstre : 'vert', 'rouge', 'violet'
createMonster
spawnMonster('green', 4, 8);    // creates a green monster in square 4, 8
// monster colours: 'green', 'red', 'purple'
tirer
tirer(4, 8, 0.5, 2);      // crée un tir depuis la case 4, 8
                          // et l'envoie à un angle 0.5 (en radians)
                          // à une vitesse de 2 cases par seconde
shootFrom
shootFrom(4, 8, 0.5, 2);      // creates a shot from square 4, 8
                          // and sends it at an angle of 0.5 (in radians)
                          // at a speed of 2 squares per second
solPresent
solPresent(4, 8);       // 'true' (vrai) si la case 4, 8 est un sol sinon 'false' (faux)
isFloor
isFloor(4, 8);       // 'true’ if square 4, 8 is a floor otherwise 'false'
trouPresent
trouPresent(4, 8);      // 'true' (vrai) si la case 4, 8 est un trou sinon 'false' (faux)
isHole
isHole(4, 8);      // 'true' if square 4, 8 is a hole otherwise 'false'
murPresent
murPresent(4, 8);       // 'true' (vrai) si la case 4, 8 est un mur sinon 'false' (faux)
isWall
isWall(4, 8);       // 'true' if square 4, 8 is a wall otherwise 'false'
violetPresent
violetPresent(4, 8);    // 'true' (vrai) si la case 4, 8 est un déclencheur violet sinon 'false' (faux)

isPurple
isPurple(4, 8);    // 'true' is square 4, 8 is a purple trigger otherwise 'false' 

bleuPresent
bleuPresent(4, 8);      // 'true' (vrai) si la case 4, 8 est un déclencheur bleu sinon 'false' (faux)
isBlue
isBlue(4, 8);      // 'true' if square 4, 8 is a blue trigger otherwise 'false'
orangePresent
orangePresent(4, 8);   // 'true' (vrai) si la case 4, 8 est un déclencheur orange sinon 'false' (faux)
isOrange
isOrange(4, 8);   // 'true' if square 4, 8 is an orange trigger otherwise 'false'
vertPresent
vertPresent(4, 8);     // 'true' (vrai) si la case 4, 8 est un déclencheur vert sinon 'false' (faux)
isGreen
  isGreen(4, 8);     // 'true' if square 4, 8 is a green trigger otherwise 'false'

modifierCase
modifierCase(2, 2, 'trou');   // 'sol', 'mur', 'bleu', 'violet', 'vert', 'orange', 'incolore'
                              // (incolore supprime un déclencheur)
transformTile
transformTile(2, 2, 'hole');  // 'floor', 'wall', 'blue', 'purple', 'green', 'orange', ‘colorless'
                              // (colorless removes a trigger)

caseLibreAleatoire
var position = caseLibreAleatoire();      // fournit une case libre sans déclencheur, trou, mur ni monstre
heros.teleporte(position.x, position.y);  // vous pouvez ensuite utiliser ses propriétés x et y
randomFreeTile
var position = randomFreeTile();             // provides a free tile without trigger, wall, hole or monster
hero.teleport(position.x, position.y);  // you can then use its properties x et y
retarder
// Permet d'effectuer une fonction après un certain temps
retarder(function () {
    heros.vitesse *= 2;
}, 3);  // accélère le heros au bout de 3 secondes

// Vous pouvez faire boucler la fonction, en rajoutant true à la fin (le dernier argument correspond à "est une boucle")
retarder(function () {
    heros.vitesse += 0.1;
}, 0.3, true)

//!\ Expert /!\
// Vous pouvez récupérer l'objet "retarder" pour le modifier ou l'interrompre
var retard = retarder(function () {
    hero.teleporte(10, 10);
}, 1);

retard.stop();
retard.replay();
delay
// Allows to execute a function after a certain amount of time
delay(function () {
    hero.speed *= 2;
}, 3);  // multiplies the hero’s speed by 2 after 3 seconds
 
 
//!\ Expert /!\
// You can retrieve the "delay" object to modify or interrupt it
var delayFunction = delay(function () {
    hero.teleport(10, 10);
}, 1);
 
delayFunction.stop();
delayFunction.replay();

tempsDelta
//!\ notion expert /!\
// renvoie le temps écoulé depuis la frame précédente (en millisecondes).
tempsDelta / 1000; // compte le nombre de secondes écoulées
deltaTime
//!\ An expert's concept /!\
// sends back the time elapsed since the previous frame (in milliseconds).
deltaTime / 1000; // counts the number of seconds elapsed

Actions

Actions

Global
Vous permet de stocker des fonctions ou des données, depuis n'importe ou et utilisables partout.
global.retourneToi = function (element) {    // Peut être déclaré depuis n'importe quel éditeur
    element.angle += Math.PI; // = 180 degrés
    // est utilisable partout en écrivant global.retourneToi(monstre)
}
Global
Allows you to store functions or data from anywhere and reuse them everywhere
    global.turnRound = function (element) {    // Can be declared from any editor
        element.angle += Math.PI; // = 180 degrees
        // is reusable anywhere when writing global.turnRound (monster)
    }