Суббота, 19 Июля 2025, 13:29

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
Результаты поиска
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, не замечал такого...Вполне может быть smile

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
постоянный участник
Сейчас нет на сайте
для того, чтобы понять - достаточно ли игра защищена от взлома другими юзерами wink

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 (стрельба, инвентарь)
постоянный участник
Сейчас нет на сайте
русские буквы в коде допустимы только в комментариях smile так что не вникая глубоко, как минимум их из кода нужно убрать полностью. Касательно вывода строк на русском - это возможно. нужно просто делать более глубокую настройку шрифтов. Если открыть любом созданный в 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. Хотя в любом случае это бред smile

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 | Тема: Выход за границы комнаты. Как исправить?
постоянный участник
Сейчас нет на сайте
Смысл помощи в том, чтобы объяснить принцип действия. А если поймет принцип, то дополнительные условия он и сам нарастит smile

Ghaarp

The soul lighter(Android, logic)

Zzzzombie RAGE!!!(For android)
XDominatorДата: Вторник, 17 Июня 2014, 23:25 | Сообщение # 217 | Тема: Game maker studio (android)
постоянный участник
Сейчас нет на сайте
Тык на экране = нажатие левой кнопки мыши.
Если нужен мультитач - device_mouse_*** - группа функций для работы с "несколькими виртуальными мышами" - по сути несколько таких ЛКМ, каждая со своим курсором.

Все просто. Кстати долгое нажатие в одну точку = правая кнопка мыши, если вдруг кто не в курсе smile


Ghaarp

The soul lighter(Android, logic)

Zzzzombie RAGE!!!(For android)
XDominatorДата: Вторник, 17 Июня 2014, 23:20 | Сообщение # 218 | Тема: Выход за границы комнаты. Как исправить?
постоянный участник
Сейчас нет на сайте
Ну ты и намалевал простыню biggrin

Вот ограничения по координате 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 вроде на первый взгляд работоспособен, но он вдобавок учитывает размер спрайта объекта, а это не помогает читаемости wink


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 объекта. Короче, Склифасофский. Хочешь трения - просто в степе приближай к нулю(не уменьшай! Скорость может быть отрицательной) нужную тебе проекцию. Как то так smile

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)
Поиск:

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