Плохо! Плохо!:  0
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 12

Тема: Как привязать ивент к зрению игрока на объект, и наоборот.

  1. #1
    Пользователь Аватар для Axel_Key
    Информация о пользователе
    Регистрация
    26.03.2017
    Адрес
    Горно-Алтайск
    Сообщений
    91
    Репутация: 2 Добавить или отнять репутацию

    По умолчанию Как привязать ивент к зрению игрока на объект, и наоборот.

    Весь мейкер обшарил, включая переменные. Не нашел подобного.
    Вот есть условие "Если игрок смотрит на объект "Статуя Медузы", то происходит общее событие "Превращение в камень". (это например).
    Или "Если объект "охранник" смотрит в сторону игрока, то происходит общее событие "игрок пойман". (тоже пример, но обратный)

    Речь тут идет не о том, как сделать стеллс или опасный для зрения объект, а о том как вообще манипулировать взглядом игрока и взглядом объекта.
    Не могу найти такой функции, и это печально. Облегчило бы многие задачи.
    Нашел только "Если игрок смотрит вниз, влево, вправо, вверх". А вот насчет взгляда события даже в переменных копаясь ничего не придумал.
    Есть ли способы манипулировать зрением игрока и объектов?

    А в целом, хочу попробовать сделать стрельбу по нажатию клавиши. И при условии, что игрок смотрит в сторону врага, - происходит выстрел. Без объекта пули. Что-то похожее на шутер, когда стрельба есть, а пуль не видно, зато видны увечья на враге при выстреле. Тут беда правда, в стенах. Еще думаю, как сделать так, чтобы нельзя было стрелять сквозь стены и объекты.
    Последний раз редактировалось Axel_Key; 24.11.2017 в 15:02.

  2. #2
    Администратор Аватар для Пётр
    Информация о пользователе
    Регистрация
    24.04.2014
    Адрес
    Краснодар
    Сообщений
    2,463
    Записей в дневнике
    6
    Репутация: 100 Добавить или отнять репутацию

    По умолчанию

    В макере нет такой функции по умолчанию.
    А так...
    Стелс на ивентах
    http://rpgmaker.su/f95/%5Bmv%5DСозда...темы-2831/

  3. #3
    Пользователь Аватар для Axel_Key
    Информация о пользователе
    Регистрация
    26.03.2017
    Адрес
    Горно-Алтайск
    Сообщений
    91
    Репутация: 2 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от Пётр Посмотреть сообщение
    В макере нет такой функции по умолчанию.
    А так...
    Стелс на ивентах
    http://rpgmaker.su/f95/%5Bmv%5DСозда...темы-2831/
    Не то. Нужен прямой взгляд, а не конусы. К тому же мне это не для стеллса нужно, а для стрельбы без снарядов. Типа во время стрельбы у игрока меняются спрайты на стреляющие, а у врага на спрайты с увечьями, но пуль не видно. И еще нужно как-то учесть стены и объекты на пути стрельбы. Типа, если между игроком и врагом стена, - промах.

    Я часто сталкиваюсь с такой проблемой, когда для реализации идеи нужен прямой взгляд игрока на объект или наоборот. Но такой функции нет и не знаю как сделать(

  4. #4
    Бывалый Аватар для Temendir13
    Информация о пользователе
    Регистрация
    12.07.2010
    Адрес
    в городе я проживаю, в ГО-РО-ДЕ
    Сообщений
    692
    Записей в дневнике
    1
    Репутация: 27 Добавить или отнять репутацию

    По умолчанию

    Можно отслеживать параллельно координаты X и Y игрока и события, если разница по координатам X будет равна 0, а разница по координатам Y > 0 но меньше 5 и при этом условие, что игрок смотрит вверх, то сработает и эффект. Это если у тебя будет одна точка для срабатывания, если несколько, то разница координат X может быть, например, от -1 до +1
    Последний раз редактировалось Temendir13; 24.11.2017 в 15:21.

  5. #5
    Пользователь Аватар для Axel_Key
    Информация о пользователе
    Регистрация
    26.03.2017
    Адрес
    Горно-Алтайск
    Сообщений
    91
    Репутация: 2 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от Temendir13 Посмотреть сообщение
    Можно отслеживать параллельно координаты X и Y игрока и события, если разница по координатам X будет равна 0, а координата Y > 0 но меньше 5 и при этом условие, что игрок смотрит вверх, то сработает и эффект. Это если у тебя будет одна точка для срабатывания, если несколько, то разница координат X может быть, например, от -1 до +1
    А можно подробнее, что зачем и почему? Работа с координатами мое слабое место. К тому же, беда тут в том, что игрок не только при взгляде вверх стреляет, а в любую сторону. И если между игроком и врагом стена или объект, то стрельба не должна осуществляться. Я делал как-то раз стрельбу со снарядом и понять не могу, почему стрельбу без него сделать сложнее ._.
    Еще могут быть какие-нибудь ходячие из стороны в сторону враги, которые набрасываются на игрока в тот момент, когда смотрят в его сторону. Т.е. очень много чего можно было бы сделать, если бы был способ завязать ивенты на зрении.

    Что-то похожее было в игре Mad Father (сделанная на Фольф рпг мейкере). Там был момент с бродячими статуями, через которых надо красться.

  6. #6
    Администратор Аватар для Пётр
    Информация о пользователе
    Регистрация
    24.04.2014
    Адрес
    Краснодар
    Сообщений
    2,463
    Записей в дневнике
    6
    Репутация: 100 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от Axel_Key Посмотреть сообщение
    Не то. Нужен прямой взгляд, а не конусы. К тому же мне это не для стеллса нужно, а для стрельбы без снарядов. Типа во время стрельбы у игрока меняются спрайты на стреляющие, а у врага на спрайты с увечьями, но пуль не видно. И еще нужно как-то учесть стены и объекты на пути стрельбы. Типа, если между игроком и врагом стена, - промах.

    Я часто сталкиваюсь с такой проблемой, когда для реализации идеи нужен прямой взгляд игрока на объект или наоборот. Но такой функции нет и не знаю как сделать(
    Ты внимательно изучи второй пример, прежде чем говорить, что это не то.
    Подробно изучи первый, возможно поймешь, как его изменить и оставить проверку только по прямой.

  7. #7
    Пользователь Аватар для Axel_Key
    Информация о пользователе
    Регистрация
    26.03.2017
    Адрес
    Горно-Алтайск
    Сообщений
    91
    Репутация: 2 Добавить или отнять репутацию

    По умолчанию

    Там не особо понятно, потому что команды не на MV версию и спойлеры с изображениями не открываются.(

  8. #8
    Бывалый Аватар для Temendir13
    Информация о пользователе
    Регистрация
    12.07.2010
    Адрес
    в городе я проживаю, в ГО-РО-ДЕ
    Сообщений
    692
    Записей в дневнике
    1
    Репутация: 27 Добавить или отнять репутацию

    По умолчанию

    ситуация. Голова Медузы смотрит вниз. Игрок снизу, за стеной, не за стеной, не важно.

    вот смотри, при установке эвента у тебя есть его координаты. В любом эвенте ты можешь назначить переменную № 1 = координатам Х эвента головы медузы, переменную № 2 равной координатам Y.

    Другой же эвент должен идти параллельно, так как он будет постоянно отсчитывать координаты X и Y игрока. Эти координаты будут записываться в третью и четвёртую переменную. При этом в параллельном эвенте нужно будет ввести ещё 2 переменные которые будут сначала равны координатам головы медузы, а потом ты будешь из координат головы медузы вычитать координаты из третьей и четвёртой переменных, т.е. если у тебя переменная № 3 отвечает за координату Х игрока, то твоя переменная № 5, которая отвечает за разницу координат по оси Х, то это значит, что сначала у тебя переменная № 5 = либо переменной № 1, либо координатам X соответствующего эвента. В зависимости от того, есть ли у тебя переменная № 1 в начале. Тут двойственность ситуации, можно так, а можно и эдак. Разницы никакой, главное не перепутать с какого эвента брать координаты. После установки первого значения переменной № 5 мы снова задаём значение, но только переменная № 5 вычитает из себя значение переменной №3.
    Если переменная № 5 равна 0, то это значит, что игрок находится на одной вертикальной прямой.

    Также вводим в этом параллельном эвенте значение переменной № 6, что отвечает за значение Y разницы головы медузы и игрока. Вот только чтобы голова сработала нам нужно, чтобы координата Y была больше 0, но при этом меньше какого-то значение, чтобы голова не била на всю карту.

    После того как будет параллельно считаться переменная № 6 мы делаем ветвление условий, что Если переменная № 5 = 0, после этого проверяем, что переменная № 6 > 0. потом новое ветвление, что переменная №6 < необходимого нам значения, и наконец последнее условие, что если игрок смотрит вверх. Если сработают все эти условия, то делаешь уже своё окаменение. В остальных случаях эвент не сработает, а будет просто считать тебе эту разницу по переменным. После прохождения же головы медузы ты делаешь так, чтобы эвент расчёта переменных больше не работал, с помощью тех же локальных переключателей, если тебе конечно это надо так.

  9. #9
    Администратор Аватар для Пётр
    Информация о пользователе
    Регистрация
    24.04.2014
    Адрес
    Краснодар
    Сообщений
    2,463
    Записей в дневнике
    6
    Репутация: 100 Добавить или отнять репутацию

    По умолчанию

    Цитата Сообщение от Axel_Key Посмотреть сообщение
    Там не особо понятно, потому что команды не на MV версию и спойлеры с изображениями не открываются.(
    Ээээ... Если посмотреть внимательно, то там коды и под Асю и под МВ.
    Плюс есть демка!
    Ты ж пытливый ум, ну ё моё. Разбирайся.

  10. #10
    Пользователь Аватар для Axel_Key
    Информация о пользователе
    Регистрация
    26.03.2017
    Адрес
    Горно-Алтайск
    Сообщений
    91
    Репутация: 2 Добавить или отнять репутацию

    По умолчанию

    Звучит более-менее понятно. Спасибо, попробую таким образом что-нибудь сделать.

    Цитата Сообщение от Пётр Посмотреть сообщение
    Ээээ... Если посмотреть внимательно, то там коды и под Асю и под МВ.
    Плюс есть демка!
    Ты ж пытливый ум, ну ё моё. Разбирайся.
    Я слишком гумманитарий для такого. :'<

Страница 1 из 2 12 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Метки этой темы

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •