elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Mi primer juego en Pygame : UrbanWar
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Mi primer juego en Pygame : UrbanWar  (Leído 1,891 veces)
BigBear


Desconectado Desconectado

Mensajes: 545



Ver Perfil
Mi primer juego en Pygame : UrbanWar
« en: 21 Febrero 2013, 01:15 am »

Bue , recien acabo de terminar mi primer juego en Pygame , para hacerlo me base en el famoso juego Rock Blaster hecho por Jeff Walters.
El juego trata de sobrevivir 1 minuto en un barrio peligroso , comienzan a llover ladrones armados por todos lados y el protagonista tiene una M4 con municion infinita.
A grandes rasgos el juego esta basado en la vida real solo que en este caso no todos tenemos una M4 xDDD.

Una imagen del juego :



EL codigo :

Código
  1. #!usr/bin/python
  2. #UrbanWar 0.1
  3. #Coded By Doddy H in the year 2013
  4. #My first game in Pygame
  5. #Based in the game Rock Blaster made by Jeff Walters
  6. #Thanks to Jeff Walters
  7.  
  8. import pygame
  9. import sys,os,time
  10. from pygame.locals import *
  11. import random
  12.  
  13. tiempoportiro = 1
  14.  
  15. class theboss(pygame.sprite.Sprite):
  16.  
  17. def __init__(self,esto):
  18.  pygame.sprite.Sprite.__init__(self,self.mas)
  19.  self.image = pygame.image.load("archivos/ladron.gif")
  20.  self.rect = self.image.get_rect( center = (random.randint(0,860),0))
  21.  self.cada = esto
  22.  
  23. def update(self):
  24.  self.rect.move_ip(self.cada,3)
  25.  
  26. class protagonista(pygame.sprite.Sprite):
  27.  
  28. def __init__(self):
  29.  pygame.sprite.Sprite.__init__(self,self.mas)
  30.  self.image = pygame.image.load("archivos/protagonista.gif")
  31.  self.rect = self.image.get_rect(center = (860,640))
  32.  
  33. def update(self):
  34.  global tiempoportiro
  35.  if pygame.key.get_pressed()[K_LEFT]:
  36.   self.rect.move_ip(-5,0)
  37.  if pygame.key.get_pressed()[K_RIGHT]:
  38.   self.rect.move_ip(5,0)
  39.  if pygame.key.get_pressed()[K_SPACE] and tiempoportiro <= 0:
  40.   pygame.mixer.Sound("archivos/disparo.wav").play()
  41.   tiempoportiro = 25
  42.   cartucho(self.rect.midtop)
  43.  tiempoportiro -= 1
  44.  self.rect.clamp_ip(Rect(0,0,860,640))
  45.  
  46. class chau(pygame.sprite.Sprite):
  47.  
  48. def __init__(self, actor):
  49.  pygame.sprite.Sprite.__init__(self,self.mas)
  50.  self.image = pygame.image.load("archivos/explo.gif")
  51.  self.rect = self.image.get_rect(center=actor.rect.center)
  52.  self.tie = 10
  53.  
  54. def update(self):
  55.  self.tie = self.tie - 2
  56.  if self.tie <= 0:
  57.   self.kill()
  58.  
  59. class cartucho(pygame.sprite.Sprite):
  60.  
  61. def __init__(self,toyaca):
  62.  
  63.  pygame.sprite.Sprite.__init__(self,self.mas)
  64.  self.image = pygame.image.load("archivos/bala.gif")
  65.  self.rect = self.image.get_rect(midbottom = toyaca)
  66.  
  67. def update(self):
  68.  self.rect.move_ip(-30,-50)
  69.  if not Rect(0,0,860,640).contains(self.rect):
  70.   self.kill()
  71.  
  72. pygame.init()
  73.  
  74. mil = 0
  75. theboss_cadacuanto = 30
  76.  
  77. cro = pygame.time.Clock()
  78.  
  79. pantalla = pygame.display.set_mode((860,640),0,32)
  80. #pantalla = pygame.display.set_mode((860,640),FULLSCREEN) # FULLSCREEN
  81.  
  82. fondo = pygame.image.load("archivos/callejon.jpg")
  83. pygame.display.set_caption("UrbanWar 0.1")
  84. pygame.mouse.set_visible(False)
  85.  
  86. protagonistamas = pygame.sprite.Group()
  87.  
  88. protagonista.mas = protagonistamas
  89. protagonista = protagonista()
  90.  
  91. thebossmas = pygame.sprite.Group()
  92. theboss.mas = thebossmas
  93.  
  94. cartuchomas = pygame.sprite.Group()
  95. cartucho.mas = cartuchomas
  96.  
  97. chaumas = pygame.sprite.Group()
  98. chau.mas = chaumas
  99.  
  100. mostrar = pygame.font.Font("archivos/FreeSansBold.ttf",36)
  101.  
  102. pygame.mixer.Sound("archivos/menu.wav").play()
  103. men = pygame.image.load("archivos/menu.jpg")
  104. pantalla.blit(men,(0,0))
  105. pygame.display.update()
  106. time.sleep(9)
  107.  
  108. while 1:
  109.  
  110. mil += cro.tick()
  111. casi = mil/1000
  112. casi = 60 - casi
  113.  
  114. if casi == 0:
  115.  win = pygame.image.load("archivos/mina.jpg")
  116.  pantalla.blit(win,(0,0))
  117.  pygame.display.update()
  118.  time.sleep(10)
  119.  sys.exit(1)
  120.  
  121. tiempoquefalta = mostrar.render("Remaining Time : "+str(casi),True,(255,0,0))            
  122. pantalla.blit(tiempoquefalta,(500,20))
  123. pygame.display.update()
  124.  
  125. pantalla.blit(fondo,(0,0))
  126.  
  127. protagonistamas.draw(pantalla)
  128. protagonistamas.update()
  129. thebossmas.draw(pantalla)
  130. thebossmas.update()
  131. cartuchomas.draw(pantalla)
  132. cartuchomas.update()
  133. chaumas.draw(pantalla)
  134. chaumas.update()
  135.  
  136. if theboss_cadacuanto:
  137.  theboss_cadacuanto = theboss_cadacuanto - 1
  138. else:
  139.  asteroid = theboss(random.randint(-6,5))
  140.  theboss_cadacuanto = 20
  141.  
  142. for asteroid in pygame.sprite.groupcollide(cartuchomas,thebossmas,1,1):
  143.  pygame.mixer.Sound("archivos/muerte.wav").play()
  144.  chau(asteroid)
  145.  
  146. for asteroid in pygame.sprite.spritecollide(protagonista,thebossmas,1):
  147.  pygame.mixer.Sound("archivos/muerte.wav").play()
  148.  chau(protagonista)
  149.  protagonista.kill()
  150.  
  151.  over = pygame.image.load("archivos/gameover.jpg")
  152.  pantalla.blit(over,(0,0))
  153.  pygame.display.update()
  154.  time.sleep(10)
  155.  sys.exit(1)
  156.  
  157. for event in pygame.event.get():
  158.  if event.type == QUIT:
  159.   break
  160.  cap = pygame.key.get_pressed();
  161.  if cap[K_ESCAPE]:
  162.   sys.exit(1)
  163.  
  164. pygame.display.update()
  165.  
  166. #The End ?
  167.  

Para bajar el codigo con las imagenes o el juego compilado lo pueden hacer de aca.


« Última modificación: 21 Febrero 2013, 01:24 am por Doddy » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cual es el primer juego que conseguiste terminar? « 1 2 »
Juegos y Consolas
spj_family 19 6,168 Último mensaje 2 Septiembre 2007, 19:20 pm
por avaxia
El juego del rescate y el del primer ministro
Juegos y Consolas
wolfbcn 0 1,849 Último mensaje 17 Enero 2009, 02:35 am
por wolfbcn
Mi juego hecho en pygame.
Scripting
braulio-- 3 6,729 Último mensaje 3 Julio 2009, 14:03 pm
por braulio--
[ Python ] [ Pygame ] Alguien se anima a hacer un juego online?
Scripting
braulio-- 8 6,687 Último mensaje 2 Enero 2010, 13:15 pm
por CaronteGold
[Python][Pygame] Ayuda con un juego de gato
Scripting
EMYLY 4 9,218 Último mensaje 12 Mayo 2010, 22:37 pm
por Debci
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines