C#绘制飞行棋地图小程序

1、 初始化地图,在绘制时可先将地图进行初始化,用数组来存储关卡的位置,然后利用循环给地图中 关卡所在处赋予代表关卡的值。

关键代码如下

/// <summary>
/// 初始化游戏地图
/// </summary>
static void InitialMap()
{
for (int i=0;i<Map.Length;i++)
{
Map[i] =0;
}
//用于存储关卡位置
int[] luckyTurn = { 6, 23, 40, 55, 69, 83,98 };//幸运转盘 1
int[] landMine = { 5, 13, 17, 33, 38, 50, 64, 80, 94 };//地雷 2
int[] pause = { 9, 27, 60, 93 };//暂停 3
int[] timeTunnel = { 20, 25, 45, 63, 72, 88, 90};//时空隧道 4
for (int i=0;i<luckyTurn.Length;i++)
{
int pos = luckyTurn[i];
Map[pos] = 1;
}
for (int i=0;i<landMine.Length;i++)
{
Map[landMine[i]] = 2;
}
for (int i=0;i<pause.Length;i++)
{
int pos = pause[i];
Map[pos] = 3;
}
for(int i=0;i<timeTunnel.Length;i++)
{
int pos = timeTunnel[i];
Map[pos] =4;
}
}

2、检查坐标的值,在将地图进行初始化之后,便可开始进行绘制地图的操作了,地图绘制可使用 在程序设计时所讲的分布绘制,在绘制地图时应检验该该坐标点的值,在根据该点的值绘制相应的图案,在检查时根据值 返回相应的图案 ,在利用循环绘制出即可,检查坐标的值代码如下:

/// <summary>
/// 获得要绘制的坐标
/// </summary>
/// <param name="i"> 要绘制的坐标</param>
/// <returns></returns>
static string GetMapString(int i)
{
string Result="";//用于返回 给一个坐标相应的图案
if (playerPos[0] == i && playerPos[1] == i)//判断是否是对战双方所在此处
{
Console.ForegroundColor = ConsoleColor.Yellow;//设置图案的前景色为黄色
Result = "<>";//得到两人均在图案
}
else if (playerPos[0] == i)
{
Console.ForegroundColor = ConsoleColor.Yellow;
Result = "A";//得到A均在图案
}
else if (playerPos[1] == i)
{
Console.ForegroundColor = ConsoleColor.Yellow;
Result = "B";//得到B均在图案
}
else
{
switch (Map[i])
{
case 0:
Console.ForegroundColor = ConsoleColor.White;
Result = "□";//得到普通均在图案
break;
case 1:
Console.ForegroundColor = ConsoleColor.Red;
Result = "○";//得转盘图案
break;
case 2:
Console.ForegroundColor = ConsoleColor.Blue;
Result = "☆";
break;
case 3:
Console.ForegroundColor = ConsoleColor.Green;
Result = "▲";
break;
case 4:
Console.ForegroundColor = ConsoleColor.DarkBlue;
Result = "卍";
break;
}
}
return Result; //返回图案
}

3、绘制地图,在得到 返回的图案后,便可进行地图的绘制,这里给出绘制第一行的代码

/// <summary>
/// 绘制游戏地图
/// </summary>
static void DrownMap()
{
Console.WriteLine("图例:幸运转盘 ○ 地雷 ☆ 暂停 ▲ 时空隧道 卍");
//画第一行 下标0-29 的地图
for(int i=0;i<30;i++)//循环坐标得到 第一行每个点的图案
{
Console.Write(GetMapString(i)); //调用函数得到每个坐标的图案
}
Console.Write("\n");
Console.ResetColor();//重置前景色
}

