Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pygame_sdl2
- pygame_sdl2.import_as_pygame()
- import pygame
- import sys
- # define some colors
- BLACK = (0, 0, 0)
- WHITE = (255, 255, 255)
- pygame.init()
- DS = pygame.display.set_mode((640, 480))
- CLOCK = pygame.time.Clock()
- FPS = 30
- W = DS.get_width()
- H = DS.get_height()
- HW, HH = int(W / 2), int(H / 2)
- segmentSize = 20
- hx = 0
- hy = -segmentSize
- sx = HW
- sy = HH
- tail = [[sx, sy + index * segmentSize] for index in range(10)]
- for segment in tail:
- pygame.draw.rect(DS, WHITE, (segment[0], segment[1], segmentSize, segmentSize), 0)
- pressed = False
- while True:
- e = pygame.event.get()
- pygame.draw.rect(DS, WHITE, (sx, sy, segmentSize, segmentSize), 0)
- sx += hx
- sy += hy
- tail.insert(0, [sx, sy])
- pygame.draw.rect(DS, BLACK, tail.pop() + [segmentSize, segmentSize], 0)
- mb = pygame.mouse.get_pressed()[0]
- if mb and not pressed:
- mx1, my1 = pygame.mouse.get_pos()
- pressed = True
- elif not mb and pressed:
- pressed = False
- mx2, my2 = pygame.mouse.get_pos()
- dx = mx2 - mx1
- dy = my2 - my1
- if dx > 200 and not hx:
- hx = segmentSize
- hy = 0
- elif dx < -200 and not hx:
- hx = -segmentSize
- hy = 0
- elif dy > 200 and not hy:
- hx = 0
- hy = segmentSize
- elif dy < -200 and not hy:
- hx = 0
- hy = -segmentSize
- if pressed:
- pygame.draw.line(DS, WHITE, (mx1, my1), pygame.mouse.get_pos(), 1)
- pygame.display.update()
- #DS.fill(BLACK)
- CLOCK.tick(FPS)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement