第一代,不是很完善,会在后续增加更多的功能

主:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace 对战游戏
{class Program{static void Main(string[] args){Random r = new Random();Soldier s1 = new Soldier();Console.Write("请输入角色名:");s1.Name = Console.ReadLine();s1.Attack = r.Next(10, 101);s1.Blood = r.Next(2000, 3501);zhaoshi z1 = new zhaoshi();Console.Write("请输入技能1名称:");z1.Name = Console.ReadLine();z1.Attack= r.Next(100, 201);s1.Skill = z1;zhaoshi z2 = new zhaoshi();Console.Write("请输入技能2名称:");z2.Name1 = Console.ReadLine();z2.Attack1 = r.Next(150, 250);s1.Skill1 = z2;zhaoshi z3 = new zhaoshi();Console.Write("请输入必杀技名称:");z3.Name = Console.ReadLine();z3.Attack = r.Next(350, 501);s1.Slay= z3;//闪避s1.Miss = r.Next(0, 20);//格挡s1.block = r.Next(0, 50);Soldier s2 = new Soldier();Console.Write("请输入角色名:");s2.Name = Console.ReadLine();s2.Attack = r.Next(10, 101);s2.Blood = r.Next(2000, 3501);zhaoshi z4 = new zhaoshi();Console.Write("请输入技能1名称:");z4.Name = Console.ReadLine();z4.Attack = r.Next(100, 201);s2.Skill = z4;zhaoshi z5 = new zhaoshi();Console.Write("请输入技能2名称:");z5.Name1 = Console.ReadLine();z5.Attack1 = r.Next(150, 250);s2.Skill1 = z5;zhaoshi z6 = new zhaoshi();Console.Write("请输入必杀技名称:");z6.Name = Console.ReadLine();z6.Attack = r.Next(350, 501);s2.Slay = z6;s2.Miss = r.Next(0, 20);s2.block = r.Next(0, 50);Console.WriteLine("============================================战士信息展示=============================================");Console.WriteLine("战士1:" + s1.Name + ",攻击:" + s1.Attack + ",闪避:" + s1.Miss + ",格挡:" + s1.block + ", 血量:" + s1.Blood + ",技能1:" + s1.Skill.Name + "," + s1.Skill.Attack + ",技能2:" + s1.Skill1.Name1 + "," + s1.Skill1.Attack1 + ",必杀技:" + s1.Slay.Name + "," + s1.Slay.Attack);Console.WriteLine("战士2:" + s2.Name + ",攻击:" + s2.Attack + ",闪避:" + s2.Miss + ",格挡:" + s1.block + ",血量:" + s2.Blood + ",技能1:" + s2.Skill.Name + "," + s2.Skill.Attack + ",技能2:" + s2.Skill1.Name1 + "," + s2.Skill1.Attack1 + ",必杀技:" + s2.Slay.Name + "," + s2.Slay.Attack);Console.WriteLine("按下任意键开始战斗!!!");Console.ReadKey();int count = 1;while (true){Console.WriteLine("==========================第" + count + "回合==========================");System.Threading.Thread.Sleep(1500);if (r.Next(0, 101) < s2.Miss){Console.WriteLine(s2.Name + "躲避了此次攻击!!!");}else{if (r.Next(0, 101) < s2.block){{Console.WriteLine(s2.Name + "格挡了此次攻击!!!");}}else{int ss1 = r.Next(0, 100);if (ss1 > 90)//开大招
                        {Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine("【" + s1.Name + "】对【" + s2.Name + "】释放了★★★★★▄︻┻═┳一" + s1.Slay.Name + "★★★★★,造成" + s1.Slay.Attack + "点伤害,【" + s2.Name + "】剩余" + (s2.Blood - s1.Slay.Attack) + "点血量");Console.WriteLine();//S2扣血s2.Blood -= s1.Slay.Attack;}else if (ss1 >= 70 && ss1 <= 90)//开小招
                        {int ss3 = r.Next(0, 100);if (ss3 >= 0 && ss3 < 50){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("【" + s1.Name + "】对【" + s2.Name + "】释放了☆☆☆" + s1.Skill.Name + "☆☆☆,造成" + s1.Skill.Attack + "点伤害,【" + s2.Name + "】剩余" + (s2.Blood - s1.Skill.Attack) + "点血量");Console.WriteLine();//S2扣血s2.Blood -= s1.Skill.Attack;}else{Console.ForegroundColor = ConsoleColor.Blue;Console.WriteLine("【" + s1.Name + "】对【" + s2.Name + "】释放了☆☆☆" + s1.Skill1.Name1 + "☆☆☆,造成" + s1.Skill1.Attack1 + "点伤害,【" + s2.Name + "】剩余" + (s2.Blood - s1.Skill1.Attack1) + "点血量");Console.WriteLine();//S2扣血s2.Blood -= s1.Skill.Attack;}}else//普通攻击
                        {Console.ForegroundColor = ConsoleColor.White;Console.WriteLine("【" + s1.Name + "】攻击了【" + s2.Name + "】,造成" + s1.Attack + "点伤害,【" + s2.Name + "】剩余" + (s2.Blood - s1.Attack) + "点血量");Console.WriteLine();//S2扣血s2.Blood -= s1.Attack;}//判断战士2是否阵亡if (s2.Blood <= 0){Console.WriteLine("【" + s2.Name + "】已阵亡!【" + s1.Name + "】是获胜者!!!");break;}}//战士2开始攻击
System.Threading.Thread.Sleep(1500);if (r.Next(0, 101) < s1.Miss){Console.WriteLine(s1.Name + "躲避了此次攻击!!!");}else{if (r.Next(0, 101) < s1.block){{Console.WriteLine(s1.Name + "格挡了此次攻击!!!");}}else{int ss2 = r.Next(0, 100);if (ss2 > 90)//开大招
                            {Console.ForegroundColor = ConsoleColor.Red;Console.WriteLine("【" + s2.Name + "】对【" + s1.Name + "】释放了★★★★★▄︻┻═┳一" + s2.Slay.Name + "★★★★★,造成" + s2.Slay.Attack + "点伤害,【" + s1.Name + "】剩余" + (s1.Blood - s2.Slay.Attack) + "点血量");Console.WriteLine();//S2扣血s1.Blood -= s2.Slay.Attack;}else if (ss2 >= 70 && ss2 <= 90)//开小招
                            {int ss4 = r.Next(0, 100);if (ss4 >= 0 && ss4 < 50){Console.ForegroundColor = ConsoleColor.Yellow;Console.WriteLine("【" + s2.Name + "】对【" + s1.Name + "】释放了☆☆☆" + s2.Skill.Name + "☆☆☆,造成" + s2.Skill.Attack + "点伤害,【" + s1.Name + "】剩余" + (s1.Blood - s2.Skill.Attack) + "点血量");Console.WriteLine();//S2扣血s1.Blood -= s2.Skill.Attack;}else{Console.ForegroundColor = ConsoleColor.Blue;Console.WriteLine("【" + s2.Name + "】对【" + s1.Name + "】释放了☆☆☆" + s2.Skill1.Name1 + "☆☆☆,造成" + s2.Skill1.Attack1 + "点伤害,【" + s1.Name + "】剩余" + (s1.Blood - s2.Skill1.Attack1) + "点血量");Console.WriteLine();//S2扣血s1.Blood -= s2.Skill.Attack;}}else//普通攻击
                            {Console.ForegroundColor = ConsoleColor.White;Console.WriteLine("【" + s2.Name + "】攻击了【" + s1.Name + "】,造成" + s2.Attack + "点伤害,【" + s1.Name + "】剩余" + (s1.Blood - s2.Attack) + "点血量");Console.WriteLine();//S2扣血s1.Blood -= s2.Attack;}if (s1.Blood <= 0){Console.WriteLine("【" + s1.Name + "】已阵亡!【" + s2.Name + "】是获胜者!!!");break;}}}}count++;}Console.ReadKey();}}
}

View Code

辅:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace 对战游戏
{class zhaoshi{private string name;/// <summary>/// 招式名称/// </summary>public string Name{get { return name; }set { name = value; }}private string name1;/// <summary>/// 招式名称/// </summary>public string Name1{get { return name1; }set { name1 = value; }}private int attack;/// <summary>/// 招式攻击/// </summary>public int Attack{get { return attack; }set { attack = value; }}private int attack1;/// <summary>/// 招式攻击/// </summary>public int Attack1{get { return attack1; }set { attack1 = value; }}}
}

技能

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace 对战游戏
{class Soldier{//名字private string name;public string Name{get { return name; }set { name = value; }}//血量private int blood;public int Blood{get { return blood; }set { blood = value; }}//攻击力private int attack;public int Attack{get { return attack; }set { attack = value; }}//技能private zhaoshi skill;public zhaoshi Skill{get { return skill; }set { skill = value; }}private zhaoshi skill1;public zhaoshi Skill1{get { return skill1; }set { skill1 = value; }}//必杀技private zhaoshi slay;internal zhaoshi Slay{get { return slay; }set { slay = value; }}//闪避private int miss;public int Miss{get { return miss; }set { miss = value; }}//暴击private int critical;public int Critical{get { return critical; }set { critical = value; }}//格挡private int Block;public int block{get { return Block; }set { Block = value; }}}
}

人物属性

内容截图:

转载于:https://www.cnblogs.com/jiuban2391/p/6104175.html

C#小游戏(文字对战游戏)相关推荐

  1. 控制台文字对战游戏 初始版

    namespace 对战游戏 {     class Program     {         #region         public struct JueSe   //创建一个角色对象    ...

  2. Python基础阶段练习必备项目——文字对战游戏

    项目介绍: [主菜单]- 选择玩家 - 进入商店 - 进入充值 - 选择装备 - 玩家信息 - 进入战斗 - 退出 [选择玩家]选择什么职业 - 1.战士 - 2.法师 - 3.返回 [进入商城]欢迎 ...

  3. 区块链软件 NFT游戏开发对战游戏

    案例背景 这是Axie 是一种新型游戏,部分由玩家拥有和运营.通过玩游戏升级并使用它们来决定游戏的未来! 案例详情 冒险对战,与奇美拉战斗并获得对升级 Axie 军队有用的稀有宝物!竞技场之战可以通过 ...

  4. 超爽的对战游戏3.0版本来了 非常有趣

    我"呕心沥血"地用一天的时间更新了3.0版本,求点赞和收藏(只点赞或只收藏也行)!话不多说,上代码! #include <iostream> #include<b ...

  5. 超爽的对战游戏2.0版本来了 非常有趣

    继上次的对战游戏,我又写了2.0版本!加了多种东西,让游戏更好玩,快来看看! (PS:给个赞呗) #include <iostream> #include<bits/stdc++.h ...

  6. 腾讯云为小游戏开发者升级工具箱 小游戏联机对战引擎免费用

    由微信小游戏举办的"微信小游戏创意大赛"正在火热进行中.12月23日,腾讯云宣布,除了给参赛者提供基础云资源,还将提供更多工具支持.开发者在通过初赛后,可免费使用腾讯云" ...

  7. 怎么开发联机小游戏_微信小游戏创意大赛火热进行中,小游戏联机对战引擎免费用...

    腾讯云为小游戏开发者升级工具箱 小游戏联机对战引擎免费用 由微信小游戏举办的"微信小游戏创意大赛"正在火热进行中.12月23日,腾讯云宣布,除了给创意大赛的参赛者提供基础云资源,还 ...

  8. 小程序源码:游戏助手王者战力查询扫码登录多功能微信小程序

    这是一款游戏多功能助手小程序 内由王者战力查询(支持微信QQ双端查询,安卓IOS) 游戏扫码登录(内支持多种游戏扫码登录) 短视频去水印功能(支持各大平台) 游戏改名助手(支持空白名生成,符号名生成) ...

  9. [OpenGL] 小游戏 - 太空对战

    写的比较粗糙的一个小游戏,算是对游戏编程流程的一个入门认识. OpenGL中,如何加载纹理,如何绘制透明纹理,如何显示文字,如何制作简单动画(画面刷新机制),如何使用键盘和鼠标回调函数,这些我们已经很 ...

最新文章

  1. 用Python分析5000+抖音大V,粉丝最喜欢的视频类型是它
  2. 安装nginx及依赖包
  3. Android Studio的下载和安装教程(从ADT到AS)
  4. 一个列用render渲染的时候,如果列宽度不够,内容多出的部分会被隐藏,无法显示。这时需要一个鼠标滑过提示全部内容的tip功能。...
  5. uni-app 更新包提示HTML5+Runtime缺少升级包manifest.json中配置的模块:payment
  6. java context.write_Channel.write() 和 ChannelHandlerContext.write() 的区别
  7. P4248-[AHOI2013]差异【SAM or SA】
  8. 群里分享的react的收藏一下!今日周末,改了个表单验证然后无所事事了!
  9. 【转】人工智能-1.1.1 什么是神经网络
  10. super.onCreate(savedInstanceState)
  11. 开源贡献 计算_通过Hacktoberfest的镜头看开源贡献的状态
  12. VFP中轻松绑定 Windows 事件
  13. 物联网架构----双机热备Keepalived了解
  14. python css_Python-CSS整理
  15. C语言进阶——使用C语言与gnuplot结合画一些波形
  16. 黑马安卓74期Android基础(0)
  17. .net byte转java byte_「Java知识收集整理」Java语法的基础
  18. “我被苹果人脸识别系统「坑」进了监狱”
  19. python迭代法求极值_4计算函数零点和极值点的迭代法
  20. cad画直线长度与实际不符_cad画规定长度直线的方法步骤图

热门文章

  1. foss测试_什么是开源软件? 开源和FOSS解释
  2. 解决label和input在一行放不下时同时换行的问题
  3. Python详细安装教程
  4. MYSQL触发器自动生成主键UUID
  5. wake_up()函数集合
  6. 朴素模式匹配与KMP模式匹配算法
  7. pet store 的设计目标
  8. QT学习开发笔记(UDP通信)
  9. 这可能是全网最详细的python安装教程(windows)
  10. C++中类的成员函数(方法)