Результаты поиска
| |
XDominator | Дата: Пятница, 27 Июня 2014, 10:32 | Сообщение # 201 | Тема: Счетчик к объекту с анимацией |
постоянный участник
Сейчас нет на сайте
| Так бы и написал - разрушение в несколько стадий.
Делаешь 1 спрайт из n картинок, которые обозначают стадии
СЧитаем что этот спрайт присвоен объекту.
Код //Create stage = 0 max_stage = 3 image_speed = 0;
//left pressed if stage < max_stage stage++;
image_index = stage;
Вот и все.
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Пятница, 27 Июня 2014, 09:47 | Сообщение # 202 | Тема: Стрельба у танка. |
постоянный участник
Сейчас нет на сайте
| Если делаешь через стандартные эффекты дым, то поворачивающимся ты его не сделаешь. Да и не должен он вообще то поворачиваться)
Стрельба в гм, как правило, организована примерно так:
Код //Create shoot_enabled = true;//Контролирующая переменная(Триггер) delay = 60;// - задержка между выстрелами bspeed = 10;//Скорость полета пули.
//Global left mouse if shoot_enabled { shoot_enabled = false;//Закрываем условие выстрела alarm[0] = delay;//Устанавливаем таймер, который снова раскроет условие выстрела bullet = instance_create(x, y, o_bullet)// Создаем объект с именем o_bullet и сохраняем ссылку на него в bullet bullet.speed = bspeed;//Ставим скорость пули bullet.direction = point_direction(x, y, mouse_x, mouse_y);//Ставим направление(Выстрел в точку курсора) }
//Alarm 0 shoot_enabled = true;//Раскрываем условие.
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
Сообщение отредактировал XDominator - Пятница, 27 Июня 2014, 09:48 |
|
| |
XDominator | Дата: Вторник, 24 Июня 2014, 15:49 | Сообщение # 203 | Тема: Привязывание к персонажу |
постоянный участник
Сейчас нет на сайте
| Overdrave, не замечал такого...Вполне может быть
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Понедельник, 23 Июня 2014, 15:44 | Сообщение # 204 | Тема: GameMaker Studio 1.3 + AdMob |
постоянный участник
Сейчас нет на сайте
| Смотрю 1.3 получилось крайне сырой....
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Понедельник, 23 Июня 2014, 15:42 | Сообщение # 205 | Тема: Привязывание к персонажу |
постоянный участник
Сейчас нет на сайте
| zzzza, это - пример очень плохой реализации. Я сам несколько раз вставал на эти грабли. Фишка в том, что у пистолета всегда будет отставание от объекта на 1 шаг. Не знаю с чем это связано, но факт - при такой реализации не больших скоростях объект ведет себя как привязанный, и его координаты ни хрена не совпадают с координатами игрока. Нужно заводить отдельный триггер именно в объекте игрока, включать Draw event и там писать Код draw_self(); if pistol = true draw_sprite(spr_pistol, 0, x, y);
Соответственно pistol и есть наш триггер - контролирующая переменная. Именно ее значение мы меняем для включения\выключения отрисовки пистолета, и вдобавок, пистолет не будет как "привязанный на резинку"
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Воскресенье, 22 Июня 2014, 19:20 | Сообщение # 206 | Тема: Движение блока в свободное пространство |
постоянный участник
Сейчас нет на сайте
| ну автору это уже явно больше не нужно)
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Воскресенье, 22 Июня 2014, 19:19 | Сообщение # 207 | Тема: Art Money и Game Maker |
постоянный участник
Сейчас нет на сайте
| для того, чтобы понять - достаточно ли игра защищена от взлома другими юзерами
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Суббота, 21 Июня 2014, 00:03 | Сообщение # 208 | Тема: Движение блока в свободное пространство |
постоянный участник
Сейчас нет на сайте
| Я лично ниче не понял, больше текста.
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Пятница, 20 Июня 2014, 11:37 | Сообщение # 209 | Тема: Вопрос знатокам |
постоянный участник
Сейчас нет на сайте
| Наткнулся с утра на такую неприятную вещь. В ГМС не сохраняются ссылки на объекты в динамических списках. В справке об этом ничего нет, в ГМ 8 оно точно работало.
Чтобы было понятней: Код list = ds_list_create(); object = instance_create(0, 0, object0); ds_list_add(list, object); show_message(ds_list_read(list, 0))//Выдает 0
Возможно, кто то лечил такое?Добавлено (20.06.2014, 11:37) --------------------------------------------- Проблема решена. Функция чтения не ds_list_read(), а ds_list_find_value(). Довольно неочевидный момент, возможно кому то пригодится...
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
Сообщение отредактировал XDominator - Пятница, 20 Июня 2014, 10:56 |
|
| |
XDominator | Дата: Пятница, 20 Июня 2014, 10:45 | Сообщение # 210 | Тема: Некоторые проблемы в Game maker (стрельба, инвентарь) |
постоянный участник
Сейчас нет на сайте
| русские буквы в коде допустимы только в комментариях так что не вникая глубоко, как минимум их из кода нужно убрать полностью. Касательно вывода строк на русском - это возможно. нужно просто делать более глубокую настройку шрифтов. Если открыть любом созданный в 2 клика шрифт, можно увидеть, что там в списке символов только латиница и знаки препинания. Соответственно отображаются в тексте только те символы, которые учтены в выбранном шрифте.
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Четверг, 19 Июня 2014, 14:22 | Сообщение # 211 | Тема: Трение в gms. |
постоянный участник
Сейчас нет на сайте
| В твоем примере, friction будет в полной мере отниматься от hspeed только если не будет вертикальной составляющей. friction все таки отнимается от speed, а hspeed и vspeed рассчитываются уже по измененной speed. Хотя мне кажется автору такие тонкости вообще уже ни к чему)
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Среда, 18 Июня 2014, 23:45 | Сообщение # 212 | Тема: Трение в gms. |
постоянный участник
Сейчас нет на сайте
| Тебе кажется. friction - это число, которое просто пошагово вычитается из скорости. И поэтому указанное тобой трение - это не совсем трение, а нечто другое, и явно не то о чем спрашивал автор изначально.
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Среда, 18 Июня 2014, 19:58 | Сообщение # 213 | Тема: Трение в gms. |
постоянный участник
Сейчас нет на сайте
| Тогда уж скорее 13 - friction. Хотя в любом случае это бред
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Среда, 18 Июня 2014, 14:03 | Сообщение # 214 | Тема: Трение в gms. |
постоянный участник
Сейчас нет на сайте
| Overdrave, перечитай внимательней мой пост. Speed - это лишь результат сложения векторов vspeed и hspeed. Направление результирующего вектора = direction, его длина - speed. Ты можешь задавать speed и direction напрямую - тогда ГМ рассчитает значения vspeed и hspeed исходя из speed и direction, т.е. произведет действия как бы в обратном порядке. Эти пары переменных взаимосвязаны, их нельзя разделить. Friction действует на speed, по факту - просто выполняет код speed -= friction(обычная скорость не может быть отрицательной, в отличии от проекций. Если гамак обнаруживает отрицательную скорость, то он просто выполняет прибавку 180 градусов к direction, т.е. как бы разворачивает объект.). Простейшая геометрия.
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Среда, 18 Июня 2014, 08:14 | Сообщение # 215 | Тема: Game maker studio (android) |
постоянный участник
Сейчас нет на сайте
| не GM, а GM studio. Теперь это кроссплатформенный движок, еще с 12 года, если не ошибаюсь
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Среда, 18 Июня 2014, 08:13 | Сообщение # 216 | Тема: Выход за границы комнаты. Как исправить? |
постоянный участник
Сейчас нет на сайте
| Смысл помощи в том, чтобы объяснить принцип действия. А если поймет принцип, то дополнительные условия он и сам нарастит
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Вторник, 17 Июня 2014, 23:25 | Сообщение # 217 | Тема: Game maker studio (android) |
постоянный участник
Сейчас нет на сайте
| Тык на экране = нажатие левой кнопки мыши. Если нужен мультитач - device_mouse_*** - группа функций для работы с "несколькими виртуальными мышами" - по сути несколько таких ЛКМ, каждая со своим курсором.
Все просто. Кстати долгое нажатие в одну точку = правая кнопка мыши, если вдруг кто не в курсе
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Вторник, 17 Июня 2014, 23:20 | Сообщение # 218 | Тема: Выход за границы комнаты. Как исправить? |
постоянный участник
Сейчас нет на сайте
| Ну ты и намалевал простыню
Вот ограничения по координате x, скажем, на левую часть комнаты.
в n подставляешь любое значение(скажем, у нас это room_width/2 - середина)
Код if x+dx > n { x = n; } else { x += dx; }
Под dx тут подразумевается переменная, которая хранит твою скорость. Если же ты используешь speed\direction систему движения, то тут все усложняется. Нельзя просто писать speed = 0 для какой то координаты, это вызовет прилипание. Тут уже нужно определять координаты, и проверять направление потенциального движения объекта. Используем ту же ситуацию что и выше Код if x + dx > 0 { if direction <90 or direction > 270 { speed = 0 } else { speed = dx } } else { speed = dx }
Код aFriend вроде на первый взгляд работоспособен, но он вдобавок учитывает размер спрайта объекта, а это не помогает читаемости
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Вторник, 17 Июня 2014, 23:11 | Сообщение # 219 | Тема: Трение в gms. |
постоянный участник
Сейчас нет на сайте
| Начнем с того что friction - это воздействие на скорость, а не координаты. По сути, friction - это уменьшение speed каждый шаг на определенную заданную тобой величину. В свою очередь, speed - это совокупность горизонтальный и вертикальной проекций скорости, проще говоря - hspeed и vspeed. И потому, фактически, friction воздействует именно на них, а не на speed как таковую. Пропорции уменьшения значений этих проекций вычисляются через простейшие тригонометрические формулы, исходя из значения direction объекта. Короче, Склифасофский. Хочешь трения - просто в степе приближай к нулю(не уменьшай! Скорость может быть отрицательной) нужную тебе проекцию. Как то так
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
XDominator | Дата: Вторник, 17 Июня 2014, 20:51 | Сообщение # 220 | Тема: Как отлючить событие столновения с обьектом? |
постоянный участник
Сейчас нет на сайте
| SpeRdKeaR Я и сам бывает забываю элементарные вещи. Все нормально, такое у всех бывает)
Ghaarp
The soul lighter(Android, logic)
Zzzzombie RAGE!!!(For android)
|
|
| |
|