Воскресенье, 22 Декабря 2024, 11:34

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Вопрос - Ответ (Game Maker)
GameMixДата: Среда, 23 Февраля 2011, 17:42 | Сообщение # 961
старожил
Сейчас нет на сайте
Quote (Apelsinoviy_kot)
Взрыв Я делаю спрайтом.

Значит, для взрыва есть и отдельный объект?


Steel Standoff - 2D аркада.
Мои статьи
Made_In_USSRДата: Среда, 23 Февраля 2011, 18:44 | Сообщение # 962
заслуженный участник
Сейчас нет на сайте
Quote (Apelsinoviy_kot)
Извини, но я учусь в 6 классе. Мы векторы еще не проходили...

direction это вектор движения.
lengthdir тебе в помощь, в справке все подробно описано.
Quote (Apelsinoviy_kot)
Взрыв Я делаю спрайтом.

Не важно каким способом ты будешь рисовать взрыв. В любом случае тебе нужно найти координаты в которых он будет происходить.

з.ы.: еще раз, не придумывай колесо. точное до пикселя место столкновения тебе не нужно.


Новичкам изучающим GML кликать сюда.
Много примеров, исходников, библиотек и вообще всего что вам только может пригодиться. Автор портала, прости меня за ссылку, наболело =)
TheApKoTДата: Среда, 23 Февраля 2011, 19:13 | Сообщение # 963
GML ProgrammeR
Сейчас нет на сайте
Quote (аТнОтХоАн)
Значит, для взрыва есть и отдельный объект?

Ну да.
Quote (Made_In_USSR)
В любом случае тебе нужно найти координаты в которых он будет происходить.

А я что делаю? Мне это и нужно!


Посоветуйте, где скачать VB6 :C
GameMixДата: Среда, 23 Февраля 2011, 19:19 | Сообщение # 964
старожил
Сейчас нет на сайте
Quote (Apelsinoviy_kot)
Ну да.

Тогда, создай переменную, которая будет отвечать за появление взрыва. Если она равна 0, взрыв создается и значение переменной равно 1. Когда анимация взрыва завершается, ставишь код:
Code
переменная = 0; instance_destroy(); // и уничтожаем объект взрыва


Steel Standoff - 2D аркада.
Мои статьи
Made_In_USSRДата: Среда, 23 Февраля 2011, 20:41 | Сообщение # 965
заслуженный участник
Сейчас нет на сайте
Quote (Apelsinoviy_kot)
А я что делаю? Мне это и нужно!

Ну так а я на что тебя пытаюсь натолкнуть? smile
Я просто это к тому что хоть спрайт хоть частицы, это значения не имеет. И спрайту нужны координаты и эмиттеру.

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

Точка 0 это центр спрайта, точка С это точка столкновения окружности в которую вписан спрайт.
Lengthdir это отрезок от центра спрайта до точки столкновения (x,y|lengthdir_x,lengthdir_y). Этот отрезок равен радиусу окружности в которую вписан спрайт, но не обязательно брать его. Можно взять либо ширину либо длину спрайта (смотря что больше).
Останется только добавить к икс координате пули lengthdir_x а к игрик - lengthdir_y. В полученных координатах точки С можно создавать либо обьект взрыва, либо систему частиц.


Новичкам изучающим GML кликать сюда.
Много примеров, исходников, библиотек и вообще всего что вам только может пригодиться. Автор портала, прости меня за ссылку, наболело =)


Сообщение отредактировал Made_In_USSR - Среда, 23 Февраля 2011, 20:43
pavelshДата: Пятница, 25 Февраля 2011, 11:23 | Сообщение # 966
частый гость
Сейчас нет на сайте
У меня вопрос
path_start(p_player,30,0,0);
Вроде при такой раскладке игрок должен остановится в конце пути остановится, но получается что он возвращается в начало пути.Нужно чтоб он остановился в конце пути
Что я зделал не так ?
BaHu3aTopДата: Пятница, 25 Февраля 2011, 11:51 | Сообщение # 967
постоянный участник
Сейчас нет на сайте
В свойсвах пути есть галочка на закрыть, её то и надо убрать


GameMixДата: Пятница, 25 Февраля 2011, 11:55 | Сообщение # 968
старожил
Сейчас нет на сайте
pavelsh, ну правильно. Если путь замкнутый, тогда, в твоем случае откуда игрок начал движение, там и остановится. Вот только вопрос:...зачем такая большая скорость?

Steel Standoff - 2D аркада.
Мои статьи
TheApKoTДата: Суббота, 26 Февраля 2011, 16:48 | Сообщение # 969
GML ProgrammeR
Сейчас нет на сайте
Теперь у меня ворпос по глобальным переменным. Обычно я пишу global.название переменной, но это довольно неудобно, и я, просматривая старые темы, наткнулся на пост Vinchensoo, где он говорил про нечто, отображающееся в коде как globalvar... Подскажите, как его использовать при назначении глобальной переменной?

Посоветуйте, где скачать VB6 :C
vetoloДата: Суббота, 26 Февраля 2011, 17:06 | Сообщение # 970
участник
Сейчас нет на сайте
Apelsinoviy_kot, просто в каком-то обьекте create
Code

globalvar переменная


I like Minimal techno.
ZetoresДата: Суббота, 26 Февраля 2011, 18:25 | Сообщение # 971
был не раз
Сейчас нет на сайте
А как сделать чтобы можно было стрелять?И сидеть?И что-бы игрок не бегал сам когда нажимаешь клавишу?И как сделать дверь-выход?(Для платформера).

