Code Sketch


SIDDHI SABALE
By: Mhalsakant School
Category: Art
cleari()
originBottomLeft()
drawStage(black)

val myCar = Picture.rectangle(40, 80)
myCar.setPenColor(cm.darkGray)
myCar.setFillColor(cm.lightBlue)
myCar.setPosition(cwidth / 2, cheight / 2)
draw(myCar)

def otherCarMaker(x: Double) = {
    val car = Picture.rectangle(40, 80)
    car.setPenColor(cm.darkGray)
    car.setFillColor(cm.lightCoral)
    car.setPosition(x, cheight)
    car
}

val cars = HashSet.empty[Picture]

val otherSpeed = 400
val mySpeed = 300

timer(700) {
    val otherCar = otherCarMaker(randomDouble(0, cwidth - 40))
    draw(otherCar)
    cars.add(otherCar)
}

animate {
    val dt = frameDeltaTime
    repeatFor(cars) { car =>
        car.translate(0, -otherSpeed * dt)
        if (car.collidesWith(myCar)) {
            stopAnimation()
            drawCenteredMessage("You Lose", red, 30)
        }
    }

    if (isKeyPressed(Kc.VK_UP)) {
        myCar.translate(0, mySpeed * dt)
    }
    if (isKeyPressed(Kc.VK_DOWN)) {
        myCar.translate(0, -mySpeed * dt)
    }
    if (isKeyPressed(Kc.VK_RIGHT)) {
        myCar.translate(mySpeed * dt, 0)
    }
    if (isKeyPressed(Kc.VK_LEFT)) {
        myCar.translate(-mySpeed * dt, 0)
    }
}
showGameTime(60, "You Win", green, 15)
activateCanvas()