SendMessageはDisableなスクリプトも呼び出してしまう

あるオブジェクトに複数コンポーネントスクリプト)がアタッチされており、各コンポーネントに同じ名前の関数がある場合。
オブジェクトに対しSendMessageでその関数を起動するとDisableであるコンポーネントの関数も呼び出される。

美しい解決方法がないか検討してみたが、現状関数名を変えるか、その関数の先等に「if(this.enabled == false) return;」を入れるかぐらいしか対処法がないっぽい。
Privateも呼び出せるっていうしSendMessageはちと強すぎる気がするな。すぐにReturnする処理にSendMessageするのも処理速度的にもったいないし……
かといって投げっぱなしでいい処理だとGetComponentは少し煩雑すぎることも多い。さて何かいい方法はないものか。

http://forum.unity3d.com/threads/non-enabled-scripts-are-receiving-sendmessage.55438/