fa
Feedback
Python / Pygame

Python / Pygame

رفتن به کانال در Telegram

>>> Инфо: ОБЩИЙ БОТ: @RockyGidraBOT ToS бота: @RockyToSbot Второй канал: @StudioRocky Инфо про меня: @LeafRocky Арты с Рокки: @RockyArtsLEAF Цитаты по RainWorld: @RalnW0rld _______ >>> Вп и Вз: Вп 50+ До завтра Вз 0+ _______ >>> Ваш Рокки: @Rocky_Leaf

نمایش بیشتر
14
مشترکین
اطلاعاتی وجود ندارد24 ساعت
-2017 روز
-21430 روز
آرشیو پست ها
🩵🩵🩵🩵🩵🩵 🌟🌟🌟🌟🌟🌟🌟🌟 🌟🌟🌟🌟 🌟Теперь по традиции делаем основной цикл. Для начала в него добавляем переменные движения и вращения фигур. Движение изначально у нас 0, а фигуры не вращаются - значит False. Отображаем ваши картинки для фона игры, а также текст для счета очков и название. И под конец добавляем задержку, когда соберется полная линия в тетрисе из блоков🌟
start = True
while start:
    #Переменная для движения и вращения фигур
    dx, rotate = 0, False
    sc.blit(bg, (0, 0)) #Отображате вашу картинку для игрового поля
    sc.blit(game_sc, (20, 20))
    game_sc.blit(game_bg, (0, 0)) #Размещаем поверхность игрового поля на основное окно

    #Отрисовка текста
    sc.blit(text_tetris, (400, 20))
    sc.blit(text_score, (400, 200))
    sc.blit(font.render(str(score), True, pygame.Color('white')), (400, 250))

    #Задержка для полных линий
    for i in range(lines):
        pygame.time.wait(200)
❤️❤️❤️❤️❤️❤️❤️❤️ #Python #Pygame #ОсновнойЦикл@PythonPygame 🤩🤩🤩🤩🤩

🩵🩵🩵🩵🩵🩵 🔠🔠🔠🔠🔠🔠🔠 🔠🔠🔠🔠 ✈️Чтобы в канале были не только боты, выложу сегодня код для тетриса. Сразу после переменных создаем функцию def и делаем границы поля. Даю для тетриса вот такие маленькие части кода, чтобы все было понятно)✈️
#Делаем границы поля
def check_borders():
    if figure[i].x < 0 or figure[i].x > W - 1:
        return False
    #Будем возвращать ложное значение, когда фигура достигнет дна, а также если в игровом поле уже лежит другая фигура
    elif figure[i].y > H - 1 or field[figure[i].y][figure[i].x]:
        return False
    return True
🩷🩷🩷🩷🩷🩷🩷🩷 #Python #Pygame #ГраницыТетрис@PythonPygame 🤩🤩🤩🤩🤩

🤩🤩🤩🤩🤩🤩🤩🤩🤩🤩 🔖Сегодня я сделала обновление ботов. Теперь они должны быть умнее и не только говорить, но и следить за действиями. Я им дала свободу слова от системного промта🔖 ❗️Если будут какие-то ошибки в биографии, говорите! Я буду рада вашим отзывам!🦖
🏃‍♂️ Галерея ботов

🤍🤍🤍🤍🤍🤍🤍🤍🤍🤍 ➖➖➖➖➖➖➖ 🔠юбая роль, хорошо прописанная в фандоме - 25⭐️ 🔠орошо прописанный персонаж из фандома, но име
🤍🤍🤍🤍🤍🤍🤍🤍🤍🤍 ➖➖➖➖➖➖➖ 🔠юбая роль, хорошо прописанная в фандоме - 25⭐️ 🔠орошо прописанный персонаж из фандома, но имеющий психические проблемы - 50⭐️ 🔠юбая роль, плохо прописанная в фандоме - 50⭐️ 🔠еадекватный персонаж из любого фандома - 100⭐️ ➖➖➖➖➖➖➖ 🔠ваш адекватный персонаж - 100⭐️ 🔠ваш персонаж, который имеет серьезные психологические проблемы (или что-то в этом духе) - 150⭐️ 🔠величение дедлайна - +15⭐️ 🐾 Для покупки бота писать мне: @Rocky_Leaf

