Note par Laurent Cancé Francis.
né le 10 août 1975.
(+33) (0)6.72.97.79.56
Objets Additionnels (TAG) avec options de scripts :
# ouverture de porte
# changement d'etat d'un objet de la position 1 à la position 2 par action sur celui ci
INIT : SET POS1
INIT : SET BLOCKING
CASE POS1 ACTION : ANIM POS2
CASE POS1 ACTION : SET NONBLOCKING
CASE POS2 ACTION : ANIM POS1
CASE POS2 ACTION : SET BLOCKING
# ouverture de porte fermée à clef
INIT : SET POS1
INIT : SET BLOCKING
CASE POS1 KEY ACTION : ANIM POS2
CASE POS1 KEY ACTION : SET NONBLOCKING
CASE POS2 ACTION : ANIM POS1
CASE POS2 ACTION : SET BLOCKING
# fixer une light sur un objet
INIT : LIGHT TOP 1.0 0.8 0.3
# animation drapeaux / rideaux (objets fixés sur l'axe horizontal supérieur)
INIT : DYNAMIC ATTACHMENT
# animation drapeaux / rideaux (objets fixés sur l'axe horizontal supérieur) // extérieur avec simulation de vent
INIT : DYNAMIC ATTACHMENT WIND
# initialiser un objet TAG avec un bot
BOT (yohko) // joueur 1
BOT (yohko_blue) // joueur 2
BOT (goblin) // bot
# initialiser un objet avec un contenu "effet"
EFFECT : TELEPORT
EFFECT : WIND LEAVES
EFFECT : WIND
EFFECT : SPIRITS
# initialiser un objet avec un contenu
INIT : KEY
INIT : GOLD
INIT : GEM
etc.
# action sur un objet et commande de terminaison d'un niveau
CASE POS1 ACTION : SET ENDLEVEL
CASE POS1 ACTION : SET ENDLEVEL2
# incrémentation de la variable d'état global de progression dans le niveau FINAL
CASE (cond) : INC FINAL
# condition sur la variable FINAL
CASE POS1 FINAL2 ACTION : SET NONBLOCKING
# bot à assassiner, incrémentation de la variable de progression;
# initialisation de l'objet TAG
BOT (goblinvert)
DEAD INC FINAL
DEAD ENDLEVEL
# action sur un objet donnant des éclairs en échange de gem
CASE GEM ACTION : THUNDER
# action sur un objet donnant des boules de feu en échange de gem
CASE GEM ACTION : FIREBALL
les mots clef GEM,KEY sont définit dans defines.txt du jeu et sont des mots clefs dynamiques.
on peut envisager l'utilisation de mots différents voire des combinaison de mots:
ex:
CASE GEM_JAUNE GEM_BLEU : FIREBALL
OBJ:0
{
NAME="GEM_JAUNE"
MESH="data/3d/gemme_jaune.3d"
...
}
OBJ:1
{
NAME="GEM_BLEU"
MESH="data/3d/gemme_bleu.3d"
...
}
# déclencher une animation (effondrement du decor modélisé après démolition, composé d'objets additionnels)
script de l'objet TAG trigger:
TRIGGER
CASE NEAR : HIT_ADDED 33
CASE NEAR : HIT_ADDED 34
les objets additionnels 33 et 34 se brisent et deviennent mobiles (géré par la physique)
(effondrement du décor par exemple)
# définition de configuration
les niveaux peuvent être utilisés avec différents rendu et configurations donc afin d'économiser des Ko.
les eclairages se règles via le script defines.txt
les objets peuvent donc être scriptés selon la configuration du niveau.
[CONFIG0]
script configuration 0
[CONFIG1]
script configuration 1
..
[CONFIGX]
script configuration X
# pour définir que le personnage possède un objet:
BAG GOLDKEY
ex:
BOT (mutant)
BAG GOLDKEY