Пример #1
0
 for event in pygame.event.get():
     if event.type == QUIT:
         logger.info("Going away!")
         pygame.quit()
         sys.exit()
     elif event.type == MOUSEBUTTONDOWN:
         if event.button == 3: # right button
             throwing_disk = get_disk_from_surface_point(event.pos, world, renderer)
             if throwing_disk is not None:
                 # inside a disk
                 throwing = True
                 throwing_start = renderer.worldToSurfaceCoord(throwing_disk.center)
         elif event.button == 2: # middle button
             d = get_disk_from_surface_point(event.pos, world, renderer)
             if d is None:
                 d1.center = renderer.surfaceToWorldCoord(event.pos)
                 if d1.visuals is not None and d1.visuals.trail is not None:
                     d1.visuals.trail.clear()
                 d1.velocity = Vector(0, 0)
         elif event.button == 1: # left button
             dragging_disk = get_disk_from_surface_point(event.pos, world, renderer)
             if dragging_disk is not None:
                 p = renderer.surfaceToWorldCoord(event.pos)
                 dragging_offset = p - dragging_disk.center
                 dragging_disk.velocity = Vector(0, 0)
             else:
                 # outside both disks. start panning
                 panning = True
                 panning_start = event.pos
         elif event.button == 4: # scroll up
             camera.zoom(0.1)