Página 1 de 1

Error de propiedad en Python

Publicado: Sab Ene 19, 2019 12:17 pm
por AdrianBlender
Buenas Tardes, actualmente estoy realizando un programa que simule de forma lógica la combinación de n numero de cubos, si la conexión es correcta , va a a declarar que esta bien , de lo contrario saldrá error. Para la secuencia lógica de los cubos, yo le di una propiedad de tipo entero a cada cubo (En esta prueba son tres cubos) Al cubo azul se le asigno 1, al cubo rojo 2 y al cubo verde 3. En el momento de escribir la sentencia para llamar a cada una de la propiedades y realizar la lógica.

Código Python

import bge
controller = bge.logic.getCurrentController()
own= controller.owner
sensors = own.sensors
propiedad = own["Azul"]
propiedad2 = own["Rojo"]<< ERROR>>
speed = 0.2

if sensors ["W"].positive:
own.applyMovement([0,speed,0])
if sensors ["A"].positive:
own.applyMovement([-speed,0,0])
if sensors ["S"].positive:
own.applyMovement([0,-speed,0])
if sensors ["D"].positive:
own.applyMovement([speed,0,0])

if sensors ["Logica"].positive and propiedad == 1 :
print ("Error")
if sensors ["Logica2"].positive and propiedad == 1 :
print ("Bien")

Error adjunto

Re: Error de propiedad en Python

Publicado: Lun Ene 21, 2019 10:09 am
por D4rB
Si Azul no te está dando problemas revisa que realmente tengas la propiedad Rojo, principalmente revisa que está bien escrita y revisa mayúsculas, no siempre 'Rojo' == 'rojo'.

No he usado esas funciones, pero según la documentación (https://docs.blender.org/api/blender_py ... logic.html) los sensores por nombre los sacarías directamente de controller.sensors['sensorName'], no de owner.
Revisa ejemplos de implementación de eso para que tengas una mejor referencia.