Воскресенье, 27 Ноября 2022, 06:00

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Записи участника » EvgenZloi [10]
Результаты поиска
EvgenZloiДата: Пятница, 19 Января 2018, 16:37 | Сообщение # 1 | Тема: X, Y спрайта плохо считываются при переходе на др. локацию
был не раз
Сейчас нет на сайте
Если что, проблема решена. Я немного подкорректировал код и всё в порядке. Можно сказать, я сам накосячил и всё работало исправно.
EvgenZloiДата: Среда, 17 Января 2018, 18:11 | Сообщение # 2 | Тема: X, Y спрайта плохо считываются при переходе на др. локацию
был не раз
Сейчас нет на сайте
В ob_pers, т.е. в персонаже, который и переходит из комнаты в комнату. У него так же включен Persistent

Добавлено (17 Января 2018, 18:11)
---------------------------------------------
Вот что я пропустил. Может это важно.
В событии Room Start

Код

x = player_x;
y = player_y;

И при прикосновении с коллизией двери
Код

player_x = other.target_x;
player_y = other.target_y;

Код двери
Код

target_x = 890;
target_y = 160;
EvgenZloiДата: Среда, 17 Января 2018, 00:49 | Сообщение # 3 | Тема: X, Y спрайта плохо считываются при переходе на др. локацию
был не раз
Сейчас нет на сайте
Persistent что у катаны, что у пушки активно.

Сообщение отредактировал EvgenZloi - Среда, 17 Января 2018, 00:50
EvgenZloiДата: Вторник, 16 Января 2018, 22:50 | Сообщение # 4 | Тема: X, Y спрайта плохо считываются при переходе на др. локацию
был не раз
Сейчас нет на сайте
У меня есть следующий код для считывания положений оружия, взятого из скрипта (массив оружий)
В событии Create:
Код

x_offset = global.weaponArray[global.weapon,5];
y_offset = global.weaponArray[global.weapon,6];
my_gun = instance_create_depth(x + x_offset, y + y_offset, 0 , ob_gun);
my_melee = instance_create_depth(x + x_offset, y + y_offset, 0 , ob_katana);

В событии Step:
Код

x_offset = global.weaponArray[global.weapon,5];
y_offset = global.weaponArray[global.weapon,6];

В событии End Step:
Код

my_melee.x = x + x_offset;
my_melee.y = y + y_offset;
my_gun.x = x + x_offset;
my_gun.y = y + y_offset;

По-моему, это весь код связанный с проблемой.
Сама проблема заключается в том, что когда я перехожу в другую комнату (локацию), у меня выскакивает ошибка, в которой написано о том, что либо
Код

Unable to find any instance for object index '100049'
at gml_Object_ob_pers_Step_2 (line 9) -  my_gun.y = y + y_offset;

либо
Код

Unable to find any instance for object index '100050'
at gml_Object_ob_pers_Step_2 (line 6) -        my_melee.y = y + y_offset;

в зависимости от того, какое оружие выбрано. Если катана, то пишет ошибку первую, если огнестрельное оружие, то выскакивает вторая.


Сообщение отредактировал EvgenZloi - Среда, 17 Января 2018, 19:29
EvgenZloiДата: Понедельник, 15 Января 2018, 13:42 | Сообщение # 5 | Тема: Движение шкалы здоровья за персонажем
был не раз
Сейчас нет на сайте
Спасибо за помощь!
EvgenZloiДата: Понедельник, 15 Января 2018, 12:25 | Сообщение # 6 | Тема: Движение шкалы здоровья за персонажем
был не раз
Сейчас нет на сайте
А что делать если GM Studio не определяет view_xview? Он делает из него просто переменную. Я и решил, что view_xport стал аналогом.
EvgenZloiДата: Понедельник, 15 Января 2018, 02:04 | Сообщение # 7 | Тема: Движение шкалы здоровья за персонажем
был не раз
Сейчас нет на сайте
Приветствую всех. Проблема заключается в том, что при смещении камеры нарисованные спрайты остаются на месте и не двигаются за ней. Использую кастомную камеру, которую конечно же добавил во Viewport 0.
Спрайты рисовал следующим образом (событие Draw в ob_main)
Код

draw_sprite(s_hpbar_bg, 1 , view_xport[0], view_yport[0] - 25);
draw_sprite_ext(s_hpbar_inner,1,view_xport[0],view_yport[0]-25,global.hp/4,1,0,c_white,1);
draw_sprite(s_hpbar_border, 1 , view_xport[0], view_yport[0] - 25);

Событие Create камеры в ob_camera:
Код

//Фиксация камеры
if (instance_exists(ob_pers))
{
    x = ob_pers.x;
    y = ob_pers.y;
}

Событие Step камеры в ob_camera:
Код

///Плавное движение камерой
x += (ob_pers.x - x)*0.1;
y += (ob_pers.y - y)*0.1;
EvgenZloiДата: Воскресенье, 14 Января 2018, 12:13 | Сообщение # 8 | Тема: Созданный объект не движется (move towards point)
был не раз
Сейчас нет на сайте
Действительно, всё дело было именно в физике. Спасибо!
EvgenZloiДата: Суббота, 13 Января 2018, 16:41 | Сообщение # 9 | Тема: Созданный объект не движется (move towards point)
был не раз
Сейчас нет на сайте
Не не, в действии этого кода я уверен (так как я уже проверил его на пустом проекте). Дело в том, что этот код не срабатывает в основном проекте, пуля создается но не движется.
Так же я определил что и эта строчка не работает корректно.

Для движения врага в сторону игрока.
mp_potential_step(ob_pers.x, ob_pers.y, 2, true);

Скорее всего эти проблемы связаны, т.к. и пули и враги не движутся. (Так же проверил в чистом проекте, враги движутся в сторону игрока, эта строка кода работает)


Сообщение отредактировал EvgenZloi - Суббота, 13 Января 2018, 16:52
EvgenZloiДата: Суббота, 13 Января 2018, 15:42 | Сообщение # 10 | Тема: Созданный объект не движется (move towards point)
был не раз
Сейчас нет на сайте
Привет всем, кто отозвался помочь с глупой ситуацией.
Недавно начал изучать движок Game Maker (Studio 2) и всё делал по видео-туториалам. В итоге дошёл до момента, где мне потребовалось воспользоваться движением объекта к курсору (move towards point), но проблема возникла в том, что объект не движется в направлении курсора, а просто создаётся на месте.
В событии глобального нажатия ЛКМ в ob_pers
instance_create_depth(x,y,0,ob_bullet)

В объекте ob_bullet
move_towards_point(mouse_x,mouse_y,20);

Создал пустой проект, где использовал эти 2 строчки и всё работает. Я и хотел бы узнать, что я мог где-то включить из-за чего пули перестали двигаться?
Форум игроделов » Записи участника » EvgenZloi [10]
  • Страница 1 из 1
  • 1
Поиск:

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