Good start, take Kerry's advice.
(defun c:drip (/ *error* p u-plinegen u-clayer u-plinewid) ;Used for inserting bubbler laterals
;_____________________________
;Error function
;_____________________________
(defun *error* (msg)
(if
(not
(member
msg
'("console break" "Function cancelled" "quit / exit abort" "")
)
)
(princ (strcat "\nError: " msg))
) ; if
(setvar 'plinegen u-plinegen)
(setvar 'clayer u-clayer)
(setvar 'plinewid u-plinewid)
(princ)
) ;end error function
;_____________________________
;Function to draw polyline
;_____________________________
(defun drawpline ()
(command "_.pline")
;; repeat a point input until Enter
(while (> (getvar "CMDACTIVE") 0) (command pause))
)
(defun ck_layer (lyr ltype color)
(if (tblsearch "layer" lyr)
(command "._-Layer" "_Thaw" lyr "_On" lyr "_UnLock" lyr "_Set" lyr "")
(command "_.-Layer" "_Make" lyr "_L" ltype "" "_Color" color "" "")
)
)
;_____________________________
;Get User Variables
;_____________________________
(setq u-plinegen (getvar 'plinegen)
u-clayer (getvar 'clayer)
u-plinewid (getvar 'plinewid)
)
;_____________________________
;Get User Variables
;_____________________________
(setvar 'plinegen 1)
(initget 0 "Tree Shrub Bub Header Cv") ;Gets T or S or B or H or C
(if (not *defaultdrip*)
(setq *defaultdrip* "Shrub")
)
(setq p (cond
((getkword
(strcat "\nEnter an option (T)ree, (S)hrub, (B)ub, (H)eader, or (C)v Lateral <<Hit Enter for "
*defaultdrip*
">>: "
)
)
)
(*defaultdrip*)
)
)
;; p will never be ""
(setq *defaultdrip* p)
(cond
((= p "Tree")
(ck_layer "0280-tree-lateral" "hidden2" "4")
(setvar 'plinewid (* (getvar "dimscale") 0.025))
(drawpline)
)
((= p "Shrub")
)
((= p "Bulb")
)
((= p "Header")
)
((= p "Cv")
)
) ; end cond stmt
(*error* "")
(princ)
)