Такой вопрос. Возможно ли как-то блокировать любой инпут? Допустим, есть

ui которые реагирует на клик. Возможно ли сделать написать такую логику, что сначала проверяются некоторые условия, а потом пропускается клик дальше или идет блокировка (обнуление) инпута?
Это должно работать глобально, не логика на конкретной кнопке

12 ответов

19 просмотров

ну повесь поверх всего панель на весь экран, которая не пропускает рейкаст и отключай её когда всё ок

Мориарти-Туманов Автор вопроса
OK386
ну повесь поверх всего панель на весь экран, котор...

Любой инпут, не только клики. Ui был для примера

Мориарти-Туманов Автор вопроса
OK386
новая система инпута?

Вот в том и проблема, но она не везде в проекте используется) ладно, специфичная задача, буду думать

а почему бы не сделать логику на каждой кнопке? Просто, и работает. Kiss

Мориарти-Туманов Автор вопроса

Это просто с точки зрения "придумать решение". А с точки зрение реализации это не кисс, а двушечка в голову будет)

Ну вот обнуление нажатия на кнопку вроде как можно было сделать через это https://docs.unity3d.com/ScriptReference/Input.ResetInputAxes.html А там уже можно наверное как-то через графикрейкастер смотреть куда мы жмем и отменять если надо

Мориарти Туманов
Это просто с точки зрения "придумать решение". А с...

засунь все кнопки в пул пробегайся по ним вырубай raycast, если логика не позволяет их жать, либо совсем убирай, я бы ui гасил со всеми кнопками, зачем им зря отрисовываться каждый раз по фейковому нажатию, и не надо трогать другие классы, если нужно все же, чтобы как-то было визуальное прожатие, то только сверху кинуть кнопку фейковую, у которой color в нормальном состоянии по альфа 0, в pressed альфа 100 например, selected альфа 0 и она будет перекрывать рейкаст, и мигать цветом типо сорян бро щас я не работаю, но с фейковыми также придётся из пула управлять

Мориарти-Туманов Автор вопроса
eduard
засунь все кнопки в пул пробегайся по ним вырубай ...

Опять-таки, вопрос в любом инпуте, а не только в кнопках и их триггеру на ввод клика. Ладно, я по-другому к этой задаче подошёл, уже неважно) Спасибо за варианты

Сделать класс контроллер, который обрабатывает нажатия кнопок. UI (или нажатие клавиши) вызывает метод в контроллере. А контроллер передает вызов далее в нужный метод в зависимости от своего состояния. Например, клавиша ESC во время игры вызывает меню, а во время подбора предмета закрывает окно инвентаря (а остальные клавиши в этом состоянии вообще блокируются). Итог: подменяем состояния контроллера - полностью меняем логику обработки всех клавиш.

Мориарти-Туманов Автор вопроса
eduard
ну так хоть расскажи

это нужно было для туториала, чтобы блокать ввод на всё, кроме нужных кнопок +есть хоткеи, которые тоже нужно блокать. Хоткеи решил вырубать по стейту, примерно как Askalot сверху написал, а блокать ввод буду генерить меш с пробелами в нужных местах, который и будет блочить рейкасты кроме нужных мест

Похожие вопросы

Обсуждают сегодня

Добрый вечер, Пока не совсем понимаю как наладить общение между телеграм ботом и ПО для работы с сим боксом. По самому боту так понял: - Нужен некий баланс, который можно поп...
Magic
6
сделал сайт, прикрутил в боте сайт, и виджет логина. как автоматически логинить пользователя в аккаунт(телеграм), при входе с бота?
Александра Чернивецкая
5
Объясните, пожалуйста, почему компилятор ругается на использование в условии неинициализированной переменной: int x; Task.Run(async () => { x = await somefunc(); }).Wait...
Александр
5
Ребят, подскажите, пожалуйста, почему в префиксе к ассетам, которые генерируются через фильтр | theme в шаблоне, стал вдруг появляться index.php? Вот так выглядит ссылка на а...
Виталий
1
Всем привет. Ребята, подскажите, пожалуйста. у ботов есть ограничение на отправку сообщений - 30 сообщений в секунду, эти ограничения накладываются на все сообщения? или на со...
Artem Stormageddon
4
Блин, ребята, сори за тупые вопросы. А можно ли как-то открыть вебапку по нажатию на кнопку в меню(которое появляется слева, команды)?
Artem Stormageddon
3
а плаксы из-под питона умеют только в комфортных условиях что-то выдавить из себя?)
Lencore
9
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
13
Это может быть все-таки не флудвейт? у меня ботфазер принимает изменения и отображает даже что они изменились, на видео видно что он прислал якобы уже измененное описание, н...
OVERLINK
13
Коллеги, может знает кто, можно ли цвет бейджа счётчика в BackendMenu менять без бубнов?
Alex Blaze
3
Карта сайта