Проблема с привязкой объекта к объекту.
|
|
GoldApple | Дата: Вторник, 24 Марта 2015, 15:36 | Сообщение # 1 |
частый гость
Сейчас нет на сайте
| У меня есть 3 объекта, это: obj_hand_rg, obj_hand_lt,obj_player. Первые 2 это руки, правая и левая, 3-й это сам персонаж. Вопрос: как прикрепить руки к персонажу? Я в step прописал это: Код x=obj_player.x+35 y=obj_player.y+7 image_angle= obj_player.image_angle
У меня игра, вид сверху.
Сообщение отредактировал GoldApple - Среда, 25 Марта 2015, 08:41 |
|
| |
vampir0305 | Дата: Вторник, 24 Марта 2015, 17:56 | Сообщение # 2 |
Unity C# Programmer
Сейчас нет на сайте
| Легко, в Create Игрока пиши: Код instance_create(x,y,obj_hand_rg) instance_create(x,y,obj_hand_lt) в Step левой руки пиши: Код if instance_exists(obj_player) = 1 { x = obj_player.x; y = obj_player.y; move_towards_point(mouse_x,mouse_y,0) image_angle=direction }
if mouse_x < x { image_yscale = -1 } else { image_yscale = 1 } В Step правой руки тоже самое.(Кстати обычно делают одну руку)
И ещё в объекте левой руки поставь глубину 1 А в объекте правой руки глубину -1
Ещё в спрайте игрока нажми кнопку "по центру" и измени значения так, чтобы крестик стоял примерно вместе крепления руки(в месте плеча) А в спрайте руки нажми кнопку "по центру" и измени значения так, чтобы крестик стоял в месте где будет точка поворота руки, то есть не по середине, а где-то левее середины руки.(также вместе плеча)
Красочная сюжетно-ориентированная игра-головоломка
Сообщение отредактировал vampir0305 - Вторник, 24 Марта 2015, 18:01 |
|
| |
aFriend | Дата: Среда, 25 Марта 2015, 00:00 | Сообщение # 3 |
участник
Сейчас нет на сайте
| GoldApple, Цитата aFriend ( ) lengthdir_*
|
|
| |
GoldApple | Дата: Среда, 25 Марта 2015, 09:19 | Сообщение # 4 |
частый гость
Сейчас нет на сайте
| У меня игра, вид сверху. Цитата Легко, в Create Игрока пиши: Код instance_create(x,y,obj_hand_rg) instance_create(x,y,obj_hand_lt)
в Step левой руки пиши: Код if instance_exists(obj_player) = 1 { x = obj_player.x; y = obj_player.y; move_towards_point(mouse_x,mouse_y,0) image_angle=direction }
if mouse_x < x { image_yscale = -1 } else { image_yscale = 1 }
В Step правой руки тоже самое.(Кстати обычно делают одну руку)
И ещё в объекте левой руки поставь глубину 1 А в объекте правой руки глубину -1
Ещё в спрайте игрока нажми кнопку "по центру" и измени значения так, чтобы крестик стоял примерно вместе крепления руки(в месте плеча) А в спрайте руки нажми кнопку "по центру" и измени значения так, чтобы крестик стоял в месте где будет точка поворота руки, то есть не по середине, а где-то левее середины руки.(также вместе плеча)
тут не получается.
|
|
| |
vampir0305 | Дата: Среда, 25 Марта 2015, 10:24 | Сообщение # 5 |
Unity C# Programmer
Сейчас нет на сайте
| а зачем тебе делать отдельно две руки, когда можно просто спрайт нарисовать с вытянутыми руками и всё. Если нужно чтобы руки опускались когда игрок не стреляет просто меняешь в нужный момент спрайт и всё. А чтобы игрок поворачивался за мышкой вот код: Код image_angle=point_direction(obj_player.x,obj_player.y,mouse_x,mouse_y) // отвечает за поворот игрока за мышью
if keyboard_check(ord('A')) {x-=6} // перемещение игрока на 6 пикселей влево if keyboard_check(ord('D')) {x+=6} // перемещение игрока на 6 пикселей вправо if keyboard_check(ord('W')){y-=6} // перемещение игрока на 6 пикселей вверх if keyboard_check(ord('S')) {y+=6} // перемещение игрока на 6 пикселей вниз
Красочная сюжетно-ориентированная игра-головоломка
|
|
| |