当前位置: 首页 > news >正文

网站 建设在作用是什么意思wordpress推广提成

网站 建设在作用是什么意思,wordpress推广提成,wordpress伪静态不现实,大连seo建站君兮_的个人主页 即使走的再远#xff0c;也勿忘启程时的初心 C/C 游戏开发 Hello,米娜桑们#xff0c;这里是君兮_#xff0c;最近开始正式的步入学习游戏开发的正轨#xff0c;想要通过写博客的方式来分享自己学到的知识和经验#xff0c;这就是开设本专栏的目的。希望… 君兮_的个人主页 即使走的再远也勿忘启程时的初心 C/C 游戏开发 Hello,米娜桑们这里是君兮_最近开始正式的步入学习游戏开发的正轨想要通过写博客的方式来分享自己学到的知识和经验这就是开设本专栏的目的。希望这些独立的C#小项目能对做游戏的你有所帮助毕竟学会游戏开发的最好的上手方式就是自己做一款游戏 勇士斗恶龙 前言战胜恶龙以后营救公主如何营救公主 游戏结束界面 整体游戏的源码总结 前言 今天我们接着来讲勇士斗恶龙的第三部分也是最后一部分打败恶龙营救公主的逻辑以及结束界面的相关逻辑还是先把咱们游戏的整体流程图放在这里 战胜恶龙以后 有关玩家未能通过恶龙的试炼进入退出游戏界面和营救公主成功后进入退出游戏界面我们之后放到一块说首先我们先来讲讲如何来营救公主 营救公主 如果勇士足够勇敢又有足够的运气战胜了恶龙下面我们就可以去营救公主了首先我们这里有这样一个条件当BOSS的hp还没减为0公主是不能出现在游戏画面中的只有BOSS的hp减为0我们才能在游戏画面上标注公主的位置同时由于我们击败了恶龙应该不再让表示BOSS的图标继续出现在画面中这些我们在上回的游戏逻辑中都已经用到了但由于上回的重点在于玩家移动和战斗逻辑我们并没有展开细讲下面我们通过这部分代码来回顾一下 //hp0时boss活着才绘制if (bossHp 0){Console.SetCursorPosition(bossX, bossY);Console.ForegroundColor bossColor;Console.Write(bossIcon);}#region 6 公主显示//公主显示else{Console.SetCursorPosition(princessX,princessY);Console.ForegroundColor princessColor;Console.Write(princessIcon);}#endregion//擦除BOSSelse if(bossHp0){//去营救公主//boss擦除Console.SetCursorPosition(bossX, bossY);Console.Write( );isFight false;continue;}有关公主的初始化只需要设置一下公主所在的位置公主的图标以及图标的颜色就行这里不再赘述。另外这里是为了讲解拆分出来的实际不是一段连贯的代码最后我会把完整的源码放出大家理解这部分讲的内容即可。 如何营救公主 我们是一款控制台小游戏同时我这里只是为大家讲一个大的游戏框架因此一切从简这里我们来到公主身边并按J键就能营救公主了当然这里营救公主也可以设计的比较复杂比如公主的位置可以是一个随机数你每营救一次她就会移动到别的地方营救三次才算成功等等总之这些地方都可以按照你自己的想法来自定义没有具体的要求 case j: case J://判断是否在公主身边else if (((playerX princessX playerY princessY - 1) || (playerX princessX playerY princessY 1) ||(playerX princessX - 2 princessY playerY) || (playerX princessX 2 playerY princessY)) bossHp 0){ nowSceneID 3;//修改场景选择ID进入退出界面nowEndIndex 恭喜你救出公主;//这个提示语在之后结束界面会用到//跳出while循环回到主循环isOver true;}break;}if (isOver) {//此时的break与while配对break; }由于这里是在while循环中我们需要重新进入场景选择的switch语句中因此定义了一个isOver来辅助我们退出循环重新选择场景 游戏结束界面 进入游戏结束界面有两种情况第一种情况就是营救出了公主如上所说第二种情况就是我们的勇士未能击败恶龙此时也应该进入游戏结束界面 //在这判断玩家或者怪物是否死亡如果死了继续后面的流程 if(playerHp0) {//游戏结束//游戏结束画面isOver true;nowSceneID 3;nowEndIndex 很遗憾你被恶龙击败了;endSay 1;break; }解释一下这里的nowEndIndex和endSay在上面的营救公主成功后也有一个nowEndIndex当时定义的是“恭喜你救出公主”我们在进入结束界面时需要给玩家一个提示到底是失败了还是成功救出公主这个就是在结束界面打印的不同的语句用来提示玩家游戏结果的同时这两段提示的字数不同我们为了保证这两段话都能居中显示因此定义了一个endSay通过它的值来判断我们这段文字需要打印的位置。而有关其他的结束界面和开始界面是非常类似的我们直接来看看相关的代码 case 3:Console.Clear();int nowEndSelIndex 0;while (true){bool EndQuitWhile false;Console.SetCursorPosition(w / 2 - 4, 5);Console.ForegroundColor ConsoleColor.White;Console.Write(GameOver);if(endSay1)Console.SetCursorPosition(w / 2 - 8,7);elseConsole.SetCursorPosition(w / 2 - 6,7);Console.ForegroundColor ConsoleColor.DarkRed;Console.Write(nowEndIndex);Console.ForegroundColornowEndSelIndex0?ConsoleColor.Red:ConsoleColor.White;Console.SetCursorPosition(w / 2 - 4, 10);Console.Write(继续游戏);Console.ForegroundColor nowEndSelIndex 0 ? ConsoleColor.White : ConsoleColor.Red;Console.SetCursorPosition(w / 2 - 4, 12);Console.Write(退出游戏);char endInputConsole.ReadKey(true).KeyChar;switch (endInput){case w:case W:Console.Clear();nowEndSelIndex 0;break;case s:case S:Console.Clear();nowEndSelIndex 1;break;case j:case J:if (nowEndSelIndex 1)Environment.Exit(0);else{nowSceneID 1;EndQuitWhile true;}break;}if(EndQuitWhile){break;}}break; }当玩家在退出游戏高亮时按下“J”键直接就退出游戏了当玩家想要继续游戏我们就要把游戏场景切换到开始游戏界面因此这里的EndQuitWhile也是用来辅助我们重新进入游戏场景切换循环的至于其他的与开始界面是一模一样的就不多赘述了。 整体游戏的源码 好了到这里这个控制台小游戏就讲的差不多了下面为大家提供该游戏的源码以及游戏截图方便大家查阅和试玩 using System; using System.Diagnostics; using System.Runtime.Intrinsics.X86;namespace 王子救公主 {class Program{static void Main(string[] args){//隐藏光标Console.CursorVisible false;//设置舞台的大小int w 60;int h 40;Console.SetWindowSize(w,h);Console.SetBufferSize(w,h);//当前场景的编号int nowSceneID 1;string nowEndIndex ;int endSay 0;while (true){//不同的场景进行不同的逻辑处理switch (nowSceneID){case 1:Console.Clear();#region 1 开始界面Console.SetCursorPosition(w/2-5,10);Console.WriteLine(勇士斗恶龙);//当前选项的编号int nowSelIndex 0;//因为要输入 我们可以构造一个开始界面的死循环//专门用来处理 开始场景相关的逻辑while (true){//用一个标识用来退出此循环bool isQuitWhilefalse;//显示内容检测输入//设置光标位置再显示内容Console.SetCursorPosition(w/2-4,12);//根据当前选择的编号来决定是否变色Console.ForegroundColor nowSelIndex 0 ? ConsoleColor.Red : ConsoleColor.White;Console.Write(开始游戏);Console.SetCursorPosition(w / 2 - 4, 14);Console.ForegroundColor nowSelIndex 1 ? ConsoleColor.Red : ConsoleColor.White;Console.Write(退出游戏);//检查玩家输入的键并且不会在控制台上显示输入内容char input Console.ReadKey(true).KeyChar;switch (input){case W:case w:nowSelIndex 0;break;case S:case s:nowSelIndex 1;break;case j:case J:if(nowSelIndex 0){//1.改变场景IDnowSceneID 2;//2.要退出内层循环whileisQuitWhile true;}else{//关闭控制台Environment.Exit(0);}break;}if (isQuitWhile true)break;}#endregionbreak;case 2:Console.Clear();#region 2 红墙Console.ForegroundColor ConsoleColor.Red;//画墙//设为红色int i 0;//横墙for(i 0; i w;i2){Console.SetCursorPosition(i, 0);Console.Write(■);Console.SetCursorPosition(i, h-1);Console.Write(■);Console.SetCursorPosition(i, h-9);Console.Write(■);}//竖墙int j 0;for (j 0; j h; j){Console.SetCursorPosition(0, j);Console.Write(■);Console.SetCursorPosition(w-2,j);Console.Write(■);}#endregion#region#region 3 Boss属性相关int bossX 24;int bossY 15;int bossAtkMin 7;int bossAtkMax 13;int bossHp 100;string bossIcon ●;//申明一个颜色变量ConsoleColor bossColor ConsoleColor.Red;#endregion#region 4 玩家属性相关int playerX 4;int playerY 5;int playerAtkMin 7;int playerAtkMax 13;int playerHp 100;string playerIcon ●;ConsoleColor playerColor ConsoleColor.Green;//公主相关int princessX 24;int princessY 5;string princessIcon ▲;ConsoleColor princessColor ConsoleColor.Blue;char playerInput;#endregion#region 5 玩家战斗相关bool isFight false;//游戏结束bool isOverfalse;#endregion//游戏场景的死循环 专门用来 检测玩家的输入相关的循环while (true){//画出玩家Console.SetCursorPosition(playerX, playerY);Console.ForegroundColor playerColor;Console.Write(playerIcon);//不停的输入wasd键 都可以控制它移动 //hp0时boss活着才绘制if (bossHp 0){Console.SetCursorPosition(bossX, bossY);Console.ForegroundColor bossColor;Console.Write(bossIcon);}#region 6 公主显示//公主显示else{Console.SetCursorPosition(princessX, princessY);Console.ForegroundColor princessColor;Console.Write(princessIcon);}#endregionConsole.SetCursorPosition(playerX, playerY);Console.ForegroundColor playerColor;Console.Write(playerIcon);//玩家输入playerInput Console.ReadKey(true).KeyChar;if(isFight){//如果是战斗状态//只会处理j键if(playerInputj||playerInputJ){//在这判断玩家或者怪物是否死亡如果死了继续后面的流程if(playerHp0){//游戏结束//游戏结束画面isOver true;nowSceneID 3;nowEndIndex 很遗憾你被恶龙击败了;endSay 1;break;}else if(bossHp0){//去营救公主//boss擦除Console.SetCursorPosition(bossX, bossY);Console.Write( );isFight false;continue;}//玩家打怪物Random r new Random();int atk r.Next(playerAtkMin,playerAtkMax);bossHp - atk;Console.ForegroundColorConsoleColor.Green;Console.SetCursorPosition(2, h - 7);Console.Write( );if (bossHp 0){//擦除Console.SetCursorPosition(2, h - 6);Console.Write( );Console.SetCursorPosition(2, h - 7);Console.Write( );Console.SetCursorPosition(2, h - 8);Console.Write( );Console.SetCursorPosition(2, h - 8);Console.Write(你发动了致命一击造成了{0}恭喜你击败了恶龙, atk);Console.ForegroundColor ConsoleColor.Red;Console.SetCursorPosition(2, h - 7);Console.Write(快去营救公主!!!按J键继续);}else{Console.SetCursorPosition(2, h - 7);Console.Write(勇士对恶龙造成了{0}点伤害此时恶龙还有{1}血, atk, bossHp);//怪兽打玩家atk r.Next(bossAtkMin, bossAtkMax);playerHp - atk;Console.ForegroundColor ConsoleColor.Red;Console.SetCursorPosition(2, h - 6);Console.Write( );//Boss打死玩家if(playerHp0){Console.SetCursorPosition(2, h - 6);Console.Write(很遗憾你未能战胜恶龙);}else{Console.SetCursorPosition(2, h - 6);Console.Write(恶龙对勇士造成了{0}点伤害此时你还有{1}血, atk, playerHp);}}}}else{#region 6 玩家移动相关//擦除Console.SetCursorPosition(playerX, playerY);Console.Write( );switch (playerInput){//贯穿case a:case A:playerX - 2;if (playerX 2)playerX 2;else if (playerX bossX playerY bossY bossHp 0)playerX 2;else if (playerX princessX playerY princessY bossHp 0)playerX 2;break;case w:case W:playerY--;if (playerY 1)playerY;else if (playerX bossX playerY bossY bossHp 0)playerY;else if (playerX princessX princessY playerY bossHp 0)playerY;break;case s:case S:playerY;if (playerY h - 10)playerY--;else if (playerX bossX playerY bossY bossHp 0)playerY--;else if (playerX princessX playerY princessY bossHp 0)playerY--;break;case d:case D:playerX 2;if (playerX w - 4)playerX - 2;else if (playerX bossX playerY bossY bossHp 0)playerX - 2;else if (playerX princessX playerY princessY bossHp 0)playerX - 2;break;case j:case J://开始战斗if (((playerX bossX playerY bossY - 1) || (playerX bossX playerY bossY 1) ||(playerX bossX - 2 playerY bossY) || (playerX bossX 2 playerY bossY)) bossHp 0){isFight true;//可以开始战斗了Console.SetCursorPosition(2, h - 8);Console.ForegroundColor ConsoleColor.White;Console.Write(你开始和恶龙战斗了按J键继续);}//判断是否在公主身边else if (((playerX princessX playerY princessY - 1) || (playerX princessX playerY princessY 1) ||(playerX princessX - 2 princessY playerY) || (playerX princessX 2 playerY princessY)) bossHp 0){ nowSceneID 3;nowEndIndex 恭喜你救出公主;//跳出while循环回到主循环isOver true;}break;}}if (isOver){//此时的break与while配对break;}} break;case 3:Console.Clear();int nowEndSelIndex 0;while (true){bool EndQuitWhile false;Console.SetCursorPosition(w / 2 - 4, 5);Console.ForegroundColor ConsoleColor.White;Console.Write(GameOver);if(endSay1)Console.SetCursorPosition(w / 2 - 8,7);elseConsole.SetCursorPosition(w / 2 - 6,7);Console.ForegroundColor ConsoleColor.DarkRed;Console.Write(nowEndIndex);Console.ForegroundColornowEndSelIndex0?ConsoleColor.Red:ConsoleColor.White;Console.SetCursorPosition(w / 2 - 4, 10);Console.Write(继续游戏);Console.ForegroundColor nowEndSelIndex 0 ? ConsoleColor.White : ConsoleColor.Red;Console.SetCursorPosition(w / 2 - 4, 12);Console.Write(退出游戏);char endInputConsole.ReadKey(true).KeyChar;switch (endInput){case w:case W:Console.Clear();nowEndSelIndex 0;break;case s:case S:Console.Clear();nowEndSelIndex 1;break;case j:case J:if (nowEndSelIndex 1)Environment.Exit(0);else{nowSceneID 1;EndQuitWhile true;}break;}if(EndQuitWhile){break;}}break;}}}}#endregion}#endregion总结 好啦到这里我们第一个C#实战游戏就结束了之后还会继续更新别的游戏的教学的敬请期待为了防止大家找不到之前的内容在这里附一下之前教学的链接 【C#项目实战】控制台游戏 勇士斗恶龙(2)——游戏场景的设置以及玩家战斗逻辑 【C#项目实战】控制台游戏勇士斗恶龙(1)——游戏初始设置以及开始界面 新人博主创作不易如果感觉文章内容对你有所帮助的话不妨三连一下再走呗。你们的支持就是我更新的动力 **可莉请求你们三连支持一下博主点击下方评论点赞收藏帮帮可莉吧**
http://wiki.neutronadmin.com/news/393985/

