Реализация атаки и защиты

SFML и C++ Уроки \ Разработка игр Форумы Логика игр Реализация атаки и защиты

В этой теме 7 ответов, 5 участников, последнее обновление XdubHaosX XdubHaosX 8 года/лет, 2 мес. назад.

Просмотр 8 сообщений - с 1 по 8 (из 8 всего)
  • Автор
    Сообщения
  • #2955
    +1

    zelloooo1997
    Участник
    Сообщений:2

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

    Репутация:1

    Добрый день. Как мне реализовать атаку на врага?.Есть два класса ,игрок и враг,унаследованы от Класа Юнит.В классе юнит лежит в паблик int health; Когда в класе игрок я пишу метод атака() , то не могу изменять переменную класа враг.Прошу помощи.

    Вложения:
    You must be logged in to view attached files.
    #2958
    +1
    Павел Букреев
    Павел Букреев
    Хранитель
    Сообщений:582

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

    Репутация:106

    попробуй передавать по ссылке &

    #2959
    MatrixDeity
    MatrixDeity
    Модератор
    Сообщений:31

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

    Репутация:24

    zelloooo1997, Здравствуйте!

    У родительского класса Unit можно объявить protected поля health и damage, а также публичный метод attack:

    Тогда, если player атакует enemy:

    От себя могу добавить, что мой код не является исчерпывающим. Не хватает полей (вроде maxHealth и т.д.), необходимы полноценные конструкторы, которые будут инициализировать поля, проверка текущего здоровья атакуемого юнита после нанесения урона (чтобы знать о его смерти, если таковая случится). Одним словом, код требует вашей доработки :)

    #2975
    RazorNd
    RazorNd
    Участник
    Сообщений:46

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

    Репутация:38

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

    #2981
    MatrixDeity
    MatrixDeity
    Модератор
    Сообщений:31

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

    Репутация:24

    RazorNd, код в студию :)

    #3009
    +1
    RazorNd
    RazorNd
    Участник
    Сообщений:46

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

    Репутация:38

    MatrixDeity, да пожалуйста 😉

     

    #3010
    MatrixDeity
    MatrixDeity
    Модератор
    Сообщений:31

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

    Репутация:24

    RazorNd, хорошо, очень исчерпывающе :) В другой раз прикладывайте код сразу.

    И помните, вы отвечаете не мне, а ТС.

    #3136
    XdubHaosX
    XdubHaosX
    Участник
    Сообщений:25

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

    Репутация:14

    Ай да всё проще чем ты думаешь =)
    Если поймёшь о чём я =)

    1. Все все объекты заливаешь в 1 таблицу
    2. Проходишь (update) по всем объектам
    3. И в самом классе объекта пропиши все взаимодействия с игроком. ИМЕННО в классе врага

    Примерно так http://joxi.ru/xAeN4p7uY5O9Nr

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

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