Game Maker - создание игр | HellRoom Games
Май 16, 2025, 01:29:47 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
Новости:
 
   Начало   Game Maker Помощь Правила форума Поиск Календарь Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Смена спрайта после смерти  (Прочитано 4031 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Arge
Новичок
*

Репутация: 0
Offline Offline

Пол: Мужской
API: GameMaker 8.1 Lite
Сообщений: 11


« : Февраль 13, 2012, 14:34:31 »

Возникла проблема со сменой спайта после гибели персонажа:
в create
{if hp>0
image_idex=0}
в step
{if hp<0
image_index=1
instance_destroy()
}
но при запуске место перонажа ничего нет.
Подскажите пожалуйста sideways
Записан
Paradox
Участник
****

Репутация: 8
Offline Offline

Пол: Мужской
API: Game Maker 8.0 Pro
Сообщений: 114

лес это как человек потемки берегите его


« Ответ #1 : Февраль 13, 2012, 14:36:51 »

 попробуй все эти действия в  

и укажи именно какой спрайт
 типа

if (hp>0)
{
  
   sprite_index=?
  sprite_idex=0
}
Записан
UncleDec
Совсем не
«Старожил форума»
******

Репутация: 276
Offline Offline

Пол: Мужской
Награды:
3000 сообщений!За постоянность! [200 дней на форуме]За лояльность! [+150 репутации]
API: Love
Сообщений: 3154


WWW
« Ответ #2 : Февраль 13, 2012, 14:36:58 »

Ну, естественно, нет. Ты ведь его удаляешь. Убери строку instance_destroy().
Записан
Arge
Новичок
*

Репутация: 0
Offline Offline

Пол: Мужской
API: GameMaker 8.1 Lite
Сообщений: 11


« Ответ #3 : Февраль 13, 2012, 14:42:45 »

Хм получается не совсем то что я хотел
- после смерти ГГ меняется отбъект  на месте ГГ
З.Ы. Paradox, Decoy спасибо за советы
Записан
Paradox
Участник
****

Репутация: 8
Offline Offline

Пол: Мужской
API: Game Maker 8.0 Pro
Сообщений: 114

лес это как человек потемки берегите его


« Ответ #4 : Февраль 13, 2012, 15:07:52 »

Цитировать
Хм получается не совсем то что я хотел
- после смерти ГГ меняется отбъект  на месте ГГ
З.Ы. Paradox, Decoy спасибо за советы



скин исходник нужно посмотреть 
Записан
UncleDec
Совсем не
«Старожил форума»
******

Репутация: 276
Offline Offline

Пол: Мужской
Награды:
3000 сообщений!За постоянность! [200 дней на форуме]За лояльность! [+150 репутации]
API: Love
Сообщений: 3154


WWW
« Ответ #5 : Февраль 13, 2012, 15:24:28 »

Ну тогда так:

Код:
if hp < 0
{
instance_change(труп, 0)
}
Записан
allilya
Посетитель
**

Репутация: 1
Offline Offline

API: Game Maker 8.0 Pro
Сообщений: 40


« Ответ #6 : Февраль 10, 2014, 14:56:04 »

Есть куча тем про смену спрайта, а конкретно по смене при смерти только эта тема... Подскажите, как правильно реализовать замену спрайта у объекта. В объект1 стреляют, он использует спрайт1 и как только у него не остается hp он должен умереть и оставить после себя спрайт2. Все, что мне удалось, это сделать так:
Код:
В Create
 if hp>0
{
sprite_index=sprite1
}
else
{
sprite_index=sprite2
}
На деле выходит так http://s2.ipicture.ru/uploads/20140210/7lWuD6z4.png
Смена спрайта после смерти
Записан
Fantom
I am... All of me
Гл. Администратор
*

Репутация: 1325
Offline Offline

Пол: Мужской
Награды:
5000 сообщений!За постоянность! [500 дней на форуме]За лояльность! [+1000 репутации]За отличные статьи по Game Maker!Тру Админ :DЗнаток Game Maker...
API: GameMaker Studio Master
Сообщений: 5026



« Ответ #7 : Февраль 10, 2014, 15:07:17 »

Легче менять на объект трупа.
Записан

AndrewVideoGames
Главный Модератор
*

Репутация: 821
Offline Offline

Пол: Мужской
Награды:
За постоянность! [500 дней на форуме]За лояльность! [+750 репутации]5000 сообщений!За помощь новичкам!
API: GameMaker Studio Pro
Деятельность: А я кто? А я руководитель!
Сообщений: 7316



« Ответ #8 : Февраль 10, 2014, 15:11:15 »

 Что вас не устраивает? Можно в степе(и остальных событиях кроме Draw) в начале выполнения кода при писать if hp>0, после этого, поставить else и написать sprite_index=s_dead
 По моему, лучше чем объект смерти создавать.
Записан
Fantom
I am... All of me
Гл. Администратор
*

Репутация: 1325
Offline Offline

Пол: Мужской
Награды:
5000 сообщений!За постоянность! [500 дней на форуме]За лояльность! [+1000 репутации]За отличные статьи по Game Maker!Тру Админ :DЗнаток Game Maker...
API: GameMaker Studio Master
Сообщений: 5026



« Ответ #9 : Февраль 10, 2014, 15:15:12 »

Что вас не устраивает? Можно в степе(и остальных событиях кроме Draw) в начале выполнения кода при писать if hp>0, после этого, поставить else и написать sprite_index=s_dead
 По моему, лучше чем объект смерти создавать.
Ага, проверка переменной в шаге, и продолжает проверять, когда лежит трупом,
много лишних переменных у трупа, которые были нужны ему при жизни, продолжают лежать в памяти,
не говорю о других проверках, которые последуют за трупом, например, взаимодействие, проверять ли столкновение трупа с объектами, с которыми он сталкивался при жизни - это же тоже требуется ограничить - лишние проверки, труп он или живой, сталкиваться или нет.
Записан

allilya
Посетитель
**

Репутация: 1
Offline Offline

API: Game Maker 8.0 Pro
Сообщений: 40


« Ответ #10 : Февраль 10, 2014, 18:05:45 »

Да, как-то не подумал о замене объекта. Таким способом получилось.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

HellRoom Games © 2006-2012 All Rights Reserved
Powered by SMF 1.1.21 | SMF © 2013, Simple Machines
Страница сгенерирована за 0.107 секунд. Запросов: 32.