Guest User

Untitled

a guest
Oct 19th, 2018
120
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.37 KB | None | 0 0
  1. // Начальное положение машинки
  2. int x=100;
  3. int y=100;
  4. float multi=1; // множитель увеличения размеров машинки
  5. // положение кружка (увеличивающего размер машинки)
  6. float point_x = 200;
  7. float point_y= 200;
  8. // положение стены
  9. float wall_x=600;
  10. float wall_y=600;
  11. void setup () {
  12. size (800, 800);
  13. }
  14.  
  15. void draw () {
  16. // Заливка экрана - стирание предыдущего положения
  17. background (#A9DAF2);
  18. // Рисуем машинку
  19. fill (#6CEDD4);
  20. rect (x, y, 80*multi, 30*multi);
  21. fill (#120101);
  22. ellipse (x+20, y+30, 15*multi, 15*multi);
  23. ellipse (x+60, y+30, 15*multi, 15*multi);
  24. fill (#FFFFFF);
  25. rect (x+20, y-15, 40*multi, 15*multi);
  26.  
  27. // Начальный вариант - любая клавиша нажата - машинка движется вперед
  28. /* if (keyPressed == true) {
  29. x+=10;
  30. }*/
  31. // Усложненный вариант - определенная клавиша для определенного движения
  32. if ((keyPressed == true) && (key == 'a' || key == 'A')) {
  33. x-=10;
  34. }
  35. if ((keyPressed == true) && (key == 'd' || key == 'd')) {
  36. x+=10;
  37. }
  38. if ((keyPressed == true) && (key == 'w' || key == 'W')) {
  39. y-=10;
  40. }
  41. if ((keyPressed == true) && (key == 's' || key == 'S')) {
  42. y+=10;
  43. }
  44.  
  45. // Задание на звездочку - если машина достигает края экрана, вернуть ее в центр
  46. if ((x>790) || (x<0) || (y<0) || (y>790)) {
  47. x=400;
  48. y=400;
  49. }
  50. // Задание со звездочкой - добавить случайную стенку. Если машина врезается в нее - она перемещается в центр, стенка случайно меняет положение
  51. fill (#DE8689);
  52. rect (wall_x, wall_y, 100, 20);
  53. if ((x>wall_x-100) && (x<wall_x+100) && (y>wall_y-20) && (y<wall_y+20)) {
  54. x=400;
  55. y=400;
  56. wall_y= random (10, 790);
  57. wall_x= random (10, 790);
  58. }
  59. // Если машина наезжает на кружок, то она увеличится в размере
  60.  
  61. fill (#E8171E);
  62. ellipse (point_x, point_y, 10, 10);
  63. if ((x>point_x-10) && (x<point_x+10) && (y>point_y-10) && (y<point_y+10)) {
  64. multi*=1.2;
  65. point_y= random (10, 790);
  66. point_x= random (10, 790);
  67. }
  68. }
Add Comment
Please, Sign In to add comment