Суть: нужна кнопка которая появляется при определённом событии в 2D игре(не меню). Не всплывающее окно и не JButton.
Как я хочу чтобы это выглядело в игре: я подхожу к NPC и появляется картинка, которая предлагает нажать клавишу [E] чтобы поговорить с ним. Или к двери, чтобы открыть её.
Какая помощь необходима: объяснить, хотя бы на слова, как можно появление этой кнопки реализовать.
P.S.: Как рассчитать дистанцию между игроком и NPC я знаю.
Возможно при приближении создать JLabel, передать на него фокус, задать ему слушатель клавиатуры, и по нажатию E делать следующие действия. На самом JLabel написать ваше сообщение.
Добился результата на половину: когда подхожу, нажимаю на кнопку и открывается окно квеста. Позже додумаю как показывать картинку с надписью "действовать" или просто текст. Может кому будет интересно как я это сделал:
if(OrangeNpc.talk){
if(code == KeyEvent.VK_E && !OrangeNpc.opened) {
System.out.println("Speaking with npc");
OrangeNpc.talk1 = true;
}
}else if (code == KeyEvent.VK_E && !OrangeNpc.talk && OrangeNpc.opened){
OrangeNpc.talk1 = false; OrangeNpc.opened = false;
}
Если дистанция игрока равна 85 автоматически включается булен "talk" в классе нпца, и также если нажата клавиша [E] и Окно разговора с нпц не открыто, то включить булен "talk1", который в другом классе открывает Окно разговора и даёт булену "opened" значение тру.
Дальше, чтобы закрыть окно, если нажата клавиша [E] и дистанция между объектами больше 85 ("talk" автоматически становится false) и Окно разговора открыто, то выключается "talk1" из-за которого перестаёт отображаться Окно разговора.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть такой вопросУ меня в базе есть пакет с функцией, который возвращает CLOB
Добрый день, разрабатываю систему отчетности в виде web-приложенияИспользую Spring и Hibernate