An alternative to "_:L" would be this I suppose:
- (defun c:doit (/ lock tdef i ss ent eLst) (setq lock "") (while (setq tdef (tblnext "LAYER" (not tdef))) (if (= 4 (logand 4 (cdr (assoc 70 tdef)))) (setq lock (strcat lock (cdr (assoc 2 tdef)) ",")))) (if (setq i -1 ss (ssget (list '(-4 . "")))) (while (setq ent (ssname ss (setq i (1+ i)))) (setq eLst (entget ent)) (setq eLst (subst '(8 . "0") (assoc 8 eLst) eLst)) (entmod (if (assoc 62 eLst) (subst '(62 . 3) (assoc 62 eLst) eLst) (append eLst '((62 . 3))))))) (princ))
|