Liste des commandes utilisables dans les scripts.

Ces commandes sont des fonctions et méthodes prédéfinies dans le moteur de jeu ELB2d.

 


 


 

Add_Over ( idOver ; idEffet  ;  idSprite ; idSpritePart ; x ; y ; sx ; sy ; rot ; bdessus ; avp )

 

Description :

Ajoute un élément over préchargé dans jeu.ini au sprite ayant pour id idSprite (ou idSpritePart pour les sprites en plusieurs éléments).

Utile pour ajouter un effet de fumée ou de poussière à un sprite ou un personnage.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string idOver : id du nouvel élément over

string idEffet : id d'un élément over (effet) préchargé dans jeu.ini

string idSprite : id d'un sprite existant

string idSpritePart : id d'une partie de sprite (ou vide)

int x : position x

int y : position y

float sx : échelle largeur

float sy : échelle hauteur

float rot : rotation

int bdessus : si true alors le over est affiché au 1er plan (relatif au parent => différent de avp)

int avp :  -1=> déterminé par le parent      0=> arrière plan (du plan 2)      1=> avant plan (du plan 2)

 

(Haut de page)

 


 


AnimKP_ONOFF ( idSD ; compteuractivation )

 

Description :

Si compteuractivation interrupteurs sont activés en même temps alors la commande pourra fonctionner en lançant / stoppant l'animation de chemins (KP) de l'élément dont l'id est en paramètre.

En marche l'éventuel son du SD est joué. En pause le son du SD est arrêté.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string idSD : id vers la plateforme à lancer

int compteuractivation : nombre d'interrupteurs à actionner en même temps pour déclencher la fonction.

 

(Haut de page)

 


 


 

CheckPoint ( )

 

Description :

Ajoute un checkpoint à la liste des checkpoints du décor. Les coordonnées du checkpoint sont celle du script (de son sprite contenant).

 

Valeurs de retour :

Aucunes.

 

Paramètres :

Aucuns.

 

 

(Haut de page) 

 


 


 ClrPrint ( )

 

Description :

Efface tous les textes affichées via la commande Print dans le script courant.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

Aucuns.

 

(Haut de page)

 

 


 


 

Explosion ( idIA ; idIAPart )

 

Description :

Déclenche le processus d'explosion d'une IA.

Le son de l'explosion est joué par cette fonction.

Des vibrations sont aussi initiées.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string idIA : id de l'IA à faire exploser

string idIAPart : si non vide alors on fait exploser seulement une partir de l'IA, sinon tout l'IA explose

 

 

(Haut de page)

 

 

 


 


 

int GetIALife ( idIA)

 

Description :

Permet de récupérer la valeur de la vie restante à une IA donnée.

 

Valeurs de retour :

Retourne la valeur de la vie restante de l'ia (int).

 

Paramètres :

string idIA (ou vide) : si idIA!="" alors la fonctionne travaille sur l'ia en paramètre, sinon elle travaille sur l'ia courante (fixée par InitIADef ou IA).

 

(Haut de page)

 



 

int GetIALifeMax ( idIA )

 

Description :

Permet de récupérer la valeur de la vie max d'une IA donnée.

 

Valeurs de retour :

Retourne la valeur de la vie max de l'ia (int).

 

Paramètres :

string idIA (ou vide) : si idIA!="" alors la fonctionne travaille sur l'ia en paramètre, sinon elle travaille sur l'ia courante (fixée par InitIADef ou IA).

 

(Haut de page)

 


 


 

int GetIAPosX ( idIA )

 

Description :

Permet de récupérer la position en x d'une IA donnée.

 

Valeurs de retour :

Retourne la position en x de l'ia (int).

 

Paramètres :

string idIA (ou vide) : si idIA!="" alors la fonction travaille sur l'ia en paramètre, sinon elle travaille sur l'ia courante (fixée par InitIADef ou IA).

 

(Haut de page)

 


 



int GetIAPosY ( idIA )

 

Description :

Permet de récupérer la position en y d'une IA donnée.

 

Valeurs de retour :

Retourne la position en y de l'ia (int).

 

Paramètres :

string idIA (ou vide) : si idIA!="" alors la fonction travaille sur l'ia en paramètre, sinon elle travaille sur l'ia courante (fixée par InitIADef ou IA).

 

(Haut de page)

 


 



int ; int GetIAPos ( idIA )

 

Description :

Permet de récupérer la position en x et en y d'une IA donnée.

 

Valeurs de retour :

Retourne la position en x et en y de l'ia (int ; int).

 

