Hugo, you were probably looking for this to imitate MOCORO - faster solution :
(defun c:cr ( / *error* c s )
(defun *error* (msg)
(if c (setvar 'COPYMODE c))
(if (and msg (not (wcmatch (strcase msg) "*BREAK*,*CANCEL*,*QUIT*,")))
(princ (strcat "\nError: " msg))
)
)
(if (setq c (getvar 'COPYMODE)) (setvar 'COPYMODE 1))
(defun cr nil
(if (not (eq s nil))
(progn
(command
"_.copy" s "" "_non" '(0 0 0) "_non" "@"
"_.move" s "" pause pause
"_.rotate" s "" "_non" (getvar 'LASTPOINT) pause
"_.move" s "" (getvar 'LASTPOINT) pause
)
(cr)
)
(progn
(setq s (ssget "_:L"))
(command
"_.copy" s "" "_non" '(0 0 0) "_non" "@"
"_.move" s "" pause pause
"_.rotate" s "" "_non" (getvar 'LASTPOINT) pause
"_.move" s "" (getvar 'LASTPOINT) pause
)
(cr)
)
)
)
(cr)
(*error* nil)
(princ)
)
(defun c:mr ( / s )
(defun mr nil
(if (not (eq s nil))
(progn
(command
"_.move" s "" pause pause
"_.rotate" s "" "_non" (getvar 'LASTPOINT) pause
)
(mr)
)
(progn
(setq s (ssget "_:L"))
(command
"_.move" s "" pause pause
"_.rotate" s "" "_non" (getvar 'LASTPOINT) pause
)
(mr)
)
)
)
(mr)
(princ)
)
M.R.