Enviar propiedades de un objeto a otro en BGE
Saludos, estoy haciendo un juego experimental en Blender, pero estoy atascado con un problema, que no sé cómo hacerlo.
Os comento un poco de que va el juego antes de nada; Es una aventura gráfica en primera persona, en la que tienes que encontrar lo que un NPC te pida.
Empezamos en una habitación con muchos objetos, y cada uno tiene una propiedad del tipo Cadena.
Por ejemplo, una silla tendría la propiedad de cada silla, una mesa la propiedad mesa y así con todos los objetos.
El NPC también tiene una propiedad del tipo cadena, pero esta está vacía.
Lo que quiero hacer es que cuando mi personaje dispare a un objeto (cuando la bala haga colisión), la propiedad del NPC valga igual que la del último objeto al que se disparó. Es decir, que si le disparo a la silla, la P. Cadena del Npc, sea igual a silla, y cuando le dispare a otro objeto, la propiedad del Npc cambie a otro objeto.
Con esto lo que pretendo es crear un sistema en el que puedas señalar a los objetos y el Npc sepa qué objeto se ha señalado.
Pd. De pyhton no se nada, y casi nada de programación, todo lo estoy haciendo con logic bricks, así que, si lo que necesito es un script, también me haría falta saber cómo usarlo.
¿Alguien me echa una manita?
2 Archivos adjunto(s)
Enviar propiedades de un objeto a otro en BGE
Como lo que tocaría el objeto sería la bala lo que hay que hacer es cruzar el Sensor de la bala con el objeto principal.
Donde los objetos tendrán una propiedad con su nombre, Mesa, silla, etc.
Si lo he entendido bien puede ser algo como lo que te subo.
He creado una mona con propiedad Mona-string-Mona
He creado un cono con propiedad Cono-string-Cono
He creado un cubo con propiedad principal-string-
El Empty para lanzar la bala qué está en el segundo layer.
Si miras en pantalla veras que el cubo está animado, y cada vez que presiones Tabulador, dispara una bala. Si toca a la Mona cambia el valor del cubo llamado principal, al nombre que tiene la propiedad.
La propiedad que se añade, es de tipo Copy e indica el objeto y la propiedad que se le va a añadir.
http://www.foro3d.com/attachments/20...e-colision.jpg
Enviar propiedades de un objeto a otro en BGE
Muchas gracias por la pronta respuesta, lo voy a probar ahora mismo, a ver si lo consigo y te cuento los resultados.
Enviar propiedades de un objeto a otro en BGE
Muchas gracias, lo que me has pasado es lo que necesito, pero hay un pequeño problema, y es que de esa forma es me va a resultar casi imposible hacerlo, porque son muchos los objetos que habrá (miles) y va a ser una locura con los bricks.
Estaba pensando que en una forma más practica, de forma qué sea el objeto quien envie sus propiedades al Npc.
Por ejemplo:
Objeto Mona. Prop. String Mona.
Sensor: Colisión con propiedad bala
Controlador: Y
Actuador: Enviar propiedad Mona a nPC.*.
* En el actuador lo he intentado usando, Mensaje; Enviar a nPC; Propiedad Prop. Pero no ocurre nada, si funcionara eso ya lo tendría.
Enviar propiedades de un objeto a otro en BGE
Cuando dices que habrá miles de objetos, quieres decir que todos tendrán nombres o sea propiedades diferentes?
Por que si son objetos duplicados los valores del objeto se duplican con él, o sea, una vez tienes puestas esas propiedades o nombres, solo duplicas el objeto y se repiten en el duplicado solos.
Enviar propiedades de un objeto a otro en BGE
Cada objeto va a tener sus propiedades únicas, que corresponden con el nombre del objeto.
Para empezar habrá los mismos objetos que puedes encontrar en cualquier casa: ropas, alimentos, cubiertos, muebles.
Algunos estarán repetidos, como pueden ser los platos o los calcetines, pero no es lo mismo unos calcetines blancos, que unos calcetines rojos, así que, cada uno tendrá un string descriptivo del mismo.
Enviar propiedades de un objeto a otro en BGE
Pues sí que es un problema, pues por logic bricks cuando empiezan a haber muchos, la cosa complica. Si encima dices que puede haber hasta cientos, no creo que sea viable el hacerlo así.
Creo que se podría hacer con Python, pero hay que tener bastantes conocimientos, primero del desarrollo y luego de cómo se puede aplicar.
Yo de Python tampoco se casi nada.
Enviar propiedades de un objeto a otro en BGE
Seguiré intentándolo, y me temo que si es necesario Python si o sí, así que, me he bajado un tutorial de Python en Blender, pero eso no lo entiende ni el que lo ha escrito. Gracias de todas formas, probaré en el foro de script o en el de colaboraciones a ver si tengo más suerte.
Enviar propiedades de un objeto a otro en BGE
Buenas, me gustaría saber si quieres hacer algo con las propiedades de los objetos o simplemente que aparezca en pantalla el último objeto que ha tocado la bala. Saludos.