蓝鸥Unity开发基础—— 实践课程源代码一

蓝鸥Unity开发基础—— 实践课程源代码一

源代码

using System;

namespace MyFirstGame
{
    class MainClass
    {
        public static void Main (string[] args)
        {
            //游戏即将启动时做一些操作
            const int mapW=46;//地图宽度
            const int mapH = 16;//地图高度

//定义常量
            const int emptyTiledMap=0;//空砖块
            const int TBTiledMap=1;//顶部和底部砖块
            const int LRTiledMap=2;//左右两边的砖块

//游戏初始化变量
            bool isOver = false;//游戏是否结束
            int[,] mapData=new int[mapH,mapW] ;//地图数据
            //初始化地图数据

for (int i = 0; i < mapH; i++) {
                for (int j= 0; j < mapW;j++) {
                    //j将地图初始化为空砖块
                    mapData[i,j]=emptyTiledMap;
                    //如果砖块处于最上方侧或最下方,就初始化为TBTiledMap
                    if(i==0 || i==mapH-1){
        
                        mapData[i,j]=TBTiledMap;
                        
                    }else if(j==0 || j==mapW-1){
                        //如果砖块处于最右侧或最左侧,就初始化为LRTiledMap
                        mapData[i,j] = LRTiledMap;

}
                }
            }

//地图
        
//            string[,] mapView= new string[3,5]{
//                {"-","-","-","-","-"},
//                {"|","-","-","-","|"},
//                {"-","-","-","-","-"}
//            }
            string[,] mapView= new string[mapH,mapW];//地图视图

//刷新地图
            for (int i = 0; i < mapH; i++) {
                    //字符串获取行每行的字符信息
                //string str="";
                for (int j = 0; j < mapW; j++) {
                    //将每行的每个字符拼接到字符串中
                    //取出砖块数据
                    int tiledData =mapData[i,j];
                    //砖块视图
                    string tiledView="";
                    //确定砖块的显示
                    switch(tiledData){
                    case emptyTiledMap:
                        tiledView=" ";
                        break;
                    case TBTiledMap:
                        tiledView="-";
                        break;
                    case LRTiledMap:
                        tiledView="|";
                        break;

}
                    //将砖块视图存放到地图视图中

mapView[i,j]=tiledView;
                    //将每行的每个字符拼接到字符串中
                    //str +=mapView[i,j];
                }

//输出拼接完毕的行信息
//                Console.WriteLine(str);

}
            //显示地图
            for (int i = 0; i < mapH; i++) {
                //创建一个用于接收一行信息的字符串
                string str="";
                for (int j = 0; j < mapW; j++) {
                    //将每行中的所有字符串进行拼接
                    str+=mapView[i,j];
                    
                }
                //打印一行的内容
                Console.WriteLine (str);
            }

//游戏主循环,
//            while (!isOver) {
                //游戏启动后,主循环中做一些操作
                //计算机计算数据->将数据转成视图->把视图显示出来->获取玩家的事件更新数据

//            }

//游戏即将结束时做一些操作

}
    }
}

时间: 2024-11-08 19:59:40

蓝鸥Unity开发基础—— 实践课程源代码一的相关文章

蓝鸥Unity开发基础—— 实践课程源代码二

