Déjà, je pense que l'organisation au complet me semble innapropriété.
Premièrement, il faut "toujours" séparer l'affichage du reste de la logique du jeu, en particulier des collisions et doit généralement suivre ce schéma:
[capture des evennements]->[annalyse des evennement et execution de la logique du jeu]->[affichage] (et bouclé sur le début)
Les -> symbolisent un format de donné efficace qui est traité par chaque partie afin de limiter au maximum les échanges entre les différentes parties. La première flèche, par exemple, donne sous la forme de booléens l'états des touches, et s'il y a un réseau, les evennements reçuts extérieurs. La seconde donne uniquement un identifiant des objets à afficher et leur position (voir un état pour savoir la frame correspondante...)
La partie du milieu, la partie de toute la logique du jeu doit s'occuper de gérer les collissions en fonction des évennements récupérés et de l'état actuel des objets de la map (note que l'affichage n'a pas accès à cet état des objets de la map, la partie affichage reçoit un format pour l'affichage et uniquement l'affichage)
2°, L'affichage 2D se fait généralement sur 3 plans. Le sol, dessiné quoiqu'il arrive (ou pas si l'affichage est bien optimisé dans des cas précis), puis est dessiné l'état dit intermédiaire. C'est la que sont affichés les éléments qui sont à la hauteur des personnages mobiles et enfin sont dessinés les élements supérieurs, comme les toits de maison, ou encore les feuillages des arbres, derrières lesquels les personanges passent.
On comprend donc que la partie la plus dure réside dans la partie intermédiaire. Dans un système de tiles(tuiles) c'es très évident.
On commence par la ligne y en haut de l'écran, s'il on ne rencontre aucun mob (mouving object) on ne dessine que les éléments normaux, puis on passe à la ligne suivante...
A chaque fois que l'on passe à la tile x suivante, il faudra donc vérifier, parmis tous les objets "inabituels" (mobs) s'il y en a un à placer. Si oui le dessiner, puis passer à la tile suivante et ainsi de suite.
Voilà en gros la base la plus simple et efficace à suivre.
Si tu veux plus de détails, monpseudo @ hotmail.fr