更新内容:

1.加入新boss,更高的难度。

2.支持组队模式勒!

3.针对大家反应的人物属性算法进行了修改,现在人物属性更多的取决于名字而不是随机数

4.用户界面优化

//by floatiy#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<ctime>
#include<windows.h>
using namespace std;
string name[2000];
int n;
struct I {int heal;int att;int stand;int buff;int baoji;int lengdong;int flag;string s;
}id[2000];
//显示部分
void welcome(){printf("                             SDFZ版名字竞技场\n");printf("几人对战?\n");cin>>n;printf("输入名字:\n");for(int i = 1;i <= n;i++){cin>>name[i];}printf("按顺序输入战队(数字):");for(int i = 1;i <= n;i++){cin>>id[i].flag;}printf("请稍后");
}
void print() {printf("                             SDFZ版名字竞技场\n");
//          --------------------------------------------------------------------------------printf("                                          by floatiy\n");for(int i = 1; i <= n; i++) {cout <<"    "<<id[i].s<<"    HP:"<<id[i].heal<<"    攻击:"<<id[i].att<<"    防御:"<<id[i].stand;cout<<"    暴击:"<<id[i].baoji<<"    冷冻:"<<id[i].lengdong<<endl;}for(int i = 1; i <= n; i++) {cout<<id[i].flag<<"队 "<<id[i].s<<" HP ";int tmp=id[i].heal;while(tmp > 0) {tmp-=30;cout<<"-";}cout<<endl;}printf("\n\n");
}//初始化
void init_Teacher(string x,int num) {if(x== "静静") {id[num].baoji = 0;id[num].heal += 400;id[num].lengdong = 0;id[num].att += 50;id[num].stand = 30;}
}
void init_MP5(string x,int num) {if(x== "MP5娘") {id[num].baoji += 100;id[num].heal += 150;id[num].lengdong = 0;id[num].stand = 10;}
}
void init_WWQ(string x,int num) {if(x== "王文强") {id[num].baoji = 0;id[num].heal += 250;id[num].lengdong = 0;id[num].att = 50;}
}
void BOSS() {for(int i = 1; i <= n; i++) {init_MP5(name[i],i);init_WWQ(name[i],i);init_Teacher(name[i],i);}
}
void join(I &x,string neko) {x.s = neko;x.att = x.s[1] + (rand() % 20);if(x.att < 0) x.att *= -1;x.heal = x.s[0] - x.s[2] + rand() % 211;x.heal *= 7;x.stand = rand() % x.s[1];x.att += 70;Sleep(200);x.baoji = rand() + x.s[2];x.baoji %= 10;Sleep(500);x.lengdong = rand()-x.s[1];x.lengdong %= 10;x.lengdong += 10;x.baoji += 20;if(x.heal < 0) x.heal *= -1;Sleep(1000);
}
void init() {for(int i = 1;i <= n;i++){join(id[i],name[i]);}BOSS();system("cls");
}//技能
void hit(I &x,I &y);
bool teacher_BOSS(I &x,I &y,int opt){if(x.s == "静静" && opt % 2 == 0) {y.heal = -100;print();cout<<"--------------------------------------------------------------------------------"<<endl;cout<<"静静发现"<<y.s<<"在玩游戏,来查房了!"<<endl;Sleep(500);cout<<y.s<<"出局了!"<<endl;Sleep(1500);system("cls");return 1;}return 0;
}
bool tongji_BOSS(I &x,I &y,int opt) {if(x.s == "王文强" && opt % 3 == 0) {x.baoji += 10;x.heal += 300;x.lengdong += 5;print();cout<<"                                                        当前回合:"<<x.s<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<"王文强开始了通技课,各项能力提高了!"<<endl;Sleep(500);cout<<"然而大家都睡着了。。。对方跳过一回合"<<endl;Sleep(1500);system("cls");hit(x,y);return 1;}return 0;
}
bool MP5_BOSS(I &x,I &y,int opt) {if(x.s == "MP5娘" && opt % 3 == 0) {int ham = x.att;if(ham <= 5) ham = 5;x.stand += 10;y.heal -= ham*7;print();cout<<"                                                        当前回合:"<<x.s<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<x.s<<"启动了核心"<<endl;cout<<x.s<<"造成了"<<ham*7<<"点伤害!"<<endl;Sleep(500);cout<<y.s<<"还有"<<y.heal<<"点生命!"<<endl;Sleep(500);cout<<"MP5娘开启了力场,防御++"<<endl;if(y.heal < 0){Sleep(300);y.buff = 1;cout<<y.s<<"被击倒了"<<endl;}Sleep(1500);system("cls");return 1;}return 0;
}
bool BAOJI(I &x,I &y,int opt) {if(0<opt && opt < x.baoji) {int ham = x.att - rand() % 20;if(ham <= 5) ham = 5;ham *= 3;y.heal -= ham;print();cout<<"                                                        当前回合:"<<x.s<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<x.s<<"打出了致命一击!"<<endl;cout<<x.s<<"造成了"<<ham<<"点伤害!"<<endl;Sleep(500);cout<<y.s<<"还有"<<y.heal<<"点生命!"<<endl;if(y.heal < 0){Sleep(300);y.buff = 1;cout<<y.s<<"被击倒了"<<endl;}Sleep(1500);system("cls");return 1;}return 0;
}
bool FREEZE(I &x,I &y,int opt) {if(50 <= opt && opt <= 50 + x.lengdong) {int ham = y.heal * 0.4;y.heal -= ham;print();cout<<"                                                        当前回合:"<<x.s<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<x.s<<"打开了对方的月考卷子!敌人凉凉了"<<endl;cout<<x.s<<"造成了"<<ham<<"点伤害!(剩余生命的40%)"<<endl;Sleep(500);cout<<y.s<<"还有"<<y.heal<<"点生命!暂停一回合"<<endl;if(y.heal < 0){Sleep(300);y.buff = 1;cout<<y.s<<"被击倒了"<<endl;}Sleep(1500);system("cls");hit(x,y);return 1;}return 0;
}
bool AOYE(I &x,I &y,int opt) {if(opt%7 ==0) {int ham = y.att * 0.4;y.att -= ham;y.heal += 50;print();cout<<"                                                        当前回合:"<<x.s<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<x.s<<"留了大量的作业!"<<endl;cout<<y.s<<"熬夜爆肝,攻击力下降了"<<ham<<"!"<<endl;cout<<y.s<<"学到了知识,体力恢复了50点!"<<endl;Sleep(1500);system("cls");return 1;}return 0;
}
bool GEDANG(I &x,I &y,int opt) {if(y.stand > opt) {y.heal += 50;print();cout<<"                                                        当前回合:"<<x.s<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<x.s<<"的攻击被格挡了!"<<endl;cout<<y.s<<"去校园服务部吃东西"<<endl;cout<<y.s<<"体力恢复了50点!"<<endl;Sleep(1500);system("cls");return 1;}return 0;
}//主体
void judge() {int cnt = 0;int col = 0;for(int i = 1; i <= n; i++) {if(id[i].heal > 0 && col == 0) col = id[i].flag;if(id[i].heal > 0 && col != id[i].flag) return;}cout<<col<<"队胜利了!"<<endl;cout<<"幸存:";for(int i = 1;i <= n;i++){if(id[i].heal > 0) cout<<id[i].s<<" ";}exit(0);
}
void hit(I &x,I &y) {if(x.heal<0 || y.heal<0) return;int opt = rand() % 100 + 1;if(tongji_BOSS(x,y,opt)) return;else if(MP5_BOSS(x,y,opt)) return;else if(teacher_BOSS(x,y,opt)) return;else if(BAOJI(x,y,opt)) return;else if(FREEZE(x,y,opt)) return;else if(GEDANG(x,y,opt)) return;else if(AOYE(x,y,opt)) return;int ham = x.att - rand() % 20;if(ham <= 5) ham = 5;y.heal -= ham;print();cout<<"                                                        当前回合:"<<x.s<<endl;cout<<"--------------------------------------------------------------------------------"<<endl;cout<<x.s<<"造成了"<<ham<<"点伤害!"<<endl;Sleep(500);cout<<y.s<<"还有"<<y.heal<<"点生命!"<<endl;if(y.heal < 0){Sleep(300);y.buff = 1;cout<<y.s<<"被击倒了"<<endl;}Sleep(1500);system("cls");
}
void begin() {while(1) {for(int i = 1; i <= n; i++) {for(int j = 1; j <= n; j++) {if(i == j) continue;if(id[i].flag && id[j].flag && id[i].flag == id[j].flag) continue;if(id[j].buff != 1 && id[i].buff != 1) hit(id[i],id[j]);judge();}}}
}
//id[2].heal
//主函数
int main() {srand(time(NULL));welcome();init();begin();return 0;
}//by SDFZ-Floatiy

《名字竞技场 V3.0》 组队功能开放!相关推荐

  1. 名字竞技场 V3.0

    更新内容 1.加入新boss,更高的难度. 2.支持组队模式勒! 3.针对大家反应的人物属性算法进行了修改,现在人物属性更多的取决于名字而不是随机数 4.用户界面优化 INF.代码拿走赞留下,不然你赢 ...

  2. 2023最新匿名短信一封来信系统源码V3.0版+功能很完善

    正文: 更新3.0版本了,修正了不少BUG,新增了用户分销功能,程序稳定无BUG,短信API已给大家对接好了,直接安装就可以使用了. 程序一般用于:给TA的一封匿名信-匿名信箱,一款表白.祝福.道歉. ...

  3. microbit python编译器_micro:bit MakeCode 2020 (V3.0) 测试版功能介绍

    micro:bit makecode 2020 beta 版已经发布一个多月了,正式版也即将发布(官方计划于6月发布).下面介绍这个版本的最新功能. 具有返回值的函数 V2版中添加了带有参数的函数,现 ...

  4. 可在广域网部署运行的QQ高仿版 -- GG叽叽V3.0,完善基础功能(源码)

    (前段时间封闭式开发完了一个项目,最近才有时间继续更新GG的后续版本,对那些关注GG的朋友来说,真的是很抱歉.)GG的前面几个版本开发了一些比较高级的功能,像视频聊天.远程桌面.文件传送.远程磁盘等, ...

  5. 开源进展 | WeBASE v3.0发布,支持适配FISCO BCOS v3.0稳定版

    WeBASE(WeBank Blockchain Application Software Extension) 是在区块链应用和FISCO BCOS底层之间搭建的一套通用组件,围绕交易.合约.密钥管 ...

  6. python写一个通讯录step by step V3.0

    python写一个通讯录step by step V3.0 更新功能: 数据库进行数据存入和读取操作 字典配合函数调用实现switch功能 其他:函数.字典.模块调用 注意问题: 1.更优美的格式化输 ...

  7. 【数据结构与算法】双链表V3.0的Java实现

    更新说明 经过了双链表V1.0的根据接口编写成型.双链表V2.0的功能大幅度增强,这里推出了双链表V3.0,功能的丰富性不及V2.0,但加入了迭代器,代码的编写也更加的合理了,应该说是比较好的作品了. ...

  8. 【数据结构与算法】顺序表V3.0的Java实现

    更新说明 经过了顺序表V1.0的根据接口编写成型.顺序表V2.0的功能大幅度增强,这里推出了顺序表V3.0,功能的丰富性不及V2.0,但加入了迭代器,代码的编写也更加的合理了,应该说是比较好的作品了. ...

  9. 在线装机测试软件,完美装机大师工具V3.0专业版

    最新完美装机大师工具V3.0专业版,如XP系统下载之家率先分享: 完美装机大师工具V3.0专业版是一款免费的系统重装工具,可以让你重装系统的步骤变的简单,让你一键就能够安装系统的目的.让更多人少花时间 ...

