def move():
    global snake, bean, direction, gameover, score, time_interval, timer
    if not gameover:
        if direction == RIGHT:
            head = [snake[0][0]+1, snake[0][1]]
        elif direction == UP:
            head = [snake[0][0], snake[0][1]-1]
        elif direction == LEFT:
            head = [snake[0][0]-1, snake[0][1]]
        elif direction == DOWN:
            head = [snake[0][0], snake[0][1]+1]
        # 检查游戏结束条件    
        if head[0] >= COLS or head[0] < 0 or head[1] >= ROWS or head[1] < 0 or (head in snake):
            gameover = True
            return
        
        snake.insert(0, head)   
        tail = snake.pop()
        if bean in snake: # 如果吃到豆子
            bean = create_bean()
            snake.append(tail)
            score += 1    
            if score > 0 and score % 5 == 0 and time_interval > 50:
                simplegui.timers.destroy() # 先销毁原有 timer,再创建新的 timer
                time_interval /= 1.2
                timer = simplegui.create_timer(time_interval, move)    
                timer.start()
Example #2
0
def process_bonus(bonus):
    global lives, explosion_group, cant_rocks, rock_group, timer3, score, \
        immortal, scoreBonus, seconds, functionTimer
    if bonus.type == 3:  # lives++
        lives += 1
    elif bonus.type == 4:  # exploit all the asteroids
        copy = rock_group.copy()
        for i in copy:
            explosion_group.add(Sprite(i.get_position(), [0, 0], 0, 0,
                                       explosion_image, explosion_info,
                                       WIDTH, HEIGHT, explosion_sound))
            rock_group.discard(i)
            cant_rocks -= 1
            score += 1
    else:
        if bonus.type == 2:  #each asteroid is +2
            scoreBonus = True
            immortal = False
        elif bonus.type == 1:  #the asteroids not hurt you
            immortal = True
            scoreBonus = False

        if timer3 is not None:
            timer3.stop()
            seconds = 0

        timer3 = simplegui.create_timer(1000, timer_bonus_1_2)
        tick_tock_sound.rewind()
        tick_tock_sound.play()
        timer3.start()
Example #3
0
def main():
    global TIME_INTERVAL, frame, timer
    #create a timer with timed event
    timer = simplegui.create_timer(TIME_INTERVAL, incrementTime)
    #create frame
    frame = createFrame()
    
    #start frame
    frame.start()
Example #4
0
def reset():    
    """ Reset stopwatch and score """
    global timer, counter, message, attempts, hits, is_running, sucs_message
    timer.stop()
    is_running = False
    timer = simplegui.create_timer(100, tick)
    counter = 0
    attempts = 0
    hits = 0
    sucs_message = ""
Example #5
0
def play():
    global snake, bean, direction, gameover, score, time_interval, timer
    # 如果有正在运行的定时器,需要先把它停下
    if timer is not None and timer.is_running():
        timer.stop() 
    # 创建定时器
    timer = simplegui.create_timer(time_interval, move)
    timer.start()
    
    # 代码写在下面
    pass  
def timer_handler():
    global x
    x += 4
    print x
    print time.time()
    print ""
    global timer
    if x >= 16:
        timer.stop()
        timer = simpleguitk.create_timer(500, timer_handler)
        timer.start()
Example #7
0
    def createWorld(self):
        world = gui.create_frame("Robot World",self.worldX,self.worldY)
        world.set_canvas_background(GUI.WORLD_COLOR)

        self.txtSetDist = world.add_input("Set Distance", self.txtDestDistance,50)
        self.btnSetDist = world.add_button("Set Distance",self.setDistHandler,50)
        self.btnMove = world.add_button("Move",self.moveHandler, 50)

        timer = gui.create_timer(500,self.timerHandler)

        world.set_draw_handler(self.renderingHandler)

        timer.start()  
        world.start()
def play():
    global snake, bean, direction, gameover, score, time_interval, timer
    # 如果有正在运行的定时器,需要先把它停下
    if timer is not None and timer.is_running():
        timer.stop() 
    # 创建定时器
    timer = simplegui.create_timer(time_interval, move)
    timer.start()
    
    snake = create_snake()
    bean = create_bean()
    direction = LEFT
    score = 0
    gameover = False
    time_interval = 200  
Example #9
0
    def createWorld(self):
        world = gui.create_frame("Robot World", self.worldX, self.worldY)
        world.set_canvas_background(GUI.WORLD_COLOR)

        self.txtSetDist = world.add_input("Set Distance", self.txtDestDistance,
                                          50)
        self.btnSetDist = world.add_button("Set Distance", self.setDistHandler,
                                           50)
        self.btnMove = world.add_button("Move", self.moveHandler, 50)

        timer = gui.create_timer(500, self.timerHandler)

        world.set_draw_handler(self.renderingHandler)

        timer.start()
        world.start()
    def __init__(self, puzzle):
        """
        Create frame and timers, register event handlers
        """
        self._puzzle = puzzle
        self._puzzle_height = puzzle.get_height()
        self._puzzle_width = puzzle.get_width()

        self._frame = simplegui.create_frame("The Fifteen puzzle",
                                             self._puzzle_width * TILE_SIZE,
                                             self._puzzle_height * TILE_SIZE)
        self._solution = ""
        self._current_moves = ""
        self._frame.add_button("Solve", self.solve, 100)
        self._frame.add_input("Enter moves", self.enter_moves, 100)
        self._frame.add_button("Print moves", self.print_moves, 100)
        self._frame.set_draw_handler(self.draw)
        self._frame.set_keydown_handler(self.keydown)
        self._timer = simplegui.create_timer(50, self.tick)
        self._timer.start()
        self._frame.start()
# 按键事件响应函数    
def keydown(key):
    global score
    try:
        ch = chr(key)
    except:     # 捕捉 TypeError 或其它异常
        return  # 不做任何处理
    else:
        pass
        # 代码填在这里
            

