Пожалуйста, разорвите этот код на части, сделайте его сложным и едва читаемым, я бы лучше однажды выучил трудный путь, чем многократно изучал одно и то же.
Базовый класс выглядит следующим образом:
class baseMob{
private:
int _healthMax;
int _healthCurrent;
int _manaMax;
int _manaCurrent;
int _experiencePoints;
public:
//Set max Hp
void setHealthMax(int);
//Get max Hp
int getHealthMax();
//Set Current Hp
void setCurrentHealth(int);
//Get Current Health
int getCurrentHealth();
//Set Max Mana
void setMaxMana(int);
//Get Max Mana
int getMaxMana();
//Set Current Mana
void setCurrentMana(int);
//Get Current Mana
int getCurrentMana();
//getMob Exp on kill
int getExperiencePoints();
//Set mob Exp points
void setExperiencePoints(int);
//leaving out the member functions for space conservation
};
Индивидуальный моб, которого я пытаюсь создать, - это зеленая слизь, которую я пытаюсь создать с помощью созданного по умолчанию конструктора ...
class greenSlime: private baseMob{
public:
greenSlime(){
setHealthMax(100);
setMaxMana(100);
setCurrentHealth(100);
setCurrentMana(100);
setExperiencePoints(150);
}
};
Моя основная функция выглядит следующим образом:
greenSlime slime();
for(; slime.getCurrentHealth() >= 0; slime.setCurrentHealth(-1)){
cout << "The current health of the slime is: " << slime.getCurrentHealth() << endl;
if (slime.getCurrentHealth() <= 0 ){
cout << "Player is awarded with: " << slime.getExperiencePoints() << " Experience. ";
}
}
Если кто-то захочет разорвать это и заставить меня выглядеть как осел, я буду очень признателен за помощь.
Ошибка, которую я сейчас получаю:
Project1.cpp: 107: ошибка: запрос на член getCurrentHealth' in
slime ', который имеет неклассовый тип `greenSlime () ()'
Наряду с другими ошибками того же типа.
Tl; Dr: Реализация класса не работает, разместил весь мой источник, когда я, вероятно, мог бы опубликовать около 1/10 этого и все еще имел смысл, и хотел бы, чтобы кто-то сказал мне, почему он не работает и как я плохой.