蓝鸥Unity开发基础-- 实践课程源代码二 using System; namespace MyFirstGame{    class MainClass    {        public static void Main (string[] args)        {            //游戏即将启动时做一些操作            const int mapW=46;//地图宽度            const int mapH = 16;//地图高度 //定义常量    

蓝鸥Unity开发基础—— 一维数组学习笔记

蓝鸥Unity开发基础-- 一维数组学习笔记 一.数组 之前我们学过很多数据类型,今天我们来学习数字,数字也是一种数据类型,那么,具体的数组是如何定义的? 数组:相同数据类型的成员组成的一组数据 Int类型数组:4  7  12  3  5--数组元素 Float数据类型数字:11.5 4.62 7.1 2.21 9.3--数组元素 数组中每一个元素都会分配一个数组下标,数组下标是从0开始的,有序排列,如:0 1 2 3 4 二.声明并初始化数组: 数组也是数据类型,所以也可以声明变量.使用ne

蓝鸥Unity开发基础——If 语句学习笔记

蓝鸥Unity开发基础--If 语句学习笔记 本节内容:程序的三种结构,if语句,问号表达式 程序的三种结构 顺序结构:顺序执行语句 分支结构:通过进行判断,在多个语句块中选择某一个执行 循环结构:条件满足时,反复执行同一语句块 If语句 用if语句可以构成分支结构 它根据给定的条件进行判定,用来决定要执行某个程序段 一.if(条件表达式){语句1} using System; namespace Lesson11{    class MainClass    {        public s

蓝鸥Unity开发基础二——课时3 访问修饰符

[蓝鸥Unity开发基础二]课时3 访问修饰符 一.访问修饰符 public --公共的,在哪里都能用 private  --私有的,只能够在当前机构体重使用,其他任何地方都不能 访问修饰符举例说明 using System; namespace Lesson_03{           struct Point2{        //public--公共的,在哪里都能用        public float x;        //private  --私有的,只能够在当前机构体重使用,其他

蓝鸥Unity开发基础—— 二维数组学习笔记

蓝鸥Unity开发基础-- 二维数组学习笔记 一.二维数组 有两个下标的数组叫做二维数组 类似[,]数组名=new类型[常量表达式1,常量表达式2] int[,] numbers= new int[2,3]; [0,0] [0,1] [0,2] [1,0] [1,1] [1,2] 举例说明 using System; namespace Lesson16{    class MainClass    {        public static void Main (string[] args)

蓝鸥Unity开发基础——关系运算和逻辑运算学习笔记

蓝鸥Unity开发基础--关系运算和逻辑运算学习笔记 本节内容 关系运算符 逻辑运算符 一.关系运算符 > >= < <= == != 主要用于比较运算,比较的结果只有true或false两种情况,结果用boo类型变量存储 注意:判断是否相等,用==(双等号) 不能用零或非零代表bool值  二.逻辑运算符 逻辑运算符组成的表达式结果也只有ture或false &&(与):运算符两边表达式地值同时为真的时候,整个逻辑表达式的值才为真 ||(或):运算符两边表达式的值

蓝鸥Unity开发基础——类型转换学习笔记

蓝鸥Unity开发基础--类型转换学习笔记 类型转换包括:自动转换+强制转换 一.自动转换 自动转换:由系统自动完成,不会导致数据精度丢失,只能从低精度类型转换高精度类型. 二.强制转换 强制转换:从高精度转向低精度类型需要强制转换,会丢失精度,需要显式地进行转换. 源代码: using System; namespace Lesson07{    class MainClass    {        public static void Main (string[] args)       

蓝鸥Unity开发基础——使用字符串学习笔记

蓝鸥Unity开发基础使用字符串 本节内容:使用字符串:字符串拼接.转义字符 一.字符串拼接:字符串可以使用+或+=进行字符串拼接!! 二.转移字符--举例\n(表示回车.换行) 转移字符 转义_转义意义 \n_表示换行或回车 \t_表示制表符 \"_表示双引号 \'_表示单引号 \\_表示反斜杠 在字符串前面加@符号,会使字符串的转义字符失效! 字符串中转义字符失效之后,我们需要使用两个双引号来打印双引号 源代码 using System; namespace Lesson08{    cla

蓝鸥Unity开发基础二——课时6 方法

蓝鸥Unity开发基础二--课时6 方法 推荐视频讲师博客:http://11165165.blog.51cto.com/ 对象.方法名(实际参数); Person p=new Person(); P.Say(); 1.带有参数的方法举例 using System; namespace Lesson_06{    class MainClass    {        public class Car{        //l跑        //访问说明符  返回值类型 方法名(参数列表){语句