Вторник, 24 Декабря 2024, 02:28

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Движение за курсором
maxon123Дата: Среда, 02 Января 2013, 17:01 | Сообщение # 1
частый гость
Сейчас нет на сайте
Мне необходимо, чтобы объект двигался за курсором, если на объекте нажать ЛКМ. Мне это удалось сделать, но если мышь резко дернуть, то объект "слетает" с курсора и останавливается. Если ускорить движение в комнате до максимума (9999), то объект "отлипает" при более скоростном рывке мыши (становиться лучше). И вот прошу у вас помощи, как сделать так, чтобы если даже резко дергать мышь (не отпуская ЛКМ) объект будет постоянно продолжать движение за курсором. Хотелось бы, чтобы система была похожей, то есть объект не "плелся" за мышкой, а был на нем (как в проекте). Ниже прикрепил ссылку на скачивание проекта.

http://zalil.ru/34130391
zaicev9797Дата: Среда, 02 Января 2013, 21:34 | Сообщение # 2
AbRaKaDaBrA
Сейчас нет на сайте
в событии нажатой левой кнопки мыши move_towards_point(mouse_x,mose_y,speed(может быть и число какоенибьдь)}
у меня все норм работает


проект Mysterious Space. The losted moment

Сообщение отредактировал zaicev9797 - Среда, 02 Января 2013, 21:41
Andrey_MДата: Среда, 02 Января 2013, 21:36 | Сообщение # 3
старожил
Сейчас нет на сайте
В Path вставь Teleport-event, в x пиши mouse.x в y пиши mouse.y

ЪЪЪЪ! Лучшая благодарность - плюс в репутацию :-)
maxon123Дата: Среда, 02 Января 2013, 22:21 | Сообщение # 4
частый гость
Сейчас нет на сайте
Цитата (zaicev9797)
в событии нажатой левой кнопки мыши move_towards_point(mouse_x,mose_y,speed(может быть и число какоенибьдь)}


Если так как на скрине, то не работает
http://s2.ipicture.ru/uploads/20130102/ytVV7OHn.jpg
zaicev9797Дата: Среда, 02 Января 2013, 22:55 | Сообщение # 5
AbRaKaDaBrA
Сейчас нет на сайте
не speed=5 а если у обьекта есть переменная speed то туда пишешь speed а если переменной нет циферку какуюнибуть
move_towards_point(mouse_x,mouse_y,speed)
или
move_towards_point(mouse_x,mouse_y,5)


проект Mysterious Space. The losted moment
maxon123Дата: Среда, 02 Января 2013, 23:33 | Сообщение # 6
частый гость
Сейчас нет на сайте
Работает, но он дрожит на курсоре. И если отпустить пойдет дальше (но это можно устранить). Может можно как то выключить дрожание?
SyankДата: Четверг, 03 Января 2013, 00:51 | Сообщение # 7
участник
Сейчас нет на сайте
if distance_to_point(mouse_x,mouse_y)<расстояние на котором не нужно дрожать{move_towards_point(mouse_x,mouse_y,скорость передвижения)}
правда я точно не помню та ли функция на расстояние. Ещё можно с помощью другой функции расчитывать расстояние от объекта до курсора и посредством этой информации сделать, чтобы скороть уменьшалась при приближении к курсору и увеличивалась при отдалении.

Добавлено (03.01.2013, 00:51)
---------------------------------------------
П.С. Ещё можно запоминать в переменную точки курсора, тогда объект будет идти за мышью точно по следам. Но это очень подумать надо.

Andrey_MДата: Четверг, 03 Января 2013, 01:07 | Сообщение # 8
старожил
Сейчас нет на сайте
Я же вроде написал...
Возможно, там mouse_x , mouse_y.


ЪЪЪЪ! Лучшая благодарность - плюс в репутацию :-)
maxon123Дата: Четверг, 03 Января 2013, 16:55 | Сообщение # 9
частый гость
Сейчас нет на сайте
if distance_to_point(mouse_x,mouse_y) {move_towards_point(mouse_x,mouse_y,2)} работает только через step (работает постоянно), но и по-прежнему дрожит на курсоре

Добавлено (03.01.2013, 16:55)
---------------------------------------------

Цитата (Andrey_M)
В Path вставь Teleport-event, в x пиши mouse.x в y пиши mouse.y


