Понедельник, 23 Декабря 2024, 02:07

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

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Проблема с объектами
hamster98Дата: Вторник, 01 Июля 2014, 12:52 | Сообщение # 1
участник
Сейчас нет на сайте
Здравствуйте! Возникла небольшая проблема с двумя объектами.
Эти два объекта: hud и cube. В кубе были созданы lives. В HUD они отображаются. Предполагалось, что после смерти кубик респаунится. Но после смерти кубика появляется ошибка. Попробовал такой код(в hud):
a=instance_number(cube)
if a=1 then pp=cube.lives else pp=pp
hud после смерти кубика исчезает.
Как сделать нормальные 3 попытки, чтобы ничто не исчезало и не эррорало(тупое слово, да.) Надеюсь на вашу помощь.
InitroДата: Вторник, 01 Июля 2014, 13:13 | Сообщение # 2
почетный гость
Сейчас нет на сайте
То есть тебе нужно три жизни(респауна)?
hamster98Дата: Вторник, 01 Июля 2014, 13:17 | Сообщение # 3
участник
Сейчас нет на сайте
Цитата Initro ()
То есть тебе нужно три жизни(респауна)?

Да.
Вот как спаун я реализовал: создается куб заново и под ним платформа.
Но создается только платформа и HUD исчезает.


Сообщение отредактировал hamster98 - Вторник, 01 Июля 2014, 13:27
InitroДата: Вторник, 01 Июля 2014, 13:38 | Сообщение # 4
почетный гость
Сейчас нет на сайте
create:
Код

lives=3;

step:
Код

if hp<=0   
{
   lives-=1;
   if !(lives=0) //Если жизни не равна 0, то создаем объект
    { cu=instance_create(x,y,cube); }
}

Добавлено (01.07.2014, 13:38)
---------------------------------------------
hamster98, Или тебе нужно именно нарисовать жизни на экран?

Сообщение отредактировал Initro - Вторник, 01 Июля 2014, 13:30
hamster98Дата: Вторник, 01 Июля 2014, 13:40 | Сообщение # 5
участник
Сейчас нет на сайте
Цитата Initro ()
create:
lives=3;
step:
if hp<=0  
{
  lives-=1;
  if !(lives=0) //Если жизни не равна 0, то создаем объект
   { cu=instance_create(x,y,cube); }
}

Спасибо, код работает, но не полностью. Не отсчитываются lives.
InitroДата: Вторник, 01 Июля 2014, 13:42 | Сообщение # 6
почетный гость
Сейчас нет на сайте
а у тебя точно переменные такие?поменяй на свои!
hamster98Дата: Вторник, 01 Июля 2014, 14:20 | Сообщение # 7
участник
Сейчас нет на сайте
Цитата Initro ()
а у тебя точно переменные такие?поменяй на свои!

Менял. То же самое

Добавлено (01.07.2014, 14:20)
---------------------------------------------
Ладно, обойдусь без респауна.

InitroДата: Вторник, 01 Июля 2014, 15:09 | Сообщение # 8
почетный гость
Сейчас нет на сайте
hamster98, да не может быть,ща проверю у себя

Добавлено (01.07.2014, 15:09)
---------------------------------------------
hamster98,
Обновил:

Код
if (hp<=0) and !(livess=0)
{  
   hp=100;
   livess-=1;  
   cu=instance_create(irandom_range(5,600),irandom_range(5,400),obj_cube);
}

Вот тебе пример
aFriendДата: Вторник, 01 Июля 2014, 15:47 | Сообщение # 9
участник
Сейчас нет на сайте
Создаешь свой кубик(o_cube), в нем жизни, скажем lives
Пишешь в create:
Код
lives = 3

когда он умирает пишешь
Код
lives -= 1
x = xstart
y = ystart

ps не могу написать код полностью т.к не знаю при каких условиях он умирает

создаешь худ, в draw пишешь
Код

if(instance_exists(o_cube)){
draw_text(0,0,o_cube.lives)
}


Сообщение отредактировал aFriend - Вторник, 01 Июля 2014, 15:48
XDominatorДата: Среда, 02 Июля 2014, 08:55 | Сообщение # 10
постоянный участник
Сейчас нет на сайте
Если у тебя вылетают ошибки, связанные с исчезновением объекта, значит ищи строчку, в которой происходит ошибка, и клади на нее сверху условие - if instance_exists(object). Ошибки вылезают из-за обращения к несуществуюшему объекту, а ты с помощью этой функции однозначно обходишь такую ситуацию.

Ghaarp

The soul lighter(Android, logic)

Zzzzombie RAGE!!!(For android)
  • Страница 1 из 1
  • 1
Поиск:

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