游戏角色生成程序

一.题目简介
1.游戏角色应有以下属性:名字、性别、种族、职业、力量、敏捷、体力、智力、智慧、生命值和魔法值。
名字:不超过50个字符。
性别:可以选择男性和女性。
种族:一共可选五个种族,人类、精灵、兽人、矮人和元素。
职业:可选六种职业,狂战士、圣骑士、刺客、猎手、祭司和巫师。
生命值=体力*20。
魔法值=(智力+智慧)*10。
2.职业限制
允许-1
不允许-0

职业 狂战士 圣骑士 刺客 猎手 祭司 巫师
人类 1 1 1 1 1 1
精灵 0 0 1 1 1 1
兽人 1 0 0 1 1 0
矮人 1 1 0 0 1 0
元素 0 0 0 0 1 1

3.属性要求
(1)五项属性的总和应该是100;
(2)属性要与职业相关,并遵循以下比例;例如猎手的敏捷值要高一点;

职业/属性 力量 敏捷 体力 智力 智慧
狂战士 40 20 30 5 5
圣骑士 25 15 30 20 10
刺客 20 35 20 15 10
猎手 15 40 15 35 15
祭司 15 20 15 35 15
巫师 10 20 10 20 40

二.程序组成
1.类组成
1.1角色生成类
功能:生成一个角色(包括角色姓名、性别、种族、职业、力量、明捷、体力、智力、智慧、生命值、魔法值属性);
1.2测试类
功能:根据用户对菜单的选择完成创建角色、保存角色、退出的操作;
2.方法组成
(1)void inputNameAndSex(){}
功能:输入角色的姓名和性别

public void inputNameAndSex(){
        System.out.print("请输入您游戏角色的姓名:");
        this.name = sc.next();
        while (true){
            System.out.print("请输入您游戏角色的性别(0 男性,1 女性):");
            this.sex = sc.nextInt();
            if(this.sex == 0||this.sex == 1){
                break;
            }else{
                System.out.println("性别输入错误!!!");
            }
        }

    }

(2)void inputRaceAndOccupation(){}
功能:输入角色的种族和职业

public void inputRaceAndOccupation(){
        while (true){
            System.out.print("请选择您游戏角色的种族(0 人类,1 精灵,2 兽人,3 矮人,4 元素):");
            race = sc.nextInt();
            if(race >= 0 && race <= 4){
                switch (race) {
                    case 0:
                        while (true) {
                            System.out.print("请选择您的职业(0 狂战士,1 圣骑士,2 刺客,3 猎手,4 祭司,5 巫师):");
                            Occupation = sc.nextInt();
                            if (Occupation >= 0 && Occupation <= 5) {
                                break;
                            } else {
                                System.out.println("职业选择错误");
                            }
                        }
                        break;
                    case 1:
                        while (true) {
                            System.out.print("请选择您的职业(2 刺客,3 猎手,4 祭司,5 巫师):");
                            Occupation = sc.nextInt();
                            if (Occupation >= 2 && Occupation <= 5) {
                                break;
                            } else {
                                System.out.println("职业选择错误");
                            }
                        }
                        break;
                    case 2:
                        while (true) {
                            System.out.print("请选择您的职业(0 狂战士,,3 猎手,4 祭司,5 巫师):");
                            Occupation = sc.nextInt();
                            if (Occupation == 0 || (Occupation >= 3 && Occupation <= 5)) {
                                break;
                            } else {
                                System.out.println("职业选择错误");
                            }
                        }
                        break;
                    case 3:
                        while (true) {
                            System.out.print("请选择您的职业(0 狂战士,1 圣骑士,4 祭司):");
                            Occupation = sc.nextInt();
                            if (Occupation == 4 || Occupation == 0 || Occupation == 1) {
                                break;
                            } else {
                                System.out.println("职业选择错误");
                            }
                        }
                        break;
                    case 4:
                        while (true) {
                            System.out.println("请选择您的职业(4 祭司,5 巫师):");
                            Occupation = sc.nextInt();
                            if (Occupation == 4 || Occupation == 5) {
                                break;
                            } else {
                                System.out.println("职业选择错误");
                            }
                        }
                        break;
                    default:
                        break;
                }
                break;
            }else{
                System.out.println("种族选择错误!!!");
            }
        }
    }

(3)void getProperty(int p,int a,int s,int i,int w){}
功能:随机生成角色的部分属性

public void getProperty(int p,int a,int s,int i,int w){
        do{
            
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值