Я до сих пор не понимаю для чего это может пригодиться. Но если так не хочется рассказывать конкретнее - держи способ. Делаешь серый и зеленый краситель, выдаешь зеленому приоритет (мол он должен изначально отображаться), вешаешь на него view_requirments на какое-нибудь право. Это право ты будешь выдавать при клике на серый краситель. Вот и получится, изначально будет пытаться отобразиться зеленый краситель, но т.к у игрока изначально не будет права из view_requirments'a - автоматически будет показываться второй приоритет, тобишь серый краситель. При клике на серый краситель ты выдашь право, которое позволить тебе удовлетворить view_requirments зеленого красителя, и т.к у него высший приоритет - отобразиться уже он. Чтобы сия изменение произошло в реал-тайме (без повторного открытия меню) - у нас есть тег update или refresh (забыл какой), который ты тоже запишешь в команды при клике на серый краситель.что-то вроде нажимаешь на серый краситель, вместо него становится зелёный краситель
И это будет работать так, как ты сказал. Но боюсь применение для этого никакого не найдется, или я с утра туплю... Скорее всего у тебя есть конкретная задача, тобишь краситель должен не просто смениться, а при каком-либо событии, но т.к я его не знаю - додумывай сам)