0% found this document useful (0 votes)
35 views3 pages

Codigo

The document is a Python script for a space-themed game titled 'Viaje espacial'. It includes functionalities for a menu, game mode, and game over screen, with various actors such as ships, enemies, planets, and meteors. The game features movement controls, collision detection, and random generation of enemies and obstacles.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
35 views3 pages

Codigo

The document is a Python script for a space-themed game titled 'Viaje espacial'. It includes functionalities for a menu, game mode, and game over screen, with various actors such as ships, enemies, planets, and meteors. The game features movement controls, collision detection, and random generation of enemies and obstacles.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd

#pgzero

import random

WIDTH = 600
HEIGHT = 450

TITLE = "Viaje espacial"


FPS = 30

# Objetos y variables
ship = Actor("ship", (300, 400))
space = Actor("space")
enemies = []
planets = [Actor("plan1", ([Link](0, 600), -100)), Actor("plan2",
([Link](0, 600), -100)), Actor("plan3", ([Link](0, 600), -100))]
meteors = []
mode = 'menu'
ship1 = Actor("ship1", (100, 250))
ship2 = Actor("ship2", (300, 250))
ship3 = Actor("ship3", (500, 250))

# Elaboración de la lista de enemigos


for i in range(5):
x = [Link](0, 600)
y = [Link](-450, -50)
enemy = Actor("enemy", (x, y))
[Link] = [Link](2, 8)
[Link](enemy)

# Lista de meteoritos
for i in range(5):
x = [Link](0, 600)
y = [Link](-450, -50)
meteor = Actor("meteor", (x, y))
[Link] = [Link](2, 10)
[Link](meteor)

# Elaboración
def draw():
# Pantalla del menú de inicio
if mode == "menu":
[Link]()
[Link]("Elige tu Nave", center = (300, 100), color = "white",
fontsize = 36)
[Link]()
[Link]()
[Link]()

# Modo de juego
if mode == 'game':
[Link]()
planets[0].draw()
# Atraer a los meteoritos
for i in range(len(meteors)):
meteors[i].draw()
[Link]()
# Atraer a los enemigos
for i in range(len(enemies)):
enemies[i].draw()
# Ventana de finalización del juego
elif mode == 'end':
[Link]()
[Link]("GAME OVER!", center = (300, 200), color = "white",
fontsize = 36)

# Controles
def on_mouse_move(pos):
[Link] = pos

# Añadir nuevos enemigos a la lista


def new_enemy():
x = [Link](0, 400)
y = -50
enemy = Actor("enemy", (x, y))
[Link] = [Link](2, 8)
[Link](enemy)

# Movimiento del enemigo


def enemy_ship():
for i in range(len(enemies)):
if enemies[i].y < 650:
enemies[i].y = enemies[i].y + enemies[i].speed
else:
[Link](i)
new_enemy()

# Movimiento de los planetas


def planet():
if planets[0].y < 550:
planets[0].y = planets[0].y + 1
else:
planets[0].y = -100
planets[0].x = [Link](0, 600)
first = [Link](0)
[Link](first)

# Movimiento de los meteoritos


def meteorites():
for i in range(len(meteors)):
if meteors[i].y < 450:
meteors[i].y = meteors[i].y + meteors[i].speed
else:
meteors[i].x = [Link](0, 600)
meteors[i].y = -20
meteors[i].speed = [Link](2, 10)

# Colisiones
def collisions():
global mode
for i in range(len(enemies)):
if [Link](enemies[i]):
mode = 'end'

def update(dt):
if mode == 'game':
enemy_ship()
collisions()
planet()
meteorites()
def on_mouse_down(button, pos):
global mode
if mode == "menu":
if [Link](pos):
[Link] = "ship1"
mode = "game"
if [Link](pos):
[Link] = "ship2"
mode = "game"
if [Link](pos):
[Link] = "ship3"
mode = "game"

You might also like