# 换一个词            
def change_word():
    global word, flag, pointer, score
    pass
    

# 创建用户界面
frame = simplegui.create_frame("疯狂英语", WIDTH, HEIGHT)
frame.set_canvas_background("White")
frame.set_draw_handler(draw)
frame.set_keydown_handler(keydown)

# 创建按钮
frame.add_button("开始游戏", play, 80)
# 创建定时器
timer = simplegui.create_timer(TIME_INTERVAL, change_word)

play()
frame.start()
Example #12
0
def demo1():
    # Register handler
    timer = simplegui.create_timer(1000, tick)
    # Start timer
    timer.start()
        new_game()
        return


def restart_game():
    print("Restarting Game....")
    timer.start()


def timer_man():

    print(" \n\tLet's Play! ")
    timer.stop()
    new_game()


#Frame Definition
frame = simplegui.create_frame("Guess The Number!", 250, 250)
frame.set_canvas_background('Blue')
timer = simplegui.create_timer(1500, timer_man)

# register event handlers for control elements and start frame
frame.start()
frame.add_input("Enter the number", input_guess, 200)
frame.add_button("Change to range(0-1000)", range1000, 200)
frame.add_button("Change to range(0-100)", range100, 200)
frame.add_button("Restart this game", restart_game, 200)

# call new_game
new_game()
Example #14
0
                node.set_colour('inactive')
            elif node.colour == 'black':
                node.set_colour('visited')
        current = queue.pop(0)
        lbl_current.set_text('Corrente: ' + str(current + 1))
        node_list[current].set_colour('current')

        if current == goal:
            complete = True
            lbl_found.set_text('Encontrado: ' + str(complete))
        else:
            for child in node_list[current].children:
                node_list[child].set_colour('active')
                if child not in discarded:
                    queue.append(child)
                    lbl_queue.set_text('Fila: ' + str(queue))
                if current not in discarded:
                    discarded.append(current)
    else:
        reset()


frame = simplegui.create_frame("BFS", B_WIDTH, B_HEIGHT)
frame.set_canvas_background('GREY')
frame.set_draw_handler(draw)
lbl_queue = frame.add_label('Fila: ' + str(queue))
lbl_current = frame.add_label('Corrente: ')
lbl_found = frame.add_label('Encontrado: ' + str(complete))
timer = simplegui.create_timer(1000, step)
timer.start()
frame.start()
Example #15
0
    if key == simplegui.KEY_MAP["left"] and direction != "right":
        direction = "left"
        velocity_change.append([-1,0])
    if key == simplegui.KEY_MAP["right"] and direction != "left":
        direction = "right"
        velocity_change.append([1,0])
    if key == simplegui.KEY_MAP["up"] and direction != "down":
        direction = "up"
        velocity_change.append([0,-1])
    if key == simplegui.KEY_MAP["down"] and direction != "up":
        direction = "down"
        velocity_change.append([0,1])

# create frame
frame = simplegui.create_frame("Snake", FRAME_WIDTH, FRAME_HEIGHT, 150)
frame.set_canvas_background("#000")

# event handlers
frame.set_draw_handler(draw_handler)
frame.set_keydown_handler(keydown_handler)
lenght_label = frame.add_label("Lenght: " + str(lenght))
score_label = frame.add_label("Score: " + str(score))
last_score_label = frame.add_label("Last score: " + str(last_score))
high_score_label = frame.add_label("Hightest score: " + str(high_score))
move_timer = simplegui.create_timer(150, move_handler)
food_timer = simplegui.create_timer(6000, food_handler)
blink_timer = simplegui.create_timer(100, blink_handler)

# start frame
frame.start()
init()
Example #16
0
    y = height / 2 + font_size_time / 2
    canvas.draw_text(str_time, [x, y], font_size_time, font_color_time)

    x = 0.75 * width
    y = 0.25 * height
    str_game = "%d/%d" % (nbr_win, nbr_stop_watch)
    canvas.draw_text(str_game, [x, y], font_size_game, font_color_game)


# define event handler for timer with 0.1 sec interval
def time_handler():
    global time
    time += 1


# create frame
frame = simplegui.create_frame("Stopwatch: The Game", width, height)
button_start = frame.add_button("Start", start_handler, 100)
button_stop = frame.add_button("Stop", stop_handler, 100)
button_reset = frame.add_button("Reset", reset_handler, 100)

# register draw handler
frame.set_draw_handler(draw)

# register event handlers
timer = simplegui.create_timer(interval, time_handler)

# start timer and frame
timer.start()
frame.start()

# keyboard input handlers:
def checkKeyUp(key):
    my_ship.keyUp(key)


# timer handler that spawns a rock
def rock_spawner():
    pass


# initialize frame
frame = simplegui.create_frame("Asteroids", width, height)

# initialize ship and two sprites
my_ship = Ship([width / 2, height / 2], [0, 0], 0, ship_image, ship_info)
a_rock = Sprite([width / 3, height / 3], [1, 1], 0, 0, asteroid_image,
                asteroid_info)
a_missile = Sprite([2 * width / 3, 2 * height / 3], [-1, 1], 0, 0,
                   missile_image, missile_info, missile_sound)

# register handlers
frame.set_draw_handler(draw)
frame.set_keyup_handler(checkKeyUp)
timer = simplegui.create_timer(1000.0, rock_spawner)

# get things rolling
timer.start()
frame.start()
Example #18
0
def incrementar():
    global contador
    contador = contador +1

#definir los manejadores de eventos
def tick():
    incrementar()

def button_press():
    global contador
    contador=0
def mostrar(texto):
    tick()
    texto.draw_text(contador,[50,50],10,"Red")

#Crear el marco(frame)
    #create_frame funcion que pertenece al modulo simplegui

    #sintaxis create_frame('titulo del marco', ancho (weight), largo(height))