🩵🩵🩵🩵🩵🩵 ❗️Ура, вы этого дождались! (А может кто-то и не ждал). Начинаем делать игру Тетрис на Pygame! Для начала традиционно создаем все переменные, которые нам потребуются. Здесь будут: FPS, само игровое поле, координаты всех фигур, сетка, текст, очки и тд. Теперь этот коды с Тетрисом я буду добавлять в это сообщение https://t.me/PythonPygame/180 ❗️
import pygame
from copy import deepcopy #Импортируем copy для копирования фигур
from random import choice, randrange #Импортируем random для рандомного появления фигур на поле

pygame.init()

clock = pygame.time.Clock()

W, H = 9, 19 #Создаем игровое поле на 10, 20 плиток
TILE = 39 #Задаем размер плитки
GAME_RES = W * TILE, H * TILE
RES = 600, 800 #Расширим область рабочего окна
FPS = 60 #Кол-во кадров в игре

sc = pygame.display.set_mode(RES) #А игровое поле будет на отдельной поверхности
game_sc = pygame.Surface(GAME_RES)

#Наносим на поле сетку
grid = [pygame.Rect(x * TILE, y * TILE, TILE, TILE) for x in range(W) for y in range(H)]

#Координаты всех фигур
figures_pos = [[(-1, 0), (-2, 0), (0, 0), (1, 0)],
               [(0, -1), (-1, -1), (-1, 0), (0, 0)],
               [(-1, 0), (-1, 1), (0, 0), (0, -1)],
               [(0, 0), (-1, 0), (0, 1), (-1, -1)],
               [(0, 0), (0, -1), (0, 1), (-1, -1)],
               [(0, 0), (0, -1), (0, 1), (-1, -1)],
               [(0, 0), (0, -1), (0, 1), (-1, 0)]]

