On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 05.04.11 09:27. Заголовок: Спрайт-3


Прошу помощи. Вчера весь вечер (более 4 часов) просидел за компом и немог решить задачу.
У меня:
1 спрайт - врага,
2 спрайт - врага когда по нему ударили.
3 спрайт - враг умер
4 спрайт - героя идет
5 спрайт - герой бьет (лапой)

Хотел реализовать: герой бьет, враг 1 заменяется на 2, потом назад на 1 при этом у него -1 жизнь. При lives=0 заменяю на 3. Логично. :)

Остановился:
1) жизнь врага -1, но нет смены на спрайт 2, сразу 3 (визуально не видно, попал ты во врага или нет)
2) враг умирает при первом ударе

Проблема:
1) враг меняется с 1 на 2 , жизнь -1, но при смене снова на 1, жизнь восстанавливается (безсертный враг).
2) Герой 4 должен иметь событие при столкновении с врагом на своем кадре= 5 (анимированый спрайт состоящий из 8 кадров), поскольку любое соприкосновение с врагом происходит событие см. 1)

Испробованые решение:
1 - использование глобальной переменной жизнь_монстра (результат =0).
2 - Событие столкновение врага с объектом герой => все враги умирают. :(

Жду советов, спасибо!





Спасибо: 0 
Цитата Ответить
Ответов - 4 [только новые]


New Art Games
дизайнер, сценарист




Пост N: 2596
Зарегистрирован: 19.09.05
Откуда: Россия

Награды: Мега GameCreator со стажем!
ссылка на сообщение  Отправлено: 05.04.11 14:45. Заголовок: вероятнее всего нет ..


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

Hi! I'm Joe / John / Jane / etc and I have this great idea: let's combine WOW and Quake7 into a single game! I am looking for 5 programmers, 3 modelers, 3 concept artists, 10 level designers and 4 musicians. We will create a killer, next generation MMORPG and we will split the profits (I'll get over 51%, of course)
©AUM 86
Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 05.04.11 16:00. Заголовок: Буду пробывать, спас..


Буду пробывать, спасибо!

Спасибо: 0 
Цитата Ответить
New Art Games
дизайнер, сценарист




Пост N: 2597
Зарегистрирован: 19.09.05
Откуда: Россия

Награды: Мега GameCreator со стажем!
ссылка на сообщение  Отправлено: 05.04.11 18:42. Заголовок: Пробуйте ставить экс..


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

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

Hi! I'm Joe / John / Jane / etc and I have this great idea: let's combine WOW and Quake7 into a single game! I am looking for 5 programmers, 3 modelers, 3 concept artists, 10 level designers and 4 musicians. We will create a killer, next generation MMORPG and we will split the profits (I'll get over 51%, of course)
©AUM 86
Спасибо: 0 
ПрофильЦитата Ответить



Не зарегистрирован
Зарегистрирован: 01.01.70
ссылка на сообщение  Отправлено: 07.04.11 08:11. Заголовок: Вот мое решение. 1) ..


Вот мое решение.
1) Объект "враг" - Events -Collision (столкновение с героем) - Action пишу код:
if герой.image_index=5 // номер кадра героя на который нужно реагировать
{
sprite_index=s_враг_удареный;
image_speed=0.5;
}

2) Объект "враг" - Events - Step пишу код:
// проверяю по завершении анимации s_ враг_удареный меняю назад спрайт (поскольку анимация состоит из 4 кадров)

if (sprite_index=s_ враг_удареный and image_index=3)
{
sprite_index=s_враг;
monstr_lives-=1;
image_speed=0.2;
}

Спасибо за поддержку и "наведение на локику". :)

Спасибо: 0 
Цитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 4
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет