|
Mostrar Temas
|
Páginas: 1 2 [3] 4
|
21
|
Programación / Scripting / [Python]Nuevo juego : no le des el dinero a Paris
|
en: 3 Julio 2009, 16:11 pm
|
Pues ese es el nuevo juego que he hecho : Se trata de que Paris Hilton no consiga el dinero, lo vas manejando con el raton, he aquí el code : import pygame,random from pygame.locals import * pygame.init() pygame.font.init() fuente = pygame.font.SysFont("Courier New",15,True,True) class jugador(pygame.sprite.Sprite): def __init__(self): pygame.sprite.Sprite.__init__(self) self.ficha = pygame.image.load('imagen.jpg') self.rect = self.ficha.get_rect() self.rect.x,self.rect.y =pygame.mouse.get_pos() def update(self): global screen self.rect.x,self.rect.y =pygame.mouse.get_pos() screen.blit(self.ficha,(self.rect.x,self.rect.y)) class contrincante(pygame.sprite.Sprite): def __init__(self): pygame.sprite.Sprite.__init__(self) self.ficha = pygame.image.load("parishilton.jpg") self.rect = self.ficha.get_rect() self.rect.x,self.rect.y = random.randint(0,500),random.randint(0,326) def update(self): global gamer global screen if self.rect.x >gamer.rect.x : self.rect.x-=1 if self.rect.x < gamer.rect.x : self.rect.x+=1 if self.rect.y > gamer.rect.y : self.rect.y-=1 if self.rect.y < gamer.rect.y : self.rect.y+=1 screen.blit(self.ficha,(self.rect.x,self.rect.y)) screen = pygame.display.set_mode((500,326)) fondo = pygame.image.load("mansion.jpg") pygame.display.set_caption("Llevate el dinero de la Hilton") running = 1 gamer = jugador() grupodehiltons = pygame.sprite.Group() listahiltons = [] for i in range(3): listahiltons.append(contrincante()) for contrincantne in listahiltons: grupodehiltons.add(contrincantne) pygame.mouse.set_visible(False) reloj = pygame.time.Clock() milisegundos = 0 while running: milisegundos += reloj.tick() for event in pygame.event.get(): if event.type == QUIT: exit() if len(pygame.sprite.spritecollide(gamer,grupodehiltons,False))>0: perdiste = 1 letras = fuente.render("Has durado "+str(milisegundos)+" miliegundos",True,(255,0,0)) screen.blit(letras,(150,180)) milisegundos=0 pygame.display.flip() while perdiste : for evento in pygame.event.get(): if evento.type == pygame.QUIT: exit() if evento.type == pygame.MOUSEBUTTONDOWN: perdiste = 0 screen.blit(fondo,(0,0)) gamer.update() grupodehiltons.update() pygame.display.flip() pygame.time.wait(5)
Se puede descargar desde aquí
|
|
|
22
|
Programación / Scripting / Mi juego hecho en pygame.
|
en: 2 Julio 2009, 18:56 pm
|
Antes de nada, si quieren probarlo necesitarán el módulo de pygame. Podrán encontrarlo aquí. Pues he programado este juego cuyo objetivo es llegar a la meta, que es el rectángulo blanco sin tocar los cuadrados negros. #!/usr/bin/python import pygame,random from pygame.locals import * pygame.init() pygame.font.init() font = pygame.font.SysFont("Courier New",15) partidasperdidas,partidasganadas = 0,0 class pelota (pygame.sprite.Sprite): def __init__(self,Screen): pygame.sprite.Sprite.__init__(self) self.Screen = Screen self.image = pygame.image.load('pelota.png').convert_alpha() self.rect = self.image.get_rect() self.rect.x = 300 self.rect.y = 100 def update(self): self.rect.x,self.rect.y = pygame.mouse.get_pos() self.Screen.blit(self.image,(self.rect.x-2,self.rect.y-2)) class pared(pygame.sprite.Sprite): def __init__(self,linea,larguez=20,estatica=0,color=(0,0,0)): pygame.sprite.Sprite.__init__(self) self.image = pygame.Surface([larguez,20]) self.image.fill(color) self.rect = self.image.get_rect() self.rect.x = 0 self.rect.y = linea self.estatica = estatica def update(self): global screen if self.estatica!=0: screen.blit(self.image,(self.rect.x,self.rect.y)) return 0 lado = random.randint(1,2) if lado==1: self.rect.x +=10 if lado==2: self.rect.x-=10 if self.rect.x >=600: self.rect.x = 0 if self.rect.y >=200: self.rect.y =0 if self.rect.x <= 0 : self.rect.x =600 if self.rect.y <=0 : self.rect.y==200 screen.blit(self.image,(self.rect.x,self.rect.y)) screen = pygame.display.set_mode((600,200)) pygame.display.set_caption("El mejor juego de la historia") imagen = pygame.image.load('fondo.jpg') Ball = pelota(screen) listacajas = [] for number in range(30,180,30): listacajas.append(pared(number)) grupo = pygame.sprite.Group() for caja in listacajas: grupo.add(caja) Meta = pared(0,600,1,(255,255,255)) grupofinal = pygame.sprite.Group() grupofinal.add(Meta) running = 1 pygame.mouse.set_pos(300,199) while running: pygame.mouse.set_visible(False) screen.blit(imagen,(0,0)) for event in pygame.event.get(): if event.type == pygame.QUIT: running = 0 break grupofinal.update() grupo.update() Ball.update() if len(pygame.sprite.spritecollide(Ball,grupo,0))>0: partidasperdidas+=1 pygame.mouse.set_pos(300,199) elif len(pygame.sprite.spritecollide(Ball,grupofinal,0))>0: click = 1 partidasganadas+=1 lasletrasqueganan = font.render("Ganaste "+str(partidasganadas)+" veces y perdiste "+str(partidasperdidas)+" veces",True,(0,0,0)) while click: for event in pygame.event.get(): if event.type == pygame.MOUSEBUTTONDOWN: click = 0 if event.type == pygame.QUIT: exit() screen.blit(lasletrasqueganan,(200,100)) pygame.display.update() pygame.mouse.set_pos(300,199) pygame.display.flip()
Espero que os guste u os ayude. Aquí el juego subido : http://www.megaupload.com/?d=ENXBAKFN
|
|
|
23
|
Programación / PHP / [?]Para que sirve eval()?
|
en: 25 Junio 2009, 23:54 pm
|
Pues esa es mi duda, mas que util la verdad es que me parece una vulnerabilidad para un programador descuidado. Porque ejecutar una sentencia desde eval y no desde el código normal? Gracias
|
|
|
24
|
Media / Diseño Gráfico / Mis primeros diseños
|
en: 24 Junio 2009, 20:45 pm
|
Pues como acabo de instalar Ubuntu 9.04 en una máquina sin internet y no sabia que hacer , me entretuve jugando con el gimp. Estos son mis diseños : Firma Otro desktop Y otro desktop Espero que os gusten.
|
|
|
25
|
Programación / Scripting / [Python]Proyecto software libre PyHttp Explorer
|
en: 17 Mayo 2009, 16:31 pm
|
Hola, a todo el mundo que le guste python le invito a participar en mi proyecto de software libre que se trata de un script que examina las cabeceras http de un sitio web y genera un informe y si puede explotar de alguna forma explotará (por ejemplo , subir una shell con el metodo put). Contará con GUI desarrollada con Tkinter esto es lo que llevo de code : import socket,string from Tkinter import * class miventana : def buscarcadena(self,cadena,cabeceraabuscar): longitudc = len(cadena) otronumero=0 lista = [] longutdcab=len("\n") numero=0 while numero <= longitudc-longutdcab: if cadena[numero:numero+longutdcab]=="\n": lista.append(numero) otronumero+=1 else: pass numero+=1 numero = 0 for numero in range(len(lista)-1): if cadena[lista[numero]:lista[numero+1]].find(cabeceraabuscar)!=-1: return cadena[lista[numero]:lista[numero+1]] return -1 def __init__ (self): #Se declara la ventana self.ventana = Tk() self.ventana.minsize(400,100) self.ventana.title("PyHttp Explorer") #Variable del textbox self.host = StringVar() #Se declaran los controles self.label = Label(self.ventana,text = "Host : ") self.textbox = Entry(self.ventana,textvariable=self.host) self.boton = Button(self.ventana,text="Conectar",command = self.conectar) #Aqui se va poniendo los controles en las ventanas self.label.grid(row=0,column=0) self.textbox.grid(row=0,column=15) self.boton.grid(row=1,column=15) def conectar(self): socket1 = socket.socket() socket1.connect((self.host.get(),80)) socket1.send("OPTIONS / HTTP/1.0\r\n\r\nHost :"+self.host.get()+"\r\n\r\n") self.textorecibido=socket1.recv(4096) self.allow=self.buscarcadena(self.textorecibido,"Allow") if self.allow!=-1: self.lalabel = Label(self.ventana,text=self.allow) self.lalabel.grid(row=3,column=10) else : self.lalabel = Label(self.ventana,text="No se encontro la cabecera Allow") self.lalabel.grid(row=3,column=10) self.server = self.buscarcadena(self.textorecibido,"Server") if self.server!=-1: self.serverlabel = Label(self.ventana,text = self.server) self.serverlabel.grid(row=4,column =10) else : self.serverlabel = Label(self.ventana,text = "No se encontro la cabecera server") self.serverlabel.grid(row=4,column=10) def principal(self): self.ventana.mainloop() ventana = miventana() ventana.principal()
Este code tiene muchos bugs que debo arreglar pero es una version "pre alpha" Quien quiera participar que me mande un mp.
|
|
|
26
|
Programación / Scripting / [Python]Comprobar si hay actualizaciones en elhacker.net
|
en: 5 Mayo 2009, 22:04 pm
|
He hecho este code para comprobar si hay actualizaciones en elhacker.net, es para windows, pero se puede adaptar a linux con cambiar una sola linea. import urllib2,os def obtenercode(): web = urllib2.urlopen("http://elhacker.net") code=web.read() return code try: archivo=open("ultimapagina.html","rw") archivodos=open("nuevo.txt","w") archivodos.write(obtenercode()) archivodos.close() archivodos = open("nuevo.txt","r") if archivodos.readlines()==archivo.readlines(): archivodos.close() os.system("del /f nuevo.txt") print "No ha habido ninguna actualizacion" raw_input() else : print "Hay alguna actualizacion" archivo.write(obtenercode()) raw_input() exit(0) except : print "No existe la pagina ultimapagina.html, asi que se guardara la pagina" archivo = open("ultimapagina.html","w") archivo.write(obtenercode()) print "Fichero guardado. Adios" archivo.close() exit(0)
-Saludos.
|
|
|
28
|
Programación / Scripting / [Python]Simple port scanner
|
en: 19 Abril 2009, 19:13 pm
|
Como dice el título he hecho un port scanner. No es nada bueno, solo te dice si un puerto esta abierto o cerrado ademas de ser muy lento, aqui esta el code : ################################ # Escaner de puertos en python # ########## braulio23 ########### ###### foro.elhacker.net ####### ################################ import socket print "Escaner de puertos by braulio23\n" raw_input() host = raw_input("Indica el host : ") numerouno = raw_input("Primer numero del rango : ") numerodos = raw_input("Segundo numero del rango : ") socket = socket.socket() for puerto in range(int(numerouno),int(numerodos)): try: socket.connect((host,puerto)) print "Puerto "+str(puerto)+" abierto" socket.close() except : print "Puerto "+str(puerto)+" cerrado." raw_input()
|
|
|
29
|
Programación / PHP / Calculadora en php orientada a objetos.
|
en: 19 Abril 2009, 17:15 pm
|
Miren el code de la calculadora que acabo de hacer en php orientado a objetos. <head><title>Calculadora en php orientada a objetos</title></head><body> <h1>Calculadora en php orientado a objetos</h1> <? Class calculadora { function calculadora ( $numero1 , $numero2 ) { return 0; } function suma(){ $resultado = $this->numerouno + $this->numerodos; echo "$this->numerouno + $this->numerodos es igual a $resultado <br>"; return 0; } function resta(){ $resultado = $this->numerouno - $this->numerodos; echo "$this->numerouno - $this->numerodos es igual a $resultado <br>"; return 0; } function multiplica(){ $resultado = $this->numerouno * $this->numerodos; echo "$this->numerouno x $this->numerodos es igual $resultado <br>"; return 0; } function divide() { if ( $this->numerodos==0) { echo "No se puede dividir entre cero"; return 1; } else { $resultado = $this->numerouno / $this->numerodos; echo "$this->numerouno entre $this->numerodos es igual a $resultado <br> " ; return 0; } } } $numerouno = $_POST['numerouno']; $numerodos = $_POST['numerodos']; { $objeto = new calculadora($numerouno,$numerodos); $objeto->suma(); $objeto->resta(); $objeto->multiplica(); $objeto->divide(); } ?> <form action=index.php method=POST> Primer numero : <input type=text name=numerouno><br> Segundo numero : <input type=text name=numerodos><br><input type=submit> </form></body>
Le vendrá bien a la gente que este aprendiendo este paradigma de la programacion en este lenguaje. El htmlentities lo he puesto por si acaso. Si no tienen ganas de ponerlo en su server la he puesto aqui: http://ab.onlinewebshop.net/index.php
|
|
|
30
|
Seguridad Informática / Nivel Web / [?]Bypass de htmlentities()[/?]
|
en: 12 Abril 2009, 21:24 pm
|
Hola, escribo este post para ver si alguien conoce una forma de bypass del filtro htmlentities(). No me acuerdo donde lei que había una forma que era cambiando la codificacion de utf-8 a utf-7 o algo así. Si alguien conoce alguna forma de pasarlo que lo posteará aqui porfavor.
|
|
|
|
|
|
|