Advertisement
Guest User

Untitled

a guest
May 8th, 2017
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.61 KB | None | 0 0
  1. var ballxspeed;
  2. var ballyspeed;
  3. var ballx;
  4. var bally;
  5. var ballw;
  6. var ballh;
  7. var ballangle;
  8. var ballc;
  9. var pad1x;
  10. var pad1y;
  11. var p1c; //player1 and pad1 color
  12. var p2c;
  13. var pad2x;
  14. var pad2y;
  15. var padw;
  16. var padh;
  17.  
  18. var p1score;
  19. var p2score;
  20. //var pad1ychange;
  21. var c;
  22. var lcolor;
  23.  
  24. function keyPressed(){
  25. if (keyCode === DOWN_ARROW){
  26. var upp1 = true;
  27. }
  28.  
  29. if (keyCode === UP_ARROW){
  30. var downp1 = true;
  31. }
  32. if (keyCode === 90) { // z key press
  33. var upp2 = true;
  34. }
  35. if (keyCode === 83) { //s key press
  36. var downp2 = true;
  37. }
  38. }
  39.  
  40. function keyReleased(){
  41. if (keyCode === DOWN_ARROW) {
  42. var upp1 = false;
  43. }
  44.  
  45. if (keyCode === UP_ARROW) {
  46. var downp1 = false;
  47. }
  48. if (keyCode === 90) { // z key release
  49. var upp2 = false;
  50. }
  51. if (keyCode === 83) { //s key release
  52. var downp2 = false;
  53. }
  54. }
  55.  
  56. function padsmove() {
  57. if (upp1) {
  58. pad1move(10);
  59. }
  60. if (down1) {
  61. pad1move(-10);
  62. }
  63. if (upp2) {
  64. pad2move(10);
  65. }
  66. else if (downp2) {
  67. pad2move(-10);
  68. }
  69. }
  70.  
  71.  
  72. function checkstart() {}
  73. textSize(100);
  74. text("Press space to start the game :",width/2,height/2);
  75. if (keyCode === 32) {
  76. resetpos();
  77. } // if space is pressed
  78.  
  79.  
  80.  
  81.  
  82. function pad1move(steps) {
  83. pad1y += steps
  84. }
  85.  
  86. function pad2move(steps) {
  87. pad2y += steps
  88. }
  89.  
  90.  
  91.  
  92. function show() {
  93. background(0);
  94. fill(ballc);
  95. stroke(255);
  96. strokeWeight(2);
  97. ellipse(ballx,bally,ballw,ballh);
  98. fill(p1c);
  99. stroke(255);
  100. strokeWeight(2);
  101. rect(pad1x,pad1y,padw,padh);
  102. fill(p2c);
  103. rect(pad2x,pad2y,padw,padh);
  104. stroke(lcolor);
  105. strokeWeight(7.7);
  106. line((width/2),0,(width/2),height)
  107. line(2.5,0,2.5,height);
  108. line(2.5,0,width+2.5,0);
  109. line(width-2.5,0,width-2.5,height);
  110. line(0,height-2.5,width,height-2.5);
  111.  
  112. }
  113.  
  114.  
  115. function update() {
  116. ballx += ballxspeed;
  117. bally += ballyspeed;
  118. pad1y = constrain(pad1y,(0),(height-padh))
  119. pad2y = constrain(pad2y,(0),(height-padh))
  120. }
  121.  
  122. function edges() {
  123. if (bally < 10 || bally > height) {
  124. ballyspeed *= -1;
  125. //edgesbipsound.play();
  126. }
  127. }
  128. function resetpos() {
  129. ballx = width/2;
  130. bally = height/2;
  131. randomballyspeed();
  132. randomballxangle();
  133.  
  134. }
  135.  
  136.  
  137. function checkpadcollision() {
  138. if ((ballx > pad2x-padw) && (bally > pad2y && bally < (pad2y+padh))) {
  139. //p2c = color(111,0,111);
  140. ballxspeed *= -1;
  141. }
  142. if ((ballx < (pad1x+2*padw)) && (bally > pad1y && bally < (pad1y+padh))) {
  143. //p1c = color(111,0,111);
  144. ballxspeed *= -1;
  145. }
  146. }
  147. function randomballxangle() {
  148. ballangle = floor((random() * 360) -360);
  149. ballxspeed *= cos(ballangle);
  150. ballyspeed *= sin(ballangle);
  151.  
  152. }
  153.  
  154. function randomballyspeed() {
  155. return Math.floor(Math.random() * (3 + 7)) -7;
  156. }
  157.  
  158.  
  159.  
  160.  
  161. function ballaccel() {
  162. for(i=0;i>5000;i++) {
  163. ballx ++;
  164. bally ++;
  165. i = 0;
  166. console.log(ballx)
  167. }
  168. }
  169.  
  170. function playersscores() {
  171. noStroke();
  172. fill(lcolor);
  173. textSize(70);
  174. textFont("Algerian");
  175. text(p1score,(width/2+width/4),height/8);
  176. fill(lcolor);
  177. textSize(70);
  178. textFont("Algerian");
  179. text(p2score,width/4,height/8);
  180. }
  181.  
  182.  
  183. function scorepoint() {
  184. if (ballx > width) {
  185. p2score ++;
  186. resetpos();
  187. }
  188. else if(ballx < 0) {
  189. p1score++;
  190. resetpos();
  191. }
  192. }
  193.  
  194. /*function preload() {
  195. padbipsound = loadSound('pong/D3pong.waw');
  196. edgesbipsound = loadSound('pong/D5pong.waw')
  197. }*/
  198.  
  199. function rainbowcolor() {
  200. colorMode(HSB);
  201. if (c <= 255) {
  202. c += 0.5;}
  203.  
  204. else {
  205. c = 0;
  206. }
  207. lcolor = color(c,255,255);
  208. }
  209.  
  210. function waitforstart() {}
  211.  
  212.  
  213.  
  214. function setup() {
  215. createCanvas(windowWidth,windowHeight);
  216. angleMode(DEGREES);
  217. rectMode(NORMAL);// default
  218. rainbowcolor();
  219. ballx = width/2;//to adapt to different screen sizes
  220. bally = height/2;//same
  221. ballw = 20;
  222. ballh = 20;
  223. ballc = color(0);
  224. padw = width/80;//same
  225. padh = height/5;//same
  226. pad1x = 0+(2*padw);
  227. pad1y = ((height/2)-(padh/2));//paddle at the middle of the screen
  228. p1c = color(0);
  229. pad2x = width-3*padw;
  230. pad2y = ((height/2)-(padh/2));//paddle at the middle of the screen
  231. p2c = color(0);
  232. ballxspeed = 7;
  233. ballyspeed = randomballyspeed()
  234. p1score = 0;
  235. p2score = 0;
  236. //padbipsound.setVolume(0.5);
  237. //edgesbipsound.setVolume(0.5);
  238. }
  239.  
  240.  
  241.  
  242. function draw() {
  243. rainbowcolor();
  244. edges();
  245. update();
  246. show();
  247. scorepoint();
  248. playersscores();
  249. checkpadcollision();
  250. ballaccel();
  251. padsmove();
  252.  
  253. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement