L'objet Personnage est un objet Promeneur particulier : il possède plusieurs apparences prédéfinies et s'anime lorsqu'il se déplace. Il est également capable de se déplacer dans des objets Décor.
unPersonnage = new Personnage()
unPersonnage = new Personnage("fichier.png")
L'image chargée est affichée directement et remplace les images prédéfinies.
Les objets Personnage sont des objets Promeneur particuliers : ils possèdent donc déjà toutes les actions des objets Promeneur.
unPersonnage.changer("garçon")
unPersonnage.arrêterMouvement()
unPersonnage.démarrerMouvement()
unPersonnage.définirDuréeMouvement(500)
la durée est en millisecondes : un délai de 1000 correspond à une seconde. La valeur par défaut dépend de la représentation choisie.
unPromeneur.définirDuréeArrêt(1200)
la durée est en millisecondes : un délai de 1000 correspond à une seconde. La valeur par défaut dépend de la représentation choisie.
unPromeneur.ajouterDécor(unDécor)
Lorsque le Personnage est associé à un objet Décor, il ne peut pas circuler sur les zones bloquées de ce Décor.
Un objet Personnage gère les mêmes événements qu'un objet Promeneur. Il peut en plus attraper des objets.
unPersonnage.peutAttraper(unObjet)
L'objet « unObjet » doit exister et être de catégorie Animation, Promeneur, Item ou Personnage. Lorsque le Personnage passera sur cet objet, il le fera disparaître.
unPersonnage.siAttrape(unObjet, "commande")
Cette commande est en fait un raccourci pour les deux commandes suivantes :
unPersonnage.peutAttraper(unObjet) unPersonnage.siCollisionAvec(unObjet, "commande")
L'apparence par défaut du Personnage peut être modifiée en ajoutant des images à l'objet.
unPersonnage.ajouterImage("image1.png") unPersonnage.ajouterImage("image2.png") ...
Ces images sont affichées en boucle par l'objet Personnage. Quand il se déplace, la boucle dure le temps défini par l'action définirDuréeMouvement
. Quand il est à l'arrêt, la boucle dure le temps défini par l'action définirDuréeArrêt
.
unPersonnage.ajouterImage("image1.png", "avancer") unPersonnage.ajouterImage("image2.png", "avancer") ...
unPersonnage.ajouterImage("image1.png", "reculer") unPersonnage.ajouterImage("image2.png", "reculer") ...
unPersonnage.ajouterImage("image1.png", "arrêt") unPersonnage.ajouterImage("image2.png", "arrêt") ...