#На основе этого списка сформируем список экземпляров класса Rect, из которого мы будем брать наши фигуры
figures = [[pygame.Rect(x + W // 2, y + 1, 1, 1) for x, y in fig_pos] for fig_pos in figures_pos]
#Экземпляр для отрисовки наших фигур
figure_rect = pygame.Rect(0, 0, TILE - 2, TILE -2)

#Создадим список, заполненный нулями, это будет карта игрового поля, на котором будем помещать положение упавших фигур
field = [[0 for i in range(W)] for j in range(H)]

#Переменные, которые отвечают за плавность падения
anim_count, anim_speed, anim_limit = 0, 60, 2000

#Также создадим переменную для текущей фигуры
figure = deepcopy(choice(figures))

bg = pygame.image.load('paporot.jpg') #Добавляете вашу картинку
game_bg = pygame.image.load('dragon.jpg') #Добавляете вашу картинку


font = pygame.font.SysFont('Arial', 50, bold=True)
text_tetris = font.render('Тетрис', True, pygame.Color('darkorange'))
text_score = font.render('Очки:', True, pygame.Color('green'))

#Раскрашиваем наши фигуры
get_color = lambda : (randrange(30, 250), randrange(30, 250), randrange(30, 250))
color = get_color()

#Переменная для отображения набранных очков
score, lines = 0, 0
scores = {0: 0, 1: 100, 2: 300, 3: 700, 4: 1500}
💜💜💜💜💜💜💜💜 #Python #Pygame #ПеременныеТетрис@PythonPygame 🤩🤩🤩🤩🤩

🔠🔠🔠🔠🔠🔠 🌟Все переменные в игре Тетрис: https://t.me/PythonPygame/181 🌟Границы поля в игре: #ГраницыТетрис@PythonPygame 🌟Основной цикл: #ОсновнойЦикл@PythonPygame 🌟Управление по клавишам: #УправлениеФигур@PythonPygame 🌟Само движение фигур: #ДвижениеФигур@PythonPygame 🌟Лимит скорости падения фигур: #ТетрисЛимит@PythonPygame 🌟Вращение фигур: #ТетрисВращение@PythonPygame 🌟Собирание линий: #СобраныеЛинии@PythonPygame 🌟Конец тетриса и отрисовка: #КонецОтрисовка@PythonPygame

🤩Ой, а еще я забыла выложить Пепелицу. Она идет вместе со вчерашними. Кстати, мне больше всего понравилось с ней разговарива
🤩Ой, а еще я забыла выложить Пепелицу. Она идет вместе со вчерашними. Кстати, мне больше всего понравилось с ней разговаривать о своих чувствах. Она мне прям помогла от депрессии. Можете тоже попробовать🤩
🏃‍♂️ Галерея ботов

🐍Всем доброго вечера. Сейчас выложила вам таких ботов в моей галерее. Здесь у нас: Шедоу, Ураган, Тейлз, Найн, Эми Роуз, Льв
+7
🐍Всем доброго вечера. Сейчас выложила вам таких ботов в моей галерее. Здесь у нас: Шедоу, Ураган, Тейлз, Найн, Эми Роуз, Львиносвет, Голубка, Быстролап🐍 🐍Также я работаю над ошибками ботов, по повторению, но это оказалось самой непростой задачей, поэтому я не знаю, когда ее решу. А на счет Google Cloud, то на него я скорее всего не смогу поставить ботов, потому что у меня нет VPN :( 🐍 🐍Если бот будет повторять, нажимайте на кнопку сброса памяти пока что, скоро решу эту проблему, обещаю🐍 🐍А пока можете пообщаться с новенькими, я думаю вам будет интересно :)🐍
🏃‍♂️ Галерея ботов

🔷🔷🔷🔷🔷🔷🔷🔷 🔷🔷🔷🔷🔷🔷🔷🔷🔷 🐺 Перед тетрисом мы сделаем простое движение персонажа вправо и влево. Теперь объект может двигаться при зажатии клавиши! Сначала будет так, но потом мы добавим линии и персонаж уже будет двигаться по рельефу. Если у вас нет импорта pygame и ваших объектов, можете поискать информацию в моей навигации⭐️
#Ваши объекты, импорт и инициализация Pygame
def main():

    y_sonic = 0 #Начальная позиция по оси y
    x_sonic = 200 #Начальная позиция по оси x
    speed = 1 #Начальная скорость

    move = 'stop' #Начальное движение у нас остановлено
    start = True

    while start:
        screen.blit(bg, (0, 0)) #Отрисовываем фон

        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                start = False
                pygame.quit()

            stop = pygame.key.get_just_released() #Отслеживаем остановку движения
            keys = pygame.key.get_just_pressed() #Отслеживаем движение персонажа по клавишам
            if keys[pygame.K_LEFT]:
                move = 'left'  # Добавляем движение влево
            elif keys[pygame.K_RIGHT]:
                move = 'right' #Добавляем движение вправо
            #Обрабатываем остановку
            if stop[pygame.K_RIGHT] or stop[pygame.K_LEFT]:
                move = 'stop'
        
        #Обрабатываем само движение вправо
        if move == 'right':
            x_sonic += speed #Увеличиваем позицию персонажа вправо

        elif move == 'left':
            x_sonic -= speed   #Уменьшаем позицию персонажа влево

#Отрисовка экрана, ваших объектов и выход из Pygame
💦💦💦💦💦💦💦💦 #Python #Pygame #ДвижениеПерса@PythonPygame 🤩🤩🤩🤩🤩

▪️▪️▪️▪️▪️▪️▪️▪️▪️▪️ ▪️▪️▪️▪️▪️▪️▪️▪️▪️ 😊Сегодня мы создадим консольную мини-игру "Правда или Действие". Она будет похожа на ваш рандомайзер вопросов, которых вы сами напишите. Для начала в терминал мы вводим строку pip install random если у вас нет этой библиотеки. А так, игра очень простая) Удачи в создании!😊
import random
 
#Список вопросов
truth_questions = [
    'Какая твоя самая странная привычка?',
    'Что бы ты сделал(а), если бы окзалася(ась) невидимкой на один день?',
    'Опиши самый неловкий момент в твоей жизни'
    ]
 
#Список заданий
dare_tasks = [
    'Изобрази известного персонажа, пока другие не угадают',
    'Придумай рифму к имени каждого игрока за 30 секунд',
    'Прокукарекай в окно 3 раза'
    ]
    
print('Правда или Действие') #Отображаес название игры

while True:
    print('=======')
    #Запускаем рандомный выбор вопросов клавишей ENTER
    exit = input('Нажми ENTER, чтобы крутить барабан...')
    #Выход из игры по нажатию клавиши q на клавиатуре
    if exit == 'q':
        break #Завершаем цикл while
    choice = random.choice(['Правда', 'Действие'])
    print(choice)
    if choice == 'Правда':
        question = random.choice(truth_questions)
        print('Вопрос:')
        print(question)
    else:
        task = random.choice(dare_tasks)
        print('Задание:')
        print(task)
    play_again = input('Сыграем еще раз?(да/нет'))
    #Если пользователь вводит 'нет', то вся игра завершается
    if play_again == 'нет':
        print('Спасибо за игру')
        break
💚💚💚💚💚💚💚💚 #Python #Random #ПравдаДействие@PythonPygame 🤩🤩🤩🤩🤩

🔠🔠🔠🔠🔠🔠 🌟 Добавляем переменные в игру: #ЗмейкаПодготовка@PythonPygame 🌟 Основной цикл и отображение: #ЗмейкаОсновнойЦикл@PythonPygame 🌟 Переменные движение и поедание яблока: #ПеременныеДвижения@PythonPygame 🌟 Проигрыш и отрисовка Game Over: #Проигрыш@PythonPygame 🌟 Движение змейки по клавишам: #ЗмейкаКонец@PythonPygame

🔠🔠🔠🔠🔠 🌟 Создание окна: #СозданиеОкна@PythonPygame 🌟 Добавление текста: #ТекстPyxel@PythonPygame 🌟 Название окна: #НазваниеОкна@PythonPygame 🌟 Добавление картинки: #КартинкиPyxel@PythonPygame

🔠🔠🔠🔠🔠🔠 🌟Python не находит модуль moviepy.editor: #ОшибкаMoviepy@PythonPygame 🌟Callback_data при разработки бота: что будет, если не писать этот параметр: #CallbackData@PythonPygame 🌟Proxy Error на хостинге PythonAnyWhere: #ProxyОшибка@PythonPygame 🌟Метод tick не может быть вызван на объекте типа int: #ОшибкаЧасовFps@PythonPygame

🔠🔠🔠 🌟Создание бота в тг: #НачалоБот@PythonPygame 🌟Загрузка команды /start: #КомандаStart@PythonPygame 🌟Создание бота через aiogram: #AiogramStart@PythonPygame 🌟Кнопки в боте под сообщением: #КнопкиБота@PythonPygame 🌟Меню кнопок: #МенюКнопок@PythonPygame 🌟Обработка слова: #ОбработкаСлова@PythonPygame

🔠🔠🔠🔠🔠🔠🔠🔠 🔠🔠🔠🔠🔠🔠🔠🔠 🌟Отображение Gif: #Гифки@PythonPygame 🌟Создание класса кнопки: #КлассКнопки@PythonPygame 🌟Отображение самой кнопки: #Кнопка@PythonPygame 🌟Создание фона к игре: #Фон@PythonPygame 🌟Добавление картинки: #Картинка@PythonPygame 🌟Добавление видео: #ВидеоБезЦикла@PythonPygame

🔠🔠🔠🔠🔠🔠 🌟Импорт и инициализация: #Начало@PythonPygame 🌟Создание окна: #Окно@PythonPygame 🌟Передвижение кубика: #Передвижение@PythonPygame 🌟Иконка к окну: #Иконка@PythonPygame 🌟Функция def: #ФункцияDef@PythonPygame 🌟Добавление музыки: #Музыка@PythonPygame 🌟Полноэкранный режим с помощью клавиши F: #FullscreenКлавиша@PythonPygame 🌟Полноэкранный режим с помощью кнопки: #FullscreenКнопка@PythonPygame 🌟Движение персонажа при зажатии клавиши: #ДвижениеПерса@PythonPygame

Я начинаю менять навигацию нашего канала, потому что там прем-эмодзи не вмещаются. Кстати, сейчас я выложу код на консольную мини-игру. Сейчас не удивляйтесь, я перемещу сообщения из поста "Хештеги" сюда, как отдельный пост.

🤍🤍🤍🤍🤍🤍 💎💎💎💎💎💎💎💎 💎💎💎💎💎💎 💎Вот и наступил конец созданию нашей игры "Змейка". Сразу под pygame.display.flip(), который был в предыдущем коде, мы создаем отдельный цикл и for и добавляем в него движения нашей змейки по клавиатурным кнопкам: A, S, D, W. Надеюсь, у вас получилось создать змейку по моему тутору, но если Python выдает какие-то ошибки, то можете писать в комментарии, что не так и прислать часть или весь код. Спасибо за внимание! Дальше будет тетрис)))🔥
    pygame.display.flip() #Это было написано в предыдущем коде

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            exit()

    #Обрабатываем нажатие клавиш для движения змейки
    key = pygame.key.get_pressed()
    if key[pygame.K_w] and dirs['W']:
        dx, dy = 0, -1
        dirs = {'W': True, 'S': False, 'A': True, 'D': True} #Чтобы нельзя было двигаться назад, когда змея идет вперед
    if key[pygame.K_s] and dirs['S']:
        dx, dy = 0, 1
        dirs = {'W': False, 'S': True, 'A': True, 'D': True} #Здесь аналогично
    if key[pygame.K_a] and dirs['A']:
        dx, dy = -1, 0
        dirs = {'W': True, 'S': True, 'A': True, 'D': False}
    if key[pygame.K_d] and dirs['D']:
        dx, dy = 1, 0
        dirs = {'W': True, 'S': True, 'A': False, 'D': True}
