Ayuda

Losersjuegos cuenta con una secciones de ejemplos en su web. Utilice esta sección para consultar o proponer ideas acerca de ellos.

Ayuda

Notapor nico.decara » Mar Jun 19, 2012 11:02 pm

Hola, estoy haciendo mi primer juego, y arranque usando el menu que explica Hugo. Es la primera vez que uso objetos y por suerte entendi bastante como funciona salvo por lo siguiente:

Class Menu:

def __init__(self, opciones):
self.opciones = opciones
self.seleccionado = False
...

def actualizar(self):
...
if not self.mantiene_pulsado:
if tecla[K_UP]:
self.seleccionado -= 1
elif tecla[K_DOWN]:
self.seleccionado += 1
elif tecla[K_RETURN]:
....
#Continua abajo...


no entiendo como a "self.seleccionado" le resta o suma 1, cuando "seleccionado" es definido como boolean!

Espero que me puedan explicar! Abrazo y gracias !
nico.decara
 
Mensajes: 6
Registrado: Mar Jun 19, 2012 10:56 pm

Re: Ayuda

Notapor kaiser » Mié Jun 20, 2012 12:06 pm

Ahora mismo no conozco el código completo de ese ejemplo, pero te comento un par de cosas por si te sirve de ayuda.

- Python utiliza tipado dinámico, es decir, si tu primero haces seleccionado = False y miras el tipo de seleccionado (con la función type(seleccionado)) verás que es booleano, si luego haces seleccionado += 1 y de nuevo miras su tipo verás que ha pasado a ser int (de tipo numérico, vamos). En Python el tipo de valor que almacena la variable se ajusta automáticamente a su contenido, así que es completamente posible hacer ese tipo de cosas.

- Para evaluar condiciones no solo se puede usar booleanos, en general un int de valor 0 se evaluará como False y un int de cualquier otro valor, positivo o negativo, se evaluará como True. Un string vacío también se evaluará como False, mientras que si contiene algún carácter se evaluará como True, etc.

- Ejecuta este código y quizá lo entiendas mejor:
var = True
print type(var)
print var
var += 1
print type(var)
print var


Como verás la variable var ha cambiado de tipo dinámicamente y aunque hemos sumado 1 su valor al final es 2, lo cual demuestra que al definirla como True el valor numérico que se le asigna es 1.

Espero haberte ayudado, un saludo!
De la API al IDE y del IDE a la API.
Avatar de Usuario
kaiser
 
Mensajes: 121
Registrado: Mié Nov 24, 2010 7:47 pm
Ubicación: Madrid (España)

Re: Ayuda

Notapor nico.decara » Mié Jun 20, 2012 5:53 pm

Ah ya entendi, muchas gracias por la ayuda!
nico.decara
 
Mensajes: 6
Registrado: Mar Jun 19, 2012 10:56 pm


Volver a Ejemplos

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 0 invitados