home *** CD-ROM | disk | FTP | other *** search
/ Revista CD Expert 51 / PCGamer51_17Demos.iso / games / colobotdemo / colobotdemo10e.exe / help / tremova2.txt < prev    next >
Text File  |  2001-06-10  |  2KB  |  38 lines

  1. \b;Exercice
  2. Cet exercice ressemble beaucoup au prΘcΘdent. Il faut maintenant dΘplacer 3 cubes de \l;titanium\u object\titan; sur 3 plates-formes. Les coordonnΘes des plates-formes sont :
  3. \c;
  4.     x=10, y=-60
  5.     x=10, y=-65
  6.     x=10, y=-70
  7. \n;
  8. \b;Principe
  9. RΘpΘter 3 fois :
  10.     o  Chercher le cube de titanium le plus loin avec \c;\l;radar\u cbot\radar;\n;.
  11.     o  Prendre le titanium avec \c;\l;grab\u cbot\grab;\n;.
  12.     o  Aller sur une plate-forme avec \c;\l;goto\u cbot\goto;\n;.
  13.     o  DΘposer le titanium avec \c;\l;drop\u cbot\drop;\n;.
  14.  
  15. Il est nΘcessaire de chercher le titanium le plus loin, car il ne faut pas dΘtecter celui que l'on vient de dΘposer sur une plate-forme.
  16.  
  17. \b;Solution
  18. Une boucle \c;\l;for\u cbot\for;\n; permet de rΘpΘter 3 fois l'ensemble des instructions. A l'intΘrieur de la boucle, pour trouver le titanium le plus loin, utilisez l'instruction \c;\l;radar\u cbot\radar;(Titanium, 0, 360, 0, 1000, -1);\n;. La derniΦre valeur \c;-1\n; signifie que la recherche va de l'extΘrieur vers l'intΘrieur. On privilΘgie donc les objets les plus ΘloignΘs.
  19. \c;
  20. \s;object  metal;
  21. \s;metal = radar(Titanium, 0, 360, 0, 1000, -1);
  22. \s;if ( metal == null )  return;
  23. \s;goto(metal.position);
  24. \n;
  25. La variable \c;metal\n; est de type \c;\l;object\u cbot\object;\n;. Pour connaεtre la position de l'objet dΘcrit par la variable, il faut donc Θcrire \c;metal.position\n;.
  26.  
  27. Les coordonnΘes \c;x\n; des 3 plates-formes sont toutes Θgales α 10. En revanche, les coordonnΘes \c;y\n; varient de -60, -65 α -70. Une bonne idΘe pour calculer la position est de faire intervenir la variable \c;i\n; de la boucle \c;for\n;, qui prend les valeurs 0, 1 et 2 :
  28. \c;
  29. \s;dest.x = 10;
  30. \s;dest.y = -60-5*i;
  31. \n;
  32. A vous de terminer le programme ...
  33.  
  34. \key;\key help;\norm; permet de revoir ces instructions en tout temps !
  35.  
  36. \t;Voir aussi
  37. \l;Commandes\u command; et \l;programmation\u cbot;.
  38.