Вопрос по уничтожению обьекта

SFML и C++ Уроки \ Разработка игр Форумы SFML Graphics Вопрос по уничтожению обьекта

В этой теме 5 ответов, 2 участника, последнее обновление  BunDem 3 мес. назад.

Просмотр 6 сообщений - с 1 по 6 (из 6 всего)
  • Автор
    Сообщения
  • #4382
    Alex_Ken
    Alex_Ken
    Участник
    Сообщений:12

    Зарегистрирован:
    07.01.2017

    Репутация:0

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

    #4386
    +1

    BunDem
    Участник
    Сообщений:96

    Зарегистрирован:
    10.05.2015

    Репутация:21

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

    #4392
    Alex_Ken
    Alex_Ken
    Участник
    Сообщений:12

    Зарегистрирован:
    07.01.2017

    Репутация:0

    Это типо так?

    if (p.life) {
    gameTime = gameTimeClock.getElapsedTime().asSeconds();
    }
    else
    {
    text3.setString(“GAME OVER”);
    text3.setPosition(250, 200);

    p.sprite=s_boom;
    }

    смотри ветку else, в ней указываются действия когда жизни закончились у игрока.

    p.sprite – спрайт игрока

    s_boom – спрайт взрыва

    #4394

    BunDem
    Участник
    Сообщений:96

    Зарегистрирован:
    10.05.2015

    Репутация:21

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

    #4397
    Alex_Ken
    Alex_Ken
    Участник
    Сообщений:12

    Зарегистрирован:
    07.01.2017

    Репутация:0

    это типа в ветке else такое писать чтоль? p.sprite.setTexture(t_boom), а вывести как? window.draw(p.sprite)?

    #4425
    +1

    BunDem
    Участник
    Сообщений:96

    Зарегистрирован:
    10.05.2015

    Репутация:21

    Можете в классе игрока создать еще одну текстуру, в которую положите изначально изображение взрыва, создаете метод

    потом вызывать просто метод, когда умирает ваш персонаж p.boom();

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

Просмотр 6 сообщений - с 1 по 6 (из 6 всего)

Для ответа в этой теме необходимо авторизоваться.