Форум » Вопрос-Ответ » "Game Marker" Повисание на стене » Ответить

"Game Marker" Повисание на стене

Lgunchik: Привет всем с кем ещё не поздоровался! У меня такой вопрос. Я создаю(пытаюсь создать) игру в жанре платформера, игрок у меня там уже умеет бегать, прыгать, стоять на плотформе и мне надо сделать так чтобы когда игрок не допрыгивает до платформы он повисал на выступе, а потом нажатием "вверх" или "вниз" он подымался на платформу или спрыгивал вниз.

Ответов - 58, стр: 1 2 All

sanchez: так, мона на краях платформы делать невидимый обьект, при столкновении с которым он... ну вот это делает или мона очень тщательно проверять координаты платформы, типо если он близко к нему, повернут к нему... зы. вообщет мог бы найти темко типо "вопросы о гм" или что то типо такого

Lgunchik: да и ещё. Есть ГГ , есть платформы, есть прыжок, но прыжок глюкнотый потому что когда ГГ падает с платформы можно нажать "прыжок" и он прыгнет в воздухе но всего 1 раз , после приземления прыжок обновляется и опять можно прыгать. Как исправить

Ev-genius: добавить условие с проверкой гравитации: открываешь тот самый код которые ты гдето нашел, ищешь там строчку отлова прыжка и обрамляешь условием


Lgunchik: ещё 1 небольшой вопрос. Создаю ГГ и платформы делаю без кода ходьбу, силу трения и гравитацию, когда ГГ достигает платформ он "застревает" т.е. не ходит ни влево, ни вправо. Я знаю что там надо сделать так что когда ГГ задел платформу то сила притяжения 0, а когда он не на платформе то любое число кроме 0. Так вот мне и надо последовательность команд (без кода)

ккким: сделай при столкновении с платформой vertical speed=0

Lgunchik: У меня два вопроса: 1.Как убрать прилипание к стенам l____lO вот в этом положений если жать в лева то ГГ висит на стене 2.Как "сгладить" пиксели. Не в изображение, а когда ГГ встречается с неровной поверхностью он застревает, ну и вот и как сделать так чтобы ГГ на не большие выступы (как лестницы) "восходил"?

sanchez: 2. с помощью маски, сделай ее тупо квадратную

Lagevae: 2. Тут надо физику совсем сложную делать. Можешь поискать примеры, тут например: mizzystic.ru. Прямо вот так написать хорошую физику для платформера - дело сложное для новичка. 1. Ответ такой же, что и на 2-ой вопрос.

Lgunchik: Люди, а как сделать совершенно разные 3 шкалы: 1.шкл.жизней 2.шкл.маны 3.шкл.замедления времени?

Spyro23: В событии создания указываешь название переменной и её кол-во, например lives=3 mana=10 slowtime=100

Lgunchik: По подробней можно?

Spyro23: В событии создания выбираешь вкладку control, в ней действие execute piece of code, в появившимся окне пишешь: lives=3 mana=10 slowtime=100 Закрываешь окно путём нажатия на галочку в верхнем левом углу.

Lgunchik: вот исходник плизз сделай несколько баров http://slil.ru/28329493

Lgunchik: с отображением на экране

ккким: в новом обьекте рисуешь прямоугольник х1,у1,у2 делаешь где хочешь а х2=objectglavnyihero.health\mana\slowtime

Lgunchik: яснее мона?)) я ещё нубко в ГМ

Spyro23: Лови: http://dump.ru/file/3923727

Lgunchik: и ещё нада сделать так что бы когда ГГ стрелял пуля не пролетала ни через стены, ни через что либо другое +тебе за бары

Spyro23: Задавай для пули в событии столкновения с объектом уничтожение.

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

Ev-genius: в таких случаях можно будет проверять столкновение функцией collision_line() подробнее в справке по нажатию F1

Lagevae: For'ом надо сканировать столкновения. Примерно так: for(i=0;i<speed;i+=sprite_width) {if(place_meeting(x+i,y,o_wall)) {instance_destroy()}}

Lgunchik: конечно спасибо, но оба способа дают проникнуть через стену!!!

ккким: сделай вытянутую пулю

Ev-genius: Lgunchik пишет: конечно спасибо, но оба способа дают проникнуть через стену!!! вообще проверка считается по пикселям, так что нормально всё будет =)

Lgunchik: вот исходник, если не сложно сделайте как надо может я не так что делаю http://slil.ru/28333367

TiberiyLTim: Ты хочешь сделать что-то типа "Принца Персии"? =)

Lgunchik: ну...типо Принс Перси только с автоматом)))

Lgunchik: кстати, если кто хочет присоединиться ко мне то пишите в личку, будем вместе игры создавать))

ккким: я бы присоединился но у меня своих проектов хватает

Flooty: Spyro23 пишет: lives=3 mana=10 slowtime=100 я думаю нужно сделать глобальные переменные... global.lives = 3; global.mana = 10; global.slowtime = 100; и вызвать один раз этот скрипт иначе в каждом уровне параметры будут срасываться...

Spyro23: Flooty пишет: я думаю нужно сделать глобальные переменные... global.lives = 3; global.mana = 10; global.slowtime = 100; и вызвать один раз этот скрипт иначе в каждом уровне параметры будут срасываться... Ну, это уже на усмотрение автора.

