Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2018
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.14 KB | None | 0 0
  1. // Zach Grafton
  2. // Classic Space Invaders game utilizing p5.js
  3.  
  4. // 1. generate new lukes every x seconds/shiftdowns
  5. // - make five luke arrays, splice them when all lukes are destroyed
  6. // 2. fix two-key simultaneous push stopping ship's movement
  7.  
  8. var ship;
  9. var lukes;
  10. var cols = 5;
  11. var rows = 4;
  12. var lasers = [];
  13.  
  14. function makeLukeArray(cols, rows) {
  15. var arr = new Array(cols);
  16. for (var i = 0; i < arr.length; i++) {
  17. arr[i] = new Array(rows);
  18. }
  19. return arr;
  20. }
  21.  
  22. function setup() {
  23. createCanvas(400, 450);
  24. ship = new Ship();
  25.  
  26. lukes = makeLukeArray(cols, rows);
  27.  
  28. for (var i = 0; i < cols; i++) {
  29. for (var j = 0; j < rows; j++) {
  30. lukes[i][j] = new Luke(j * 80 + 80, 60); // j should space them out
  31. }
  32. }
  33. }
  34.  
  35. function draw() {
  36. background(31);
  37. ship.show();
  38. ship.move();
  39.  
  40. var edge = false;
  41.  
  42. for (var i = 0; i < rows; i++) {
  43. (var j = 0; j < cols; j++) {
  44. lukes[i][0].show();
  45. lukes[i][0].move();
  46. }
  47. }
  48. }
  49. /*
  50. if (lukes[i][j].x > width ||lukes[i][j].x < 0) {
  51. edge = true;
  52. }
  53.  
  54. if (edge) {
  55. for (var i = 0; i < lukes.length; i++) {
  56. lukes[i][j].shiftDown();
  57. }
  58. }
  59. }
  60. }
  61.  
  62. /*
  63. for (var i = lasers.length-1; i >= 0; i--) {
  64. if (lasers[i].toDelete) {
  65. lasers.splice(i, 1);
  66. }
  67. }
  68.  
  69. for (var i = lukes.length-1; i >= 0; i--) {
  70. if (lukes[i].shiftTally > 10) {
  71. setup(); // game over
  72. }
  73. }
  74. }
  75.  
  76. for (var i = 0; i< lasers.length; i++) {
  77. lasers[i].show();
  78. lasers[i].move();
  79. for (var j = 0; j < lukes.length; j++) {
  80. if (lasers[i].hits(lukes[i]) ) {
  81. lukes[i][j].grow();
  82. lasers[i].evap();
  83. if (lukes[i].health < 1) {
  84. lukes.splice(j, 1);
  85. }
  86. }
  87. }
  88. }
  89. */
  90.  
  91.  
  92. function keyReleased() {
  93. if (key != ' ') {
  94. ship.setDir(0);
  95. }
  96. }
  97.  
  98. function keyPressed() {
  99. if (key === ' ') {
  100. var laser = new Laser(ship.x, height);
  101. lasers.push(laser);
  102. }
  103.  
  104. if (keyCode === RIGHT_ARROW) {
  105. ship.setDir(1);
  106. } else if (keyCode === LEFT_ARROW) {
  107. ship.setDir(-1);
  108. }
  109.  
  110. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement