| "Заморозка" физических объетков | 
|  | 
| 
| Skrininshot | Дата: Суббота, 09 Июня 2018, 22:48 | Сообщение # 1 |  | частый гость Сейчас нет на сайте | Привет, при создании меню быстрого доступа (то, что вылазит по нажатии на Escape) столкнулся с проблемой, что несмотря на то, что я прописал в менюшке instance_deactivate_all(), физический объект продолжает движение, но выяснить это можно только после instance_activate_all(), потому как пока он деактивирован, визуально он статичен, но активировав его, он резко сменяет свою позицию на ту, в направлении которой он двигался. Надеюсь, понятно объяснил. Требуется ваша подсказка на счёт того, как его раз и навсегда заморозить, и если разморозить, то он по инерции двигался в ту сторону, в которую двигался до заморозки и с прежней скоростью.   
 What is love
 Baby don't hurt me
 Don't hurt me
 No more...
 
 
 Сообщение отредактировал Skrininshot - Суббота, 09 Июня 2018, 22:49 |  |  |  |  | 
| 
| martuk | Дата: Суббота, 09 Июня 2018, 23:07 | Сообщение # 2 |  |   заслуженный участник Сейчас нет на сайте | Вообще я не сильно практиковал то, что ты рассказываешь, но могу предположить что все дело в параметре объекта "Speed". Вроде как step застывает (вообще не знаю) но speed какая указана была в последний момент, та скорость и будет поддерживаться. Думаю нужно сделать обход всех объектов и записать их скорость а потом обнулить. После наслаждения паузой мы это все дело обратно раздаем объектам. 
 Это лишь первая мысль, возможно есть более высокотехнологичные способы.
 |  |  |  |  | 
| 
| Skrininshot | Дата: Суббота, 09 Июня 2018, 23:38 | Сообщение # 3 |  | частый гость Сейчас нет на сайте | martuk, мы оба были близки. Как раз то, что ты говорил и плюс ко всему то же самое нужно проделывать и с phy_position(). А так спасибо за эффект бабочки. 
 What is love
 Baby don't hurt me
 Don't hurt me
 No more...
 |  |  |  |  | 
| 
| Raven84 | Дата: Воскресенье, 10 Июня 2018, 12:17 | Сообщение # 4 |  |   старожил Сейчас нет на сайте | Skrininshot, Если ты используешь реальную физику в GMS, то после instance_deactivate_all() сами физические тела (fixtures) не деактивируются. Для деактивации в физике box2D нужно использовать phy_active. Добавлено (10 Июня 2018, 12:17)---------------------------------------------
 Да, забыл сказать. У этого параметра два значения true или false. Но если умеете пользоваться справкой GMS, то думаю вы это и так знаете (поймете).
 
 Super Knight Story (в разработке)
 Idolzzz - игра доступна в Steam и Play Market
 Oliver's Adventures in the Fairyland
 |  |  |  |  | 
| 
| martuk | Дата: Воскресенье, 10 Июня 2018, 12:56 | Сообщение # 5 |  |   заслуженный участник Сейчас нет на сайте | Как сказал Raven84, действительно может быть проблема в заморозке физики. В справке нашел это Там даже пример есть паузы. Нужно использовать не только instance_deactivate_all но и physics_pause_enable.
 |  |  |  |  | 
| 
| Skrininshot | Дата: Воскресенье, 10 Июня 2018, 13:45 | Сообщение # 6 |  | частый гость Сейчас нет на сайте | martuk, Raven84, а ведь действительно, так меньше писанины получается. Пасиба всем, никогда не забуду ваш подвиг 
 What is love
 Baby don't hurt me
 Don't hurt me
 No more...
 
 
 Сообщение отредактировал Skrininshot - Воскресенье, 10 Июня 2018, 13:45 |  |  |  |  |