以上所述是小编给大家介绍的C#绘制飞行棋地图小程序,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • C#实现绘制面形图表的方法详解

    本例详细讲述了C#实现的面形图绘制例子,这是其中一个核心绘制文件的代码,代码中的里面的注释很多,也比较详细,相信对于初学者学习及理解C#图形绘制方面的技术要点.难点有所帮助. C#绘制面形图的主要功能代码如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using S

  • C#绘制中国国旗的方法

    本文实例讲述了C#绘制中国国旗的方法.分享给大家供大家参考.具体如下: 程序运行截图: 中国国旗被定义在<GB:12982-2004>中,以下是从维基百科条目中华人民共和国国旗中截的一张图,标出了五颗星大致的位置. 建立一个空的C# Windows窗体应用程序,窗体取名FormMain,在窗体中放一个PictureBox,取名为picFlagOfChina,并将Dock属性设置为Fill.程序代码中用到了窗体事件Load和Resize,程序代码如下: using System; using S

  • C#绘制曲线图的方法

    本文实例讲述了C#绘制曲线图的方法.分享给大家供大家参考.具体如下: 1. 曲线图效果: 2. C#代码: /// <summary> /// 自动根据参数调整图像大小 /// </summary> public void Fit() { //计算字体距离 intFontSpace = FontSize + 5; //计算图像边距 float fltSpace = Math.Min(Width / 6, Height / 6); XSpace = fltSpace; YSpace

  • C#实现绘制浮雕图片效果实例

    本文采用C#实例讲解了处理图片为浮雕效果的实现方法,这在PS中是一个常见的功能,也是C#中的一个简单的图像处理例子.程序先读取原图,然后依次访问每个像素的RGB值,获取相邻两个像素的R.G.B值,计算与左上角像素的RGB分量之差,将计算后的RGB值回写到位图,最后进行图片的浮雕处理. 主要代码如下: using System; using System.Drawing; using System.Collections; using System.ComponentModel; using Sy

  • C#利用GDI绘制常见图形和文字

    废话不多说,我们先来认识一下这个GDI+,看看它到底长什么样. GDI+:Graphics Device Interface Plus也就是图形设备接口,提供了各种丰富的图形图像处理功能;在C#.NET中,使用GDI+处理二维(2D)的图形和图像,使用DirectX处理三维(3D)的图形图像,图形图像处理用到的主要命名空间是System . Drawing:提供了对GDI+基本图形功能的访问,主要有Graphics类.Bitmap类.从Brush类继承的类.Font类.Icon类.Image类.

  • C#实现在图像中绘制文字图形的方法

    本文实例讲述了C#实现在图像中绘制文字图形的方法.分享给大家供大家参考.具体实现方法如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Drawing.Drawing2D; using S

  • C# 绘制统计图大全(柱状图, 折线图, 扇形图)

    统计图形种类繁多, 有柱状图, 折线图, 扇形图等等, 而统计图形的绘制方法也有很多, 有Flash制作的统计图形, 有水晶报表生成统计图形, 有专门制图软件制作, 也有编程语言自己制作的:这里我们用就C# 制作三款最经典的统计图: 柱状图, 折线图和扇形图:既然是统计, 当然需要数据, 这里演示的数据存于Sql Server2000中, 三款统计图形都是动态生成. 其中柱状图我会附上制作步骤, 其他两款统计图直接附源码. 说明: 需求不一样, 统计图形绘制后的显示效果也不一样, 比如这里柱状图

  • C#绘制椭圆的方法

    本文实例讲述了C#绘制椭圆的方法.分享给大家供大家参考.具体实现方法如下: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace WindowsApplication2 { public partial

  • C#绘制飞行棋地图小程序

    1. 初始化地图,在绘制时可先将地图进行初始化,用数组来存储关卡的位置,然后利用循环给地图中 关卡所在处赋予代表关卡的值. 关键代码如下 /// <summary> /// 初始化游戏地图 /// </summary> static void InitialMap() { for (int i=0;i<Map.Length;i++) { Map[i] =0; } //用于存储关卡位置 int[] luckyTurn = { 6, 23, 40, 55, 69, 83,98 }

  • C#实现简单飞行棋小游戏

    本文实例为大家分享了C#实现简单飞行棋小游戏的具体代码,供大家参考,具体内容如下 目标:实现飞行棋游戏基础功能 玩家在地图触发道具: 1.获得道具,可以进行一次选择 1–交换位置 2–让对方退随机格子 2.踩到炸弹,让对方暂停一回合 3.乘上了飞机,前进10格 4.进入隧道,将随机从其他隧道口出来 using System; namespace FXQGame { class Program { //储存地图数组 static int[] mMaps = new int[120]; //储存两个

  • C# 骑士飞行棋的源码(分享)

    代码如下所示: 复制代码 代码如下: using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks; namespace 骑士飞行棋{    class Program    {        //在下面的数组存储我们游戏地图各各关卡        //数组的下标为0的元素对应地图上的第1格    下标为1的元素对应元素第2格...下标为

  • 基于Python绘制个人足迹地图

    前言 前两年,足迹地图小程序风靡朋友圈,一时间大家都流行晒自己的旅行地图.但是,笔者最近体验了好几款足迹地图的小程序,发现这些小程序虽然号称是足迹地图,但最多只是展示到省级别,无法精确到市级别,因此,笔者周末花了点时间,用Python来绘制自己的个人足迹地图,可以精确到市级别. 下面的部分,笔者将介绍如何简单地来绘制个人足迹地图. 首先我们需要安装以下Python的第三方模块: echarts-china-cities-pypkg==0.0.9 echarts-china-provinces-p

  • 监控微信小程序中的慢HTTP请求过程详解

    Fundebug 的微信小程序监控插件在 0.5.0 版本已经支持监控 HTTP 请求错误,在小程序中通过wx.request发起 HTTP 请求,如果请求失败,会被捕获并上报.时隔一年,微信小程序插件已经更新到 1.3.1, 而且提供了一个非常有用的功能,支持监控 HTTP 慢请求.对于轻量级的性能分析,可以说已经够用. 本文我们以一个天气微信小程序为例(由bodekjan开发),来演示如何监控慢请求.bmap-wx.js中的weather()函数调用百度地图小程序 api 提供的接口来获取天

  • C#飞行棋小程序设计分析

    C#小程序飞行棋,程序效果图 1.设计分析 这个程序界面大致分为四部分: ① 最上面游戏名字界面 ②信息提示区 ③游戏界面区 ④游戏操作提示区 2.分区设计实现 一.游戏界面显示区,由于只需要显示出图形即可,因此直接用Console.Writeline()输出即可. 二.信息提示区,此处用于显示 游戏对战双方的姓名等信息,在游戏开始时需要由用户录入对战双方的姓名信息,因此可用Console.Readline()来读取 用户键入的值,<注:需要检查验证对战双方的姓名不可相同!> 三.游戏界面区,

  • 微信小程序+腾讯地图开发实现路径规划绘制

    现象 我们想用微信小程序实现在map>组件上自定义显示导航路径,但是目前为止官方并未给出相应的方法实现,map>组件确实有绘制点对点连线的属性polyline,但是呢我们没有一系列的坐标集合也是画不出一条路径的, 更糟糕的是即便你内置微信小程序JavaScript SDK,它目前为止也不能给你相应的返回导航路径中所有坐标集合方法实现,不信你看介绍 解决方案 那我们只能用WebService API咯, 但是不要高兴的太早,根据文档,我们要的接口参数是酱紫的 那么我们开始写(下面是菜鸡版代码,非

  • 微信小程序地图绘制线段并且测量(实例代码)

    上图: 上代码:wxml <map id="tb_map" longitude="{{longitude}}" latitude="{{latitude}}" scale="14" bindtap="clickMapTap" bindcontroltap="controltap" bindregiοnchange="regionchange" markers=&

  • C#实现控制台飞行棋小游戏

    本文实例为大家分享了C#实现控制台飞行棋小游戏的具体代码,供大家参考,具体内容如下 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Threading.Tasks; namespace 飞行棋小游戏 { class Program { /// <summary> ///

  • C#控制台实现飞行棋小游戏

    本文实例为大家分享了C#控制台实现飞行棋小游戏的具体代码,供大家参考,具体内容如下 游戏标题 static void ShowTitle() { Console.ForegroundColor = ConsoleColor.Cyan; Console.WriteLine("****************************************"); Console.ForegroundColor = ConsoleColor.Green; Console.WriteLine(

随机推荐