I couldn't find a way to have more than one callback per signal, and created a system to have an array of callbacks:
https://github.com/kidd/scripting-field-guide/blob/master/bo...
A nice bonus is that it also keeps the return value of the last non-callback function, so your script behaves better when called from other scripts.