第六周项目训练2带武器的角色类

来源:互联网 发布:淘宝访客数 编辑:程序博客网 时间:2024/06/05 06:57

/*   
*Copyright (c)2016,烟台大学计算机与控制工程学院   
*All rights reserved.   
*文件名称:main.cpp   
*作    者:王玙璠
*完成日期:2016年4月7日   
*版 本 号:v1.0   

问题描述:为游戏角色类Role添加武器

程序展示:

#include <iostream>

using namespace std;
class Role
{
public:
    void setRole(string M,int blood);
    void show();
    void attack();
    void eat(int );
    void beAttack();
    void weapon1();
    void weapon2();
    void weapon3();
    void weapon4();


private:
    string name;
    int blood;
    bool life;
    int shanghai=1;


};
void Role::weapon1()
{
    shanghai=shanghai+1;
}
void Role::weapon2()
{
    shanghai=shanghai+10;
}
void Role::weapon3()
{
    shanghai=shanghai+50;
}
void Role::weapon4()
{
    shanghai=shanghai+1000000000;
}
void Role ::setRole(string M,int x)
{
    blood=x;
    cout<<"创建人物姓名"<<M<<"您的初始血量为"<<blood<<endl;


}
void Role::show()
{
    if(blood>0)
        cout<<"您目前状态为"<<"live"<<"您剩余生命值为"<<blood<<"您目前攻击力为"<<shanghai<<endl;
    else
        cout<<"您目前状态为"<<"die"<<"您剩余生命值为"<<blood<<endl;
}
void Role::attack()
{
    cout<<"您造成了"<<shanghai<<"点伤害"<<endl;
}
void Role::eat(int a)
{
    blood=blood+a;
    cout<<"您补充了"<<a<<"点生命值"<<endl;
}
void Role::beAttack()
{
    blood=blood-1;
    cout<<"您受到了"<<1<<"点伤害"<<endl;
}
int main()
{
    Role mary;
    mary.setRole("Mary",4);
    mary.show();
    mary.attack();
    cout<<"请选择武器    1 板砖(攻击力增加1点)  2 匕首(攻击力增加10点) 3 沙鹰(攻击力增加50点)  4神器屠龙刀(充值可使用)(攻击力增加1000000000点)"<<endl;
    int n;
    cin>>n;
    switch(n)
    {
        case 1:mary.weapon1();break;
        case 2:mary.weapon2();break;
        case 3:mary.weapon3();break;
        case 4:mary.weapon4();break;
    }
    mary.show();
    mary.attack();
    mary.eat(2);
    mary.beAttack();
    mary.beAttack();
    mary.show();
    return 0;

}


运行结果:



0 0
原创粉丝点击