marco = simplegui.create_frame("Primer Programa con SimpleGUI", 100,100)

#registrar los manejadores de eventos
temporizador = simplegui.create_timer(1000,mostrar)
marco.add_button("Resetear Contador", button_press)
marco.set_draw_handler(mostrar)

#comenzar los timers y frames
marco.start()
#temporizador.start()
Example #19
0
    timer.stop()
    inplay = True
    grid = Grid()
    score = 0
    current_shape = create_shape()    
    timer.start()

def keydown(key):
    if key == simplegui.KEY_MAP['space']:
        current_shape.rotate(grid)
    if key == simplegui.KEY_MAP['left']:
        current_shape.move('left', grid)
    if key == simplegui.KEY_MAP['right']:
        current_shape.move('right', grid)
    if key == simplegui.KEY_MAP['down']:
        current_shape.move('down', grid)        
    

# 创建用户界面
frame = simplegui.create_frame("俄罗斯方块", WIDTH, HEIGHT)
frame.set_draw_handler(draw)
frame.set_keydown_handler(keydown)

# 创建按钮
frame.add_button("开始游戏", play, 80)
# 创建定时器
timer = simplegui.create_timer(TIME_INTERVAL, move)

play()
frame.start()
Example #20
0
# define event handler for timer with 0.1 sec interval
def elapse():
    global time_general
    time_general += 1
    format(time_general)


# define draw handler
def draw(canvas):
    canvas.draw_text(time_string, [40, 120], 50, "White")
    canvas.draw_text(score_string, [130, 32], 40, "Green")


# create frame
frame = simplegui.create_frame('Stopwatch', 200, 200)

# register event handlers
frame.add_button('Start', start, 120)
frame.add_label('')
frame.add_button('Stop', stop, 120)
frame.add_label('')
frame.add_button('Reset', reset, 120)

frame.set_draw_handler(draw)
timer = simplegui.create_timer(100, elapse)

# start frame
frame.start()

# Please remember to review the grading rubric
Example #21
0
#definir los manejadores de eventos
def tick():
    incrementar()


def button_press():
    global contador
    contador = 0


def mostrar(texto):
    tick()
    texto.draw_text(contador, [50, 50], 10, "Red")


#Crear el marco(frame)
#create_frame funcion que pertenece al modulo simplegui

#sintaxis create_frame('titulo del marco', ancho (weight), largo(height))
marco = simplegui.create_frame("Primer Programa con SimpleGUI", 100, 100)

#registrar los manejadores de eventos
temporizador = simplegui.create_timer(1000, mostrar)
marco.add_button("Resetear Contador", button_press)
marco.set_draw_handler(mostrar)

#comenzar los timers y frames
marco.start()
#temporizador.start()
Example #22
0
        pad_pos[1] = GAME_HEIGHT - HALF_PAD_HEIGHT
    if pad_pos[1] < HALF_PAD_HEIGHT:
        pad_pos[1] = HALF_PAD_HEIGHT
    return pad_pos


def update_pad():
    """每个时间间隔调用此函数即可生成球拍的动态效果"""
    global PAD_L_POS, PAD_R_POS
    PAD_L_POS[1] += pad_ai(PAD_L_POS, BALL_POS) * PAD_SPEED
    PAD_R_POS[1] += pad_ai(PAD_R_POS, BALL_POS) * PAD_SPEED
    PAD_L_POS = pad_limit(PAD_L_POS)
    PAD_R_POS = pad_limit(PAD_R_POS)


def timer_handler():
    update_ball()
    update_pad()


#创建游戏界面
frame = simplegui.create_frame("PingPang2", GAME_WIDTH, GAME_HEIGHT)
frame.set_draw_handler(draw)  #初始化界面
timer = simplegui.create_timer(INTERVAL,
                               timer_handler)  #定义刷新频率,连接刷新时执行的动作,产生动画效果

ball_init()  #初始化球的参数
pad_init()  #初始化挡板参数
timer.start()  #开始刷新
frame.start()  #开始绘制图形
Example #23
0
##> Define Classes


##> Define Event Handlers
def draw(canvas):

    canvas.draw_text(str(time), [50, 60], 12, "Gray", "Monospace")

    return


def TimeInc():

    global time
    time = time + 1


##> Create Frame
frame = simplegui.create_frame("SimpleGUI", 150, 100)
timer = simplegui.create_timer(10, TimeInc)
# The first paremeter is time in milliseconds
# The second parameter is the function to run each time

##> Register Event Handlers
frame.set_draw_handler(draw)

##> Start Frame and Timers
timer.start()
frame.start()
Example #24
0
height = 500
frame = gui.create_frame('Game', 600, height)

r = 30  # радиус мяча
point = [20, 20]  # центр мяча
acc = [2, 3]  # ускорение по гризонтали и вертикали


def draw(canvas):
    canvas.draw_circle(point, r, 1, 'Red', 'Red')


def timer_handler():
    global time  # объявляю для изменения глобальной переменной
    time += 1
    print('timer', time)
    point[0] += acc[0]
    point[1] += acc[1]
    print("point: ", point)
    # пересечение нижней границы холста
    if point[1] + r > height:
        acc[1] = -acc[1]


