免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 8204 | 回复: 22
打印 上一主题 下一主题

C编程文字打斗游戏 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-12-14 10:06 |只看该作者 |倒序浏览
#include <string.h>
#include <stdio.h>
struct person
{
int no;
char name[20];
int count;}leader[2]={1,"ko",60,2,"bug",40};

main()
{
int a,i,c,z,e,b;
      int num,d=0;
a=300;
c=500;
e=3;
int name;
printf("1:ko-60/10%,2:bug-40/40%,other:20/20%*4,3:HP+120(3times) \n");

while(a>0&&c>0)
{

scanf("%d",&name);getchar();
switch (name)
{
case 1:
      srand((unsigned)time(0));
      z=rand()%10+1;
if(z==5)
{
b=a-(z*30);
printf("HIT! %d*30 \n",z);break;
}

b=a-leader[0].count;break;

case 2:

      srand((unsigned)time(0));
      z=rand()%10+1;
if(z==3||z==4||z==5||z==6)
{
b=a-(z*20);
printf("HIT! %d*20 \n",z);break;
}
else b=a-leader[1].count;
break;

case 3:
{
if(e<=0)
{printf("+HP function is Empty!!! Use 4 function \n");}
else
{
c=c+120;
b=a;
e=e-1;
printf("Your HP +120! \n");
break;}
}

default:
      srand((unsigned)time(0));
      z=rand()%10+1;
if(z==7||z==6)
{
b=a-(z*40);
printf("HIT! %d*40 \n",z);break;
}
else b=a-20;break;
}



      srand((unsigned)time(0));
      num=rand()%15+1;
if(num==3||num==4||num==6||num==5||num==2)
{
      d=c-(num*30);
      printf("NPC HIT! %d*30 \n",num);
}

else if (num==1&&b>0)
{

if(d==0)
{
d=500;
b=b+80;
d=c;
printf ("NPC HP + 80! \n");
}
else
{
b=b+80;
d=c;
printf ("NPC HP + 80! \n");
}

}
else
    {  d=c-(num*10);}

c=d;
a=b;

printf("NPC hp is %d \n",b);
printf("Your hp is %d \n",c);


}

if(b>0&&c<=0)
{
printf ("NPC WIN!! \n");
}

else if (b<=0&&c>0)
{
printf ("You WIN!! \n");
}

else if (b<=0&&c<=0)
{
printf ("ALL lose. \n");
}

}





打斗场面:
[root@localhost win_linux_share]# ./g
1:ko-60/10%,2:bug-40/40%,other:20/20%4,3:HP+120(3times)
2
NPC hp is 260
Your hp is 430
4
NPC HP + 80!
NPC hp is 320
Your hp is 430
4
NPC hp is 300
Your hp is 340
4
NPC hp is 280
Your hp is 210
4
HIT! 6*40
NPC HIT! 6*30
NPC hp is 40
Your hp is 30
1
NPC hp is -20
Your hp is 20
You WIN!!



希望大家都试试~~~提出宝贵意见和建议
谢谢!

论坛徽章:
0
2 [报告]
发表于 2011-12-14 10:11 |只看该作者
NPC:300HP,每次造成一定伤害,有30%几率造成3倍暴击并且有6%几率给自己加80HP

玩家:500HP,有四个技能:1.造成60伤害,10%造成100伤害。 2.造成40伤害,40%造成2倍暴击。3.造成20伤害,20%造成4倍暴击高伤害。4.加血术,可以使用3次,使用完再选此技能则默认使用第3招。


请参考!大家试试吧!

论坛徽章:
0
3 [报告]
发表于 2011-12-14 10:17 |只看该作者

没人试试么。。。。

论坛徽章:
46
15-16赛季CBA联赛之四川
日期:2018-03-27 11:59:132015年亚洲杯之沙特阿拉伯
日期:2015-04-11 17:31:45天蝎座
日期:2015-03-25 16:56:49双鱼座
日期:2015-03-25 16:56:30摩羯座
日期:2015-03-25 16:56:09巳蛇
日期:2015-03-25 16:55:30卯兔
日期:2015-03-25 16:54:29子鼠
日期:2015-03-25 16:53:59申猴
日期:2015-03-25 16:53:29寅虎
日期:2015-03-25 16:52:29羊年新春福章
日期:2015-03-25 16:51:212015亚冠之布里斯班狮吼
日期:2015-07-13 10:44:56
4 [报告]
发表于 2011-12-14 11:28 |只看该作者
兄台 DOTA 打多了

论坛徽章:
0
5 [报告]
发表于 2011-12-14 11:33 |只看该作者
回复 4# zhlong8


你试试吧,很不错的,有点策略和运气的成分。


我靠这个游戏赚了35块钱了,看最后你和NPC的分差如果是正数我给玩家 分数除以10的钱, 不过一般都是NPC赢,对方就给我钱了,哈哈哈哈!

论坛徽章:
0
6 [报告]
发表于 2011-12-14 16:06 |只看该作者
LZ非凡人也。

论坛徽章:
324
射手座
日期:2013-08-23 12:04:38射手座
日期:2013-08-23 16:18:12未羊
日期:2013-08-30 14:33:15水瓶座
日期:2013-09-02 16:44:31摩羯座
日期:2013-09-25 09:33:52双子座
日期:2013-09-26 12:21:10金牛座
日期:2013-10-14 09:08:49申猴
日期:2013-10-16 13:09:43子鼠
日期:2013-10-17 23:23:19射手座
日期:2013-10-18 13:00:27金牛座
日期:2013-10-18 15:47:57午马
日期:2013-10-18 21:43:38
7 [报告]
发表于 2011-12-14 16:09 |只看该作者
NPC给你钱?{:3_184:}

论坛徽章:
0
8 [报告]
发表于 2011-12-14 21:50 |只看该作者
程序有错误啊

论坛徽章:
0
9 [报告]
发表于 2011-12-14 22:13 |只看该作者
怀念 MUD 游戏的时代

论坛徽章:
0
10 [报告]
发表于 2011-12-14 22:36 |只看该作者
回复 7# hellioncu


    和朋友玩,如果他赢了,我给他钱。如果NPC赢了,折合积分给我钱,哈哈,其实就是赚了几顿午餐而已~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP