★ AMSTRAD CPC ★ GAMESLIST ★ LE LAC DES TORTUES (c) SCIENCE ET VIE ★

LE LAC DES TORTUES

Nous vous proposons, ce mois-ci, un jeu d'arcades. Nous l'avons appelé le Lac des tortues. L'action se déroule en pleine jungle. Sur un lac poussent des nénuphars mais, pour notre grenouille, que vous guiderez, ceux de couleur rose sont les plus propices à la découverte des insectes dont elle se régalera.

Malheureusement ces derniers ne poussent que sur le sable fin des berges du lac,et la plage sur laquelle se trouve notre grenouille en est dépourvue. Il lui faut donc traverser le lac. Cependant la chose n'est pas simple car, d'un type un peu spécial, notre grenouille ne sait pas nager. Sa traversée devra donc s'effectuer en sautant de feuille en feuille sur les nénuphars flottant sur le lac, puis sur le dos de tortues batifolant dans les eaux sombres.

Cependant les problèmes ne s'arrêtent pas là. En effet, les nénuphars, diaphanes et d'une extrême fragilité, ne peuvent servir que de tremplin aux bonds de la grenouille. Si elle y séjourne trop longtemps, la feuille coule et notre grenouille avec. De même, il n'est possible de sauter sur le dos d'une tortue que si elle se trouve exactement en face de la grenouille. Qui plus est, les tortues, d'humeur folâtre, aiment plonger de manière imprévisible. Pour terminer, un temps maximum sera imparti pour la traversée. A vous donc d'aider notre pauvre grenouille à traverser le lac des tortues en un minimum de temps.

Ces quelques règles fixées, passons maintenant à l'écriture du programme. En premier lieu, nous demanderons à l'Amstrad de passer en mode 0 ; ceci afin de profiter de nombreuses couleurs. Nous déterminerons ensuite la couleur du fond et du tour de l'écran.

Nous utiliserons de nombreux symboles graphiques. Nous les redéfinirons des lignes 130 à 310. Un tableau de mémorisation sera créé à la ligne 370. Son but sera d'indiquer au programme, lors du déroulement du jeu, la position des feuilles de nénuphars flottant encore. Nous utiliserons également un grand nombre de variables ; elles seront initialisées des lignes 430 à 580. Notons que toutes ces variables ne concernent pas des paramètres du jeu. En effet, comme nous devons animer simultanément de nombreux symboles graphiques, nous les avons regroupés par “familles'' sous la forme d'une variable. Ainsi TDH$ permettra d'afficher directement une demi-tortue. Il en sera de même pour toutes les autres variables se terminant par le signe $. Précisons que cette opération nous permettra, d'une part, de simplifier la frappe des lignes suivantes du programme et, d'autre part, améliorera sa vitesse d'exécution ; ce qui est toujours recherché dans un jeu d'animation.

Ceci terminé, nous préparerons l'écran de jeu en mettant en place les nénuphars grâce à deux boucles FOR... NEXT imbriquées. Cette tâche sera effectuée par les lignes 640 à 700. De même les “plages” seront déterminées par deux fenêtres — lignes 760 et 770 — dont nous modifierons la couleur par rapport au reste de l'écran. Une nouvelle série de variables — lignes 880 à 900 — nous permettra de fixer les conditions de départ des tortues ; position et sens de déplacement.

Dernière opération avant le début du jeu : effacer certains des nénuphars, ceci afin de corser le jeu. Cette opération sera effectuée de manière aléatoire, par les lignes 960 à 1020. Le jeu pourra donc débuter.

En premier lieu la variable PL nous permettra de faire plonger de manière imprévisible nos tortues. Nous afficherons le crédit de temps disponible pour la partie — ligne 1140 — et l'animation des tortues sera assurée.

Comme nous disposons de quatre tortues, nous trouverons quatre animations distinctes. Cependant leur principe de fonctionnement est identique. Nous n'examinerons donc que la première. En premier lieu, nous trouverons une commande de position d'affichage de la tortue — instruction LOCATE de la ligne 1200. XA correspondra à sa position horizontale et sera donc une variable commandée par l'animation.

Le second paramètre sera, par contre, fixe — dans ce cas 5, puisque les tortues ne se déplacent qu'horizontalement.

Nous prendrons ensuite en compte la variable PL, ceci afin de savoir si la tortue est en train de nager ou si elle a plongé. Enfin, la valeur de DA — variable fixant la direction de déplacement — sera contrôlée de manière à déterminer quel symbole graphique utiliser pour éviter que notre tortue semble nager à reculons. Notons que AA est une variable auxiliaire permettant de simuler le trajet de la tortue sous l'eau après le plongeon.

