Четверг, 26 Декабря 2024, 10:53

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Выбор юнита
MiseriДата: Воскресенье, 24 Мая 2015, 17:10 | Сообщение # 1
уже был
Сейчас нет на сайте
Доброго времени суток. Может быть избитый вопрос...
Суть такова: На карте несколько одних и тех же объектов, мне нужно по щелчку левой кнопки мышки выбрать нужного юнита. Потом выбранный юнит передвигаем по движению мышки.
Собственно сейчас есть только движение по мышке. Проблема в том, что двигаются в это направление все созданные одинаковые объекты
1. несколько одинаковых объектов на карте с одинаковыми свойствами и реакциями на события.
2. Заданы параметры движения объекта, но так как объект одинаков то все юниты двигаются в одну сторону.

Пытаюсь получить:
1. щелчек левой кнопки мыши - объект выделен. Можно двигать им с помощью мыши.
2. движение закончено. можно выбрать любого из юнитов и начать двигать им.
Прошу помощи.
YellowAfterlifeДата: Воскресенье, 24 Мая 2015, 17:21 | Сообщение # 2
Сейчас нет на сайте
Создание вспомогательного объекта (контроллера):
global.unit_selected = -1
Событие глобального нажатия левой кнопки мыши для этого объекта:
global.unit_selected = -1
with (obj_unit) {
    if (position_meeting(mouse_x, mouse_y, id)) {
        global.unit_selected = id
    }
}

События юнита, где нужна проверка на "выбранность":
if (global.unit_selected == id) {
    // сейчас выбран данный юнит, можно реагировать на ввод пользователя.
}

Чтобы не разбираться с разграничением, когда клик должен выделять, а когда двигать юнитов, движение\следование за мышью можно установить на ПКМ (если оно еще не там).


MiseriДата: Воскресенье, 24 Мая 2015, 17:41 | Сообщение # 3
уже был
Сейчас нет на сайте
Цитата YellowAfterlife ()
Чтобы не разбираться с разграничением, когда клик должен выделять, а когда двигать юнитов, движение\следование за мышью можно установить на ПКМ (если оно еще не там).

Спасибо за совет...
А по поводу разбирательства с кликом и движением... А как это будет выглядеть допустим на Андроиде? Ведь по сути там нет правой и левой кнопки мыши.
YellowAfterlifeДата: Воскресенье, 24 Мая 2015, 18:24 | Сообщение # 4
Сейчас нет на сайте
Цитата Miseri ()
Спасибо за совет...
А по поводу разбирательства с кликом и движением... А как это будет выглядеть допустим на Андроиде? Ведь по сути там нет правой и левой кнопки мыши.

По умолчанию, два быстрых касания считаются GMS за клик правой кнопки мыши.
В зависимости от игры, для мобильных платформ можно поменять функции ЛКМ/ПКМ местами, если двигать юниты игроку придется чаще, чем их выбирать.

Встроенное поведение можно так же отключить с помощью device_mouse_dbclick_enable и написать какую-то свою обработку - думаю, идею (то ли это будет задержка касания на юните, то ли кнопка для выбора, то ли что-то иное) можно подсмотреть в каких-нибудь существующих играх похожего рода.


  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг