import streamlit as st import pygame import numpy as np # Inicializa o Pygame pygame.init() # Tamanho da tela do jogo screen_width = 640 screen_height = 480 # Configurações da tela screen = pygame.display.set_mode((screen_width, screen_height)) pygame.display.set_caption("A Jornada do Discípulo") # Configurações do jogador player_pos = [screen_width // 2, screen_height // 2] player_size = 50 player_color = (0, 128, 255) player_velocity = [0, 0] # Função para renderizar o jogo def render_game(): global player_pos, player_velocity # Mover jogador player_pos[0] += player_velocity[0] player_pos[1] += player_velocity[1] # Limitar a posição do jogador dentro da tela if player_pos[0] < 0: player_pos[0] = 0 elif player_pos[0] > screen_width - player_size: player_pos[0] = screen_width - player_size if player_pos[1] < 0: player_pos[1] = 0 elif player_pos[1] > screen_height - player_size: player_pos[1] = screen_height - player_size # Renderizar a tela screen.fill((0, 0, 0)) pygame.draw.rect(screen, player_color, (*player_pos, player_size, player_size)) # Converter a tela do Pygame para uma imagem e exibir no Streamlit image = pygame.surfarray.array3d(pygame.display.get_surface()) image = np.rot90(image, 3) image = np.fliplr(image) st.image(image, caption='Jogo em execução', use_column_width=True) # Integração com Streamlit st.title('A Jornada do Discípulo') # Controles do jogador col1, col2, col3 = st.columns(3) with col1: if st.button('Esquerda'): player_velocity[0] = -5 with col2: if st.button('Parar'): player_velocity = [0, 0] with col3: if st.button('Direita'): player_velocity[0] = 5 if st.button('Cima'): player_velocity[1] = -5 if st.button('Baixo'): player_velocity[1] = 5 render_game()