frame.set_draw_handler(draw)
timer = gui.create_timer(1000 // 60, timer_handler)

timer.start()
frame.start()
Example #25
0
    format(seconds)

#定义定时器增加秒钟函数
def second_add():
    #每点击一次增加10,这里的10相当于1秒。
    global seconds
    seconds += 10
    format(seconds)
    
#定义绘制画布函数
def draw(canvas):
    #画布中绘制文本
    global message1, message2 
    canvas.draw_text(message2 , [260, 50], 40, "Green")
    canvas.draw_text(message1 , [160, 200], 60, "White")   
    
frame = simplegui.create_frame("秒表、计时器", 600, 400)   #创建框架
timer1 = simplegui.create_timer(100, tick1)               #创建时间触发器1,每0.1秒更新一次tick1
timer2 = simplegui.create_timer(100, tick2)               #创建时间触发器2,每0.1秒更新一次tick2

# register event handlers
frame.add_button("秒表开始", start1, 150)                  #框架上增加”秒表开始“按钮        
frame.add_button("暂停", stop, 150)                        #框架上增加”暂停“按钮
frame.add_button("复位", reset, 150)                       #框架上增加”复位“按钮
frame.add_button("定时器开始",start2, 150 )                 #框架上增加”计时器按钮“按钮
frame.add_button("加分钟",minut_add, 150 )                  #框架上增加”加分钟“按钮
frame.add_button("加秒钟",second_add, 150 )                 #框架上增加”加秒钟“按钮
frame.set_draw_handler(draw)                               #执行画布绘制

#框架开始执行
frame.start()
Example #26
0

# draw handler
def draw(canvas):
    global tick, tries, win
    timer = format(tick)
    score = str(win) + " / " + str(tries)
    canvas.draw_text(timer, [70, 70], 18, "White")
    canvas.draw_text(score, [145, 15], 14, "Green")


# create frame
frame = simplegui.create_frame("Stopwatch: The Game", 200, 120)

# register event handlers
timer = simplegui.create_timer(100, update)
start = frame.add_button("Start", start, 50)
stop = frame.add_button("Stop", stop, 50)
reset = frame.add_button("Reset", reset, 50)
frame.set_draw_handler(draw)

# start timer and frame
frame.start()

# remember to review the grading rubric
#print "Some tests:"
#print "Outcome  |  Expected"
#print "  "+format(0)+" = 0:00.0"
#print "  "+format(11)+" = 0:01.1"
#print "  "+format(321)+" = 0:32.1"
#print "  "+format(613)+" = 1:01.3"
def increment():
    global tenth_sec
    tenth_sec += 1


# define draw handler
def draw(canvas):
    global tenth_sec
    global flag
    canvas.draw_text( format(tenth_sec), [100,100], 24, "White")
    canvas.draw_text( game(), [150,20], 24, "White")
    
# create frame
f=simplegui.create_frame("",200,200)


# register event handlers
timer=simplegui.create_timer(100,increment)
f.add_button("Start",start,100)
f.add_button("Stop",stop,100)
f.add_button("Reset",reset,100)
f.set_draw_handler(draw)


# start frame
f.start()



# Please remember to review the grading rubric
Example #28
0
    running=False

# define event handler for timer with 0.1 sec interval
def elapse():
    global time_general
    time_general+=1
    format(time_general)
    
# define draw handler
def draw(canvas):
    canvas.draw_text(time_string, [40, 120], 50, "White")
    canvas.draw_text(score_string, [130, 32], 40, "Green")
    
# create frame
frame=simplegui.create_frame('Stopwatch', 200, 200)

# register event handlers
frame.add_button('Start', start, 120)
frame.add_label('')
frame.add_button('Stop', stop, 120)
frame.add_label('')
frame.add_button('Reset', reset, 120)

frame.set_draw_handler(draw)
timer = simplegui.create_timer(100, elapse)

# start frame
frame.start()

# Please remember to review the grading rubric
Example #29
0
def button_reset():
    """Resets the stopwatch by setting the time to 0 and the stopwatch counters to 0"""
    global time, stop_counter, stop_hits
    stopwatch.stop()
    time = 0
    stop_counter = 0
    stop_hits = 0


def tick():
    """Timer handler which simply increments the time variable by one"""
    global time
    time += 1


def draw(canvas):
    """Draw handler which draws the formatted value of time and the score using the stopwatch counters"""
    canvas.draw_text(format(time), [100, 100], 24, "White")
    canvas.draw_text(
        str(stop_hits) + "/" + str(stop_counter), [250, 50], 24, "Green")


#Register event handlers, create frame and timers, and start the frame
frame = simplegui.create_frame("Stopwatch", 300, 200)
stopwatch = simplegui.create_timer(interval, tick)
frame.set_draw_handler(draw)
frame.add_button("Start", button_start, button_width)
frame.add_button("Stop", button_stop, button_width)
frame.add_button("Reset", button_reset, button_width)
frame.start()
Example #30
0
def draw(canvas):

    canvas.draw_text(str(gallons), [120, 125], 12, "Grey", "Monospace")
    canvas.draw_text(str(price), [120, 175], 12, "Green", "Monospace")

    canvas.draw_text(StationLabel, [20, 50], 14, "Yellow", "Monospace")
    canvas.draw_text(GallonLabel, [20, 125], 12, "Grey", "Monospace")
    canvas.draw_text(PriceLabel, [20, 175], 12, "Green", "Monospace")
    canvas.draw_text(DollarSignLabel, [100, 175], 12, "Green", "Monospace")



## Frame
frame = simplegui.create_frame("SimpleGUI", 400, 300)

GallonTimer = simplegui.create_timer(10, GallonInc)
StandardPriceTimer = simplegui.create_timer(100, StandardFuel)
PlusPriceTimer = simplegui.create_timer(100, PlusFuel)
PremiumPriceTimer = simplegui.create_timer(100, PremiumFuel)

Message = frame.add_label("Label")
Message.set_text(
        "\n Welcome to the Shell gas station. \n"
        "\n Please Select a fuel type \n"
        )

Spacer = frame.add_label("")
Spacer.set_text("")


Example #31
0
def reset():
    timer.stop()
    global t
    t = 0


def draw(canvas):
    canvas.draw_text(format(t), position, 24, 'White')
    canvas.draw_text('Scores', [350, 60], 20, 'Red')


# define event handler for timer with 0.1 sec interval
def tick():
    global t
    t = t + 1


# create frame
frame = simpleguitk.create_frame('Stop Watch Game ', 500, 500)
timer = simpleguitk.create_timer(interval, tick)

# register event handlers
frame.set_draw_handler(draw)
startButton = frame.add_button('Start', start)
stopButton = frame.add_button('Stop', stop)
resetButton = frame.add_button('Reset', reset)

# start timer and frame
frame.start()
Example #32
0
        if not (X, Y) == x_goal.point:
            X = next_x
            Y = next_y
            theta = math.radians(next_a)
        else:
            X = x_goal.point[0]
            Y = x_goal.point[1]

        counter += 1

        if counter == turningFreq:
            #theta = math.atan2(next_y-old_y,next_x-old_x)
            print "something"
            index += 1
            counter = 0


# Create frame for rendering
myFrame = simple.create_frame('Curio Simulator', WIDTH, HEIGHT)
# Create timer for updating the positions of robot(s)
tmrUpdate = simple.create_timer(10, timerHandler)
# Attach handler for graphics rendering
myFrame.set_draw_handler(drawHandler)
# Start the timer and rendering

#RG_RRT()
tree = insertNode(x_init, tree, delta_tt)
print "Out of the RG-RRT"
tmrUpdate.start()
myFrame.start()
Example #33
0
    global time , aciertos, intentos
    time = 0
    aciertos = 0
    intentos = 0
    timer.stop()

# define event handler for timer with 0.1 sec interval
def imprimir():
    global time
    time +=1


# define draw handler
def draw(canvas):
    canvas.draw_text(format(time),[60,110],35,"white")
    canvas.draw_text(resultados(), [150,20], 24 , "green")


# create frame
marco = simplegui.create_frame("StopWatch", 200,200)
marco.add_button("Start", start, 100)
marco.add_button("Stop", stop, 100)
marco.add_button("Reset", reset, 100)

marco.set_draw_handler(draw)
# register event handlers
timer = simplegui.create_timer(100,imprimir)

# start frame
marco.start()
Example #34
0
import simpleguitk as simplegui


def timer1_handler():
    print '1'


def timer2_handler():
    print '2'


timer1 = simplegui.create_timer(100, timer1_handler)
timer2 = simplegui.create_timer(200, timer2_handler)

timer1.start()
timer2.start()
Example #35
0
    # stop the paddles on key up
    if (key == simplegui.KEY_MAP["w"]) or (key == simplegui.KEY_MAP["s"]):
        paddle1_vel = 0

    if (key == simplegui.KEY_MAP["up"]) or (key == simplegui.KEY_MAP["down"]):
        paddle2_vel = 0


# countdown timer for the start of the game
# when the timer reaches 0 the ball spawns
def timer_countdown():
    global countdown
    countdown -= 1
    if (countdown == 0):
        spawn_ball("RIGHT")
        timer.stop()


# create frame
frame = simplegui.create_frame("Pong", WIDTH, HEIGHT)
frame.set_draw_handler(draw)
frame.set_keydown_handler(keydown)
frame.set_keyup_handler(keyup)
frame.add_button(" Restart ", new_game)
# Add a countdown timer to the beginning of the game
timer = simplegui.create_timer(1000, timer_countdown)
new_game()
# start frame
frame.start()
Example #36
0
    time = 0
    aciertos = 0
    intentos = 0
    timer.stop()


# define event handler for timer with 0.1 sec interval
def imprimir():
    global time
    time += 1


# define draw handler
def draw(canvas):
    canvas.draw_text(format(time), [60, 110], 35, "white")
    canvas.draw_text(resultados(), [150, 20], 24, "green")


# create frame
marco = simplegui.create_frame("StopWatch", 200, 200)
marco.add_button("Start", start, 100)
marco.add_button("Stop", stop, 100)
marco.add_button("Reset", reset, 100)

marco.set_draw_handler(draw)
# register event handlers
timer = simplegui.create_timer(100, imprimir)

# start frame
marco.start()
Example #37
0
            # test
            # type = 1
            if bonus is not None:
                exist = False
                for i in bonus_group:
                    if i.type == type:
                        exist = True
                        break
                if not exist:
                    data = getDataPosition()
                    bonus_group.add(Bonus(data["position"], type, bonus))


# initialize frame
frame = simplegui.create_frame("Asteroids", WIDTH, HEIGHT)

# register handlers
frame.set_draw_handler(draw)
frame.set_keydown_handler(keydown)
frame.set_mouseclick_handler(mouse_handler)
frame.set_keyup_handler(keyup)

timer = simplegui.create_timer(1000.0, rock_spawner)
timer2 = simplegui.create_timer(10000.0, bonus_spawner)

# get things rolling
timer.start()
timer2.start()
frame.start()
Example #38
0
    mag_topleft = (mag_left, mag_top)
    mag_topright = (mag_right, mag_top)
    mag_botleft = (mag_left, mag_bottom)
    mag_botright = (mag_right, mag_bottom)
    box = [mag_topleft, mag_botleft, mag_botright,
           mag_topright, mag_topleft]
    canvas.draw_polyline(box, 4, "Blue")


# event handler for timer
def tick():
    """
    向右下方移动
    """
    magnifier_center[0] += 1
    magnifier_center[1] += 1

# 创建框架
frame = simplegui.create_frame("放大镜", CANVAS_WIDTH, CANVAS_HEIGHT)
frame.set_draw_handler(draw)
frame.set_mouseclick_handler(click)
frame.set_mousedrag_handler(drag)

# 计时器
timer = simplegui.create_timer(60.0,tick)

# 开始
magnifier_center = [CANVAS_WIDTH / 2, CANVAS_HEIGHT / 2]
timer.start()
frame.start()
Example #39
0
        
def key_down(key):
    if key == simplegui.KEY_MAP["space"]: 
        game_begin()
   
def input_handler(text_input):
    global lives
    if text_input.isdigit(): 
        lives = int(text_input)

# initialize frame
frame = simplegui.create_frame("Asteroids", WIDTH, HEIGHT)
inp = frame.add_input('初始阳光:', input_handler, 50)
inp.set_text(1000)

# register handlers
frame.set_draw_handler(draw)
frame.set_keydown_handler(key_down)
frame.set_mouseclick_handler(mouseclick)

timer = simplegui.create_timer(random.randint(500, zombie_interval), zombie_spawner)
timer1 = simplegui.create_timer(5000.0, sunshine_spawner)
timer2 = simplegui.create_timer(1000.0, bullet_spawner)
timer3 = simplegui.create_timer(100.0, flower_sunshine_spawner)

# get things rolling
timer.start()
timer1.start()
timer2.start()
timer3.start()
frame.start()
Example #40
0
    time = 0
    success = 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(canvas):
    global success, attempts
    present_time = format()
    result = str(success) + "/" + str(attempts)
    canvas.draw_text(present_time, [150,150], 40, "Red")
    canvas.draw_text(result, [250,50], 30, "Green")
    
# create frame
frame = simpleguitk.create_frame("Timer", 500, 500)
timer = simpleguitk.create_timer(100, timer_handler)
# register event handlers
frame.add_button("Start", start, 100)
frame.add_button("Stop", stop, 100)
frame.add_button("Reset", reset, 100)
frame.set_draw_handler(draw)

# start frame
frame.start()
print (time)
# Please remember to review the grading rubric
    has_Stopped = True


# define event handler for timer with 0.1 sec interval
def tick():
    global t, time
    t += 1
    time = format(t)


# define draw handler
def draw(canvas):
    canvas.draw_text(time, [100, 100], 36, "Red")
    canvas.draw_text(x + '/' + y, [140, 20], 24, "Green")


# create frame
frame = simplegui.create_frame("StopWatch", 300, 200)

# register event handlers
frame.add_button("Start", start, 200)
frame.add_button("Stop", stop, 200)
frame.add_button("Reset", reset, 200)
frame.set_draw_handler(draw)
timer1 = simplegui.create_timer(interval, tick)

# start frame
frame.start()

# Please remember to review the grading rubric
Example #42
0
# timer handler - cuando el usuario pierde
def show_you_lost():
    global you_lost_counter, you_lost
    you_lost_counter -= 1
    if (you_lost == "Black"):
        you_lost = "White"
    else:
        you_lost = "Black"

    if (you_lost_counter <= 0):
        timerLost.stop()
        init()  # inicia nuevo juego


# frame
f = simpleguitk.create_frame("Hangman", 1000, 640)

# registro de eventos
txtGuess = f.add_input("Ingresa tu letra: (Presione Enter)", get_input, 200)
timerWon = simpleguitk.create_timer(100, show_you_won)
timerLost = simpleguitk.create_timer(1000, show_you_lost)
button = f.add_button("Nuevo juego", init)

f.set_draw_handler(draw)

# start frame
f.start()
# start game
init()
Example #43
0
# 定义绘制屏幕的处理函数
def draw(canvas):
    draw_field(canvas)
    for i in range(8):
        if player_position[i] <= width - end_width - text_width:
            player_position[i] =  player_position[i] + player_velocity[i]
            player_finish_time[i] = disp_format(time_elapsed)[2:]
        else:
            canvas.draw_text(player_finish_time[i], [width - end_width + 26, (i+1) * height // 8], 24, "Yellow")
        canvas.draw_text(player_name[i], [player_position[i], (i+1) * height // 8], 24, "White")

    time.set_text(disp_format(time_elapsed))

# 创建窗口框架
frame = simplegui.create_frame("百米赛跑", width, height)


# 注册事件处理器
frame.add_button("各就位", reset, 25)
frame.add_button("开始跑", start, 25)
time = frame.add_label(disp_format(time_elapsed))

frame.set_draw_handler(draw)
timer = simplegui.create_timer(interval, tick)

# 启动时钟
timer.start()
# 启动窗口
frame.set_canvas_background('Maroon')
init()
frame.start()
Example #44
0
def update_msg(text):
    global message
    message = text


# define handler for timer
def new_position():
    global position
    x = random.randrange(0, width)
    y = random.randrange(0, height)
    position[0] = x
    position[1] = y


# def handler to draw on canvas
def draw(canvas):
    canvas.draw_text(message, position, 26, "Red")


#5. create a frame
frame = simplegui.create_frame('Home', width, height)

#6. register event handlers
text = frame.add_input("Message:", update_msg, 150)
frame.set_draw_handler(draw)
timer = simplegui.create_timer(interval, new_position)  #time_in_ms, fxn

#7. start timer first, then frame
timer.start()
frame.start()
        rock_vel = [random.random() * 2 * max_speed - max_speed, random.random() * 2 * max_speed - max_speed]
        rock_avel = random.random() * .2 - .1
        a_rock = Sprite(rock_pos, rock_vel, 0, rock_avel, asteroid_image[random.randrange(len(asteroid_image))], asteroid_info)
        minimum_distance = a_rock.get_radius() + my_ship.get_radius()
        distance = dist(a_rock.get_position(), my_ship.get_position())
        # spawn rock only if distance big enough
        if SAFE_DISTANCE_MULT * minimum_distance < distance and not is_group_collide(rock_group, a_rock):
            rock_group.add(a_rock)
            
# initialize stuff
frame = simplegui.create_frame("Asteroids", WIDTH, HEIGHT)

# initialize ship and empty sets of rocks and missiles
my_ship = Ship([WIDTH / 2, HEIGHT / 2], [0, 0], 0, ship_image, ship_info)
#a_rock = Sprite([WIDTH / 3, HEIGHT / 3], [1, 1], 0, .1, asteroid_image, asteroid_info)
rock_group = set() #Should call it  BEATLES
#a_missile = Sprite([2 * WIDTH / 3, 2 * HEIGHT / 3], [-1,1], 0, 0, missile_image, missile_info, missile_sound)
missile_group = set()
explosion_group = set()

# register handlers
frame.set_keyup_handler(keyup)
frame.set_keydown_handler(keydown)
frame.set_mouseclick_handler(click)
frame.set_draw_handler(draw)

timer = simplegui.create_timer(1000.0, rock_spawner)

# get things rolling
timer.start()
frame.start() 
Example #46
0
def draw(canvas):  
    line_width = random.randrange(0,6,2)
    line_color = random.choice(color_list)
    fill_color = random.choice(color_list)
    font_color = random.choice(color_list) 
    if choice ==1:
        radius = random.randint(1,10)
        circle_x = random.randrange(radius, WIDTH-radius)
        circle_y = WIDTH/2 * random.random()
        radius = random.randint(1,20)    
        canvas.draw_circle([circle_x,circle_y], radius, line_width, line_color, fill_color)
    if choice == 2:
         point_list = [[random.randrange(0, WIDTH),random.randint(0,HEIGHT)],[WIDTH/2,HEIGHT/2]]
         canvas.draw_polygon(point_list, line_width, line_color, fill_color)
    if choice == 3:
        point =[random.randrange(0, WIDTH),random.randint(0,HEIGHT)]
        font_size = random.choice([6,8,12,24,36,64])
        canvas.draw_text(text, point, font_size, font_color)
            
frame = simplegui.create_frame("屏幕保护程序",400, 400)

frame.add_button("画圆效果", click1, 50)
frame.add_button("折线效果", click2, 50)
frame.add_button("文字效果", click3, 50)
frame.add_input("请输入出现在屏保上的文字:",input,100)
frame.add_button("清空", pause, 50)

frame.set_draw_handler(draw)
timer = simplegui.create_timer(5000,timer_handler)

frame.start()
Example #47
0
   7: "Enter",
   8: "Leave",
   9: "FocusIn",
   10: "FocusOut",
   12: "Expose",
   15: "Visibility",
   17: "Destroy",
   18: "Unmap",
   19: "Map",
   21: "Reparent",
   22: "Configure",
   24: "Gravity",
   26: "Circulate",
   28: "Property",
   32: "Colormap",
   36: "Activate",
   37: "Deactivate",
   38: "MouseWheel"
}
'''
can.bind('<Enter>', enterB)
can.bind('<Leave>', leaveB)
can.bind('<Motion>', overB)

timer = simplegui.create_timer(500, timex)
timer.start()

print '\033[1;37m'

frame.start()
Example #48
0
    num_tries = 0
    num_success = 0
    is_stopped = True
    
    
# define event handler for timer with 0.1 sec interval
def timer_handler():
    global tenth_seconds
    tenth_seconds = tenth_seconds + 1

# define draw handler
def draw_handler(canvas):
    canvas.draw_text(str(num_success)+ "/" + str(num_tries), [230, 30], 24, "Black")
    canvas.draw_text(format(tenth_seconds), [80, 150], 50, "Black")
    
# create frame
frame = simplegui.create_frame("Home", 300, 300)

# register event handlers
timer = simplegui.create_timer(100, timer_handler)
frame.set_draw_handler(draw_handler)
frame.set_canvas_background("White")
frame.add_button("Start", start_button_handler)
frame.add_button("Stop", stop_button_handler)
frame.add_button("Reset", reset_button_handler)

# start frame
frame.start()

# Please remember to review the grading rubric

# define event handler for timer with 0.1 sec interval
def create_timer():
    global counter
    counter += 1


# define draw handler
def draw_handler(canvas):
    timer_text = format(counter)
    canvas.draw_text(timer_text, position, 40, 'white')
    canvas.draw_text(reflex_counter1 + "/" + reflex_counter2, [240, 50], 26,
                     'red')


# create frame
frame = simplegui.create_frame("Stopwatch", 300, 200)

# register event handlers
timer = simplegui.create_timer(interval, create_timer)
frame.set_draw_handler(draw_handler)
button1 = frame.add_button('Start timer', start)
button2 = frame.add_button('Stop timer', stop)
button3 = frame.add_button('Reset', reset)

# start frame
frame.start()

# Please remember to review the grading rubric
# 为游戏开始或重新开始初始化全局变量,也是鼠标点击按钮的事件处理函数
def start_game():
    global prime_sentence_list, stopped_box, rising_box,current_section_list, has_rising_box, game_over, score, last_four_box
    score = 0
    label.set_text("游戏得分 = 0分")
    game_over = False
    prime_sentence_list = read_from_file('三字经.txt')
    stopped_box = set([])
    last_four_box = []
    current_section_list = generate_current_section_list()
    rising_sentence = current_section_list.pop()
    rising_box = Box([0,canvas_height], box_width, box_height, text_shuffle(rising_sentence[1:]), rising_sentence[1:], int(rising_sentence[0]))

    has_rising_box = True

# 创建窗口初始化画布
frame = simplegui.create_frame("挑战《三字经》", canvas_width, canvas_height)
label = frame.add_label("游戏得分 = 0分")

# 注册事件处理函数
frame.set_keydown_handler(keydown)                         # 按键处理,每次按键会调用keydown函数
frame.set_draw_handler(draw)                               # 显示处理,每秒调用draw函数60次
timer = simplegui.create_timer(1000.0, box_spawner)        # 每秒调用box_spawner函数1次
button = frame.add_button('重新开始游戏', start_game, 100)   # 鼠标每次点击“重新开始游戏”按钮,调用start_game函数1次

# 启动游戏
start_game()     # 为游戏开始或重新开始初始化全局变量
timer.start()    # 启动定时器
frame.start()    # 显示窗口
Example #51
0
        canvas.draw_text('SHUFFLE!!!', (450, 500), 30, 'Black')
        canvas.draw_text(str(20 - shuffle_steps), (500, 550), 50, 'Black')


frame = simpleguitk.create_frame("Rubiks Cube!", 600, 600)
frame.add_button("Auto Rotation", rot)
frame.add_button("Stop Rotation", rot_stop)

frame.add_button("Shuffle!", shuffle)

frame.add_button("Rotate Up", rotate_up)
frame.add_button("Rotate Down", rotate_down)
frame.add_button("Next Axis", next_side)
frame.add_button("Last Axis", former_side)

frame.add_button("Reset", reset)

frame.set_draw_handler(draw)
frame.set_canvas_background('grey')
frame.set_mousedrag_handler(mouse_handler)
frame.set_mouseclick_handler(mouse_click_handler)
rotate_timer = simpleguitk.create_timer(50, rotate_cube_timer)
rotate_timer_axis = simpleguitk.create_timer(25, rotate_cube_timer_axis)
shuffle_timer = simpleguitk.create_timer(1000, shuffle_timer_fct)

frame.set_keydown_handler(key_down)

label = frame.add_label(label)

frame.start()
Example #52
0
# define event handler for timer with 0.1 sec interval
def timerhandler():
    global timer_counter
    timer_counter +=1
    return
# define draw handler    
def draw_handler(canvas):
    canvas.draw_text(format(timer_counter), (CANVAS_WIDTH//2, CANVAS_HEIGHT//2), FONT_SIZE, "Red")
    score="Score: "+ convert(success_counter)+"/"+ convert(stop_counter)
    canvas.draw_text(score, (10,20), FONT_SIZE_SCORE, "White")




    
# create frame
frame = simplegui.create_frame("Stopwatch", CANVAS_WIDTH, CANVAS_HEIGHT)

# register event handlers

timer = simplegui.create_timer(10, timerhandler)
frame.set_draw_handler(draw_handler)
start_button = frame.add_button("Start", start_handler, 100)
stop_button = frame.add_button("Stop", stop_handler, 100)
reset_button = frame.add_button("Reset", reset_handler, 100)

# start frame
frame.start()

# Please remember to review the grading rubric
Example #53
0
    f.write("%f\t" % theta1)
    f.write("%f\t" % theta2)
    f.write("%f\t" % omega1)
    f.write("%f" % omega2)
    f.write("\n")


#########################################################
# Simulation script:

frame = simplegui.create_frame("Acrobot simulator", CANVAS_WIDTH,
                               CANVAS_HEIGHT)
frame.set_draw_handler(drawAcrobot)
frame.set_canvas_background("White")

# Create timers
timer = simplegui.create_timer(TIME_STEP * 1000, update)

# Register event handlers
# frame.add_button("Add robot", addRobotButtonClick, 100)
frame.add_button("Reset", reset, 100)
frame.add_button("Quit", quit, 100)

# Create controller
controller = controllerClass()

# Start
#reset()
timer.start()
frame.start()
Example #54
0
    hits = 0
    timer.stop()


# Event handler for timer with 0.1 sec interval
def start_timer():
    global started, time
    if started == True:
        time += 1


# Draw handler
def draw(canvas):
    canvas.draw_text(format(time), [80, 170], 40, "Teal")
    canvas.draw_text(str(hits) + "/" + str(count), [225, 45], 20, "Magenta")


# Create frame
frame = simplegui.create_frame("Stopwatch Game", 300, 300)
timer = simplegui.create_timer(100, start_timer)

# Register event handlers
frame.set_draw_handler(draw)
frame.add_button("Stop", stop_button, 100)
frame.add_button("Start", start_button, 100)
frame.add_button("Reset", reset, 100)

# start frame
frame.start()
timer.start()
Example #55
0
def draw(canvas):
    global snake_coords,apple_coord, score, started
    # 绘制方格,蛇和苹果
    draw_grid(canvas)
    draw_snake(canvas)
    draw_apple(canvas)

    label.set_text("得分:"+str(score))
    if not started:
        canvas.draw_text("游戏结束",[100, 200], 60,"blue")

# 创建frame,设置背景色
frame = simplegui.create_frame("贪吃蛇", WINDOW_WIDTH, WINDOW_HEIGHT)
frame.set_canvas_background(back_ground)

#添加按钮和label
label = frame.add_label("得分:" + str(score))
frame.add_button("难度一",click,50)
frame.add_button("难度二",click2,50)
frame.add_button("难度三",click3,50)
#添加句柄事件
frame.set_draw_handler(draw)
frame.set_keydown_handler(key_down)

#创建定时器
timer = simplegui.create_timer(200,move)

# 开始游戏
new_game()
frame.start()
Example #56
0
	Also computes the stops / winning stops 

	"""
	global stops, wins
	
	if (timer.is_running()):
		stops += 1
		if (counter % 10) == 0:
			wins += 1
		timer.stop()

def reset_button_handler():
	""" Resets the timer, stops and winning stops

	"""
	global counter, wins, stops
	counter = 0
	wins = 0
	stops = 0


# The main code of the app
frame = simplegui.create_frame("Stopwatch", 320, 240)
frame.set_draw_handler(draw_handler)
button_start = frame.add_button("Start", start_button_handler)
button_stop = frame.add_button("Stop",stop_button_handler)
button_reset = frame.add_button("Reset", reset_button_handler)

timer = simplegui.create_timer(100,tick)

frame.start()

# define event handler for timer with 0.1 sec interval
def increment():
    global tenth_sec
    tenth_sec += 1


# define draw handler
def draw(canvas):
    global tenth_sec
    global flag
    canvas.draw_text(format(tenth_sec), [100, 100], 24, "White")
    canvas.draw_text(game(), [150, 20], 24, "White")


# create frame
f = simplegui.create_frame("", 200, 200)

# register event handlers
timer = simplegui.create_timer(100, increment)
f.add_button("Start", start, 100)
f.add_button("Stop", stop, 100)
f.add_button("Reset", reset, 100)
f.set_draw_handler(draw)

# start frame
f.start()

# Please remember to review the grading rubric