Заставка

Программирование на старых и современных языках, а так-же дизайн

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



Пишим игру на Python, часть II

Сообщений 1 страница 2 из 2

1

1. Нажмём на New Project:
https://i.ibb.co/7Nnb8J5/arcade-01-20-07-04-01-2022-min.jpg

2. Назавём проект simple:
https://i.ibb.co/17zqvXw/arcade-02-20-08-04-01-2022-min.jpg

3. Так выглядет среда разработки, выберем оборудование, нажмём на Choose hardware:
https://i.ibb.co/cbZmb3v/arcade-03-20-10-04-01-2022-min.jpg

4. Я выберу Adafruit PyGamer:
https://i.ibb.co/cYN02wW/arcade-04-20-10-04-01-2022-min.jpg

5,. Напишим код:
https://i.ibb.co/bFgnbMx/arcade-05-20-13-04-01-2022-min.jpg

Код:
scene.set_background_color(7)
game.splash("Hello, World")

6. Добавим спрайт:
https://i.ibb.co/dtJPxFm/arcade-06-20-15-04-01-2022-min.jpg

Код:
my_sprite = sprites.create(img("""
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
"""), SpriteKind.player)

7. Нажмём на Assets:
https://i.ibb.co/0YNK32j/arcade-07-20-16-04-01-2022-min.jpg

8. Выберем картинку, я выберу акулу:
https://i.ibb.co/pRXKCnt/arcade-08-20-19-04-01-2022-min.jpg

9. Нажмём на Copy:
https://i.ibb.co/xSy8Sjw/arcade-09-20-19-04-01-2022-min.jpg

10. Выделим:
https://i.ibb.co/S52zWk9/arcade-10-20-19-04-01-2022-min.jpg

Код:
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................
....................................

11. Вставим:
https://i.ibb.co/hcmzMYJ/arcade-11-20-20-04-01-2022-min.jpg

Код:
....................................
....................................
....................................
...............ccffff...............
..............cddbbbf...............
.......ffffffcddbbbf................
.....ffbbbbbbbbbbbbbcfff.......ccccc
...ffbbbbbbbbcbcbbbbbcccff....cdbbbc
..fbbbbbbbbbbcbbcbbbbcccccfffcddbbc.
.fbcbbbbbbbbbbcbcbbbbccccccccbdbbf..
.fbbbbbbbfffbbcbbbbbccccccccccbbcf..
.ffbb1111fffbbcbbbbcccccccbcffbccf..
..ff111111111bbbbccccccbbbcc..fbbcf.
....ccccccc111bdbbbfddbccc.....ffbbf
........ccccccfbdbbbfcc..........fff
...............ffffff...............

https://i.ibb.co/VwRXrmw/arcade-12-20-20-04-01-2022-min.jpg

12. Добавим my_sprite.set_position(5, 5):
https://i.ibb.co/0MvdVbc/arcade-13-20-25-04-01-2022-min.jpg

13. Добавим controller.move_sprite(my_sprite):
https://i.ibb.co/HCqLRp1/arcade-14-20-28-04-01-2022-min.jpg

Вот сам код:

Код:
scene.set_background_color(7)
game.splash("Hello, World")
my_sprite = sprites.create(img("""
....................................
....................................
....................................
...............ccffff...............
..............cddbbbf...............
.......ffffffcddbbbf................
.....ffbbbbbbbbbbbbbcfff.......ccccc
...ffbbbbbbbbcbcbbbbbcccff....cdbbbc
..fbbbbbbbbbbcbbcbbbbcccccfffcddbbc.
.fbcbbbbbbbbbbcbcbbbbccccccccbdbbf..
.fbbbbbbbfffbbcbbbbbccccccccccbbcf..
.ffbb1111fffbbcbbbbcccccccbcffbccf..
..ff111111111bbbbccccccbbbcc..fbbcf.
....ccccccc111bdbbbfddbccc.....ffbbf
........ccccccfbdbbbfcc..........fff
...............ffffff...............
"""), SpriteKind.player)
my_sprite.set_position(5, 5)
controller.move_sprite(my_sprite)

0

2

Новый код, тут заставляем акулу двигаться в правильном направление:

Код:
left = True
light.show_animation(light.rainbow_animation, 500)

pause(100)

scene.set_background_color(8)
mySprite: Sprite = sprites.create(img("""
    .............ccfff..............
    ...........ccddbcf..............
    ..........ccddbbf...............
    ..........fccbbcf...............
    .....fffffccccccff.........ccc..
    ...ffbbbbbbbcbbbbcfff....ccbbc..
    ..fbbbbbbbbcbcbbbbcccff.cdbbc...
    ffbbbbbbffbbcbcbbbcccccfcdbbf...
    fbcbbb11ff1bcbbbbbcccccffbbf....
    fbbb11111111bbbbbcccccccbbcf....
    .fb11133cc11bbbbcccccccccccf....
    ..fccc31c111bbbcccccbdbffbbcf...
    ...fc13c111cbbbfcddddcc..fbbf...
    ....fccc111fbdbbccdcc.....fbbf..
    ........ccccfcdbbcc........fff..
    .............fffff..............
"""), SpriteKind.player)

mySprite.say_text("I'm hungry")

Meal = sprites.create(img("""
    . . b b b b . .
    . b 5 5 5 5 b .
    b 5 d 3 3 d 5 b
    b 5 3 5 5 1 5 b
    c 5 3 5 5 1 d c
    c d d 1 1 d d c
    . f d d d d f .
    . . f f f f . .
"""), SpriteKind.player)
Meal.set_position(10, 30)

controller.move_sprite(mySprite)
def on_button_event_left_pressed():
  global left
  if left == False:
    mySprite.image.flip_x()
    left = True

def on_button_event_right_pressed():
  global left
  if left  == True:
    mySprite.image.flip_x()
    left = False

controller.left.on_event(ControllerButtonEvent.PRESSED, on_button_event_left_pressed)
controller.right.on_event(ControllerButtonEvent.PRESSED, on_button_event_right_pressed)

Результат работы кода на реальном устройстве Adafruit PYGAMER:
https://i.ibb.co/7RbdPYV/IMG-3179-min.jpg

Отредактировано lexx821 (Пн, 10 Апр 2023 12:29:49)

0