Добавлено (26.02.2011, 18:23)
---------------------------------------------
И как сделать пули как в этой игре : http://forum.gmaker.su/forum/11-1130-1 ?

Добавлено (26.02.2011, 18:25)
---------------------------------------------
И можно ли сделать анимацию движение и атаки мечом?




Сообщение отредактировал Zetores - Суббота, 26 Февраля 2011, 18:19
NeZnayuДата: Суббота, 26 Февраля 2011, 18:28 | Сообщение # 972
__танцуй!__
Сейчас нет на сайте
Zetores, все руками.
Читай справку.


CombatForce - 2d TDS долгожданный релиз
Noobster - самый простой конструктор игр в мире
LaLaLaLAMA! - игра не про Ламу
ZetoresДата: Суббота, 26 Февраля 2011, 18:45 | Сообщение # 973
был не раз
Сейчас нет на сайте
А справка в гейммакере?И у меня английский.

Добавлено (26.02.2011, 18:45)
---------------------------------------------
Или хотя бы киньте исходник.


GameMixДата: Суббота, 26 Февраля 2011, 19:00 | Сообщение # 974
старожил
Сейчас нет на сайте
Zetores, дам небольшой совет: учи GML и меньше пользуйся кнопками (действиями), т.к. на них "кул игру" не создашь. Когда базу языка поймешь, качай исходники, их в интернете полно. Google или Yandex в помощь. Пока GML не поймешь, исходники не помогут.

Кстати, здесь есть справка Game Maker 8 на русском языке (первая ссылка по списку).


Steel Standoff - 2D аркада.
Мои статьи
TheApKoTДата: Суббота, 26 Февраля 2011, 19:27 | Сообщение # 975
GML ProgrammeR
Сейчас нет на сайте
vetolo, код
Code
globalvar blabla=0
Не работает.


Посоветуйте, где скачать VB6 :C
GameMixДата: Суббота, 26 Февраля 2011, 19:36 | Сообщение # 976
старожил
Сейчас нет на сайте
Apelsinoviy_kot, чтобы объявить глобальные переменные, можно написать так:
Code
globalvar a, b, c; // и так далее....

Главное не забывать после перечисления всех глобальных переменных, в конце строки ставить ";"

Добавлено (26.02.2011, 19:36)
---------------------------------------------
Единственное, чем это неудобно, что при создании "глобальной" игры, нужно ломать голову на счет имён новых переменных wacko


Steel Standoff - 2D аркада.
Мои статьи


Сообщение отредактировал аТнОтХоАн - Суббота, 26 Февраля 2011, 19:37
Made_In_USSRДата: Суббота, 26 Февраля 2011, 19:48 | Сообщение # 977
заслуженный участник
Сейчас нет на сайте
Quote (Apelsinoviy_kot)
Не работает.

Такие переменные лучше обьявлять при старте комнаты/игры.
После обьявления переменных через globalvar ты можешь использовать их как обычные переменные.
Код старта комнаты:
globalvar variable;
Код обьекта:
for (variable=0; variable<9; variable+=1)
array[variable] = variable+1

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


Новичкам изучающим GML кликать сюда.
Много примеров, исходников, библиотек и вообще всего что вам только может пригодиться. Автор портала, прости меня за ссылку, наболело =)
TheApKoTДата: Суббота, 26 Февраля 2011, 19:54 | Сообщение # 978
GML ProgrammeR
Сейчас нет на сайте
Quote (Made_In_USSR)
for (variable=0; variable<9; variable+=1)

Вот мне интересно, оператор for употребляется во всех ЯПах? wacko
Quote (Made_In_USSR)
array[variable] = variable+1

Зачем массив-то? blink
Quote (Made_In_USSR)
Только не понятно как это связано с удобством. Скорее всего ты запутаешься, потому как много таких переменных в голове не удержишь.

Эм, каждый раз писать global. и того хуже... Уж поверь wacko
Quote (аТнОтХоАн)
чтобы объявить глобальные переменные, можно написать так:
Code
globalvar a, b, c; // и так далее....

Главное не забывать после перечисления всех глобальных переменных, в конце строки ставить ";"


Это я понял. Но как задавать им значения?


Посоветуйте, где скачать VB6 :C
Made_In_USSRДата: Суббота, 26 Февраля 2011, 19:58 | Сообщение # 979
заслуженный участник
Сейчас нет на сайте
Quote (Apelsinoviy_kot)
Вот мне интересно, оператор for употребляется во всех ЯПах?

Стандартный оператор цикла.
Quote (Apelsinoviy_kot)
Зачем массив-то?

Для примера. Можешь написать что-то свое, это сейчас не существенно.
Quote (Apelsinoviy_kot)
Это я понял. Но как задавать им значения?

Так же как и всем прочим, через знак равенства.


Новичкам изучающим GML кликать сюда.
Много примеров, исходников, библиотек и вообще всего что вам только может пригодиться. Автор портала, прости меня за ссылку, наболело =)
TheApKoTДата: Суббота, 26 Февраля 2011, 20:00 | Сообщение # 980
GML ProgrammeR
Сейчас нет на сайте
Quote (Made_In_USSR)
Так же как и всем прочим, через знак равенства.

То есть, сначала объявить таким образом, а потом сразу задавать?


Посоветуйте, где скачать VB6 :C
Поиск:

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