И опять управление: Ходьба героя
|
|
doxl | Дата: Среда, 01 Июня 2011, 22:53 | Сообщение # 1 |
старожил
Сейчас нет на сайте
| есть проблема как сделать движение спрайта туда куда тыкнул мышью и чтобы игрок шёл и если к примеру он идет вправо то анимация в право производиться он идет влево анимация влево нужно для изометрии
Нажимай.
|
|
| |
FadeBaker | Дата: Среда, 01 Июня 2011, 23:37 | Сообщение # 2 |
JavaSE Game Developer
Сейчас нет на сайте
| Попробуй так: при нажатии мышью, создавай объект o_point в её координатах, и проверяй, в какой стороне он находится относительно игрока. Если выше - меняешь спрайт, смотрящий вверх, если ниже - то спрайт, смотрящий вниз, также и с другими. Это в степе игрока: Code if y > o_point.y {sprite_index = sprUp} else {sprite_index = sprDown} if x > o_point.x {sprite_index = sprLeft} else {sprite_index = sprRight}
Только не забудь при нажатии мыши уничтожать все объекты o_point, чтобы на карте было не больше одного объекта, иначе могут возникнуть баги.
Уроки по GM Minecraft 2D на GM — Мои проекты — Blood Harvest [2D] — Original Blood Harvest [2D]: Remastered Edition Adventure Craft [2D] — Sandbox Space Shock [2D] — Scroll Shooter Intel® Core™ i5-3570K 3.40 GHz, 8 GB RAM, GeForce GTX 750 Ti, Monitor: LG 23EA63V-P.
|
|
| |
ilya7834 | Дата: Четверг, 02 Июня 2011, 08:33 | Сообщение # 3 |
Работаю на Irrlicht Engine
Сейчас нет на сайте
| на мой взгляд легче сделать через direction: в степе проверяем директион если меньше 45 или больше 305 то "правый" спрайт. Дальше также 360 или 0 градусов начинаются справа, 90 вверху, 180 слева, 270 снизу. Сорри код написать не богу на телефоне это не реально. :^)Добавлено (02.06.2011, 08:33) --------------------------------------------- да и еще direction=point_direction(x, y, mouse_x, mouse_y) это помещаем в событие нажатия клавиши мыши
На синем небе Попробуй-ка разглядеть Синюю звезду
|
|
| |
BaHu3aTop | Дата: Четверг, 02 Июня 2011, 13:36 | Сообщение # 4 |
постоянный участник
Сейчас нет на сайте
| Quote (ilya7834) да и еще direction=point_direction(x, y, mouse_x, mouse_y) это помещаем в событие нажатия клавиши мыши По моему это для изометрии не подойдет.
|
|
| |
doxl | Дата: Четверг, 02 Июня 2011, 16:24 | Сообщение # 5 |
старожил
Сейчас нет на сайте
| Quote Попробуй так: при нажатии мышью, создавай объект o_point в её координатах, и проверяй, в какой стороне он находится относительно игрока. Если выше - меняешь спрайт, смотрящий вверх, если ниже - то спрайт, смотрящий вниз, также и с другими. Это в степе игрока: Code if y > o_point.y {sprite_index = sprUp} else {sprite_index = sprDown} if x > o_point.x {sprite_index = sprLeft} else {sprite_index = sprRight}
Только не забудь при нажатии мыши уничтожать все объекты o_point, чтобы на карте было не больше одного объекта, иначе могут возникнуть баги.
есть проблема анимация происходит тока по оси Х а по Y нефига
Нажимай.
|
|
| |
ilya7834 | Дата: Четверг, 02 Июня 2011, 18:13 | Сообщение # 6 |
Работаю на Irrlicht Engine
Сейчас нет на сайте
| по моему надо убрать else
На синем небе Попробуй-ка разглядеть Синюю звезду
|
|
| |
vetolo | Дата: Четверг, 02 Июня 2011, 18:54 | Сообщение # 7 |
участник
Сейчас нет на сайте
| doxl, попробуй вот так: Code if direction<270 and direction>220 { sprite_index=sprite } else if direction<220 and direction>180 { sprite_index=sprite_a }
I like Minimal techno.
Сообщение отредактировал vetolo - Четверг, 02 Июня 2011, 18:56 |
|
| |
doxl | Дата: Четверг, 02 Июня 2011, 20:37 | Сообщение # 8 |
старожил
Сейчас нет на сайте
| спс попробую Добавлено (02.06.2011, 20:37) --------------------------------------------- получилось но не совсем точто нужно вот посмотрите версия гм 8 скачать исходник
Нажимай.
|
|
| |
FadeBaker | Дата: Четверг, 02 Июня 2011, 20:56 | Сообщение # 9 |
JavaSE Game Developer
Сейчас нет на сайте
| Вот: Вроде исправил!
Уроки по GM Minecraft 2D на GM — Мои проекты — Blood Harvest [2D] — Original Blood Harvest [2D]: Remastered Edition Adventure Craft [2D] — Sandbox Space Shock [2D] — Scroll Shooter Intel® Core™ i5-3570K 3.40 GHz, 8 GB RAM, GeForce GTX 750 Ti, Monitor: LG 23EA63V-P.
|
|
| |
doxl | Дата: Четверг, 02 Июня 2011, 21:05 | Сообщение # 10 |
старожил
Сейчас нет на сайте
| спс то что нужно с меня +
Нажимай.
|
|
| |