Пятница, 14 Августа 2020, 05:17

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 2 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Форум игроделов » Записи участника » nekroo98 [118]
Результаты поиска
nekroo98Дата: Вторник, 09 Августа 2016, 15:00 | Сообщение # 21 | Тема: Вопрос по обьекту, его спрайту и маске.
почетный гость
Сейчас нет на сайте
Цитата FireF1y ()
image_angle

от дурак старый, совсем забыл про него :)
Спасибо.
nekroo98Дата: Вторник, 09 Августа 2016, 14:39 | Сообщение # 22 | Тема: Вопрос по обьекту, его спрайту и маске.
почетный гость
Сейчас нет на сайте
Вот есть у нас такая картинка из игры, где кратко описана суть.

Создается объект-молния. В настройках объекта задается соответствующий спрайт и маска <same as sprite>
В событии Draw код:
Код
{draw_sprite_ext(spritename,-1,sozdatel.x,sozdatel.y,0.6,1,point_direction(sozdatel.x,sozdatel.y,target.x,target.y)+90,c_white,1);

чтобы спрайт рисовался от начальной цели к конечной.
Но проблема в том, что маска то остается на старом месте, и соответственно коллизии не происходит.
Можно ли заставить маску следовать за рисуемым спрайтом в событии Draw?
Или может есть какой-то иной способ решения проблемы?
Благодарю за внимание.


Сообщение отредактировал nekroo98 - Вторник, 09 Августа 2016, 14:39
nekroo98Дата: Четверг, 26 Марта 2015, 13:01 | Сообщение # 23 | Тема: Создание двух одинаковых обьектов одновременно
почетный гость
Сейчас нет на сайте
Даладнаааааа, наконецто все правильно как задумано.

А можно по подробнее? NewDamDraw это просто переменная, где хранится ид созданного обьекта или типо того?
nekroo98Дата: Четверг, 26 Марта 2015, 12:20 | Сообщение # 24 | Тема: Создание двух одинаковых обьектов одновременно
почетный гость
Сейчас нет на сайте
Ок, обьясняю.
В каждом герое и враге есть одинаковый скрипт
Код
instance_create(x-10,y-20,simple_damage_summ_drawer);simple_damage_summ_drawer.damage=(тут формула расчета дамага)

Далее, в созданном обьекте simple_damage_summ_drawer и отрисовывается дамаг. (это как бы вылетающая из врага циферка)

Если урон идет по одному врагу за 1 шаг - все ок. Но, если урон наносится двум и более врагов за 1 шаг, значение simple_damage_summ_drawer.damage меняется во всех обьектах - рисовальщиках дамага.

Выглядит вот так:
Урон только на одного чувака в голубой робе:


А вот если зацепить атакой их обоих - вылетает значение урона по ангелу, причем из обоих. Сам урон наносится корректно:


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


Проблема именно в одном шаге и нескольких обьектах-рисовальщиках, созданных одновременно.


Сообщение отредактировал nekroo98 - Четверг, 26 Марта 2015, 12:43
nekroo98Дата: Четверг, 26 Марта 2015, 08:30 | Сообщение # 25 | Тема: Создание двух одинаковых обьектов одновременно
почетный гость
Сейчас нет на сайте
Некропостинга время!

Если событие происходит одновременно с 2 и более обьектами, цифра урона вылетает из всех одинаковая.
Как с этим быть и что делать?
nekroo98Дата: Понедельник, 04 Августа 2014, 09:57 | Сообщение # 26 | Тема: object_set_parent WTF?
почетный гость
Сейчас нет на сайте
Цитата Fade ()
if (x == y) object_set_parent(object_index, z);

чет я всегда думал, что id это и есть индекс обьекта.

Спасибо, object_index работает как надо happy
nekroo98Дата: Среда, 30 Июля 2014, 16:44 | Сообщение # 27 | Тема: object_set_parent WTF?
почетный гость
Сейчас нет на сайте
Цитата aFriend ()

Зная id обьекта с ним можно сделать все что душе угодно

тогда почему же
Код
object_set_parent(id,z)   -  в самом обьекте

или
Код
object_set_parent((переменная, куда записан id),z)    -    в любом обьекте

не работает?
nekroo98Дата: Среда, 30 Июля 2014, 15:28 | Сообщение # 28 | Тема: object_set_parent WTF?
почетный гость
Сейчас нет на сайте
Цитата aFriend ()
ты же понимаешь, что должно быть id?

ты же понимаешь, что я проверил перед тем как писать?
Не работает с id или self. Работает, только если прямо указать обьект, причем его имя, а не id.
Но, это не то, что нужно

Цитата hero564 ()
nekroo98, по-моему назначать родителя можно только при создании абсолютно нового объекта (не инстанса), могу ошибаться

к сожалению, ошибаешься smile
nekroo98Дата: Среда, 30 Июля 2014, 15:08 | Сообщение # 29 | Тема: object_set_parent WTF?
почетный гость
Сейчас нет на сайте
Цитата Леонид ()
Под переменной Z точно id родительского объекта?

ну не id, но имя обьекта-родителя
nekroo98Дата: Среда, 30 Июля 2014, 13:51 | Сообщение # 30 | Тема: object_set_parent WTF?
почетный гость
Сейчас нет на сайте
Цитата aFriend ()
значит условие не выполняется

все выполняется. если прописать конкретное название обьекта, например
Код
object_set_parent(ppl2_obj,team2)

а не
Код
object_set_parent(self,team2)

или
Код
object_set_parent(id,team2)


то работает. но этот скрипт нужен для сотни обьектов, не прописывать же 100 строк с ветвящимися условиями dry
nekroo98Дата: Среда, 30 Июля 2014, 13:35 | Сообщение # 31 | Тема: object_set_parent WTF?
почетный гость
Сейчас нет на сайте
Цитата aFriend ()
попробуй
Код
if x=y {object_set_parent(id,z)}


Неа, так же
nekroo98Дата: Среда, 30 Июля 2014, 12:55 | Сообщение # 32 | Тема: object_set_parent WTF?
почетный гость
Сейчас нет на сайте
Доброго времени суток всем smile

Вопщим, пишу я в скрипте(который используется в step обьекта 'self') такую весчь:
Код
if x=y {object_set_parent(self,z)}

И по сути, это должно давать обьекту 'self' родителя 'z'. А родителя у него как бэ не появляется, при выполненых условиях.

Штояделаюнетак?

(self - это применить к себе, я же правильно понимаю?)
nekroo98Дата: Понедельник, 10 Февраля 2014, 12:55 | Сообщение # 33 | Тема: Хелсбар диабло
почетный гость
Сейчас нет на сайте
Помогите в создании хэлсбара, как в диабло.
Видел где то пример, щас найти не могу.
nekroo98Дата: Понедельник, 09 Декабря 2013, 11:47 | Сообщение # 34 | Тема: Рандомный поворот обьекта
почетный гость
Сейчас нет на сайте
step
Код
if speed = 0 {alarm[0]:=250;}

alarm[0]
Код
dd:=irandom_range(0..360);move_contact_all(dd,50)
nekroo98Дата: Понедельник, 09 Декабря 2013, 11:34 | Сообщение # 35 | Тема: Несколько простых вопросов
почетный гость
Сейчас нет на сайте
1. instance_nearest(x,y,obj) Возвращает идентификатор ближайшего к точке (x,y) экземпляра объекта obj. obj может быть объектом, идентификатором экземпляра или всеми сразу.
2.Первый ближний, попавший в радиус - и будет первым ближнем, какбэ
3.Сложно. Если использовать инстанс неарест - с большой долей вероятности она будут отскакивать между двумя обьектами и все. Я задавал этот вопрос, есть темка, там даже сделали пример, но не тот. Поищи короч про цепную молнию чето было.
4. нелегко
5.рисуешь спрайты, используя функцию наклона спрайта, чтобы следы были наклонены в сторону, куда двигается перс. Ну или просто - делаешь обьект, который рисует спрайт, и со временем его прозрачность увеличивается, а затем он уничтожается, и по аларму создаешь такие следы. Это если обьект движется естесно.
6. Это очень просто, надо всего ли...ЧИТАТЬ ДАЛЕЕ
nekroo98Дата: Понедельник, 09 Декабря 2013, 11:13 | Сообщение # 36 | Тема: Вопрос по созданию персонажа
почетный гость
Сейчас нет на сайте
Да, верно сказали выше. Можно сделать несколько спрайтов - голова, тело, ноги, руки и тд. и с помощью кода заставить их двигаться относительно друг друга.
nekroo98Дата: Воскресенье, 08 Декабря 2013, 22:52 | Сообщение # 37 | Тема: Проверка столкновения, при движении в любую сторону(РЕШЕНО)
почетный гость
Сейчас нет на сайте
В общем такие дела - 2д, передвижение поклику мыши в сторону мыши. Чет я затупил на простой вроде бы вещи - как проверить столкновение с обьектом?
Если просто instance_place - тогда он остановится одним пикселем оставшись внутри препятствия, и дальше никуда не пойдет.
Если проверять на расстоянии 1 пикселя перед собой, то я не совсем понимаю как сделать?
Подскажите

Добавлено (08.12.2013, 22:52)
---------------------------------------------
В общем, если кому надо, вот решение

Код
speed=0

if place_meeting(x,y,other)
{
x+=lengthdir_x(1,point_direction(x,y,other.x,other.y)-180)
y+=lengthdir_y(1,point_direction(x,y,other.x,other.y)-180)
}


Сообщение отредактировал nekroo98 - Воскресенье, 08 Декабря 2013, 22:53
nekroo98Дата: Воскресенье, 01 Декабря 2013, 23:29 | Сообщение # 38 | Тема: проверка косания
почетный гость
Сейчас нет на сайте
если нажата клавиша мыши(глобальное событие) - записываешь куда то координаты mouse_x, mouse_y, и идешь на эти координаты...

Сообщение отредактировал nekroo98 - Воскресенье, 01 Декабря 2013, 23:39
nekroo98Дата: Среда, 23 Октября 2013, 15:44 | Сообщение # 39 | Тема: Методы для рисования в game maker
почетный гость
Сейчас нет на сайте
Ну или можно рисовать БОЛЬШИЕ спрайты в фотошопе, прорабатывая детали, используя все доступные инструменты. А затем переносить это в ГМ, и уменьшать размер спрайта до 50х50 с наивысшим качеством. Тогда получается вполне сносно.

А ещё можно воспользоваться методом любителей PS3 - добавить эффект размытия, чтобы скрыть мелкие дефекты и более-менее размазать цвета. Иногда, к слову, выходит неплохо.

И если что, фотошоп можно привязать к гамаку, в настроечках.
nekroo98Дата: Четверг, 17 Октября 2013, 23:27 | Сообщение # 40 | Тема: Как сделать?
почетный гость
Сейчас нет на сайте
Чтобы прям плавно менялся цвет - делай аларм, пусть он каждые несколько шагов(5 скажем) меняет цвет R на R+1, не трогая остальные, когда дойдет до 255 - начинаешь менять цвет G и так далее. Ну или обнули сначала R, потом меняй следующие. В итоге цвет будет медленно перетекать из одного в другой, а не скакать рандомными тонами.
Можно сделать этот код в обьекте каком то невидимом, и поставить его в комнату, ну и сделать постоянным, если есть переходы по комнатам.
create
Код
background_color=make_color_rgb(r,g,b);r=0;g=0;b=0; alarm[0]=5;

alarm
Код
if r != 255{r += 1} else {if g != 255{g += 1} else{if b != 255{b += 1}}}
if r = 255 and g = 255 and b = 255 {r=0; g=0; b=0;}
alarm[0]=5;


Хз, будет ли оно работать в обьекте, но суть ты надеюсь уловил.


Сообщение отредактировал nekroo98 - Четверг, 17 Октября 2013, 23:36
Форум игроделов » Записи участника » nekroo98 [118]
  • Страница 2 из 6
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • »
Поиск:

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