Your browser does not support the canvas tag.

previous        Show / Hide Source        Download        next
/*
 elite dangerous
 interact by moving mouse up and down the screen
 Conor Norman 991 477 800
 */


void setup() {
  size(400, 400);
  frameRate(30);
  rectMode(CORNERS);
}

void draw() {
  colorMode(RGB, 100, 100, 100, 100);

  //creates black background
  background(0);

  //stars
  ellipseMode(CENTER); 
  noStroke();

  //constantly changes the opacity of stars
  fill(100, 100, 100, 80*sin(frameCount*0.2));

  ellipse(300, 10, 4, 4);
  ellipse(100, 80, 5, 5);
  ellipse(90, 350, 3, 3);
  ellipse(220, 170, 4, 4);

  fill(100, 100, 100, 80*sin(frameCount*0.45));
  ellipse(312, 315, 5, 5);
  ellipse(60, 185, 5, 5);
  ellipse(350, 85, 6, 6);
  ellipse(190, 250, 3, 3);

  fill(100, 100, 100, 80*sin(frameCount*0.28));
  ellipse(330, 200, 6, 6);
  ellipse(210, 340, 5, 5);
  ellipse(230, 70, 2, 2);

  fill(100, 100, 100, 80*sin(frameCount*0.1));
  ellipse(40, 280, 5, 5);
  ellipse(130, 20, 5, 5);
  ellipse(20, 20, 3, 3);


  ellipseMode(CORNERS);

  //changes opacity of middle with mouse movement
  fill(20, 80, 80, 170-mouseY);
  stroke(20, 80, 80, 170-mouseY);

  strokeWeight(2);

  //top center
  line(193, 152, 193, 150); 
  rect(193, 153, 194, 177); 
  rect(193, 179, 208, 191); 
  rect(194, 176, 192, 172); 
  rect(196, 183, 191, 177); 
  rect(197, 179, 196, 178); 
  rect(193, 184, 192, 183);
  line(208, 152, 208, 150); 
  rect(207, 153, 208, 180); 
  rect(205, 177, 210, 183); 
  rect(209, 176, 207, 172); 
  rect(208, 183, 209, 184); 
  rect(204, 178, 205, 179);
  triangle(206, 192, 195, 192, 200, 196); 

  triangle(194, 224, 207, 224, 200, 256); 

  triangle(210, 210, 191, 210, 200, 217); 
  rect(186, 205, 215, 209); 
  rect(185, 209, 178, 207); 
  rect(185, 207, 182, 206); 
  triangle(177, 209, 175, 209, 177, 207); 
  triangle(190, 204, 198, 204, 190, 196); 
  triangle(187, 196, 187, 199, 183, 199); 
  rect(188, 196, 189, 199); 
  rect(216, 207, 223, 209); 
  rect(216, 206, 219, 207); 
  triangle(224, 207, 224, 209, 226, 209);
  triangle(203, 204, 211, 204, 211, 196); 
  triangle(214, 196, 214, 199, 218, 199); 
  rect(212, 196, 213, 199); 


  //bottom center
  triangle(195, 304, 206, 304, 200, 292); 
  triangle(191, 328, 183, 328, 191, 335); 
  triangle(191, 311, 183, 327, 191, 327); 
  triangle(192, 327, 196, 310, 192, 310); 
  triangle(196, 302, 192, 309, 196, 309); 
  triangle(192, 309, 198, 305, 196, 305); 
  triangle(210, 328, 210, 335, 218, 328); 
  triangle(210, 311, 217, 327, 210, 327); 
  triangle(209, 327, 205, 310, 209, 310); 
  triangle(205, 309, 209, 309, 205, 302); 
  triangle(205, 309, 205, 305, 203, 305); 
  triangle(208, 352, 193, 352, 200, 314); 
  ellipse(193, 370, 208, 345);


  fill(20, 80, 80);
  stroke(20, 80, 80);


  //small wing left
  triangle(189-mouseY*0.5, 225, 197-mouseY*0.5, 276, 167-mouseY*0.5, 249); 
  quad(189-mouseY*0.5, 225, 178-mouseY*0.5, 215, 156-mouseY*0.5, 239, 167-mouseY*0.5, 249); 
  rect(178-mouseY*0.5, 230, 164-mouseY*0.5, 215); 
  quad(156-mouseY*0.5, 239, 127-mouseY*0.5, 213, 143-mouseY*0.5, 195, 172-mouseY*0.5, 222);
  triangle(128-mouseY*0.5, 210, 135-mouseY*0.5, 202, 134-mouseY*0.5, 186); 
  rect(134-mouseY*0.5, 158, 152-mouseY*0.5, 203); 
  triangle(153-mouseY*0.5, 191, 153-mouseY*0.5, 179, 163-mouseY*0.5, 179); 
  triangle(153-mouseY*0.5, 159, 153-mouseY*0.5, 169, 163-mouseY*0.5, 169); 
  rect(153-mouseY*0.5, 170, 165-mouseY*0.5, 178); 
  quad(116-mouseY*0.5, 124, 101-mouseY*0.5, 139, 139-mouseY*0.5, 176, 154-mouseY*0.5, 160); 
  triangle(116-mouseY*0.5, 124, 101-mouseY*0.5, 139, 93-mouseY*0.5, 102); 


  //large wing left
  quad(196-mouseY, 284, 181-mouseY, 318, 152-mouseY, 290, 167-mouseY, 258); 
  rect(151-mouseY, 265, 159-mouseY, 290); 
  quad(167-mouseY, 258, 175-mouseY, 289, 64-mouseY, 185, 76-mouseY, 173); 
  rect(105-mouseY, 201, 115-mouseY, 209); 
  triangle(115-mouseY, 200, 115-mouseY, 190, 119-mouseY, 195); 
  triangle(77-mouseY, 174, 64-mouseY, 185, 62-mouseY, 161); 
  triangle(113-mouseY, 240, 106-mouseY, 246, 103-mouseY, 231); 
  triangle(143-mouseY, 267, 134-mouseY, 273, 143-mouseY, 282); 
  quad(143-mouseY, 267, 113-mouseY, 240, 106-mouseY, 246, 134-mouseY, 273); 
  triangle(116-mouseY, 163, 105-mouseY, 171, 104-mouseY, 152); 
  ellipse(127-mouseY, 188, 120-mouseY, 172); 
  quad(128-mouseY, 176, 120-mouseY, 185, 105-mouseY, 171, 116-mouseY, 163); 
  quad(114-mouseY, 190, 103-mouseY, 201, 77-mouseY, 175, 88-mouseY, 164); 
  rect(104-mouseY, 190, 114-mouseY, 201); 
  rect(78-mouseY, 145, 97-mouseY, 173); 
  quad(95-mouseY, 153, 81-mouseY, 169, 38-mouseY, 130, 52-mouseY, 114); 
  triangle(53-mouseY, 115, 38-mouseY, 129, 38-mouseY, 102); 
  rect(54-mouseY, 103, 85-mouseY, 143); 
  quad(84-mouseY, 103, 68-mouseY, 120, 12-mouseY, 68, 28-mouseY, 51); 
  triangle(28-mouseY, 51, 12-mouseY, 68, 6-mouseY, 33); 
  rect(85-mouseY, 134, 90-mouseY, 145); 
  triangle(96-mouseY, 144, 91-mouseY, 144, 91-mouseY, 136); 
  triangle(89-mouseY, 133, 86-mouseY, 133, 85-mouseY, 103); 


  //extra wings left
  rect(40-mouseY*1.5, 217, 86-mouseY*1.5, 237); 
  rect(87-mouseY*1.5, 227, 97-mouseY*1.5, 237); 
  triangle(96-mouseY*1.5, 226, 87-mouseY*1.5, 226, 87-mouseY*1.5, 218); 
  triangle(39-mouseY*1.5, 237, 20-mouseY*1.5, 221, 39-mouseY*1.5, 221); 
  rect(22-mouseY*1.5, 217, 40-mouseY*1.5, 220); 
  triangle(22-mouseY*1.5, 217, 22-mouseY*1.5, 220, 19-mouseY*1.5, 220); 
  triangle(119-mouseY*1.5, 271, 83-mouseY*1.5, 271, 99-mouseY*1.5, 250);
  triangle(97-mouseY*1.5, 246, 52-mouseY*1.5, 246, 83-mouseY*1.5, 271);
  triangle(101-mouseY*1.5, 252, 85-mouseY*1.5, 268, 96-mouseY*1.5, 246);
  triangle(127-mouseY*1.5, 306, 96-mouseY*1.5, 280, 127-mouseY*1.5, 280); 
  triangle(138-mouseY*1.5, 289, 138-mouseY*1.5, 314, 165-mouseY*1.5, 314); 
  quad(137-mouseY*1.5, 313, 128-mouseY*1.5, 306, 128-mouseY*1.5, 281, 137-mouseY*1.5, 289); 


  //right side


  //small wing right
  triangle(211+mouseY*0.5, 225, 203+mouseY*0.5, 276, 233+mouseY*0.5, 249);
  quad(211+mouseY*0.5, 225, 222+mouseY*0.5, 215, 244+mouseY*0.5, 239, 233+mouseY*0.5, 249);
  rect(222+mouseY*0.5, 230, 236+mouseY*0.5, 215);
  quad(244+mouseY*0.5, 239, 273+mouseY*0.5, 213, 257+mouseY*0.5, 195, 228+mouseY*0.5, 222);
  triangle(272+mouseY*0.5, 210, 265+mouseY*0.5, 202, 266+mouseY*0.5, 186);
  rect(266+mouseY*0.5, 158, 248+mouseY*0.5, 203);
  triangle(247+mouseY*0.5, 191, 247+mouseY*0.5, 179, 237+mouseY*0.5, 179);
  triangle(247+mouseY*0.5, 159, 247+mouseY*0.5, 169, 237+mouseY*0.5, 169);
  rect(247+mouseY*0.5, 170, 235+mouseY*0.5, 178);
  quad(284+mouseY*0.5, 124, 299+mouseY*0.5, 139, 261+mouseY*0.5, 176, 246+mouseY*0.5, 160);
  triangle(284+mouseY*0.5, 124, 299+mouseY*0.5, 139, 307+mouseY*0.5, 102);


  //large wing right
  quad(204+mouseY, 284, 219+mouseY, 318, 248+mouseY, 290, 233+mouseY, 258);
  rect(248+mouseY, 265, 241+mouseY, 290);
  quad(233+mouseY, 258, 225+mouseY, 289, 336+mouseY, 185, 324+mouseY, 173);
  rect(295+mouseY, 201, 285+mouseY, 209);
  triangle(285+mouseY, 200, 285+mouseY, 190, 281+mouseY, 195);
  triangle(323+mouseY, 174, 336+mouseY, 185, 338+mouseY, 161);
  triangle(287+mouseY, 240, 294+mouseY, 246, 297+mouseY, 231);
  triangle(257+mouseY, 267, 266+mouseY, 273, 257+mouseY, 282);
  quad(257+mouseY, 267, 287+mouseY, 240, 294+mouseY, 246, 266+mouseY, 273);
  triangle(284+mouseY, 163, 295+mouseY, 171, 296+mouseY, 152);
  ellipse(273+mouseY, 188, 280+mouseY, 172);
  quad(272+mouseY, 176, 280+mouseY, 185, 295+mouseY, 171, 284+mouseY, 163);
  quad(286+mouseY, 190, 297+mouseY, 201, 323+mouseY, 175, 312+mouseY, 164);
  rect(296+mouseY, 190, 286+mouseY, 201);
  rect(322+mouseY, 145, 303+mouseY, 173);
  quad(305+mouseY, 153, 319+mouseY, 169, 362+mouseY, 130, 348+mouseY, 114);
  triangle(347+mouseY, 115, 362+mouseY, 129, 362+mouseY, 102);
  rect(346+mouseY, 103, 315+mouseY, 143);
  quad(316+mouseY, 103, 332+mouseY, 120, 388+mouseY, 68, 372+mouseY, 51);
  triangle(372+mouseY, 51, 388+mouseY, 68, 394+mouseY, 33);
  rect(315+mouseY, 134, 310+mouseY, 145);
  triangle(304+mouseY, 144, 309+mouseY, 144, 309+mouseY, 136);
  triangle(311+mouseY, 133, 314+mouseY, 133, 315+mouseY, 103);


  //extra wings right
  rect(360+mouseY*1.5, 217, 314+mouseY*1.5, 237);
  rect(313+mouseY*1.5, 227, 303+mouseY*1.5, 237);
  triangle(304+mouseY*1.5, 226, 313+mouseY*1.5, 226, 313+mouseY*1.5, 218);
  triangle(361+mouseY*1.5, 237, 380+mouseY*1.5, 221, 361+mouseY*1.5, 221);
  rect(378+mouseY*1.5, 217, 360+mouseY*1.5, 220);
  triangle(378+mouseY*1.5, 217, 378+mouseY*1.5, 220, 381+mouseY*1.5, 220);
  triangle(281+mouseY*1.5, 271, 317+mouseY*1.5, 271, 301+mouseY*1.5, 250);
  triangle(303+mouseY*1.5, 246, 348+mouseY*1.5, 246, 317+mouseY*1.5, 271);
  triangle(299+mouseY*1.5, 252, 315+mouseY*1.5, 268, 304+mouseY*1.5, 246);
  triangle(273+mouseY*1.5, 306, 304+mouseY*1.5, 280, 273+mouseY*1.5, 280);
  triangle(262+mouseY*1.5, 289, 262+mouseY*1.5, 314, 235+mouseY*1.5, 314);
  quad(263+mouseY*1.5, 313, 272+mouseY*1.5, 306, 272+mouseY*1.5, 281, 263+mouseY*1.5, 289);
}