xxxxxxxxxx
243
/*
Write summary here
*/
function setup() {
createCanvas(400, 400);
}
var soccerballX = 0
var soccerballY = 0
var goalieX = 0
var hit = false
var kick = false
function draw() {
background("white")
//backround
strokeWeight(0)
fill(204, 157, 235)
rect(0,0,400,210)
fill(142, 42, 209)
rect(0,203,400,185)
//goal border
stroke(245,245,245)
strokeWeight(3)
line(80, 210, 80, 100)
line(80,100,320,100)
line(320,100,320,210)
//goal boarder outer
line(80,100,320,100)
line(320,100,320,220)
line(320,220,80,220)
line(80,220,80,100)
//goal boarder inner
line(95,116,304,116)
line(304,116,294,203)
line(294,203,105,203)
line(105,203,95,116)
//goal net
//mainvertical lines
strokeWeight(1)
line(110,116,110,203)
line(121,116,121,203)
line(132,116,132,203)
line(143,116,143,203)
line(154,116,154,203)
line(165,116,165,203)
line(176,116,176,203)
line(187,116,187,203)
line(198,116,198,203)
line(209,116,209,203)
line(220,116,220,203)
line(231,116,231,203)
line(242,116,242,203)
line(253,116,253,203)
line(264,116,264,203)
line(275,116,275,203)
line(288,116,288,203)
//mainhorizontal lines
line(98,127, 301,127)
line(99,138, 300,138)
line(100,149, 299,149)
line(101,160, 298,160)
line(102,171, 297,171)
line(103,182, 296,182)
line(104,193, 295,193)
//outer diagonal lines on top
line(91,100, 110,116)
line(105,100, 121,116)
line(120,100,132,116)
line(133, 100,143,116)
line(146,100,154,116)
line(160,100, 165,116)
line(174,100,176,116)
line(187,100,187,116)
line(200,100,198,116)
line(214,100,209,116)
line(228,100,220,116)
line(241,100,231,116)
line(254,100,242,116)
line(269,100,253,116)
line(284,100,264,116)
line(300,100,275,116)
line(310,100,286,116)
//outer diagonal lines on the bottom
line(91,220,110,204)
line(105,220,121,204)
line(120,220,132,204)
line(133,220,143,204)
line(146,220,154,204)
line(160,220,165,204)
line(174,220,176,204)
line(187,220,187,204)
line(200,220,198,204)
line(214,220,209,204)
line(228,220,220,204)
line(241,220,231,204)
line(254,220,242,204)
line(269,220,253,204)
line(284,220,264,204)
line(300,220,275,204)
line(310,220,286,204)
//outer diagonal lines on the left horizontal
line(80,117, 95,126)
line(80,127,96,136)
line(80,137,97,146)
line(80,147,98, 152)
line(80,157,99,160)
line(80,170,101,170)
line(80,179,101,176)
line(80,190,102,184)
line(80,200,103,194)
line(80,211,104,204)
//outer diagonal lines on the right horizontal
line(320,117,305,126)
line(320,127,303,136)
line(320,137,302,146)
line(320,147,302,152)
line(320,157,301,160)
line(320,167,300,170)
line(320,177,299,176)
line(320,187,298,184)
line(320,197,297,194)
line(320,207,296,204)
//borders
strokeWeight(3)
line(80,100, 95,116)
line(81,219,105,203)
line(319,219,294,203)
line(320,100,304,116)
//penalty line
fill(245,245,245)
strokeWeight(0)
ellipse(200,340,25,5)
//rain
strokeWeight(0.25 )
stroke(204, 215, 230)
var x=random(0,400)
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
line (x,0,x,random(100,300))
//goalie
fill('black')
strokeWeight(0)
push()
translate (goalieX, 0)
rect()
ellipse(200,158,20,20)
rect(195,157,10,40)
strokeWeight(3)
line(195,179,179,171)
line(205,179,221,171)
line(195,193,188,221)
line(205,193,212,221)
pop()
if (keyCode == 37)
{
goalieX=random(0,-100)
soccerballX = -70
soccerballY = -130
keyCode=0
kick=true
}
if (keyCode == 39)
{
goalieX=random(0,100)
soccerballX = 70
soccerballY = - 130
keyCode = 0
kick=true
}
//soccer ball
strokeWeight(3)
stroke(10, 13, 11)
push()
translate(soccerballX,soccerballY)
fill('white')
ellipse(200,323,30,30)
fill(10, 13, 11)
quad(204,322,202,327,198,327,196,322)
triangle(203,320,197,320,200,317)
line(200,317,200,309)
line(203,321,187,317)
line(198,321,213,319)
line(202,327,211,331)
line(198,327,189,334)
pop()
//losing and winning
hit= collideRectCircle(goalieX,140,40,180,soccerballX,soccerballY,30);
print(hit)
if (kick == true){
if (hit == true) {
strokeWeight(1)
fill('black')
textSize(26)
text('Oh no! Better luck next time!',27,27)
}
if (hit == false) {
fill('black')
textSize(20)
text('Well done! Think you can do it again?',27,27)
}
}
text("X:"+mouseX+" Y:"+mouseY,200,25) // for x,y location
//do not pass the curly brace
}