let speed = 0
let Crash: Image = null
let Herz: Image = null
let gegner2_y = 0
let gegner1_y = 0
let gegner2_x = 0
let gegner1_x = 0
let car_pos_y = 0
let car_pos_x = 0
let Fahrspur = 0
let gegner2_unterwegs = false
let gegner1_unterwegs = false
let newcar = false
basic.forever(() => {
newcar = Math.randomBoolean()
if (!(gegner1_unterwegs) && newcar) {
Fahrspur = Math.random(5)
if (Fahrspur != gegner2_x) {
gegner1_y = 0
gegner1_x = Fahrspur
led.plot(gegner1_x, gegner1_y)
gegner1_unterwegs = true
basic.pause(speed)
}
}
newcar = Math.randomBoolean()
if (!(gegner2_unterwegs) && newcar) {
Fahrspur = Math.random(5)
if (Fahrspur != gegner1_x) {
gegner2_y = 0
gegner2_x = Fahrspur
led.plot(gegner2_x, gegner2_y)
gegner2_unterwegs = true
basic.pause(speed)
}
}
if (gegner1_unterwegs && gegner1_y < 4) {
led.unplot(gegner1_x, gegner1_y)
gegner1_y += 1
led.plot(gegner1_x, gegner1_y)
} else {
led.unplot(gegner1_x, gegner1_y)
gegner1_unterwegs = false
}
if (gegner2_unterwegs && gegner2_y < 4) {
led.unplot(gegner2_x, gegner2_y)
gegner2_y += 1
led.plot(gegner2_x, gegner2_y)
} else {
led.unplot(gegner2_x, gegner2_y)
gegner2_unterwegs = false
}
if (gegner1_x == car_pos_x && gegner1_y == car_pos_y || gegner2_x == car_pos_x && gegner2_y == car_pos_y) {
music.setTempo(120)
music.playTone(Note.G4, music.beat(BeatFraction.Whole))
music.playTone(Note.E4, music.beat(BeatFraction.Whole))
music.playTone(Note.C4, music.beat(BeatFraction.Whole))
basic.clearScreen()
basic.setLedColor(Colors.Red)
for (let i = 0; i < 5; i++) {
Crash.showImage(0)
basic.pause(50)
basic.clearScreen()
basic.pause(50)
}
basic.pause(2000)
basic.setLedColor(Colors.Green)
speed = 200
car_pos_x = 2
car_pos_y = 4
led.plot(car_pos_x, car_pos_y)
music.setTempo(600)
gegner1_unterwegs = false
gegner2_unterwegs = false
}
music.playTone(Note.C, music.beat(BeatFraction.Sixteenth))
basic.pause(speed)
speed += -1
if (speed % 20 == 0) {
if (car_pos_y > 1) {
led.unplot(car_pos_x, car_pos_y)
car_pos_y += -1
led.plot(car_pos_x, car_pos_y)
} else {
basic.clearScreen()
basic.setLedColor(Colors.Indigo)
for (let Frequenz = 0; Frequenz <= 2500; Frequenz++) {
music.ringTone(Frequenz)
}
for (let i = 0; i < 5; i++) {
Herz.showImage(0)
basic.pause(10)
basic.clearScreen()
basic.pause(10)
}
basic.pause(2000)
speed = 200
car_pos_x = 2
car_pos_y = 4
led.plot(car_pos_x, car_pos_y)
music.setTempo(600)
gegner1_unterwegs = false
gegner2_unterwegs = false
}
}
})
input.onButtonPressed(Button.A, () => {
if (car_pos_x > 0) {
led.unplot(car_pos_x, car_pos_y)
car_pos_x += -1
led.plot(car_pos_x, car_pos_y)
}
})
input.onButtonPressed(Button.B, () => {
if (car_pos_x < 4) {
led.unplot(car_pos_x, car_pos_y)
car_pos_x += 1
led.plot(car_pos_x, car_pos_y)
}
})
gegner1_unterwegs = false
gegner2_unterwegs = false
gegner1_x = 0
gegner2_x = 0
gegner1_y = 0
gegner2_y = 0
Herz = images.createImage(`
. # . # .
# # # # #
# # # # #
. # # # .
. . # . .
`)
Crash = images.createImage(`
. . . . .
. # . # .
. . . . .
. # # # .
# . . . #
`)
music.setTempo(600)
speed = 200
car_pos_x = 2
car_pos_y = 4
led.plot(car_pos_x, car_pos_y)
basic.setLedColor(Colors.Green)
Comments
Please log in or sign up to comment.