Среда, 18 Декабря 2024, 09:57

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Взаимодействие с платформами.
TurugniteДата: Понедельник, 29 Апреля 2013, 00:16 | Сообщение # 1
почетный гость
Сейчас нет на сайте
Есть игрок. Порой (не нашел пока точных случаев) случается так, что при взаимодействии с боковой частью платформы и одновременном зажатии кнопки прыжка, игрок начинает как по лестнице двигаться вверх. В чем моя ошибка и как можно исправить?

player:

step:
gravity_direction = 270
if place_free(x,y+1)
gravity = 2
else
gravity = 0

collision(объект платформы)
if (vspeed > 0 && not place_free(x,y+vspeed)) {
move_contact(270);
vspeed = 0;
}

<Space>
if not place_free(x,y+1)
{
vspeed = -21
}


CryMaker: Mourning's Son
RhymeCaster
Humanity[Gamiron №5]
StelSMaN_82Дата: Понедельник, 29 Апреля 2013, 07:22 | Сообщение # 2
Master Of Game maker
Сейчас нет на сайте
Вместо вот этого:
Цитата (Turugnite)
collision(объект платформы)
if (vspeed > 0 && not place_free(x,y+vspeed)) {
move_contact(270);
vspeed = 0;
}


в коллижон вставь это:
Код
if place_free(x,y+vspeed)=false{vspeed=0 move_contact_solid(270,2)}


Помог - плюс в репу!
TurugniteДата: Понедельник, 29 Апреля 2013, 15:17 | Сообщение # 3
почетный гость
Сейчас нет на сайте
StelSMaN_82, все равно едет. Да еще и притормаживать перед столкновением начинает.

Добавлено (29.04.2013, 15:09)
---------------------------------------------
StelSMaN_82, въезжает тогда, когда блоки упираются в край комнаты.

Добавлено (29.04.2013, 15:17)
---------------------------------------------
StelSMaN_82, с тормозом разобрался. Просто убрал solid в контакте. А у границы карты въезжать так и продолжает. думаю, проще будет ограничить блок, ограничивающий карту, с отступом от границы поставить и все.


CryMaker: Mourning's Son
RhymeCaster
Humanity[Gamiron №5]


Сообщение отредактировал Turugnite - Понедельник, 29 Апреля 2013, 15:03
  • Страница 1 из 1
  • 1
Поиск:

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