Lgunchik: http://slil.ru/28335866 ~132KB смотрим, говорим что можно ещё добавить к игре(анимацию потом добавлю)

Lagevae: Flooty пишет: global.lives = 3Эта переменная по стандарту глобальная. Как health и score.

ккким: смотрим, говорим что можно ещё добавить к игре(анимацию потом добавлю) НАВЕРНО ВРАГОВ

Lgunchik: а есть ли книги по ГМ? не помощь в самой проге, не примеры, а вот имено книга

Lagevae: Lgunchik пишет: а есть ли книги по ГМ? не помощь в самой проге, не примеры, а вот имено книгаХех, нету)

sanchez: нагугли The Game Maker's Apprentice

Lagevae: sanchez пишет: нагугли The Game Maker's Apprentice Оу, а я и не знал даже! Слышал о разных книгах об игрострое в целом, но чтоб так...)

sanchez: на самом деле лично мне эта книга ничем не помогла, хелп - вот лучшее решение моих проблем в гм

Lagevae: sanchez пишет: на самом деле лично мне эта книга ничем не помогла, хелп - вот лучшее решение моих проблем в гмНу книга - это рассуждения какие-то, там необязательно должен быть большой уклон на информацию. А хелп - это чисто информация.

Lgunchik: speed=point_distance(x,y,o_plaer.x,o_plaer.y) есть вот это код, он дает нам притягивание предмета к ГГ, но чем дальше расстояние тем быстрее предмет летит к игроку,а мне надо всё в точности да наоборот т.е. чем дальше ГГ тем медленей предмет летит к нему(а если совсем далеко отойти предмет на месте стоит) ________________________ я нашёл небольшой выход speed=<число>/point_distance(x,y,o_plaer.x,o_plaer.y)

Lgunchik: как сделать перерыв между выстрелами(у автомата)?

YemSalat: Добавить таймер В Create: timer=0 В Step: timer-=1 if timer<=fire_reate // Если таймер меньше времени перезарядки (в степах в секунду) { // Код выстрела timer=fire_rate }

D(e)N: А я немного по другому делаю: Create: RELOAD=0 Step: if RELOAD>0 {RELOAD-=1} Global Left Button (или на что там выстрел?): if RELOAD=0 { //Выстрел RELOAD=//Промежуток между выстрелами } Но в общем принцип одинаковый.

Spyro23: можно ещё алармами: Если сигналит первый аларм - стреляем и задаём аларму время перезарядки.

Lgunchik: так мне надо не перезарядку, а промежудки меж выстрелами

D(e)N: Ой, я не правильно написал: RELOAD это не время перезарядки, а промежуток между выстрелами.

Lgunchik: мне не помогли ваши советы но с помощью их я всё таки смог добиться своей цели в CREAR ГГ global.time=0 в GLOB LEFT BUTTON Автомат если global.time=5, то происходит выстрел в STEP ГГ global.time+=1 if global.time>=6 { global.time=0 }

Ev-genius: Lgunchik пишет: мне не помогли ваши советы но с помощью их я всё таки смог вроде бы и гордость сохранил и вроде как спасибо говорить не пришлось, красота

D(e)N: Lgunchik пишет: мне не помогли ваши советы Потому что в обоих были ошибки. Часть кода действительно нужно не в STEP помещать, а в GLOBAL LEFT BUTTUN. P.S. На всякий случай исправил ошибки в своем варианте.

Lgunchik: блин, парни создаю РПГ и надо разяснить несколько не понятных мне вещёй 1. как сделать инвентарь (одинаковый меч, ну ты и положи его в туже ячейку))) открыть - i, закрыть - либо i, но можно - о, сам инвентарь должен быть похож по своей системе как в игре Готика 2(кто не знает такую игру, пишите в ЛС покажу и расскажу). 2.система ближнего боя, защита мечём. 3.по скольку вид у игры сверху я не могу понять как сделать переход с этажа на этаж(я имею в виду что если ГГ стойт на верхнем этаже крыша прозрачна, если на первом то прозрачно всё что выше первого этажа(естественно только у этого помещения), если ГГ на улице здания стоят целиком. пока всё - с уважением Lgunchik.

sanchez: 3 - сделай все ифами - типо иф этаж = 1 {visible = false} 2 - ну при ударе мечем создавай обьект, а при защите меняй переменную и проверяй его когда по те попадают 1 - скачай пример...

YemSalat: Lgunchik http://gcup.ru/forum/36-3340-1 ссылка на другой форум, т.к. на этом не нашел подходящего раздела

Spyro23: YemSalat, примеры выкладывать в раздел "Ресурсы для игр".

Lgunchik: хмм...а как сделать окно разговора с выбором разных ответов, причём ещё с влиянием на сюжет?!!

Ev-genius: Lgunchik пишет: а как сделать окно разговора с выбором разных ответов, причём ещё с влиянием на сюжет?!! там кнопка такая есть, прям берешь её перетаскиваешь и всё сделано, причем на сюжет влияет на все 100%

Lgunchik: вот, правда творение не моё, но работает http://depositfiles.com/ru/files/q54y71v5r



полная версия страницы