FUN GAME 一款普通的C++游戏
凑合看吧,不是完整版。
#include<bits/stdc++.h>
#include<windows.h>
#include<conio.h>
using namespace std;
#define pt puts
#define pf printf
#define pc putchar
#define sf scanf
#define gt gets
#define sl Sleep
char name[101];
stack<int>gun;
bool chance;
int randtool(int x)//x枚子弹,y枚实弹
{
int y=rand()%(x/2)+1;
bool use[101];
memset(use,false,sizeof(use));
for(int i=1;i<=y;i++)
{
int z=rand()%x+1;
if(use[z]==true)
{
i--;
}
else
{
use[z]=true;
}
}
for(int i=1;i<=x;i++)
{
if(use[i]==true)
{
gun.push(1);
}
else
{
gun.push(0);
}
}
return y;
}
void first()
{
system("cls");
int ai=2,player=2;
bool quan=true;
while(ai>0&&player>0)
{
system("cls");
pf("您的剩余血量为%d\n",player);
pf("对方的剩余血量为%d\n",ai);
sl(3000);
if(gun.empty())
{
system("cls");
int m=rand()%2+3;
int n=randtool(m);
pf("%d枚实弹 %d枚空弹\n",n,m-n);
pt("子弹装填中……");
sl(3000);
}
int l=gun.top();
gun.pop();
int did=0;
if(quan==true)
{
system("cls");
pt("现在是您的回合");
pt("按9使用桌上的枪");
while(did!='9')
{
did=getch();
}
system("cls");
pt("按1对对方开枪");
pt("按0对自己开枪");
while(did!='0'&&did!='1')
{
did=getch();
}
system("cls");
if(did=='0')
{
pt("您选择对自己开枪");
sl(3000);
if(l==1)
{
pt("枪中是实弹");
sl(3000);
player--;
}
else
{
pt("枪中是空弹");
sl(3000);
}
}
else
{
pt("您选择对对方开枪");
sl(3000);
if(l==1)
{
pt("枪中是实弹");
sl(3000);
ai--;
}
else
{
pt("枪中是空弹");
sl(3000);
}
pt("主动权来到了对方手上");
sl(3000);
quan=false;
}
}
else
{
system("cls");
pt("人机计算中……");
did=rand()%2;
system("cls");
if(did==0)
{
pt("对方选择对自己开枪");
sl(3000);
if(l==1)
{
pt("枪中是实弹");
sl(3000);
ai--;
}
else
{
pt("枪中是空弹");
sl(3000);
}
}
else
{
pt("对方选择对您开枪");
sl(3000);
if(l==1)
{
pt("枪中是实弹");
sl(3000);
player--;
}
else
{
pt("枪中是空弹");
sl(3000);
}
pt("主动权来到了您手上");
sl(3000);
quan=true;
}
}
}
system("cls");
if(player>0)
{
system("color 06");
pt("您赢了");
sl(3000);
}
else
{
system("color 04");
pt("您输了");
sl(3000);
}
}
void start()
{
system("cls");
pt("剧情已跳过(doge)");
sl(3000);
pf("请输入昵称:");
sf("%s",name);
pt("完成!");
sl(3000);
first();
}
void home()
{
system("color 07");
char c;
pt(" 一款很新的游戏 ");
pt("");
pt(" 按 s 开始");
pt(" 按 e 退出");
c=getch();
chance=true;
if(c=='e')
{
exit(0);
}
else
{
start();
}
}
void kong()
{
}
int main()
{
srand((unsigned)time(NULL));
home();
}
FUN GAME 一款普通的C++游戏的更多相关文章
- 让你忘记 Flash 的15款精彩 HTML5 游戏
HTML5 游戏开发是一个热门的话题,开发人员和设计人员最近经常谈论到.虽然不能迅速取代 Flash 的地位,但是 HTML5 凭借它的开放性和强大的编程能力,取代 Flash 是必然的趋势.你会看到 ...
- 或许您还不知道的八款Android开源游戏引擎
很多初学Android游戏开发的朋友,往往会显得有些无所适从,他们常常不知道该从何处入手,每当遇到自己无法解决的难题时,又往往会一边羡慕于iPhone下有诸如Cocos2d-iphone之类的免费游戏 ...
- 记录一下八款开源 Android 游戏引擎
记录一下八款开源 Android 游戏引擎 虽然android学了点点,然后现在又没学了(我为啥这么没有恒心呢大哭).以后有时间还是要继续学android的,一定要啊!虽然现在没学android游戏编 ...
- [转载]或许您还不知道的八款Android开源游戏引擎
或许您还不知道的八款Android开源游戏引擎 分类: 技术文章 2010-08-04 20:27 17430人阅读 ...
- [Android游戏开发]八款开源 Android 游戏引擎 (巨好的资源)
初学Android游戏开发的朋友,往往会显得有些无所适从,他们常常不知道该从何处入手,每当遇到自己无法解决的难题时,又往往会一边羡慕于 iPhone下有诸如Cocos2d-iphone之类的免费游戏引 ...
- 八款开源 Android 游戏引擎 (巨好的资源)
转载地址:http://software.intel.com/zh-cn/blogs/2012/01/13/android-4 初学Android游戏开发的朋友,往往会显得有些无所适从,他们常常不知道 ...
- Android 八款开源 Android 游戏引擎
原文地址 本文内容 Angle Rokon LGame AndEngine libgdx jPCT Alien3d Catcake 最近无意间看到一篇关于 Android 搜索引擎的文章,于是搜索了, ...
- 如何制作一款HTML5 RPG游戏引擎——第五篇,人物&人物特效
上一次,我们实现了对话类,今天就来做一个游戏中必不可少的——人物类. 当然,你完全是可以自己写一个人物类,但是为了方便起见,还是决定把人物类封装到这个引擎里. 为了使这个类更有意义,我还给人物类加了几 ...
- 如何制作一款HTML5 RPG游戏引擎——第四篇,情景对话
今天我们来实现情景对话.这是一个重要的功能,没有它,游戏将变得索然无味.所以我们不得不来完成它. 但是要知道,使用对话可不是一件简单的事,因为它内部的东西很多,比如说人物头像,人物名称,对话内容... ...
- 如何制作一款HTML5 RPG游戏引擎——第三篇,利用幕布切换场景
开言: 在RPG游戏中,如果有地图切换的地方,通常就会使用幕布效果.所谓的幕布其实就是将两个矩形合拢,直到把屏幕遮住,然后再展开直到两个矩形全部移出屏幕. 为了大家做游戏方便,于是我给这个引擎加了这么 ...
随机推荐
- VUEX 使用学习四 : action
转载请注明出处: action 用于处理异步任务:action,可以操作任意的异步操作,类似于mutations,但是是替代mutations来进行异步操作的.首先mutations中必须是同步方法, ...
- Cortex-M3内核介绍
目录 Cortex Vendor - ARM介绍 ARM主要提供指令集,需要授权 ARM使用的RSIC结构,功耗比较低 Cortex M3整体架构 核心是Processor Core - 包含寄存器和 ...
- Oracle数据库期末考试--学堂在线
1.单选题 (2分) 在Oracle数据库中,下面哪类索引最适合SQL范围查找? 2.单选题 (2分) 在创建Oracle数据库表时,下面哪个元素不出现在CREATE TABLE语句中? 3.单选题 ...
- [转帖]haproxy
HAProxy是一个使用C语言编写的自由及开放源代码软件,其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保 ...
- [转帖]《Linux性能优化实战》笔记(20)—— 使用 tcpdump 和 Wireshark 分析网络流量
tcpdump 和 Wireshark 是最常用的网络抓包和分析工具,更是分析网络性能必不可少的利器. tcpdump 仅支持命令行格式使用,常用在服务器中抓取和分析网络包.Wireshark 除了可 ...
- [转帖]jmeter实现不写代码把测试结果存入execl
这里使用数据库作为中间件来实现不写代码就把测试结果存入execl,下面是步骤 1.新建一个setup线程组用来设置数据库连接信息和新建数据库,如下图所示,我们使用sqlite数据库来存储信息,因为不需 ...
- 华城金锐申威SW64服务器重装过程
华城金锐申威SW64服务器重装过程 背景 这边为了进行兼容性验证新进了两套申威的服务器. 一台机器带着安装好的操作系统了. 但是另外一套没有对应的系统. 端午期间想着趁着上班的人少, 加吧给处理一下. ...
- [转帖]ansible小结(七)常用模块
ansible小结(七)常用模块 http://www.361way.com/ansible-modules/4415.html 在上一篇中介绍了commands部分模块,本篇承接上篇介绍下常用的 ...
- [转帖]磁盘负载指标 %iowait, await, %util 的正确理解
说明 %iowait, await, %util 是用来衡量硬盘负载的三个指标, 但是这几个指标通常容易被误解, 实际上, 这三个指标单纯的高, 并不一定能说明相应的磁盘有问题或者有瓶颈, 而是需要结 ...
- [转帖]sudo 命令_su、sudo、sudo su、sudo -i的用法和区别
sudo 命令 1.sudo 简介 sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等.这样不仅减少了root用户 ...