访问唯一指针变量并显示它们
Accessing unique pointer variables and displaying them
我对这个网站和 c++ 编程相当陌生。我一直在努力让一些东西工作,我想我已经碰到了一堵砖墙。
对于我的项目,我正在尝试制作一个基于文本的RPG。我试图让玩家在战斗中看到他们职业的统计数据,但我不知道如何显示它。帮助将不胜感激。
include <iostream>
#include "mage.h"
#include "Warrior.h"
#include "Rogue.h"
#include "CharacterType.h"
#include <memory>
#include <string>
#include "MainGame.h"
#include "Inventory.h"
using namespace std;
int GameStart()
{
std::unique_ptr<blankCharacter> myCharacter;
std::unique_ptr<Inventory> myInventory;
string name;
int choice;
cout << " Please enter player name." << endl << endl;
cin >> name;
system("cls");
cout << "Please select fighting class." << endl << endl;
cout <<" 1 - Mage" << endl;
cout <<" 2 - Warrior" << endl;
cout <<" 3 - Rogue" << endl;
cin >> choice;
switch(choice)
{
case 1: //Mage
myCharacter = std::unique_ptr<blankCharacter>(new Mage(70,100,150,60));
myInventory = std::unique_ptr<Inventory>(new Inventory(10, 30));
break;
case 2: //Warrior
myCharacter = std::unique_ptr<blankCharacter>(new Warrior(100,160,50,60));
myInventory = std::unique_ptr<Inventory>(new Inventory(10, 30));
break;
case 3: //Rogue
myCharacter = std::unique_ptr<blankCharacter>(new Rogue(90,160,70,100));
myInventory = std::unique_ptr<Inventory>(new Inventory(10, 30));
break;
default:
cout << "Please select a relivant value 1 to 3" << endl << endl;
break;
}
system("cls");
return 0;
}
既然你使用的是system("cls")
我就假设你使用的是Windows。我建议您阅读gotoxy
函数的工作原理。
或者,如果我错了,你使用的是Linux,那么使用NCURSES库。
这两个选项都是控制台文本操作选项。如果你想让你的游戏更高级一些东西,恐怕答案不会很简短,但你可以从阅读更多关于 Unity 等游戏引擎的信息开始,或者通过学习 OpenGL 或 Direct X 来深入了解游戏图形的核心。
我很抱歉没有更具体,但这个问题很笼统。
class blankCharacter
{
protected:
int health;
int stamina;
int magic;
int Attack1;
int Attack2;
int Attack3;
int FirstAttack;
int SecondAttack;
int ThirdAttack;
int healthTodeduct;
public:
blankCharacter(int Attack1, int Attack2, int Attack3, int startingHealth, int startingStamina, int startingMagic); // Constructor
~blankCharacter(); // Destructor
}
解决问题的方式是指向值。
cout << "Magic: " << myCharacter->getMagic() << endl;
cout << "Stamina: " << myCharacter->getStamina() << endl;
cout << "Health: " << myCharacter->getHealth() << endl;
相关文章:
- 为什么静态数组成员变量在调用对象的实例后不显示任何内容?
- 为什么我的双变量通过添加 c++ 显示 nan?
- 类中的一个变量显示,但另一个不显示
- 变量在循环中显示,但不在循环中显示
- 显示 C++ 中"anonymous"变量创建的警告
- gdb映射显示不正确的成员变量
- 使用 while 循环显示顺序变量的值
- Intellisense未显示变量
- 在每次迭代中显示变量
- 无法在受保护的类中显示变量
- C++:显示变量
- 如何在C++中显示变量
- 强制编译器显示变量的类型
- C++生成器 XE 2 -- 如何在 TEdit 控件中显示变量数据
- 如何使用DrawText()来显示变量
- 使控制台标题栏显示变量的值
- c++矢量错误,显示变量有歧义-我已经尝试了一切仍然没有希望
- 使用c++获取当前运行进程中的X显示变量
- 显示变量消息的自定义异常,不同编译器中的行为不同
- 在呈现文本C++时显示变量SDL_TTF