Paramètres :

string idIA (ou vide) : si idIA!="" alors la fonction travaille sur l'ia en paramètre, sinon elle travaille sur l'ia courante (fixée par InitIADef ou IA).

 

(Haut de page)

 


 


 

string GetIdIA ( )

 

Description :

Retourne l'id du perso associé à ce script ou NULL.

 

Valeurs de retour :

string : retourne l'id du perso associé à ce script ou NULL.

 

Paramètres :

Aucuns.

 

(Haut de page)

 


 


 

float GetVueX ( )

 

Description :

Permet de récupérer la position en x de la vue.

 

Valeurs de retour :

float. Retourne pvue->Vue.x

 

Paramètres :

Aucuns.

 

(Haut de page)

 


 


 

float GetVueY ( )

 

Description :

Permet de récupérer la position en y de la vue.

 

Valeurs de retour :

float. Retourne pvue->Vue.y

 

Paramètres :

Aucuns.

 

(Haut de page)

 


 


 

float GetVueZoom ( )

 

Description :

Permet de récupérer la valeur du coefficient de zoom de la vue de la scène.

 

Valeurs de retour :

float :  pvue->ZoomVue.

 

Paramètres :

Aucuns.

 

(Haut de page)

 


 


 

GOTO ( LABEL )

 

Description :

Déplace le pointeur interne de commande au label LABEL.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string LABEL

 

(Haut de page)

 


 

IA ( id ; x ; y ; d ; zx ; zy ; pds ; bv ; mc )

 

Description :

Appelle la fonction du moteur pdecor->ajoutIA.

Ajoute une IA au jeu. Pour que la fonction réussise il faut que la texture de l'ia existe (chargée via Texture_Per).

L'IA créée ainsi est marquée comme étant générée par un script, et sera donc détruite en cas de rechargement du script.

L'IA courante est aussi modifiée par cette fonction. Il faudra donc rappeler InitIADef si on veut utiliser l'IA par défaut du script plutôt que la nouvelle IA.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

std::string id : id de l'IA dans la liste des texture (Cf : Texture_Per)

int x : position en x

int y : position en y

int d : direction (0 gauche vers droite, ou 1 droite vers gauche)

float zx : échelle en x

float zy : échelle en y

int pds : poids

int bv : mode humain ou vaisseau

int mc : si 0 pas de collisions entre IA et perso, si 1 alors collisions

 

(Haut de page)

 

 


 


 

IADestroyOnReload ( idIA )

 

Description :

Indique si l'IA en paramètre (ou IA courante si vide) doit être détruite pour de bon lors de la mort du perso.

Utile pour les IAs créés par les scripts.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string idIA : id de l'IA ou bien "" pour utiliser l'IA courante.

 

 

(Haut de page)

 

 


 


 

InitIADef ( idIA )

 

Description :

Fixe l'IA par défaut à utiliser dans les fonctions travaillant sur les IAs (exceptés celles demandant un idIA explicite).

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string idIA (ou vide) : si idIA!="" alors la fonction travaille sur l'ia en paramètre, sinon elle travaille sur l'ia courante (fixée par scriptrun ou IA).

 

(Haut de page)

 


 


 

int IsIAVisible ( idIA )

 

Description :

Permet de savoir si une IA donnée est visible (1) ou invisible (0).

 

Valeurs de retour :

int bVisible : 0 si invisible, 1 si visible

 

Paramètres :

string idIA : id de l'IA à tester, ou vide pour tester l'IA courante.

 

(Haut de page)

 


 


 

KP_Init ( option )

 

Description :

Initialise le système de chemins (KPs) du moteur de jeu.

