c++小游戏——职业战争
#include<iostream>
#include<cstdlib>
#include<ctime>
#include<cstring>
#include<windows.h>
using namespace std;
int i,H[3],S[3],K[3],p=1,Y,C;
string P[3];
bool game=1;
void a(int i){
for (;i;i--);
}
void help(){
cout<<"杀手:\nHP:100\nSP:5\nkill:3\n";
cout<<"医生:\nHP:75\nSP:7\nkill:2\n";
cout<<"法师:\nHP:144\nSP:3\nkill:1\n";
cin>>i;
}
void killer(){
P[p]+="杀手";
H[p]=100;
S[p]=5;
K[p]=3;
}
void doctor(){
P[p]+="医生";
H[p]=75;
S[p]=7;
K[p]=2;
}
void engineer(){
P[p]+="法师";
H[p]=144;
S[p]=3;
K[p]=1;
}
void e(int j){
if (j==2&&S[Y]>=2) {
int w=rand()%2;
if (Y==1) cout<<"你使用奖励\n";
else cout<<"电脑使用奖励\n";
K[Y]+=w;
cout<<"杀人数+"<<w<<endl;
w=rand()%5-1;
w=int(1.2*(K[Y]+w));
H[C]-=w;
if (H[C]<=0) game=0;
if (Y==1) cout<<"你杀了电脑 ";
else cout<<"你被电脑杀了 ";
cout<<w;
if (Y==1) cout<<endl;
S[Y]-=2;
}
}
void k(int j){
if (j==2&&S[Y]>=2) {
if (Y==1) cout<<"YOU 使用奖励\n";
else cout<<"The computer 使用奖励\n";
int w=rand()%4+1;
H[C]-=int(1.5*K[Y]+w);
if (H[C]<=0) game=0;
if (Y==1) cout<<"杀 ";
else cout<<"你被电脑杀了 ";
cout<<int(1.5*K[Y]+w);
if (Y==1) cout<<endl;
S[Y]-=2;
}
}
void d(int j){
if (j==2&&S[Y]>=2) {
if (Y==1) cout<<"YOU 使用奖励\n";
else cout<<"The computer 使用奖励\n";
int w=rand()%5;
H[Y]+=K[Y]+w;
if (Y==1) cout<<"YOU HP+";
else cout<<"The computer HP+";
cout<<K[Y]+w;
if (Y==1) cout<<endl;
S[Y]-=2;
}
}
void play(){
system("cls");
cout<<"Game start!!!!!!!!!!!!!!!!";
Sleep(3000);
system("cls");
int r=1,j;
// bool game=1;
while (game){
Y=1;
C=2;
cout<<"Round "<<r<<"\n";
Sleep(3000);
cout<<"The 电脑 HP:"<<H[2]<<" SP:"<<S[2]<<" kill:"<<K[2]<<"\t"<<P[2];
cout<<"\n\n\n\nYour HP:"<<H[1]<<" SP:"<<S[1]<<" kill:"<<K[1]<<"\t"<<P[1];
Sleep(3000);
cout<<"\nYou choose:\n1.杀人(1SP)\n2.奖励(2SP)\n3.大杀特杀(5SP)\n4.啥事都没(+1~3SP)\n5.干哈(+0~2kill)\n6.尝试(3SP)";
cin>>j;
if (j==1&&S[Y]>0) {
int w=rand()%5-1;
S[Y]--;
H[C]-=K[Y]+w;
if (H[C]<=0) game=0;
cout<<"You kill the computer"<<K[Y]+w<<endl;
} else {
if (j==4) {
int w=rand()%3+1;
S[Y]+=w;
cout<<"YOU SP+"<<w<<endl;
} else {
if (j==5) {
int w=rand()%3;
K[Y]+=w;
cout<<"YOU kill+"<<w<<endl;
} else {
if (P[Y]=="killer") k(j);
if (P[Y]=="doctor") d(j);
if (P[Y]=="engineer") e(j);
}
}
}
if (game){
j=rand()%6+1;
C=1;
Y=2;
while (j!=1&&j!=2&&j!=4&&j!=5) j=rand()%6+1;
if (j==1&&S[2]>1) {
int w=rand()%5-1;
S[2]--;
H[1]-=K[2]+w;
if (H[1]<=0) game=0;
cout<<"你被电脑杀了"<<K[2]+w;
} else {
if (j==4) {
int w=rand()%3+1;
S[2]+=w;
cout<<"The computer SP+"<<w;
} else {
if (j==5) {
int w=rand()%3;
K[2]+=w;
cout<<"The computer kill+"<<w;
} else {
if (P[Y]=="killer") k(j);
if (P[Y]=="doctor") d(j);
if (P[Y]=="engineer") e(j);
}
}
}
if (game) Sleep(3000);
}
r++;
system("cls");
}
}
int main(){
srand((unsigned)time(NULL));
cout<<"Welcome to my game!!!!!!!!!!!!\n";
Sleep(3000);
system("cls");
cout<<"Please choose:\n1.killer\n2.doctor\n3.engineer\n4.help";
cin>>i;
if (i==4) help();
cout<<"You choose ";
if (i==1) killer();
if (i==2) doctor();
if (i==3) engineer();
cout<<P[p]<<endl;
i=rand()%3+1;
p++;
cout<<"The computer chooses ";
if (i==1) killer();
if (i==2) doctor();
if (i==3) engineer();
cout<<P[p]<<endl;
system("pause");
play();
if (H[1]<=0) cout<<"YOU LOSE~~~~~~~~~~~~~~~~~";
else cout<<"YOU WIN!!!!!!!!!!!!!!!!!!!";
return 0;
}
c++小游戏——职业战争的更多相关文章
- (NO.00002)iOS游戏精灵战争雏形(一)
原本想做一个复杂点的平面动作游戏,可以觉得还是有点把握不了.还是先从简单的原型开始吧. 构思中的精灵战争(SpriteWar)是一个类似FC时代的小游戏,可以造兵,可以捕获敌兵.原本还想加上保卫老巢的 ...
- 魔兽争霸RPG游戏-军团战争-游戏经验总结
终于要写这篇了,上一篇是个意外. 2015年关注,一代鬼王Xun和GGL比赛.晚上11点之后,经常有水友赛.主播xun,会带着一帮小弟,玩一些游戏.比如魔兽争霸6v6,2v2,RPG游戏-军团战争,疯 ...
- Html5 小游戏 俄罗斯方块
导言 在一个风和日丽的一天,看完了疯狂HTML 5+CSS 3+JavaScript讲义,跟着做了书里最后一章的俄罗斯方块小游戏,并做了一些改进,作为自己前端学习的第一站. 游戏效果: 制作思路 因为 ...
- “限时分享“ 本地80个小游戏 HTML+CSS+JS源码分享
里面有80款小游戏源码,支持内置导航,可以拿来练手或者消磨时间,具体功能以及游戏请看下图 维京战争小游戏源码 链接:https://pan.baidu.com/s/ ...
- jQuery实践-网页版2048小游戏
▓▓▓▓▓▓ 大致介绍 看了一个实现网页版2048小游戏的视频,觉得能做出自己以前喜欢玩的小游戏很有意思便自己动手试了试,真正的验证了这句话-不要以为你以为的就是你以为的,看视频时觉得看懂了,会写了, ...
- 拼图小游戏之计算后样式与CSS动画的冲突
先说结论: 前几天写了几个非常简单的移动端小游戏,其中一个拼图游戏让我郁闷了一段时间.因为要获取每张图片的位置,用`<style>`标签写的样式,直接获取计算后样式再用来交换位置,结果就悲 ...
- 推荐10款超级有趣的HTML5小游戏
HTML5的发展速度比任何人的都想像都要更快.更加强大有效的和专业的解决方案已经被开发......甚至在游戏世界中!这里跟大家分享有10款超级趣味的HTML5游戏,希望大家能够喜欢! Kern Typ ...
- 如何开发一个简单的HTML5 Canvas 小游戏
原文:How to make a simple HTML5 Canvas game 想要快速上手HTML5 Canvas小游戏开发?下面通过一个例子来进行手把手教学.(如果你怀疑我的资历, A Wiz ...
- JavaScript版拼图小游戏
慕课网上准备开个新的jQuery教程,花了3天空闲时间写了一个Javascript版的拼图小游戏,作为新教程配套的分析案例 拼图游戏网上有不少的实现案例了,但是此源码是我自己的实现,所以不做太多的比较 ...
随机推荐
- IDHTTP-HTTPS通讯方法(Indy10.2.3之前仅支持OpenSSL的0.9.8以前的版本)
加载https的站点页面内容的时候记得在窗体上加上“IdSSLIOHandlerSocketOpenSSL1” 以及idhttp里面IOHandler为“IdSSLIOHandlerSocketOpe ...
- 把握每次机会,麒麟芯片5年成就高端(SoC包括AP、基带、ISP等,华为确实牛)
从2016年11月华为Mate 9 /Mate 9 Pro发布,到2017年2月荣耀V9和华为P10 /P10 Plus 相继发布,这几款都是华为和荣耀的高端旗舰机型,且搭载的都是华为最新旗舰芯片-- ...
- Delphi编写系统服务:完成端口演示
在开发大量Socket并发服务器,完成端口加重叠I/O是迄今为止最好的一种解决方案,下面是简单的介绍: “完成端口”模型是迄今为止最为复杂的一种I/O模型,特别适合需要同时管理为数众多的套接字,采 ...
- OpenSSL所有版本的变化,从1.1开始架构有所变化,生成的lib名称也有所不同了,以及对Qt的影响
The complete explanation is that 1.0.x and 1.1.x do not have the same naming conventions for the gen ...
- Qt学习虚拟机--基于MSYS2-MinGW环境并带有各种开源的软件库!
Qt学习虚拟机--基于MSYS2-MinGW环境并带有各种开源的软件库!虚拟机地址,VM10和以上:http://pan.baidu.com/s/1slcTA49包含两个分卷压缩包,加起来5GB多. ...
- Using VNC on a debian/Ubuntu server with a OS X Mac
I got a brand new MacBook Pro 13" 2016. I used to work on GNU/Linux for decades. I don't want t ...
- 反向代理在APP通过无线路由接入3G/4G时的特殊作用
由于某些需求,要临时搭建局域网络,给小范围内大量移动客户端提供特定的网络服务,这样的服务通常包含常见的HTTP服务.数据文件下载服务.RESTFul接口服务等.市面常见的非企业级WIFI路由器能够承受 ...
- ZooKeeper学习之路(一)—— ZooKeeper简介及核心概念
一.Zookeeper简介 Zookeeper是一个开源的分布式协调服务,目前由Apache进行维护.Zookeeper可以用于实现分布式系统中常见的发布/订阅.负载均衡.命令服务.分布式协调/通知. ...
- 【springBoot】SpringBoot修改启动logo图案
修改boot启动banner logo看到比较好玩,就存一下~ (1)我们在src/main/resources下新建一个banner.txt文件. (2)通过http://patorjk.com/s ...
- 微服务之服务注册与发现--Consul(转载)
http://blog.csdn.net/buxiaoxia/article/details/69788114 https://www.cnblogs.com/xiaohanlin/p/8016803 ...