/*
* <<D Q>>
*
* Author xkfx<wyzxk_fx@163.com>
*
* 游戏规则:利用适当的决策,在13回合内击杀恶龙取得胜利。
*
* 2016 - *
*/ #include<stdio.h>
#include<stdlib.h>
#include<time.h> void show_State(int round, int dragon_HP, int warrior_HP, int warrior_MP)
{
//输出起始分割栏
printf("- ROUND-%2d ---------------\n", round);
//输出dragon状态
printf(" <Deathwing> \n");
printf(" HP = %-4d , MP = ???? \n", dragon_HP);
//输出worrior状态
printf(" <Worrior> \n");
printf(" HP = %-4d , MP = %-4d \n", warrior_HP, warrior_MP);
//输出结束分割栏
printf("--------------------------------\n");
} void show_Skill()
{
printf("Here is your actions:\n");
//show hero skill
printf("1 Holy Light -140mp\n");
//show basic skill
printf("2 Normal Attack -20mp\n");
printf("3 Force of Nature -0mp\n");
//show final skill
printf("4 Sword of Judgement \n");
printf(">Warrior, please choose your action:");
} int main()
{
/*创建游戏所需的数据*/
int dragon_HP = ;
int warrior_HP = ;
int warrior_MP = ;
int score = ;
int skill_tmp = ;
int skill_tmp_2 = ;
int round;
int choice; srand((int)time());
system("cls");
for(round = ; round <= ; round ++){
srand(rand());
/*显示人物状态*/
show_State(round, dragon_HP, warrior_HP, warrior_MP);
/**/
if(round == )
printf("Deathwing: ALL WILL BURN...\n");
/*显示决策信息*/
show_Skill();
/*选择决策*/
scanf("%d", &choice);
system("cls");
/*执行决策&优先判定敌方*/
/*warrior*/
switch(choice){ case :
if(warrior_MP < )
break;
skill_tmp = - warrior_HP; warrior_HP = ;
warrior_MP = warrior_MP - ; score = score - skill_tmp; printf("Warrior: I am theone horseman of the Apocalypse!\n");
printf("You has restored %d HP.\n", skill_tmp);
break; case :
if(warrior_MP < )
break;
skill_tmp = skill_tmp_2 + + rand()%; dragon_HP = dragon_HP - skill_tmp;
warrior_MP = warrior_MP - ; skill_tmp_2 = ; score = score + skill_tmp; printf("Your cause %d damage !\n", skill_tmp);
break; case :
skill_tmp_2 = skill_tmp_2 + + rand()%;
printf("Your Damage Pool: %d\n", skill_tmp_2);
break; case :
skill_tmp = warrior_HP + + rand()%; dragon_HP = dragon_HP - skill_tmp;
warrior_HP = ; score = score + skill_tmp; printf("warrior: Embrace the end!\n");
printf("Your cause %d damage !\n", skill_tmp);
break; default:
break;
}
if(dragon_HP <= ){
printf("Deathwing: It is impossible !?...\n");
printf("warrior: Embrace the end! So be it!\n");
printf(".....\n");
printf("..YOU WIN!\n");
break;
}
/*dragon*/
skill_tmp = + rand()%;
warrior_HP = warrior_HP - skill_tmp;
printf("You got a few injuries - %d HP\n", skill_tmp);
if(warrior_HP <= ){
printf("...\n");
printf("......\n");
printf("..GAME OVER.\n");
break;
}
/*显示决策结果*/
}
/*显示游戏结果*/
if(dragon_HP <= ){
score = score + ( - round) * ;
}else{
score = score + round * ;
}
if(warrior_HP >= && dragon_HP >= )
printf("The game ended in a draw.\n");
printf("\nYour final score: %d\n", score);
  system("pause");
return ;
}

Doragon Kuesuto 1.6的更多相关文章

  1. Doragon Kuesuto 1.0

    #include<stdio.h> #include<stdlib.h> #include<time.h> int main() { ; ; ; int actio ...

  2. Doragon Kuesuto 1.15

    #include<stdio.h> #include<stdlib.h> #include<time.h> int main() { ; ; ; int actio ...

  3. FIRST GAME.

    -Doragon Kuesuto(.c) Doragon Kuesuto 1.0 Doragon Kuesuto 1.15 Doragon Kuesuto 1.6

随机推荐

  1. Oracle将表keep到内存

    一.引言: 有时候一些基础表需要非常的频繁访问,尤其是在一些循环中,对该表中的访问速度将变的非常重要.为了提高系统的处理性能,可以考虑将一些表及索引读取并保存到内存中. 二.关于keep内存的几个参数 ...

  2. Linux批量修改用户密码

    对系统定期修改密码是一个很重要的安全常识,通常,我们修改用户密码都使用passwd user这样的命名来修改密码,但是这样会进入交互模式,即使使用脚本也不能很方便的批量修改,除非使用expect这样的 ...

  3. PHP安全函数phpinfo()

    phpinfo() 功能描述:输出 PHP 环境信息以及相关的模块.WEB 环境等信息. 危险等级:中 passthru() 功能描述:允许执行一个外部程序并回显输出,类似于 exec(). 危险等级 ...

  4. 【转】Firefox快捷键

    转载地址: http://www.douban.com/note/140139119/ Ctrl + 数字键来打开第N个标签页这种还要先数完再到键盘上找数字Ctrl + Page Up = 激活左边一 ...

  5. YTU 3006: 迷宫问题(栈与队列)

    3006: 迷宫问题(栈与队列) 时间限制: 1 Sec  内存限制: 128 MB 提交: 3  解决: 1 题目描述 编写一个求解迷宫问题的程序,要求输出迷宫的所有路径,并求最短路径长度及最短路径 ...

  6. Hangover 分类: POJ 2015-06-11 10:34 12人阅读 评论(0) 收藏

    Hangover Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 108765   Accepted: 53009 Descr ...

  7. java单元测试(Junit)

    Eclipse最基本的模块测试 1:首先创建一个java工程,在工程中创建一个被单元测试的Student数据类,如下: package UnitTest; public class Student { ...

  8. ural 1112,LIS

    题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1112 题意:n根线段,要拿走一些,使得任何的线段的左段没有在某一个线段的内部. 其实说白 ...

  9. ubuntu安装和查看已安装

    说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装.卸载和删除的方法. 一.U ...

  10. 什么是RAW数据?

    现在数码照片的存储格式,以及在网络上应用的最普遍的图片格式就是JPEG格式了(Joint Photographic Expert Group).但是作为一种有损的图像压缩格式(现在也有少数数码相机提供 ...