Передвижение персонажа по клику мыши

SFML и C++ Уроки \ Разработка игр Форумы Логика игр Передвижение персонажа по клику мыши

В этой теме 3 ответа, 3 участника, последнее обновление  Maksim 6 года/лет, 10 мес. назад.

Просмотр 4 сообщений - с 1 по 4 (из 4 всего)
  • Автор
    Сообщения
  • #4680

    Maksim
    Участник
    Сообщений:4

    Зарегистрирован:
    01.06.2017

    Репутация:0

     

    Персонаж двигается только если двигается курсор мыши, иначе он стоит. Если слегка дернуть мышкой, он немного подвинется и ждет дальше движений

     

    #4681

    tobidashi
    Участник
    Сообщений:16

    Зарегистрирован:
    25.05.2017

    Репутация:7

    Как я понял, движение должно происходить так: сначала нужно кликнуть ЛКМ на персонажа, он должен выделиться зелёным. После этого нужно кликнуть ПКМ на точку карты, куда мы хотим пойти. Персонаж должен пойти в эту точку. То есть для движения достаточно двух нажатий кнопок мышки. Если после этих двух нажатий персонаж не двигается или двигается не так/не туда, надо подробно описать, что именно и при нажатии чего происходит.

    Также можно попробовать закомментировать строчку 300, где написано

    и заменить её на

    Так можно проверить, не прерывается ли движение в функции update().

    #4685

    KindRedSand
    Участник
    Сообщений:82

    Зарегистрирован:
    05.04.2017

    Репутация:30

    У тебя обновление позиции спрайта находится в пуле ивентов. Попробуй начать вводить текст с клавиатуры и увидишь тот же эффект что и немного двигая мышь. Что бы пофиксить это логика перемещения спрайта должна быть вынесена в главный цикл, а не пул ивентов:

     

     

    #4703

    Maksim
    Участник
    Сообщений:4

    Зарегистрирован:
    01.06.2017

    Репутация:0

    понятно, чуть позже проверю с выносом позиций, спасибо

Просмотр 4 сообщений - с 1 по 4 (из 4 всего)

Для ответа в этой теме необходимо авторизоваться.