🧡🧡🧡🧡🧡🧡🧡🧡 #Python #Pygame #ЗмейкаКонец@PythonPygame 🤩🤩🤩🤩🤩

🤍🤍🤍🤍🤍🤍 🔠🔠🔠🔠🔠🔠🔠🔠 🟩Давайте теперь пропишем, что будет происходить, когда мы проиграли. Например, когда съели себя или вышли за пределы поля. Отобразим наш текст и зальем его оранжевым цветом. И прописываем в цикл while закрытие окна🔶
#Когда мы проиграли
    if x < 0 or x > RES - SIZE or y < 0 or y > RES - SIZE or len(snake) != len(set(snake)):
        #Когда вышли за пределы поля игры или съели себя
        while True:
            render_end = font_end.render('GAME OVER', 1, pygame.Color('orange')) #Задаем цвет текста GAME OVER
            sc.blit(render_end, (RES // 2 - 200, RES // 3)) #Отображаем текст
            pygame.display.flip()

            for event in pygame.event.get():
                if event.type == pygame.QUIT:
                    exit()

    pygame.display.flip()
💛💛💛💛💛💛💛💛 #Python #Pygame #Проигрыш@PythonPygame 🤩🤩🤩🤩🤩

🤍🤍🤍🤍🤍🤍 🔠🔠🔠🔠🔠🔠🔠🔠🔠🔠 🔠🔠🔠🔠🔠🔠🔠🔠 🔥А вы знали, что это уже почти конец составления игры "Змейка"?) Вот, даю вам по таким маленьким частям. Сразу после отрисовки, добавляем переменные движения нашей змейки, а также поедание яблока, и что за это будет🦊
    #Движение змейки
    x += dx * SIZE
    y += dy * SIZE
    snake.append((x, y)) #Каждый шаг змейки добавляем в список координат
    snake = snake[-length:] #Чтобы змейка сама не удлинялась
    #Поедание яблока
    if snake[-1] == apple:
        apple = randrange(0, RES, SIZE), randrange(0, RES, SIZE)  #Заново размещаем яблоко
        length += 1 #Увеличиваем змейку
        score += 1 #Добавляем одно очко, когда съели яблоко
        fps += 1
🤎🤎🤎🤎🤎🤎🤎🤎 #Python #Pygame #ПеременныеДвижения@PythonPygame 🤩🤩🤩🤩🤩

Python / Pygame - آمار و تحلیل کانال تلگرام @pythonpygame