Startseite Skripte für das Wintersemester 2018/19 Interaction Design P5, Makey Makey DJ Keyboard


DJ Keyboard

Als Buttons kann man praktisch alles verwenden, das Strom leiten kann…

Schaut Euch die Demo an – bei einem normalen Keyboard werden die Tasten W A S D F verwendet…

p5 Code

var HGSound, CreepySound, SnareSound, DoorKnocksSound, PingSound, DubStebSound;
var HGSound_an = 0;

// Vorladen der Sounds, damit diese gleich losspielen
function preload() {
  // Hintergrundsound, läuft gleich am Anfang
  HGSound = loadSound("sounds/456938__greek555__loop-mix.mp3");

  // CreepySound
  CreepySound = loadSound("sounds/ambience-creepy-wind-a.wav");

  // SnareSound
  SnareSound = loadSound("sounds/456955__uberproduktion__hr-snare.wav");

  // DoorKnocksSound
  DoorKnocksSound = loadSound(
    "sounds/370913__sjturia__door-three-knocks-hard.wav"
  );

  // PingSound
  PingSound = loadSound("sounds/444918__mattix__ping.wav");

  // DubStebSound
  DubStebSound = loadSound(
    "sounds/271576__markovujic92__dubstep-loop-perfect-by-mark-w.mp3"
  );
}

function setup() {
  createCanvas(960, 600);
  frameRate(15);

  CreepySound.loop();
}

function draw() {
  if (HGSound_an == 0) {
    background(int(random(0, 255)));
  } else {
    background(int(random(0, 255)), int(random(0, 255)), int(random(0, 255)));
  }
  // zeigt die großen Buchstaben auf dem Screen
  buchstabenZeigen();
}

function keyPressed() {
  if (key == "W" || key == "w") {
    if (DubStebSound.isPlaying()) {
      DubStebSound.stop();
    } else {
      DubStebSound.loop();
    }
  }

  if (key == "A" || key == "a") {
    if (HGSound.isPlaying()) {
      HGSound.stop();
      HGSound_an = 0;
    } else {
      HGSound.loop();
      HGSound_an = 1;
    }
  }

  if (key == "S" || key == "s") {
    if (PingSound.isPlaying()) {
      PingSound.stop();
    } else {
      PingSound.play();
    }
  }

  if (key == "D" || key == "d") {
    if (SnareSound.isPlaying()) {
      SnareSound.stop();
    } else {
      SnareSound.play();
    }
  }

  if (key == "F" || key == "f") {
    if (DoorKnocksSound.isPlaying()) {
      DoorKnocksSound.stop();
    } else {
      DoorKnocksSound.play();
    }
  }
}

function buchstabenZeigen() {
  textSize(800);
  textAlign(CENTER);
  fill(255, 0, 0);
  var Ukey = key.toUpperCase();
  text(Ukey, width / 2, height / 2 + 290); // Display last key pressed.
}