Какой необходимо использовать events и какой именно значок (если я правильно понял)? P.S. подписей к значкам не показывает P.P.S. из раздела move наверно все перепробовал ни один не заработал (events - mouse - left button)
zaicev9797Дата: Четверг, 03 Января 2013, 18:04 | Сообщение # 10
AbRaKaDaBrA
Сейчас нет на сайте
поставь вместо"2" "0"

проект Mysterious Space. The losted moment
maxon123Дата: Четверг, 03 Января 2013, 18:29 | Сообщение # 11
частый гость
Сейчас нет на сайте
Цитата (zaicev9797)
поставь вместо"2" "0"


Так вообще не работает
zaicev9797Дата: Четверг, 03 Января 2013, 18:54 | Сообщение # 12
AbRaKaDaBrA
Сейчас нет на сайте
if distance_to_object(твой обьект)<10(может быть юбое число-это растояние на котором будет работать следующая функция>>>>>>>)
speed=0 скорость =0

p.s советуюю слегка подучить английский (совсем сегка)зато намного легче,- код будешь примерно понимать по словам cool
book holiday ok prof thumb up v


проект Mysterious Space. The losted moment
maxon123Дата: Пятница, 04 Января 2013, 21:13 | Сообщение # 13
частый гость
Сейчас нет на сайте
http://s2.ipicture.ru/uploads/20130104/fa1zcm5h.jpg
Если я правильно понял. Так не запускается вообще.
P.S. Простите что так туплю
Цитата (zaicev9797)
советуюю слегка подучить английский (совсем сегка)зато намного легче

P.P.S Ну ладно как-нибудь выучу biggrin
StelSMaN_82Дата: Суббота, 05 Января 2013, 11:43 | Сообщение # 14
Master Of Game maker
Сейчас нет на сайте
Ребят, все можно сделать намного легче!
В объекте, который должен двигаться за курсором мыши, в событии левой кнопки мыши пишешь:
Код
x=mouse_x
y=mouse_y

Готово cool


Помог - плюс в репу!
zaicev9797Дата: Суббота, 05 Января 2013, 12:46 | Сообщение # 15
AbRaKaDaBrA
Сейчас нет на сайте
Цитата (monstriozo)
x=mouse_x
y=mouse_y

так обьект просто будет всегда находиться в кординатах мышьки. это больше подойдет для курсора smile


проект Mysterious Space. The losted moment
MontegДата: Суббота, 05 Января 2013, 12:53 | Сообщение # 16
участник
Сейчас нет на сайте
zaicev9797,
Код
move_towards_point(mouse_x,mouse_y,3)
zaicev9797Дата: Суббота, 05 Января 2013, 13:06 | Сообщение # 17
AbRaKaDaBrA
Сейчас нет на сайте
ну а я что до этого писал??? confused

Добавлено (05.01.2013, 13:06)
---------------------------------------------

Цитата (maxon123)
http://s2.ipicture.ru/uploads/20130104/fa1zcm5h.jpg
Если я правильно понял. Так не запускается вообще.
P.S. Простите что так туплю

if distance_to_object(имя обьекта)<10

обьект же надо указать confused


проект Mysterious Space. The losted moment
maxon123Дата: Суббота, 05 Января 2013, 16:31 | Сообщение # 18
частый гость
Сейчас нет на сайте
Смешивая представленные вами коды, я получил результат. Но мне не нужно чтобы объект бегал за курсором, мне нужно что-то типа
x=mouse_x
y=mouse_y
Но если ввести этот код, то все будет работать как мне нужно, но не знаю почему объект "слетает" с курсора. Может можно как-то это решить? Возможно, надо как-нибудь приравнять эти скорости?(хотя пробовал по всякому не помогло)
MontegДата: Суббота, 05 Января 2013, 16:51 | Сообщение # 19
участник
Сейчас нет на сайте
maxon123, Он "слетает" с курсора, потом что у игры FPS два раза меньше чем у системы.
Код
room_speed = 60
black_houseДата: Суббота, 05 Января 2013, 17:56 | Сообщение # 20
участник
Сейчас нет на сайте
Код
mp_linear_step(mouse_x,mouse_y,5,0); //двигаемся за мышкой
//mouse_x - x координата мыши
//mouse_y - y координата мыши
//5 - скорость
//0 - при столкновении с твердым объектом не останавливаемся
//(1 - при столкновении с твердым объектом останавливаемся)


Snow Dream [2d, Android] (v1.3)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

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