最新文章

  1. python 中文转unicode编码_Python 解码 Unicode 转义字符串
  2. 解决eclipse报PermGen space异常的问题
  3. PHP中使用RabiitMQ---各项参数的使用方法
  4. 数据库中触发器、事务
  5. 敏捷开发用户故事系列之七:用户故事与MVC
  6. 北航计算机学硕还是专硕,经验教训-2018二战考研北航计算机
  7. 第 7 章 Neutron - 077 - 配置 linux-bridge mechanism driver
  8. 全球第二和第四大航运公司加入物流巨头Maersk的区块链平台
  9. Pytorch/Tensorflow:tf.multiply torch.mul(矩阵对应元素各自相乘)
  10. word外部表不是预期的格式_邮件合并为什么会出现外部表不是预期格式
  11. arcos的matlab定义,想用matlab解一个带arccos的方程。可是结果好像没有解析解。求帮助解数值解...
  12. heic照片格式怎么转换jpg?heic转换成jpg方法分享
  13. APP内搜索:下一代搜索属于百度还是微信?
  14. SIGIR'22 | 利用最小化互信息学习反事实推断中的解耦表征
  15. 动态规划的最优原理与无后效性解析
  16. byval 和byref的区别,今天刚明白。
  17. 74LS148+74LS47简易病房呼叫系统电路图
  18. Java中高级面试题部分答案解析
  19. 本周大新闻|传微软解散工业元宇宙团队,MIT研发垂直堆叠全彩Micro LED
  20. 专科段《工商企业管理》课程复习资料(4)——计算题

热门文章

  1. 以水稻为例教你如何使用BSA方法进行遗传定位(上篇)
  2. Revit SDK EXTENSIONS(软件开发工具包扩展)是什么
  3. [网页设计]如何在Photoshop里画虚线?
  4. prosper loan data EDA分析(特征字典)
  5. c++ mupdf 提取pdf文件里面图片
  6. 2021-4-19学习笔记
  7. day02 软考习题理解
  8. matlab零序五次谐波,五次谐波选线法的仿真分析
  9. 微信小程序开发01 双线程模型:为什么小程序不用浏览器的线程模型?
  10. 一个不错的免费打电话的程序