Si option vaut 0 alors tout est détruit (cas où l'on ne souhaite plus utiliser de chemins pour cet objet).

Si option vaut 1 alors tout est détruit mais l'objet gérant les chemins est ensuite réinitialiser : prêt pour gérer un nouveau chemin.
 

Valeurs de retour :

Aucunes.

 

Paramètres :

int option (0 ou 1) :  si option==0 alors les kps sont détruits et le phys aussi, sinon le phys est créé, prêt pour les futurs KPs

 

(Haut de page)

 


 

 


 


KPG ( mode ;  vchemin ;  vrotation ;  vscale ;  vcouleurs ;  bPausei ;  nbchemin)

 

Description :

Valeurs des paramètres globaux des chemins de l'ia courante.
 

Valeurs de retour :

Aucunes.

 

Paramètres :

int mode
float vchemin
float vrotation
float vscale
float vcouleurs=
int bPausei
int nbchemin

 

(Haut de page)

 


 

 


 


KP ( x ; y ; sx ; sy ; r ; cr ; cg ; cb ; ca ; fh ; fv ; v ; vr ; vs ; vc)

Description :

Ajoute un keypoint (KP) à la liste des chemins de l'ia active.

Seuls les persos (ia) sont concernés par cette fonction. Les sprites de décor peuvent aussi être animés de cette façon mais uniquement via l'éditeur pour le moment.

Une prochaine mise à jour de cette fonction devrait permettre de modifier aussi les chemins des sprites de décor (SD) via les scripts.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

float x

float y

float sx

float  sy

float  r

int cr

int cg

int cb

int ca

int fh

int fv

float v

float vs

float vr

float vc

 

(Haut de page)

 

 


 


 

Pause ( durée_en_frame )

 

Description :

Met le script courant en pause de la durée en paramètre (unité : la frame, avec une résolution de base de 30fps).

Cette fonction s'execute donc sur plusieurs frames et peut donc aussi servir à déboguer les scripts afin de ralentir leur exécution.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

int durée_en_frame : durée de la pause en frame. Par défaut les scripts sont appelés 30 fois par seconde, donc une pause de 30 durera 1 seconde.

 

(Haut de page)

 

 


 


  

Print ( msg ; x ; y )

 

Description :

Affiche un texte à la position x ; y.

Attention : dans le cadre d'une boucle il est très important d'appeler ClrPrint() au début de chaque nouveau cycle de Print() sous peine de saturer le tableau interne de textes à afficher.

Pour limiter une telle éventualité la limite de texte affichables via Print dans un script est de 100. Cette limite est empirique et pourra changer selon les besoins futurs.

Remarque : cette commande, de par sa conception, est lente et n'est pas adaptée à un affichage parfaitement dynamique en temps réel => Print est avant tout destiné à afficher des informations de débogages durant la conception des scripts.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string msg : message à afficher (peut-être variable)

int x : coordonnée x du message

int y : coordonnée y du message

 

(Haut de page)

 


 


 

ScriptRun (  cheminScript )

 

Description :

Cette fonction permet de charger en mémoire un nouveau script est de l'exécuter en // des autres scripts.

Elle appelle la fonction du moteur newScript ( cheminScript , NULL, DECLENCHEUR_SCRIPT, 1, 0, false);

Les scripts créés ainsi sont détruits à chaque rechargement du niveau via legi2 (chargemement via checkpoint ou sur redémarrage du niveau).

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string cheminScript : chemin du script à lancer

 

(Haut de page)

 


 

 

ScaleIA ( idIA ; sx ; sy ; progressif )

 

Description :

Mise à l'échelle de l'IA en paramètre. Si progressif est différent de 0 alors un zoom progressif sera lancé (avec comme vitesse progressif)

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string idIA 

float sx 

float sy 

float progressif

 

(Haut de page)

 


 

 

SetIDIA ( idIAmodif ; idIAancien )

 

Description :

Si idIAAncien est vide alors on utilise l'IA courante pour lui fixer un id.

Si idIAAncien est fourni alors on remplacera l'id de cette IA par la valeur de idIAmodif.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string idIAmodif ;

string idIAancien

 

(Haut de page)

 

 

 


 


 

SetInfosVisible ( bVisible )

 

Description :

Modifie la valeur de pcarte->bInfosPerso. Permet d'afficher/masquer les infos du personnage humain.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

 bool bVisible (0 ou 1) : si false (0) alors les infos du personnage sont masquées.

 

(Haut de page)

 


 


 

SetWaitMessageVisible( bVisible )

 

Description :

Modifie la valeur de pCarte->bMontreMsgAttente. Permet d'afficher/masquer le "Prêt" de début de niveau chrono.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

bool bVisible (0 ou 1) : si false (0) alors le "Ready" de début de jeu chrono est masqué.

 

(Haut de page)

 


 


 

Shader_Global (  idSD ;  bShaderActif ;  compteurShader ;  shaderCenter.x ;  shaderCenter.y ;  modeShaderCoord )

 

Description :

Initialise un shader global. Ce shader s'appliquera au rendu final de la scène.

Note : dans la version 0.1 du moteur il n'est possible de n'avoir qu'un seul shader global à la fois.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

string idSD :  id du SD contenant le shader global

int bShaderActif ; 

int compteurShader ; 

int shaderCenter.x ; 

int shaderCenter.y ; 

int modeShaderCoord

 

Example de fichier Dec contenant un shader global :

SD_SHADER_BLAST.dec

#ATTENTION : il faut ajouter impérativement un IDSD=xxx au SD
#=>c'est avec cet IDSD que les scripts pourront lancer les shaders globaux
#=>cela permet d'avoir plusieurs shader globaux d'un même type avec des params différents
#et de les appeler comme on le souhaite via les scripts

ID=SD_SHADER_GLOB_BLAST
SPRITE2=./decors/ShadersGlob/SDShaderGlob.png;1;100;100;0;0
COLLISIONS=0
VISIBLE=0
SHADERSD=ondechoc.frag;3;center;vec2;0,0890625;0,720833;0;shockParams;vec3;10;0,25;0,1;0;time;float;0;100;;0

 

 

(Haut de page)

 


 


setIASpeed ( vitesse ; idIA )

 

Description :

Permet de changer la vitesse de marche d'un personnage en paramètre (ou du personnage par défaut si idIA est vide ou absent).

Valeurs de retour :

Aucunes.

Paramètres :

int vitesse : vitesse du perso pendant la marche

string idIA : ce paramètre peut-être omis, dans ce cas c'est l'ia par défaut qui sera utilisée.

 

 

(Haut de page)

 


 


 

int Texture_PER ( cheminPer ; idPer )

 

Description :

Les fichiers per contiennent les données des personnages du jeu. Ils sont stockés dans pdecor->texturesPerlist.

Cette fonction permet d'ajouter à cette liste un nouveau personnage.

Les appels à IA échoueront si l'idper de IA n'est pas trouvé dans la liste des per : il convient donc d'appeler cette fonction avant tout appel à IA.

Un seul appel à Texture_Per est nécessaire pour créer autant d'IA de ce type que voulu.

Le chargement d'un per pouvant être long il est conseillé de les appeler en début de script.

 

Valeurs de retour :

int codeerreur : si 1 alors tout s'est bien passé, si 2 alors l'id est déjà utilisée.

 

Paramètres :

string cheminPer : chemin du fichier per

string idPer : id assigné à la texture du per

 

 

(Haut de page)

 


 


 

Vibration ( amplitude ; nombre )

 

Description :

Lance le processus de vibration de l'écran.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

float amplitude

int nombre

 

(Haut de page)

 

 


 



int ; int WorldToScreen ( x ; y )

 

Description :

Transforme la coordonnée monde en coordonnée écran.

Très utile pour pouvoir utiliser la commande Print qui demande impérativement une coordonnée écran.

 

Valeurs de retour :

int xEcran

int yEcran

 

Paramètres :

int xMonde

int yMonde

 

(Haut de page)

 

 

 

 

 

 

 

 

 

 

 

RELOAD

Description :

Valeurs de retour :

Paramètres :

(Haut de page)

 

 

 

 


 

 


 

ZoomVue ( zoom ; mode ; pas )

 

Description :

Fixe la valeur pvue->ZoomVue à zoom, selon deux modes.

Si mode == 0 alors le zoom est instantané, sinon il est progressif suivant la valeur pas.

 

Valeurs de retour :

Aucunes.

 

Paramètres :

float zoom : valeur du zoom final

int mode : 0 (instantané) ou 1 (progressif)

float pas : vitesse du zoom en mode 1

 

 

(Haut de page)

 


 

---AFINIR---

 ****

Description :

Valeurs de retour :

Paramètres :

 

(Haut de page)

*****

 

ATTENDRE_FIN_ANIMKP

BOUGE_GROUPE

BASCULE
CHUTE
CHARGERNIV

CMD_ZOOM
CHANGEDIRPERSO

DEPLACE

PORTE_ONOFF
SCROLL
TELEPORTEVERS
FONTAINEDARMES
CHANGE_ANIM
INVERTOLITE
PADSOTOLITE
JOUE
STOPIA
RUNIA
PLAYSON
EFFET_PLANTE_BOOST
VOILE
VOILEACTIF
IA_POSITION
IA_VISIBLE
IA_TIRER
IAANIM

IAMODE
IAEXIT
SDVISIBLE
PHYSPARTICULE
SDANIM
PERSO_VISIBLE
TUE_PERSO
OMBREIA

INFOIMGPOS
INFOTXTPOS
INFOFONDPOS
INFOTXTCOLOR
INFOFOND
INFOTXTTAILLE
INFOTXTSTYLE
INFOS_VIE
INFO   INFO_EN
PARLE     PARLE_EN
NOPARLE