Позволю себе ответить, пока автора уроков нет

Здравствуйте мне очень нравятся ваши уроки по GML. Но у меня есть вопросы по некоторым функциям... я все в цитату возвел...
1) place_meeting(x,y,obj) я не понял , что значит возвращает истину?? Ну вообщем я понял, что это можно использовать вместо " Столкновение с объектом" к примеру
if place_meeting (player.x,player.y,monstr) { global.hp-=10}...
возможно же такое ??? объясните пожауйсто..
"функция возвращает", это значит что выполнив, например
a=place_meeting(...)
в "
a" будет результат.
в данном случае "
a" будет равно либо
true, либо
false.
Ваша запись также верна. Хотя лично я все условия ставлю в скобки.
if (place_meeting (player.x,player.y,monstr)) { global.hp-=10}...
Для наглядности, чтобы самому не запутаться, а также во избежание неправильной обработки данных.
2)move_bounce_solid(adv) - принципи я понял, что это основной рикошет... но вместо "adv" я так понял пишут объект ??
Нет, вместо
adv ставим
true или
false.
Аргумент adv отвечает за "продвинутое" использования (поверхности любого наклона)
Имя объекта указывать не нужно - тут действие идёт по отношению ко всем твёрдым объектам.
3)move_outside_solid(dir,maxdist) будет двигаться пока соприкасается с экземпляром твёрдого объекта ... как это возможно?? если объект соприкасается с твердым объектом насколько я знаю он в нем останавливается тобишь в этом случае застрявает... эмм.. что за парадокс?

может быть я чегото не дочитал?
Застревает - это в том случае, если прописано событие столкновения с объектом.
Если мы поставим

с любым твёрдым объектом, то GM автоматически будет выполнять команды
x=xprevious и
y=yprevious. Как раз из-за этого и происходит "застревание".
Команду можно использовать, например, так:
а). Мы прописываем команду
move_outside_solid внутрь события столкновения - тогда всё будет нормально
б). Мы прописываем команду где-то в степе, но при этом не создаём событие

(то есть все проверки на столкновения также делаем самостоятельно в коде).