| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- from graphics import Canvas
- from karel_asset import *
- import random
- from time import sleep
- import asyncio
- # Constants
- CANVAS_WIDTH = 400
- CANVAS_HEIGHT = 400
- async def flash_karel(canvas, delay:int=0):
- await asyncio.sleep(delay)
- karel = generate_random_karel(canvas)
- await asyncio.sleep(4)
- erase_asset(karel)
- async def main():
- canvas = Canvas(CANVAS_WIDTH, CANVAS_HEIGHT,)
-
- while True:
- background = generate_random_background(canvas)
- sleep(0.5)
- # Multple simultanious jobs
- await asyncio.gather(
- flash_karel(canvas, 0),
- flash_karel(canvas, 1),
- flash_karel(canvas, 2),
- flash_karel(canvas, 3),
- flash_karel(canvas, 4),
- flash_karel(canvas, 5),
- flash_karel(canvas, 6),
- flash_karel(canvas, 7),
- flash_karel(canvas, 8),
- flash_karel(canvas, 9),
- )
-
- sleep(0.5)
- canvas.delete(background)
-
- return canvas
- if __name__ == '__main__':
- #asyncio.run(main())
- #await main()
|