/* built with Studio Sketchpad:
* https://sketchpad.cc
*
* observe the evolution of this sketch:
* https://kollafoss.sketchpad.cc/sp/pad/view/ro.kD71iHSFy2N/rev.3945
*
* authors:
* Bjarni Ole Apel Ingason
* Jóhannes Gunnar Þorsteinsson
* Tristan Reyr Borghildarson
* license (unless otherwise specified):
* creative commons attribution-share alike 3.0 license.
* https://creativecommons.org/licenses/by-sa/3.0/
*/
void setup() {
size(300, 300);
frameRate(30);
fuglY = 150;
fuglX = 150;
fugl2Y = 150;
fugl2X = 150;
stig1 = 1;
stig2 = 1;
hradiKassi = 1;
staerdFugla = 20;
kassiX = width;
kassiY = 150;
kassiStaerdX = 20;
kassiStaerdY = 150;
kassi2X = 0;
kassi2Y = 0;
kassi2StaerdX = 20;
kassi2StaerdY = 150;
kassi3X = 0;
kassi3Y = height;
kassi3StaerdX = 20;
kassi3StaerdY = 150;
kassi4X = -150;
kassi4Y = 0;
kassi4StaerdX = 150;
kassi4StaerdY = 20;
// Arekstrar
vinstriHlidASpilara = 0;
haegriHlidASpilara = 0;
efriHlidASpilara = 0;
nedriHlidASpilara = 0;
vinstriHlidASpilara2 = 0;
haegriHlidASpilara2 = 0;
efriHlidASpilara2 = 0;
nedriHlidASpilara2 = 0;
vinstriHlidAKassa1 = 0;
haegriHlidAKassa1 = 0;
efriHlidAKassa1 = 0;
nedriHlidAKassa1 = 0;
vinstriHlidAKassa2 = 0;
haegriHlidAKassa2 = 0;
efriHlidAKassa2 = 0;
nedriHlidAKassa2 = 0;
vinstriHlidAKassa3 = 0;
haegriHlidAKassa3 = 0;
efriHlidAKassa3 = 0;
nedriHlidAKassa3 = 0;
vinstriHlidAKassa4 = 0;
haegriHlidAKassa4 = 0;
efriHlidAKassa4 = 0;
nedriHlidAKassa4 = 0;
}
// Takkar
// Spilari 1
boolean vinstri = false;
boolean haegri = false;
boolean upp = false;
boolean nidur = false;
// Takkar 2
// Spilari 2
boolean vinstri2 = false;
boolean haegri2 = false;
boolean upp2 = false;
boolean nidur2 = false;
void draw() {
background(255);
fill(300, 400, 100);
hreyfing();
ellipse(fuglX, fuglY, staerdFugla, staerdFugla);
fill(127, 67, 66);
ellipse(fugl2X, fugl2Y, staerdFugla, staerdFugla);
kassi();
arekstur();
leikurBuinn();
}
void keyPressed() {
// Spilari 1
if (keyCode == UP) {
upp = true;
}
if (keyCode == DOWN) {
nidur = true;
}
if (keyCode == RIGHT) {
haegri = true;
}
if (keyCode == LEFT) {
vinstri = true;
}
// Spilari2
if (key == 'a' || key == 'A') {
vinstri2 = true;
}
if (key == 'd' || key == 'D') {
haegri2 = true;
}
if (key == 'w' || key == 'W') {
upp2 = true;
}
if (key == 's' || key == 'S') {
nidur2 = true;
}
}
void keyReleased() {
//Spilari1
if (keyCode == UP) {
upp = false;
}
if (keyCode == DOWN) {
nidur = false;
}
if (keyCode == RIGHT) {
haegri = false;
}
if (keyCode == LEFT) {
vinstri = false;
}
//Spilari2
if (key == 'w' || key == 'W') {
upp2 = false;
}
if (key == 's' || key == 'S') {
nidur2 = false;
}
if (key == 'a' || key == 'A') {
vinstri2 = false;
}
if (key == 'd' || key == 'D') {
haegri2 = false;
}
}
void hreyfing() {
//Spilari1
if (upp == true) {
fuglY = fuglY - 5;
}
if (nidur == true) {
fuglY = fuglY + 5;
}
if (haegri == true) {
fuglX = fuglX + 5;
}
if (vinstri == true) {
fuglX = fuglX - 5;
}
//Spilari2
if (upp2 == true) {
fugl2Y = fugl2Y - 5;
}
if (nidur2 == true) {
fugl2Y = fugl2Y + 5;
}
if (haegri2 == true) {
fugl2X = fugl2X + 5;
}
if (vinstri2 == true) {
fugl2X = fugl2X - 5;
}
}
void kassi() {
fill(225, 0, 0);
rect(kassiX, kassiY, kassiStaerdX, kassiStaerdY);
kassiX = kassiX - hradiKassi;
if(kassiX < 0) {
kassiX = width;
kassiY = random(10, 250);
hradiKassi = hradiKassi+0.3
}
fill(0, 225, 0);
rect(kassi2X, kassi2Y, kassi2StaerdY, kassi2StaerdX);
kassi2Y = kassi2Y + hradiKassi;
if(kassi2Y > height) {
kassi2X = random(10, 250);
kassi2Y = 0;
}
fill(0, 0, 225);
rect(kassi3X, kassi3Y, kassi3StaerdX, kassi3StaerdY );
kassi3Y = kassi3Y - hradiKassi;
if(kassi3Y < 0) {
kassi3X = random(10, 250);
kassi3Y = height;
}
fill(100, 50, 150);
rect(kassi4X, kassi4Y, kassi4StaerdX, kassi4StaerdY);
kassi4X = kassi4X + hradiKassi;
if(kassi4X > width) {
kassi4Y = random(10, 250);
kassi4X = -150;
}
}
void arekstur() {
// Spilari 1
vinstriHlidASpilara = fuglX-staerdFugla/2;
haegriHlidASpilara = fuglX+staerdFugla/2;
efriHlidASpilara = fuglY-staerdFugla/2;
nedriHlidASpilara = fuglY+staerdFugla/2;d
// Spilari 2
vinstriHlidASpilara2 = fugl2X-staerdFugla/2;
haegriHlidASpilara2 = fugl2X+staerdFugla/2;
efriHlidASpilara2 = fugl2Y-staerdFugla/2;
nedriHlidASpilara2 = fugl2Y+staerdFugla/2;d
// Kassi 1
vinstriHlidAKassa1 = kassiX;
haegriHlidAKassa1 = kassiX + kassiStaerdX;
efriHlidAKassa1 = kassiY;
nedriHlidAKassa1 = kassiY+kassiStaerdY;
// Kassi 2
vinstriHlidAKassa2 = kassi2X;
haegriHlidAKassa2 = kassi2X + kassi2StaerdY;
efriHlidAKassa2 = kassi2Y;
nedriHlidAKassa2 = kassi2Y+kassi2StaerdX;
// Kassi 3
vinstriHlidAKassa3 = kassi3X;
haegriHlidAKassa3 = kassi3X + kassi3StaerdX;
efriHlidAKassa3 = kassi3Y;
nedriHlidAKassa3 = kassi3Y+kassi3StaerdY;
// Kassi 4
vinstriHlidAKassa4 = kassi4X;
haegriHlidAKassa4 = kassi4X + kassi4StaerdX;
efriHlidAKassa4 = kassi4Y;
nedriHlidAKassa4 = kassi4Y+kassi4StaerdY;
/////// SPILARI 1 ///////
// Árekstur spilara 1 við kassa 1
if(
((vinstriHlidASpilara >= vinstriHlidAKassa1 && vinstriHlidASpilara <= haegriHlidAKassa1) ||
(haegriHlidASpilara >= vinstriHlidAKassa1 && haegriHlidASpilara <= haegriHlidAKassa1)) &&
((efriHlidASpilara >= efriHlidAKassa1 && efriHlidASpilara <= nedriHlidAKassa1) ||
(nedriHlidASpilara >= efriHlidAKassa1 && nedriHlidASpilara <= nedriHlidAKassa1))
) {
spilari1TaparLifi();
}
// Árekstur spilara 1 við kassa 2
if(
((vinstriHlidASpilara >= vinstriHlidAKassa2 && vinstriHlidASpilara <= haegriHlidAKassa2) ||
(haegriHlidASpilara >= vinstriHlidAKassa2 && haegriHlidASpilara <= haegriHlidAKassa2)) &&
((efriHlidASpilara >= efriHlidAKassa2 && efriHlidASpilara <= nedriHlidAKassa2) ||
(nedriHlidASpilara >= efriHlidAKassa2 && nedriHlidASpilara <= nedriHlidAKassa2))
) {
spilari1TaparLifi();
}
// Árekstur spilara 1 við kassa 3
if(
((vinstriHlidASpilara >= vinstriHlidAKassa3 && vinstriHlidASpilara <= haegriHlidAKassa3) ||
(haegriHlidASpilara >= vinstriHlidAKassa3 && haegriHlidASpilara <= haegriHlidAKassa3)) &&
((efriHlidASpilara >= efriHlidAKassa3 && efriHlidASpilara <= nedriHlidAKassa3) ||
(nedriHlidASpilara >= efriHlidAKassa3 && nedriHlidASpilara <= nedriHlidAKassa3))
) {
spilari1TaparLifi();
}
// Árekstur spilara 1 við kassa 4
if(
((vinstriHlidASpilara >= vinstriHlidAKassa4 && vinstriHlidASpilara <= haegriHlidAKassa4) ||
(haegriHlidASpilara >= vinstriHlidAKassa4 && haegriHlidASpilara <= haegriHlidAKassa4)) &&
((efriHlidASpilara >= efriHlidAKassa4 && efriHlidASpilara <= nedriHlidAKassa4) ||
(nedriHlidASpilara >= efriHlidAKassa4 && nedriHlidASpilara <= nedriHlidAKassa4))
) {
spilari1TaparLifi();
}
///////// SPILARI 2 ////////
// Árekstur spilara 2 við kassa 1
if(
((vinstriHlidASpilara2 >= vinstriHlidAKassa1 && vinstriHlidASpilara2 <= haegriHlidAKassa1) ||
(haegriHlidASpilara2 >= vinstriHlidAKassa1 && haegriHlidASpilara2 <= haegriHlidAKassa1)) &&
((efriHlidASpilara2 >= efriHlidAKassa1 && efriHlidASpilara2 <= nedriHlidAKassa1) ||
(nedriHlidASpilara2 >= efriHlidAKassa1 && nedriHlidASpilara2 <= nedriHlidAKassa1))
) {
spilari2TaparLifi();
}
// Árekstur spilara 2 við kassa 2
if(
((vinstriHlidASpilara2 >= vinstriHlidAKassa2 && vinstriHlidASpilara2 <= haegriHlidAKassa2) ||
(haegriHlidASpilara2 >= vinstriHlidAKassa2 && haegriHlidASpilara2 <= haegriHlidAKassa2)) &&
((efriHlidASpilara2 >= efriHlidAKassa2 && efriHlidASpilara2 <= nedriHlidAKassa2) ||
(nedriHlidASpilara2 >= efriHlidAKassa2 && nedriHlidASpilara2 <= nedriHlidAKassa2))
) {
spilari2TaparLifi();
}
// Árekstur spilara 2 við kassa 3
if(
((vinstriHlidASpilara2 >= vinstriHlidAKassa3 && vinstriHlidASpilara2 <= haegriHlidAKassa3) ||
(haegriHlidASpilara2 >= vinstriHlidAKassa3 && haegriHlidASpilara <= haegriHlidAKassa3)) &&
((efriHlidASpilara >= efriHlidAKassa3 && efriHlidASpilara2 <= nedriHlidAKassa3) ||
(nedriHlidASpilara2 >= efriHlidAKassa3 && nedriHlidASpilara2 <= nedriHlidAKassa3))
) {
spilari2TaparLifi();
}
// Árekstur spilara 2 við kassa 4
if(
((vinstriHlidASpilara2 >= vinstriHlidAKassa4 && vinstriHlidASpilara2 <= haegriHlidAKassa4) ||
(haegriHlidASpilara2 >= vinstriHlidAKassa4 && haegriHlidASpilara2 <= haegriHlidAKassa4)) &&
((efriHlidASpilara2 >= efriHlidAKassa4 && efriHlidASpilara2 <= nedriHlidAKassa4) ||
(nedriHlidASpilara2 >= efriHlidAKassa4 && nedriHlidASpilara2 <= nedriHlidAKassa4))
) {
spilari2TaparLifi();
}
}
void spilari1TaparLifi() {
stig1 = stig1 - 1;
fuglX = 150;
fuglY = 150;
}
void spilari2TaparLifi() {
stig2 = stig2 - 1;
fugl2X = 150;
fugl2Y = 150;
}
void leikurBuinn() {
if(stig1 <= 0) {
background(0);
fill(255);
text("Leikmaður 2 vinnur", 50, 50);
}
if(stig2 <= 0) {
background(0);
fill(255);
text("Leikmaður 1 vinnur", 50, 50);
}
}