+ def show_answer():
+ global answer_shown
+ answer_shown = True
+ # After the submitted code, draw the solution in white, (so it will
+ # only be clearly visible if they've made their drawing big enough).
+ cr.set_source_rgb(1, 1, 1)
+ cr.move_to(0,250)
+ cr.show_text(hint[user])
+ cr.set_font_size(240)
+ cr.move_to(0,480)
+ cr.show_text(code[user])
+
+ def fingers():
+ show_answer()
+ svg = rsvg.new_from_file("hand.svg")
+ cr.scale(0.2,0.2)
+ for i in range(16):
+ cr.save()
+ cr.translate(i%4 * 500, i/4 * 500)
+ cr.rotate(2 * math.pi * random())
+ svg.render_cairo(cr)
+ cr.restore()
+
+ def mouths():
+ show_answer()
+ svg = rsvg.new_from_file("mouth.svg")
+ cr.scale(0.5,0.5)
+ for i in range(16):
+ cr.save()
+ cr.translate(i%4 * 150, i/4 * 150)
+ cr.rotate(2 * math.pi * random())
+ svg.render_cairo(cr)
+ cr.restore()
+
+ def eyes():
+ show_answer()
+ svg = rsvg.new_from_file("eye.svg")
+ cr.scale(0.2,0.2)
+ for i in range(16):
+ cr.save()
+ cr.translate(i%4 * 600, i/4 * 600)
+ cr.rotate(2 * math.pi * random())
+ svg.render_cairo(cr)
+ cr.restore()
+