Войти
ПрограммированиеФорумФизика

Game Maker Studio 2 (нужна небольшая помощь) (2 стр)

Страницы: 1 2
#15
22:45, 19 мая 2019

AD NOTANDA
скрины давай или гифки. так то только телепат догадается. тайлы и стены обьектами селаны или как?


#16
23:37, 19 мая 2019

Bak
Да я и видео могу:
Всё время, куда не направь персонажа, после прекращения движения поворачивается в позицию Down.


В Create есть dir = "down"
если убираю, то работают анимации хотьбы вместо анимаций стояния (из-за того, что нет анимаций стояния, использовал анимации хотьбы со скоростью 3 вместо 15, временно).
#17
(Правка: 23:48) 23:47, 19 мая 2019

Сперва проблему возврата анимации давайте решим.

Script:
right_move = (keyboard_check(vk_right)  keyboard_check(ord("D")));
left_move = (keyboard_check(vk_left)  keyboard_check(ord("A")));
up_move = (keyboard_check(vk_up)  keyboard_check(ord("W")));
down_move = (keyboard_check(vk_down)  keyboard_check(ord("S")));

dir = "down";

Player:

Create:

speed_player = 3;
image_speed = 0;

Step:

event_inherited();
Player_input();

if (right_move) {
phy_position_x += speed_player;
sprite_index = Sprite_Sheet_Right;
image_speed = 1;
dir = "right";
}

if (left_move) {
phy_position_x -= speed_player;
sprite_index = Sprite_Sheet_Left;
image_speed = 1;
dir = "left";
}

if (up_move) {
phy_position_y -= speed_player;
sprite_index = Sprite_Sheet_Up;
image_speed = 1;
dir = "up";
}

if (down_move) {
phy_position_y += speed_player;
sprite_index = Sprite_Sheet_Down;
image_speed = 1;
dir = "down";
}

if (!right_move and !left_move and !up_move and !down_move) {
if (dir == "right") {
sprite_index = Sprite_Stay_Right;
image_speed = 1;
}
if (dir == "left") {
sprite_index = Sprite_Stay_Left;
image_speed = 1;
}
if (dir == "up") {
sprite_index = Sprite_Stay_Up;
image_speed = 1;
}
if (dir == "down") {
sprite_index = Sprite_Stay_Down;
image_speed = 1;
}
}

#18
0:02, 20 мая 2019

AD NOTANDA
что делает это?
Изображение
возможно оно противоречит так как xxxx_move устанавливают dir. или возможно dir стает на изначальную позицию когда отпускаешь клавишу. сложно сказать так обьект наследованый и у меня студия а не 2. ну и я в коде не разбираюсь.

#19
(Правка: 2:10) 0:38, 20 мая 2019

Решено.
dir было в скриптах, что ломало порядок в дочерних позициях.

#20
20:22, 25 мая 2019

Требуется помощь:
Collision Checking Without A Mask

нужно 3 позиции Circle для врага
и 4 Convex для персонажа (на AWDS)

#21
(Правка: 20:24) 19:56, 30 мая 2019

Уровень:
https://www.pixiv.net/member_illust.php?mode=medium&illust_id=74982705
https://www.pixiv.net/member_illust.php?mode=medium&illust_id=74859177
Карта (Уровень целиком):
https://www.pixiv.net/member_illust.php?mode=medium&illust_id=74983123
Персонаж игрока:
https://www.pixiv.net/member_illust.php?mode=medium&illust_id=74982811
Противник:
https://www.pixiv.net/member_illust.php?mode=medium&illust_id=74858133
Противник (пока только набросками):
https://www.pixiv.net/member_illust.php?mode=medium&illust_id=74982443

С тенями помогли разобраться взрослые люди.

#22
(Правка: 2:55) 1:13, 5 июня 2019

Сделал анимацию:
https://www.pixiv.net/member_illust.php?mode=medium&illust_id=75067861

По прежнему требуется помощь:
Collision Checking Without A Mask
нужно 3 позиции Circle для врага
и 4 Convex для персонажа (на AWDS)

#23
8:54, 7 июня 2019

Bak
> нужно изображение. про тени не знаю, могут ли тени проходить через альфу?

даже если сделать изображение alpha=0;
объект останется. А то как же индикаторы, датчики невидимые на персонаже и определение столкновений.

#24
10:00, 7 июня 2019
Read the "Collision Checking Without A Mask" section
Basically you'll need to create your own masks by having their coordinates and sizes in variables and using the appropriate functions to check for collisions
That's for having multiple masks for one instance
If you want to switch between masks you can do so with mask_index

Дайте примеры, туториалы такого, не смог найти в сети.
Страницы: 1 2
ПрограммированиеФорумФизика