The new features can definitely be implemented. I will focus on solving the bug first.
- Change the opacity of the buttons image inside the game;
Do you mean with a plugin command? Or in response to some action?
Alias.Window_Message_update = Window_Message.prototype.update;
Window_Message.prototype.update = function() {
if ($gameSwitches.value(X) == true) {
SceneManager._scene.hideMobileUI();
} else if ($gameMessage.isBusy() && $gameSwitches.value(X) == false) {
SceneManager._scene.hideMobileUI();
} else if (!$gameMessage.isBusy() && $gameSwitches.value(X) == false) {
SceneManager._scene.showMobileUI();
}
Alias.Window_Message_update.call(this);
};