pioneergame


Namepioneergame JSON
Version 0.0.17 PyPI version JSON
download
home_pagehttps://github.com/chebur5581/pioneergame
SummarySimple Pygame wrap for small kids
upload_time2025-07-30 13:58:51
maintainerNone
docs_urlNone
authorchebur5581
requires_python>=3.9
licenseNone
keywords games pygame kis learning pioneergame
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Простая обёртка pygame для детей

### Blank. Empty window ###

```python
from pioneergame import Window

my_window = Window(1200, 700, 'my black window')  # создаём главное окно

while True:  # бесконечный цикл игры
    my_window.fill('black')  # заполнение экрана чёрным

    my_window.update(60)  # обновление экрана с частотой 60 кадров в секунду
```

#

### Drawing simple objects ###
![figures](https://github.com/chebur5581/pioneergame/blob/main/image/figures.png?raw=true)
```python
from pioneergame import Window, Rect, Circle

my_window = Window(1200, 700, 'my black window')  # создаём главное окно

# создание синего прямоугольника с шириной 100 и высотой 50
block = Rect(my_window, x=10, y=40, width=100, height=50, color='blue')

# создание оранжевого квадрата размером 60 на 60, который потом будем двигать
moving_square = Rect(my_window, x=100, y=200, width=60, height=60, color='orange')

# создание красного круга с радиусом 20, который тоже будем двигать
moving_circle = Circle(my_window, x=1000, y=50, radius=20, color='red')

# создание серого кольца с радиусом 80 и толщиной стенки 5
bublik = Circle(my_window, x=500, y=350, radius=80, color='grey', thickness=5)

while True:  # бесконечный цикл игры
    my_window.fill('black')  # заполнение экрана чёрным

    block.draw()  # отрисовка прямоугольника
    moving_square.draw()  # отрисовка квадрата
    moving_circle.draw()  # отрисовка круга
    bublik.draw()

    # если правая сторона квадрата находится левее чем правая граница экрана, то мы двигаем квадрат вправо
    if moving_square.right < my_window.right:
        moving_square.x += 5  # движение квадрата вправо на 1 пиксель

    moving_circle.x -= 1  # движение круга в лево
    moving_circle.y += 1  # движение круга вниз

    my_window.update(60)  # обновление экрана с частотой 60 кадров в секунду

```

#

### Keyboard and text ###
![keyboard](https://github.com/chebur5581/pioneergame/blob/main/image/keyboard_and_text.png?raw=true)
```python
from pioneergame import Window, Label

my_window = Window(1200, 700, 'my black window')  # создаём главное окно

# создание текста белого цвета
my_text = Label(my_window, x=300, y=350, text='Нажми стрелочку вправо, влево, вверх или вниз', color='white')

while True:  # бесконечный цикл игры
    my_window.fill('black')  # заполнение экрана чёрным

    my_text.draw()  # отрисовка текста

    if my_window.get_key('left'):  # если нажата стрелочка влево
        my_text.set_text('была нажата стрелочка влево')  # установка нового текста
    if my_window.get_key('right'):  # если нажата стрелочка вправо
        my_text.set_text('была нажата стрелочка вправо')
    if my_window.get_key('up'):  # если нажата стрелочка вверх
        my_text.set_text('была нажата стрелочка вверх')
    if my_window.get_key('down'):  # если нажата стрелочка вниз
        my_text.set_text('была нажата стрелочка вниз')

    my_window.update(60)  # обновление экрана с частотой 60 кадров в секунду
```

### Fireworks ###
![fireworks](https://github.com/chebur5581/pioneergame/blob/main/image/fireworks.png?raw=true)
```python
from pioneergame import Window, explode, explosion_update

my_window = Window(1200, 700, 'my black window')  # создаём главное окно

while True:  # бесконечный цикл игры
    my_window.fill('black')  # заполнение экрана чёрным

    if my_window.get_mouse_button('left'):  # если была нажата левая кнопка мыши
        explode(my_window, pos=my_window.mouse_position(), size=5, color='orange')

    explosion_update()  # обработка всех взрывов

    my_window.update(60)  # обновление экрана с частотой 60 кадров в секунду
```

### Example. DVD screen ###
![dvd](https://github.com/chebur5581/pioneergame/blob/main/image/DVD.png?raw=true)
```python
from pioneergame import Window, Label

window = Window(1024, 768, 'DVD test')

dvd = Label(window, 10, 10, 'DVD', 'grey', font='Impact', size=70, italic=True)
state = Label(window, 10, 10, 'state: IDLE', 'grey', italic=True)

dx, dy = 3, 3

while True:
    window.fill('black')
    dvd.draw()
    state.draw()

    dvd.x += dx
    dvd.y += dy

    if dvd.left < window.left or dvd.right > window.right:
        dx *= -1
    if dvd.top < window.top or dvd.bottom > window.bottom:
        dy *= -1

    window.update(80)
```

#

### Ping Pong ###

![pong](https://github.com/chebur5581/pioneergame/blob/main/image/pong.png?raw=true)
```python
from pioneergame import Window, Circle, Rect, Label

window = Window(1024, 768)
fps = 80

pad1 = Rect(window, 50, 20, 20, 200, color='grey')
text1 = Label(window, 100, 10, text='0', color='darkgray', size=50)
score1 = 0

pad2 = Rect(window, 954, 20, 20, 200, color='grey')
text2 = Label(window, 900, 10, color='darkgray', size=50)
score2 = 0

ball = Circle(window, 100, 100, radius=10, color='grey')
ball_speed = 3

dx = ball_speed
dy = ball_speed

while True:
    window.fill('black')

    pad1.draw()
    text1.draw()
    text1.set_text(score1)

    pad2.draw()
    text2.draw()
    text2.set_text(score2)

    ball.draw()

    ball.x += dx
    ball.y += dy

    if ball.bottom > window.bottom:
        dy = -dy
    if ball.top < window.top:
        dy = -dy

    if ball.right > window.right:
        score1 = score1 + 1
        ball.x = 512
        ball.y = 344
    if ball.left < window.left:
        score2 = score2 + 1
        ball.x = 512
        ball.y = 344

    if window.get_key('w') and pad1.top > window.top:
        pad1.y -= 5
    if window.get_key('s') and pad1.bottom < window.bottom:
        pad1.y += 5

    if window.get_key('up') and pad2.top > window.top:
        pad2.y -= 5
    if window.get_key('down') and pad2.bottom < window.bottom:
        pad2.y += 5

    if ball.colliderect(pad1):
        dx = ball_speed
    if ball.colliderect(pad2):
        dx = -ball_speed

    window.update(fps)
```

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/chebur5581/pioneergame",
    "name": "pioneergame",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "Games Pygame kis Learning pioneergame",
    "author": "chebur5581",
    "author_email": "chebur5581@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/dd/2e/516574bda139344801ddd8f2956ea771d79453d1c69e492e6a622edf2d2b/pioneergame-0.0.17.tar.gz",
    "platform": null,
    "description": "\u041f\u0440\u043e\u0441\u0442\u0430\u044f \u043e\u0431\u0451\u0440\u0442\u043a\u0430 pygame \u0434\u043b\u044f \u0434\u0435\u0442\u0435\u0439\r\n\r\n### Blank. Empty window ###\r\n\r\n```python\r\nfrom pioneergame import Window\r\n\r\nmy_window = Window(1200, 700, 'my black window')  # \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u043e\u043a\u043d\u043e\r\n\r\nwhile True:  # \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u0438\u0433\u0440\u044b\r\n    my_window.fill('black')  # \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0447\u0451\u0440\u043d\u044b\u043c\r\n\r\n    my_window.update(60)  # \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 60 \u043a\u0430\u0434\u0440\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443\r\n```\r\n\r\n#\r\n\r\n### Drawing simple objects ###\r\n![figures](https://github.com/chebur5581/pioneergame/blob/main/image/figures.png?raw=true)\r\n```python\r\nfrom pioneergame import Window, Rect, Circle\r\n\r\nmy_window = Window(1200, 700, 'my black window')  # \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u043e\u043a\u043d\u043e\r\n\r\n# \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0438\u043d\u0435\u0433\u043e \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u0430 \u0441 \u0448\u0438\u0440\u0438\u043d\u043e\u0439 100 \u0438 \u0432\u044b\u0441\u043e\u0442\u043e\u0439 50\r\nblock = Rect(my_window, x=10, y=40, width=100, height=50, color='blue')\r\n\r\n# \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0440\u0430\u043d\u0436\u0435\u0432\u043e\u0433\u043e \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0430 \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 60 \u043d\u0430 60, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u043e\u0442\u043e\u043c \u0431\u0443\u0434\u0435\u043c \u0434\u0432\u0438\u0433\u0430\u0442\u044c\r\nmoving_square = Rect(my_window, x=100, y=200, width=60, height=60, color='orange')\r\n\r\n# \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043a\u0440\u0430\u0441\u043d\u043e\u0433\u043e \u043a\u0440\u0443\u0433\u0430 \u0441 \u0440\u0430\u0434\u0438\u0443\u0441\u043e\u043c 20, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0442\u043e\u0436\u0435 \u0431\u0443\u0434\u0435\u043c \u0434\u0432\u0438\u0433\u0430\u0442\u044c\r\nmoving_circle = Circle(my_window, x=1000, y=50, radius=20, color='red')\r\n\r\n# \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0435\u0440\u043e\u0433\u043e \u043a\u043e\u043b\u044c\u0446\u0430 \u0441 \u0440\u0430\u0434\u0438\u0443\u0441\u043e\u043c 80 \u0438 \u0442\u043e\u043b\u0449\u0438\u043d\u043e\u0439 \u0441\u0442\u0435\u043d\u043a\u0438 5\r\nbublik = Circle(my_window, x=500, y=350, radius=80, color='grey', thickness=5)\r\n\r\nwhile True:  # \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u0438\u0433\u0440\u044b\r\n    my_window.fill('black')  # \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0447\u0451\u0440\u043d\u044b\u043c\r\n\r\n    block.draw()  # \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0430 \u043f\u0440\u044f\u043c\u043e\u0443\u0433\u043e\u043b\u044c\u043d\u0438\u043a\u0430\r\n    moving_square.draw()  # \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0430 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0430\r\n    moving_circle.draw()  # \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0430 \u043a\u0440\u0443\u0433\u0430\r\n    bublik.draw()\r\n\r\n    # \u0435\u0441\u043b\u0438 \u043f\u0440\u0430\u0432\u0430\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u0430 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0430 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043b\u0435\u0432\u0435\u0435 \u0447\u0435\u043c \u043f\u0440\u0430\u0432\u0430\u044f \u0433\u0440\u0430\u043d\u0438\u0446\u0430 \u044d\u043a\u0440\u0430\u043d\u0430, \u0442\u043e \u043c\u044b \u0434\u0432\u0438\u0433\u0430\u0435\u043c \u043a\u0432\u0430\u0434\u0440\u0430\u0442 \u0432\u043f\u0440\u0430\u0432\u043e\r\n    if moving_square.right < my_window.right:\r\n        moving_square.x += 5  # \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u043a\u0432\u0430\u0434\u0440\u0430\u0442\u0430 \u0432\u043f\u0440\u0430\u0432\u043e \u043d\u0430 1 \u043f\u0438\u043a\u0441\u0435\u043b\u044c\r\n\r\n    moving_circle.x -= 1  # \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u043a\u0440\u0443\u0433\u0430 \u0432 \u043b\u0435\u0432\u043e\r\n    moving_circle.y += 1  # \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u043a\u0440\u0443\u0433\u0430 \u0432\u043d\u0438\u0437\r\n\r\n    my_window.update(60)  # \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 60 \u043a\u0430\u0434\u0440\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443\r\n\r\n```\r\n\r\n#\r\n\r\n### Keyboard and text ###\r\n![keyboard](https://github.com/chebur5581/pioneergame/blob/main/image/keyboard_and_text.png?raw=true)\r\n```python\r\nfrom pioneergame import Window, Label\r\n\r\nmy_window = Window(1200, 700, 'my black window')  # \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u043e\u043a\u043d\u043e\r\n\r\n# \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0442\u0435\u043a\u0441\u0442\u0430 \u0431\u0435\u043b\u043e\u0433\u043e \u0446\u0432\u0435\u0442\u0430\r\nmy_text = Label(my_window, x=300, y=350, text='\u041d\u0430\u0436\u043c\u0438 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0443 \u0432\u043f\u0440\u0430\u0432\u043e, \u0432\u043b\u0435\u0432\u043e, \u0432\u0432\u0435\u0440\u0445 \u0438\u043b\u0438 \u0432\u043d\u0438\u0437', color='white')\r\n\r\nwhile True:  # \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u0438\u0433\u0440\u044b\r\n    my_window.fill('black')  # \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0447\u0451\u0440\u043d\u044b\u043c\r\n\r\n    my_text.draw()  # \u043e\u0442\u0440\u0438\u0441\u043e\u0432\u043a\u0430 \u0442\u0435\u043a\u0441\u0442\u0430\r\n\r\n    if my_window.get_key('left'):  # \u0435\u0441\u043b\u0438 \u043d\u0430\u0436\u0430\u0442\u0430 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0430 \u0432\u043b\u0435\u0432\u043e\r\n        my_text.set_text('\u0431\u044b\u043b\u0430 \u043d\u0430\u0436\u0430\u0442\u0430 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0430 \u0432\u043b\u0435\u0432\u043e')  # \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043d\u043e\u0432\u043e\u0433\u043e \u0442\u0435\u043a\u0441\u0442\u0430\r\n    if my_window.get_key('right'):  # \u0435\u0441\u043b\u0438 \u043d\u0430\u0436\u0430\u0442\u0430 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0430 \u0432\u043f\u0440\u0430\u0432\u043e\r\n        my_text.set_text('\u0431\u044b\u043b\u0430 \u043d\u0430\u0436\u0430\u0442\u0430 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0430 \u0432\u043f\u0440\u0430\u0432\u043e')\r\n    if my_window.get_key('up'):  # \u0435\u0441\u043b\u0438 \u043d\u0430\u0436\u0430\u0442\u0430 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0430 \u0432\u0432\u0435\u0440\u0445\r\n        my_text.set_text('\u0431\u044b\u043b\u0430 \u043d\u0430\u0436\u0430\u0442\u0430 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0430 \u0432\u0432\u0435\u0440\u0445')\r\n    if my_window.get_key('down'):  # \u0435\u0441\u043b\u0438 \u043d\u0430\u0436\u0430\u0442\u0430 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0430 \u0432\u043d\u0438\u0437\r\n        my_text.set_text('\u0431\u044b\u043b\u0430 \u043d\u0430\u0436\u0430\u0442\u0430 \u0441\u0442\u0440\u0435\u043b\u043e\u0447\u043a\u0430 \u0432\u043d\u0438\u0437')\r\n\r\n    my_window.update(60)  # \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 60 \u043a\u0430\u0434\u0440\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443\r\n```\r\n\r\n### Fireworks ###\r\n![fireworks](https://github.com/chebur5581/pioneergame/blob/main/image/fireworks.png?raw=true)\r\n```python\r\nfrom pioneergame import Window, explode, explosion_update\r\n\r\nmy_window = Window(1200, 700, 'my black window')  # \u0441\u043e\u0437\u0434\u0430\u0451\u043c \u0433\u043b\u0430\u0432\u043d\u043e\u0435 \u043e\u043a\u043d\u043e\r\n\r\nwhile True:  # \u0431\u0435\u0441\u043a\u043e\u043d\u0435\u0447\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u0438\u0433\u0440\u044b\r\n    my_window.fill('black')  # \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0447\u0451\u0440\u043d\u044b\u043c\r\n\r\n    if my_window.get_mouse_button('left'):  # \u0435\u0441\u043b\u0438 \u0431\u044b\u043b\u0430 \u043d\u0430\u0436\u0430\u0442\u0430 \u043b\u0435\u0432\u0430\u044f \u043a\u043d\u043e\u043f\u043a\u0430 \u043c\u044b\u0448\u0438\r\n        explode(my_window, pos=my_window.mouse_position(), size=5, color='orange')\r\n\r\n    explosion_update()  # \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0430 \u0432\u0441\u0435\u0445 \u0432\u0437\u0440\u044b\u0432\u043e\u0432\r\n\r\n    my_window.update(60)  # \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u044d\u043a\u0440\u0430\u043d\u0430 \u0441 \u0447\u0430\u0441\u0442\u043e\u0442\u043e\u0439 60 \u043a\u0430\u0434\u0440\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443\r\n```\r\n\r\n### Example. DVD screen ###\r\n![dvd](https://github.com/chebur5581/pioneergame/blob/main/image/DVD.png?raw=true)\r\n```python\r\nfrom pioneergame import Window, Label\r\n\r\nwindow = Window(1024, 768, 'DVD test')\r\n\r\ndvd = Label(window, 10, 10, 'DVD', 'grey', font='Impact', size=70, italic=True)\r\nstate = Label(window, 10, 10, 'state: IDLE', 'grey', italic=True)\r\n\r\ndx, dy = 3, 3\r\n\r\nwhile True:\r\n    window.fill('black')\r\n    dvd.draw()\r\n    state.draw()\r\n\r\n    dvd.x += dx\r\n    dvd.y += dy\r\n\r\n    if dvd.left < window.left or dvd.right > window.right:\r\n        dx *= -1\r\n    if dvd.top < window.top or dvd.bottom > window.bottom:\r\n        dy *= -1\r\n\r\n    window.update(80)\r\n```\r\n\r\n#\r\n\r\n### Ping Pong ###\r\n\r\n![pong](https://github.com/chebur5581/pioneergame/blob/main/image/pong.png?raw=true)\r\n```python\r\nfrom pioneergame import Window, Circle, Rect, Label\r\n\r\nwindow = Window(1024, 768)\r\nfps = 80\r\n\r\npad1 = Rect(window, 50, 20, 20, 200, color='grey')\r\ntext1 = Label(window, 100, 10, text='0', color='darkgray', size=50)\r\nscore1 = 0\r\n\r\npad2 = Rect(window, 954, 20, 20, 200, color='grey')\r\ntext2 = Label(window, 900, 10, color='darkgray', size=50)\r\nscore2 = 0\r\n\r\nball = Circle(window, 100, 100, radius=10, color='grey')\r\nball_speed = 3\r\n\r\ndx = ball_speed\r\ndy = ball_speed\r\n\r\nwhile True:\r\n    window.fill('black')\r\n\r\n    pad1.draw()\r\n    text1.draw()\r\n    text1.set_text(score1)\r\n\r\n    pad2.draw()\r\n    text2.draw()\r\n    text2.set_text(score2)\r\n\r\n    ball.draw()\r\n\r\n    ball.x += dx\r\n    ball.y += dy\r\n\r\n    if ball.bottom > window.bottom:\r\n        dy = -dy\r\n    if ball.top < window.top:\r\n        dy = -dy\r\n\r\n    if ball.right > window.right:\r\n        score1 = score1 + 1\r\n        ball.x = 512\r\n        ball.y = 344\r\n    if ball.left < window.left:\r\n        score2 = score2 + 1\r\n        ball.x = 512\r\n        ball.y = 344\r\n\r\n    if window.get_key('w') and pad1.top > window.top:\r\n        pad1.y -= 5\r\n    if window.get_key('s') and pad1.bottom < window.bottom:\r\n        pad1.y += 5\r\n\r\n    if window.get_key('up') and pad2.top > window.top:\r\n        pad2.y -= 5\r\n    if window.get_key('down') and pad2.bottom < window.bottom:\r\n        pad2.y += 5\r\n\r\n    if ball.colliderect(pad1):\r\n        dx = ball_speed\r\n    if ball.colliderect(pad2):\r\n        dx = -ball_speed\r\n\r\n    window.update(fps)\r\n```\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Simple Pygame wrap for small kids",
    "version": "0.0.17",
    "project_urls": {
        "GitHub": "https://github.com/chebur5581/pioneergame",
        "Homepage": "https://github.com/chebur5581/pioneergame"
    },
    "split_keywords": [
        "games",
        "pygame",
        "kis",
        "learning",
        "pioneergame"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "f4d9fa73a02b45813aeffe9c58ac10c7655edc7235d86417e4e68e401b281a08",
                "md5": "5024d30fdc30cde72d16c71785e2b43c",
                "sha256": "314c78671e2dd95ee4595250e82fe8dece8ddec3b771c78915adc765a7a22e8b"
            },
            "downloads": -1,
            "filename": "pioneergame-0.0.17-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5024d30fdc30cde72d16c71785e2b43c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 190891,
            "upload_time": "2025-07-30T13:58:49",
            "upload_time_iso_8601": "2025-07-30T13:58:49.371615Z",
            "url": "https://files.pythonhosted.org/packages/f4/d9/fa73a02b45813aeffe9c58ac10c7655edc7235d86417e4e68e401b281a08/pioneergame-0.0.17-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "dd2e516574bda139344801ddd8f2956ea771d79453d1c69e492e6a622edf2d2b",
                "md5": "7471c0777494d10de447980fe7173068",
                "sha256": "783ca51a2fd1ee650b085770b33b405894e647431f596b90cfa5ed3944962ac1"
            },
            "downloads": -1,
            "filename": "pioneergame-0.0.17.tar.gz",
            "has_sig": false,
            "md5_digest": "7471c0777494d10de447980fe7173068",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 191443,
            "upload_time": "2025-07-30T13:58:51",
            "upload_time_iso_8601": "2025-07-30T13:58:51.513309Z",
            "url": "https://files.pythonhosted.org/packages/dd/2e/516574bda139344801ddd8f2956ea771d79453d1c69e492e6a622edf2d2b/pioneergame-0.0.17.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-30 13:58:51",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "chebur5581",
    "github_project": "pioneergame",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "pioneergame"
}
        
Elapsed time: 1.56126s