It doesn't look like a system variable reactor will catch this variable. I loaded one, and tried the hatch command, and it doesn't show 'hpassoc' in the list of variables changed, even though I changed it twice within the dialog box. Incase you want to know, here is the code used.
(if (not GlbVarReactorSystemVariable)
(setq GlbVarReactorSystemVariable (vlr-sysvar-reactor "HatchAssociation" '((:vlr-sysVarChanged . HatchAssocAlert))))
)
(defun HatchAssocAlert (React Results)
(print Results)
;|
(if
(and
(= (car Results) "HPASSOC")
(cadr Results)
; (equal (getvar "hpassoc") 0)
)
(alert "System variable \"HpAssoc\" has changed to 0.")
)
|;
(princ)
)