Another week and another assignment. The game itself is not very exciting. You can start and stop the timer, every start is an attempt and every stop exactly at 0 is a win.
# Author: RK
# "Stopwatch: The Game"
import simplegui
#import random
# global variables
width = 400
height = 200
time = 0
message = "StopWatch Game"
attempts = 0
wins = 0
started = False
# Helper Function
def format_time(t):
"""converts tenths of seconds to A:BC.D"""
#global message
i = t % 10
j = int ( t / 10)
k = j % 60
l = int (j / 60)
if k < 10:
game_string = "0" + str(k)
else:
game_string = str(k)
return str(l) + ":" + game_string + "." + str(i)
# define event handlers for buttons; "Start", "Stop", "Reset"
def start_timer():
global started
timer.start()
started = True
def stop_timer():
timer.stop();
global time, wins, attempts, started
if started:
if time % 10 == 0:
wins = wins + 1
not started
attempts = attempts + 1
def reset_timer():
global time, started, attempts, wins
timer.stop()
time = 0
wins = 0
attempts = 0
# define event handler for timer with 0.1 sec interval
def timer_handler():
global time
time += 1
# define draw handler
def draw_handler(canvas):
canvas.draw_text(format_time(time), (120,120), 50, "White")
canvas.draw_text("wins/attemps: " + str(wins) + "/" + str(attempts), (200,30), 20, "Yellow")
# create frame
f = simplegui.create_frame(message, width, height)
# register event handlers
f.add_button("Start", start_timer, 100);
f.add_button("Stop", stop_timer, 100);
f.add_button("Reset", reset_timer, 100);
timer = simplegui.create_timer(100, timer_handler)
f.set_draw_handler(draw_handler)
# start frame
f.start()
# Please remember to review the grading rubric
No comments:
Post a Comment