Newer
Older
Florent Bouchez Tichadou
committed
#+title: Engines evolutions
Florent Bouchez Tichadou
committed
Fichier de description rapide des `engines`
Utilisé par `make_engines.py` pour générer toutes les versions des engines.
Florent Bouchez Tichadou
committed
* Engines fonctionnels
Ces engines devraient tous fonctionner.
Ils ont tous des tests unitaires et certains sont utilisés dans des niveaux.
Florent Bouchez Tichadou
committed
** SIMPLE_MAP
- Note: engine de base donc jamais de ifdef
- carte simple sans layer en tableau 2D d'entités (char) linéarisées
- les entités sont placées "à la main"
- déplacement simple en supprimant l'ancien caractère et en le plaçant a côté
- le joueur a deux coordonnees player_x player_y
- on a 4 moves pour les entites mais aussi pour le joueur
Florent Bouchez Tichadou
committed
** LEVEL_END
- ajout des level_success level_failed et game_instance
Florent Bouchez Tichadou
committed
** INPUT_COMMAND
- lecture d'input et mouvement sous forme de commande sans arguments
- déplacement en rentrant sur stdin: LEFT RIGHT UP DOWN
- Note: le deplacement avec les fleches vient de Agdbentures qui écrit sur le
stdin de l'inférieur
Florent Bouchez Tichadou
committed
** LEVERS
- Note: ajout mineur : deux lignes
- ajout des defines ACTIVATED et DEACTIVATED pour les leviers
Florent Bouchez Tichadou
committed
XX CONFIG_FILE
- Note: disabled, ne vois pas l'intérêt de cette version.
- ajout d'un fichier de config avec la taille de la map la position du joueur
pour init_game
Florent Bouchez Tichadou
committed
** READ_MAP_STR
- lire la map dans une chaine
Florent Bouchez Tichadou
committed
** COMMAND_ARGS
- arguments pour les commandes en input
- variantes UP N, DOWN N, des deplacements
Florent Bouchez Tichadou
committed
** MAP_STACK
- stack de map pour changer de map
Florent Bouchez Tichadou
committed
** ENTITY_STRUCT
- les entites deviennent des structures
- le joueur devient une entite
- la map devient un tableau 2D
Florent Bouchez Tichadou
committed
** INVENTORY_ARRAY
- inventaire array
- structure game
Florent Bouchez Tichadou
committed
** CUSTOM_ENTITY
- ajout d'un fichier de config pour declarer des entites
** ENTITY_PROPERTIES
- propriete des objets genre pushable, activable, blocking
- ajout du champ dans le fichier de config
** MAP_ENTITY_STACKING
- on empile les entites dans des listes chainees sur les maps
** MAP_GRAPH
- map comme graph
* Engines à travailler/retravailler
Ces engines sont générés mais non testés complètement ou à revoir.
Florent Bouchez Tichadou
committed
** EVENTS
- events
Florent Bouchez Tichadou
committed
- interraction avec les objets dans le moteur et pas dans le niveau
** EVENT_ARGS
- void * pour pointeur de fonction
- void * pour les arguments aussi
** READ_MAP_TMX
- lire la carte dans un tmx