def play_c3():
stage.play_sound('PianoC')
def play_d():
stage.play_sound('PianoD')
def play_eb():
stage.play_sound('PianoEb')
def play_f():
stage.play_sound('PianoF')
def play_g():
stage.play_sound('PianoG')
def play_ab():
stage.play_sound('PianoAb')
def play_bb():
stage.play_sound('PianoBb')
def play_c4():
stage.play_sound('PianoC4')
def play_kick():
stage.play_sound('LDKick')
def play_snare():
stage.play_sound('LDSnare')
def play_hat_close():
stage.play_sound('LDHatClose')
def play_hat_open():
stage.play_sound('LDHatOpen')
def play_mystery_sound():
stage.play_sound('PianoAb')
key_events = {
'a': play_c3,
's': play_d,
'd': play_eb,
'f': play_f,
'g': play_g,
'h': play_ab,
'j': play_bb,
'k': play_c4,
'z': play_kick,
'x': play_snare,
'c': play_hat_close,
'v': play_hat_open,
'up': play_snare,
'down': play_kick,
'right': play_hat_open,
'left': play_hat_close,
'space': play_mystery_sound
}
for k in key_events:
stage.event_key(k, key_events[k])
t = codesters.Text('push a, s, d, f, g, h, j, k for piano', 0, 50)
t = codesters.Text('push z, x, c, v for drums', 0, -0)
white_key_letters = ['a', 's', None, 'f', 'g', None, None, 'k']
white_key_events = [play_c3, play_d, None, play_f, play_g, None, None, play_c4]
# Create the sprites for the white keys
starting_x = -175
w = 50
h = 150
y = 150
for i in range(8):
x = starting_x + i * w
white_key = codesters.Rectangle(x, y, w, h, 'white', 'black')
if white_key_letters[i]:
label = codesters.Text(white_key_letters[i], x, y)
if white_key_events[i]:
white_key.event_click(white_key_events[i])
# Create the sprites for the black keys
black_key_letters = [None, 'd', None, 'h', 'j']
black_key_events = [None, play_eb, None, play_ab, play_bb]
w = 30
h = 80
y = y + 35
x_pos_list = [starting_x + 25, starting_x + 80, starting_x + 175, starting_x + 225, starting_x + 275]
for i in range(5):
x = x_pos_list[i]
black_key = codesters.Rectangle(x, y, w, h, 'black')
if black_key_letters[i]:
label = codesters.Text(black_key_letters[i], x, y, 'white')
if black_key_events[i]:
black_key.event_click(black_key_events[i])
sprite = codesters.Sprite("drumset_4af", 0, -150)
sprite.set_size(0.25)
mic = codesters.Sprite("microphone")
mic.say("Use arrow keys for drums!")
mic.set_size(0.5)
mic.go_to(-140,-100)