Declarar varios actuadores con un bucle

Preguntas y respuestas relacionadas con el uso y desarrollo de scripts Python y plugins para Blender 3D
Responder
andreac17
Mensajes: 18
Registrado: Lun Abr 14, 2014 2:11 am
Nombre:

Declarar varios actuadores con un bucle

Mensaje por andreac17 » Sab Jun 14, 2014 9:25 am

Hola a todos! Tengo varios objetos que tienen cada uno un actuador tipo Motion. El objeto 1 tiene el actuador Motion1, el objeto 2 tiene el actuador Motion2 y así sucesivamente. El problema es que tengo 95 objetos y quería acortar un poco mi código, porque actualmente los estoy declarando uno por uno. Quiero saber si hay alguna manera de hacer un bucle para resolver esto.

Probé esto pero no sirve:

Código: Seleccionar todo

import bge
import bpy
cont = bge.logic.getCurrentController() 
own = cont.owner

m = [ ]
for k in range (1, 95):
    m[k] = cont.actuators["Motion"+ str(k)]

YHOYO0
Mensajes: 142
Registrado: Sab May 06, 2006 11:05 am
Nombre:
Contactar:

Re: Declarar varios actuadores con un bucle

Mensaje por YHOYO0 » Lun Jun 16, 2014 6:12 pm

hola....

pues yo lo haria con un bucle while

Código: Seleccionar todo

m =[] 
k = 0 
while k <=94 :
    k = k+1
    m.append("Motion" + str(k))
    
print(m)
eso da como resultado:

Código: Seleccionar todo

['Motion1', 'Motion2', 'Motion3', 'Motion4', 'Motion5', 'Motion6', 'Motion7', 'Motion8', 'Motion9', 'Motion10', 'Motion11', 'Motion12', 'Motion13', 'Motion14', 'Motion15', 'Motion16', 'Motion17', 'Motion18', 'Motion19', 'Motion20', 'Motion21', 'Motion22', 'Motion23', 'Motion24', 'Motion25', 'Motion26', 'Motion27', 'Motion28', 'Motion29', 'Motion30', 'Motion31', 'Motion32', 'Motion33', 'Motion34', 'Motion35', 'Motion36', 'Motion37', 'Motion38', 'Motion39', 'Motion40', 'Motion41', 'Motion42', 'Motion43', 'Motion44', 'Motion45', 'Motion46', 'Motion47', 'Motion48', 'Motion49', 'Motion50', 'Motion51', 'Motion52', 'Motion53', 'Motion54', 'Motion55', 'Motion56', 'Motion57', 'Motion58', 'Motion59', 'Motion60', 'Motion61', 'Motion62', 'Motion63', 'Motion64', 'Motion65', 'Motion66', 'Motion67', 'Motion68', 'Motion69', 'Motion70', 'Motion71', 'Motion72', 'Motion73', 'Motion74', 'Motion75', 'Motion76', 'Motion77', 'Motion78', 'Motion79', 'Motion80', 'Motion81', 'Motion82', 'Motion83', 'Motion84', 'Motion85', 'Motion86', 'Motion87', 'Motion88', 'Motion89', 'Motion90', 'Motion91', 'Motion92', 'Motion93', 'Motion94', 'Motion95']
ya de resto tienes que mirar.. creo que ahora no se importa el bge asi pero tendria que revisar la docu...

cualquier cosa sigo por aqui :D

bye

Diego

Responder