Найти в Дзене
alexandr azevich

Первая программа на Python.(часть 2).

Логика программы достаточно простая В самом начале располагаем блок ввода основных библиотек Используем библиотеку для создания игр PYGAME, pgzero,pgzrun. import pgzero,pygame,pgzrun библиотека для случайного положения на игровом поле from random import randint Папку с изображениями должна находится в том же каталоге, что и выполняемый файл Название папки images файл с рисунком назовём apple.png - расширение png удобно для того, чтобы делать прозрачными углы на картинке с круглой точкой. apple = Actor("apple") Этим оператором Actor будем работать с нашим спрайтом - яблоко(apple) Актеры и спрайты В разработке компьютерных игр, спрайт — это объект, такой как монета или персонаж, которым управляет программный код. Актеры в Python похожи на спрайты в Scretch. Актера можно нарисовать на экране, перемещать и он может взаимодействовать с другими актерами в игре. Каждому актеру дается «сценарий» (код Python), чтобы сообщить ему, как вести себя в игре. Рисуем яблоко на экране. Далее вам нужно «

Логика программы достаточно простая

В самом начале располагаем блок ввода основных библиотек

Используем библиотеку для создания игр PYGAME, pgzero,pgzrun.

import pgzero,pygame,pgzrun

библиотека для случайного положения на игровом поле

from random import randint

Папку с изображениями должна находится в том же каталоге, что и выполняемый файл

Название папки

images

файл с рисунком назовём apple.png - расширение png удобно для того, чтобы делать прозрачными углы на картинке с круглой точкой.

apple = Actor("apple")

Этим оператором Actor будем работать с нашим спрайтом - яблоко(apple)

Актеры и спрайты

В разработке компьютерных игр, спрайт — это объект, такой как монета или персонаж, которым управляет программный код. Актеры в Python похожи на спрайты

в Scretch. Актера можно нарисовать на экране, перемещать и он может взаимодействовать с другими актерами в игре. Каждому актеру дается «сценарий» (код Python), чтобы сообщить ему, как вести себя в игре.

Рисуем яблоко на экране. Далее вам нужно «нарисовать» яблоко на экране. Для этого вы можете использовать встроенную в Pygame Zero

функцию, называемая draw(). Эта функция используется, чтобы перерисовать игровой экран. Например, если персонаж переместился или счет изменился, вы можете использовать эту функцию для обновления экрана с этими изменениями. Напишите этот код ниже

def draw( ):

screen.clear( )

apple.draw( )

внутри этой функции происходит очистка экрана screen.clear( ) и рисование яблока apple.draw( )

Если написать такую небольшую программу -

import pgzero,pygame,pgzrun
from random import randint
apple = Actor(
"apple")

def draw():
screen.clear()
apple.draw()

pgzrun.go()

то получим вот такой экран

Яблоко появляется в верхний левый угол игрового окна. Можно изменить код, чтобы разместить яблоко точно где вы хотите его увидеть на экране. Напишите эту функцию, которая поместит яблоко в координаты (300, 200).

def place_apple( ):

apple.x = 300

apple.y = 200

Однако, для нашей задачи мы выберем следующую функцию

def place_apple():
apple.x = randint(10, 800)
apple.y = randint(10, 600)

Эта функция случайным образом располагает наше яблоко. на экране 800 на 600 пикселей.

def on_mouse_down(pos):
if apple.collidepoint(pos):
print(
"Good shot!")
place_apple()
else:
print(
"You missed!")

Этот блок "руководит" мышкой при правильном нажатии пишет Good shot!, а при промахе - You missed!

Запуск функций осуществляется

place_apple() - функция для размещения

яблока на экране
pgzrun.go()

Python использует координаты для идентификации положения в окне, где находиться объект. Это означает, что каждое место может быть идентифицировано двумя числами. Первое число координата x, которая показывает, как далеко вправо до объекта. Второе число это координата y, которая показывает, как далеко вниз до объекта. Координаты написаны в

круглых скобках, сначала идёт координата x, затем y:

(х, у). В математике координата (0, 0) обычно внизу слева, а в компьютерной графике, это почти всегда верхний левый угол.

Работа с кликами

Теперь пришло время написать код, который будет работать, когда вы нажимаете на мышку. Pygame Zero имеет встроенную функцию вызывается on_mouse_down(), что запускает код каждый раз, когда вы щелкаете мышью. Введите этот код затем запустите его и вы должны увидеть сообщение «Хорошо

выстрелил!" "Good shot!"