Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Termit Jykovich
0 / 0 / 0
Регистрация: 24.12.2016
Сообщений: 3
#1

Как изменить значение обьектов класса - C++

31.01.2017, 14:58. Просмотров 154. Ответов 1

Начал делать адвенчер. Перемещение есть, но когда нажимаешь "е" чтобы ударить то значение жизней дракона не изменяется. Мне сказали что "Не изменяется значение, потому что ты возвращаешь значение hp дракона, но не присваиваешь дракону новое значение hp". Но как присвоить новое значение?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#include <iostream>
#include <windows.h>
#include <string>
#include <conio.h>
using namespace std;
class Player
{
    private:
        int Healt;
        
        int cY;
        int cX;
    public:
        int Damage;
        Player(int h, int d, int x, int y)
        {
            Healt = h;
            Damage = d;
            cY = y;
            cX = x;
        }
        int Attack(int d, int h)
        {
            int hp=h-d;
            cout <<"Вы ударили дракона"<<endl;
            return hp;
        }
        void get()
        {
            cout<<"Ваши координаты: \n x="<<cX<<endl<<"y="<<cY<<endl;
        cout<<"Здоровье: "<<Healt<<endl;
        cout<<"---------------------------------------------"<<endl;
        }
        int incrY()
        {
            return cY++;
        }
        int dicrY()
        {
            return cY--;
        }
        int incrX()
        {
            return cX++;
        }
        int dicrX()
        {
            return cX--;
        }
};
class Dragon
{
    private:
        string Name;
        int Damage;
        int cX;
        int cY;
        
    public: 
        int Healt;
        friend Player;
        Dragon(int h, int d, string n, int x, int y)
        {
            Name=n;
            Healt=h;
            Damage=d;
            cX=x;
            cY=y;
        }
        void get()
        {
            cout<<"Дракон"<<endl;
            cout<<"Урон "<<Damage<<endl;
            cout<<"Здоровье "<<Healt<<endl;
            cout<<"Его зовут "<<Name<<endl;
            cout<<"______________________________________________"<<endl;
        }
};
 
int main()
{
    setlocale(LC_ALL, "Russian");
    const int x=100, y=100;
    char ch ='f';
    Player player(5, 2, 0, 0);
    Dragon boss(9,1,"Alduin", 10, 10);
    while(ch!='\r')
    {
        ch=getch();
        switch (ch)
        {
            case 's':player.dicrY();break;
            case 'w':player.incrY();break;
            case 'a':player.dicrX();break;
            case 'd':player.incrX();break;
            case 'e':player.Attack(player.Damage, boss.Healt);break;
        }
        boss.get();
        player.get();
    }
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.01.2017, 14:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как изменить значение обьектов класса (C++):

Написать функцию для класса, возращающую данный из вектора обьектов класса по итератору вектора - C++
День=добрый как написать функцию для класса возращающую данный из вектора обьектов класса по итератору вектора?? стока запроса: ...

Классы. Сортировка обьектов класса - C++
нужно отсортировать страны в континенте..программа вроде работает..но где-то ошибка..помогите найти...мелкие ошибки плохо ищутся..а мне...

Массив обьектов класса предка и производного - C++
Можно ли, если у меня есть базовый НЕ абстрактный класс и проиводный от него с добавленым полем, допустим, целое число, сделать массив,...

Передать массив обьектов в метод класса - C++
Здраствуйте господа программисты! Подскажите пожалуйста как передать массив обьектов в метод класса: #include &lt;conio.h&gt; #include...

Быстрая сортировка для массива обьектов пользовательского класса - C++
Насколько я знаю в Си++ есть встроеная ф-ция быстрой сортировки. Как нею воспользоваться для сортировки массива обьектов моего класса? Хочу...

Сериализация custom обьектов, которые имеют общего родителя и поле другого класса - C++
Подскажите пожалуйста, как мне правильно записать информацию с vector в файл, объектами vector являются кастомные классы - в моем случае...

1
MrGluck
Модератор
Эксперт CЭксперт С++
7510 / 4642 / 700
Регистрация: 29.11.2010
Сообщений: 12,677
31.01.2017, 17:58 #2
Добавить метод
C++
1
void hit(const int damage) { Healt -= damage; }
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
31.01.2017, 17:58
Привет! Вот еще темы с ответами:

Как изменить статический приватный член класса? - C++
Как изменить статический приватный член класса если менять его нужно в main()!??

Как в векторе объектов пользовательского класса изменить заданное поле у определённого элемента? - C++
Добрый день. Создан вектор из структры: struct man { char name; int age; man(void) {} man(const...

Как изменить значение в реестре? - C++
привет! Я новичек в с++, среда разработки - dev c++/ Помогите примером, мне нужно открыть необходимую ветку реестра и поменять значение...

Как изменить значение строки - C++
есть структура Struct MyStruct { String s; } можно ли изменить значение строки в ней внутри метода класса если она...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.