Cette première phase ne concerne que la moitié supérieure du dessin de la tortue, une seconde concernera la moitié basse. Enfin, en ligne 1320, nous modifierons, ou non, le signe de la variable DA si la tortue a atteint les limites de l'écran. Cette opération provoquera l'inversion du sens de son déplacement.

Comme nous l'avons dit plus haut, nous trouverons donc quatre séquences de programmes très proches ; une par tortue. Seule une modification des variables sera à signaler. XA deviendra XB puis XC et XD, AA, AB, AC, et AD, etc. Cette animation terminée, il nous faudra également contrôler les déplacements de notre grenouille. Ceci sera effectué par l'intermédiaire de deux sous-routines que nous étudierons plus loin. C'est pour cela que nous trouverons un aiguillage vers celles-ci, placé des lignes 1970 à 2030.

Notons que nous aiguillerons également ici éventuellement le programme, soit sur un rebouclage, destiné à poursuivre le jeu, soit sur sa fin. Dans ce dernier cas, il se rendra en ligne 2090. Là, en fonction de la valeur prise par la variable FIN, soit “PERDU!” soit “BRAVO !” sera affiché sur l'écran. Le fait de taper “P” au clavier permettra, quel que soit le cas, de reprendre le jeu. Restent donc les deux sous-routines.

La première, placée des lignes 2250 à 2430, concerne les sauts de la grenouille sur les feuilles de nénuphars. Nous utiliserons donc régulièrement la fonction INKEY(x), où x représente le numéro de la touche déterminé par Amstrad, pour savoir, en fonction de la touche frappée quelle est la direction choisie par le joueur pour le saut de la grenouille. Précisons que cette pratique nous permet, contrairement à INKEY$ également fréquemment utilisée dans nos programmes, de pouvoir “sauter en biais” en appuyant sur deux touches simultanément. Nous ferons également appel au tableau E pour contrôler régulièrement si le résultat du saut- ne conduit pas à la noyade de notre grenouille — ligne 2410 — auquel cas nous donnerions à la variable FIN la valeur 1.

La seconde sous-routine, placée des lignes 2500 à 3070 concerne les déplacements de la grenouille sur le dos des tortues. Ici nous ferons également fréquemment appel à l'instruction INKEY (x) mais x ne pourra valoir que 0 ou 2 ; il sera effectivement interdit de sauter en biais. Comme nous avons quatre tortues, cette sous-routine comportera également quatre parties dont le fonctionnement sera tout à fait comparable.

La frappe de ce programme ne doit pas poser de problème particulier. De même son utilisation est des plus simples. Après l'avoir entièrement tapé, RUN sera demandé. Aussitôt l'écran de jeu s'affichera et le chronométrage débutera. Rappelons que les seules zones de sécurité sont les plages.

Vous aurez donc tout loisir de préparer, dans la limite du temps imparti, votre stratégie avant de vous lancer sur les feuilles de nénuphars. Signalons encore que chaque feuille ne peut être utilisée qu'une fois en tant que tremplin. Impossible donc de rester sur une même feuille ou de tenter de réutiliser une feuille ayant déjà sombré. Seul élément aléatoire du jeu : le plongeon des tortues. A vous donc de l'éviter en ne restant pas trop longtemps sur la même tortue, quitte à regagner d'urgence la berge de départ.

Henri-Pierre PENEL , Science&Vie n°850

LE LAC DES TORTUES
(c) SCIENCE ET VIE

AUTEUR: Henri-Pierre PENEL

★ ANNÉE: 1988
★ LANGAGE:
★ GENRE: BASIC , ARCADE

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listings:
» Le  lac  des  tortues    (Science  et  Vie)    FRENCHDATE: 2018-07-30
DL: 8 fois
TYPE: ZIP
SIZE: 25Ko
NOTE: Uploaded by CPCLOV ; 42 Cyls
.HFE: OUI

» Le  lac  des  tortues    (Science  et  Vie)    LISTING    FRENCHDATE: 2016-03-11
DL: 36 fois
TYPE: PDF
SIZE: 1486Ko
NOTE: 2 pages/PDFlib v1.6

Je participe au site:
» Newfile(s) upload/Envoye de fichier(s)

QUE DIT LA LOI FRANÇAISE:

L'alinéa 8 de l'article L122-5 du Code de la propriété intellectuelle explique que « Lorsque l'œuvre a été divulguée, l'auteur ne peut interdire la reproduction d'une œuvre et sa représentation effectuées à des fins de conservation ou destinées à préserver les conditions de sa consultation à des fins de recherche ou détudes privées par des particuliers, dans les locaux de l'établissement et sur des terminaux dédiés par des bibliothèques accessibles au public, par des musées ou par des services d'archives, sous réserve que ceux-ci ne recherchent aucun avantage économique ou commercial ». Pas de problème donc pour nous!

CPCrulez[Content Management System] v8.7-desktop/cache
Page créée en 127 millisecondes et consultée 506 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.