相关文章:

  • 建设银行网站会员怎么注册实现网站计划书
  • 上海网站营销seo最新域名查询网
  • 果业局网站建设投资者互动平台
  • 农庄网站企业邮箱电话人工服务24小时
  • 销售产品单页面网站wordpress modern admin
  • 自己怎么搭建网站全球域名注册平台
  • 如何查询网站备案号合浦网站建设
  • 建站哪个平台好做网络推广的网站有哪些
  • wordpress自助建站系统网站SEM优化如何做
  • 网站域名和网址龙岩人才网兼职招聘
  • ui作品集 网站怎么做世界500强设计公司有哪些
  • 建筑门户网站老鹰主机 wordpress
  • 沈阳网站专业西安搜建站科技网站
  • 个人想做企业网站备案淮安 做网站 app
  • 肥乡企业做网站推广百度推广手机网站检测
  • 免费推广网站哪家好如何访问自己做的网站
  • 广州网站公司建设网站天津网站建设的公司哪家好
  • 永州网站建设包括哪些网站开发之美
  • 网站建设个一般需要花费多少钱一键开启网站
  • 网站开发语言开发汕头网站开发
  • 江苏城乡与住房建设部网站网站建站在线制作
  • 网站设计报价方案上海礼品定制网站
  • 途牛网站大数据建设手机网站开发软件下载
  • 数据做图网站网站开发兼容问题
  • 怎么做二次元网站源码加快百度收录的方法
  • 常平建设局网站网络广告策划
  • 网站建设属于网络还是软件网站建设开淘宝直通车
  • 网站建设 招聘网站建设最简单的教程视频
  • 专做国外旅游的网站专业做网站 郑州
  • p2p网贷网站建设方案wordpress 导入工具插件