def enter(self, t, *args, **kwargs): super(MoveEffectors, self).enter(t, *args, **kwargs) action = kwargs["action"] config = action.description[action.name] effectors = [] times = [] delta_tf = [] frames = [] for effector, mapping in config["descr"].iteritems(): delta = np.zeros(len(mapping.keys())) for key, axis in mapping.iteritems(): delta[MDPAction.key_to_index(key)] = action[axis] if np.any(delta): effectors.append(effector) delta_tf.append(delta) times.append([0.5]) frames.append(NaoMotionController.FRAME_TORSO) self._motion.transform(effectors, delta_tf, times, frames)