У вас в классе есть переменная public bool ButtonOn;
А также внутри метода Update есть переменная с таким же именем, но другим типом Collider[] ButtonOn;
Когда в методе Update вы делаете сравнение if (ButtonOn == true), подразумевается именно локальная переменная Collider[] ButtonOn. То есть, вы пытаетесь сравнить Collider[] с bool. Либо меняйте название локальной переменной либо пишите так if (this.ButtonOn == true), тогда будет использоваться внешняя переменная класса.
Рекомендую почитать про области видимости. А ещё при добавления кода в пост используйте тег
<code lang="cs">
//your code
</code>