Unity经典游戏教程之:是男人就下100层 – 优梦创客

Unity经典游戏教程之:是男人就下100层 – 优梦创客

版权声明:

  • 这篇文章最初发表在博主的博客博客空间中。:微信公众号卓越梦想家(微信号):unitymaker)
  • 你可以免费转载。,但必须添加完整的版权声明。!

是男人就下一百层

一、游戏介绍

是男人掉到了100层。这是一个流行的游戏。。设计者所取的游戏名称以及它特有的挑战性令几乎所有的男同胞们都一如既往的去暴机,游戏也吸引了很多女性。,很有挑战性。。

  • 中文名 是男人掉到了100层。
  • 原版名称 man down
  • 游戏类型 休闲游戏

使用箭头键控制恶棍。,防止被推死。,防止跌倒,跌倒,防止陷阱。。

二、场景搭建

  • 进口游戏资源,确保精灵文件夹中的资源的纹理。 Type为Sprite

1

  • 开放精灵 Mode的Sprite Editor,剪掉图片。,单击Apple保存。

image

image

  • 云会吗?、darkcloud)、背景地图(游戏) 后台拖动场景,背景图是背景(背景),其他前景(前景)。

image

image

image

三、主角设置

1。拖入领先地位

拖拽主角进入场景并将其命名为玩家。,在前景前景层设置主角播放器。。
image

2。主角动画

开放动画控制器,创建动画行走动画和ID动画动画。。将主图片拖到时间线上,每秒动画一次。。IDEL动画只需要一个拖动。。
image

image

三。手机主角的实现

  • 将刚体加到引导字符(刚体) 二维)、Add Collider(盒) Collider 二维)

image

  • 向主角色添加脚本播放器。为字符设置最大速度最大速度。。设置力量。保存僵尸 2D
    通过Horizontal取得水平上的按键0=什么也没按。1 =右键。2 =左键。

    public float MaxSpeed = 4;
    public float Force = 4;
    public Rigidbody2D 我的身体
    
     void PlayerMove()
        {
            var x = (水平)
    
            var xforce = 0.0f;
    
            如果(x) > 0) 
            {
                xforce = Force*x;
                (走路), 真的)
                this.gameObject.transform.localScale = new Vector3(1, 1, 1);
            }
            else 如果(x) < 0) 
            {
                xforce = Force*x;
                (走路), 真的)
                this.gameObject.transform.localScale = new Vector3(-1, 1, 1);
            }
            else 
            {
                xforce = 0;
                (走路), false);
            }
    
            var xspeed = mybody.velocity.x;
            if((xspeed) >= MaxSpeed) {
                如果(x)force * xspeed > 0) {
                    xforce = 0;
                }
            }
    
            (新的 Vector2(xforce, 0)); 
        }

四、云集

1。把云拖到现场。

将云彩拖入场景之中并将其命名为cloud和darkcloud将云彩cloud和darkcloud设置在Background背景层。
image

2。设置云生成。

向云盒添加碰撞体 Collider 2D,添加脚本云母,建立云预成型体和主体预制件。拖动预制云和PraveS0,Cloud 、在球员中。确保最小 x、max x、Distance Y、LastCloud Y的值。

image

 void CreateClouds()
    {
        var worldSize = (新的 Vector3(Screen.width, Screen.height, 0));
        
        var worldSize2 = (新的 Vector3(0, 0, 0));
        
        minX = worldSize2.x + 1f;
        maxX = worldSize.x - 1f;

        lastCloudY = 0;
        for (var) i = 0; i < clouds.Count; i++)
        {
            var cloud = clouds [i];
            Vector3 pos;
            float x = 0;
            if (controlCloud == 0)
            {
                x = (0, maxX);
                controlCloud = 1;
            }
            else if (controlCloud == 1)
            {
                x = (minX, 0);
                controlCloud = 2;
            }
            else if (controlCloud == 2)
            {
                x = (1, maxX);
                controlCloud = 3;
            } 
            else if (controlCloud == 3)
            {
                x = (minX, -1);
                controlCloud = 0;
            }
            pos = new Vector3(x, lastCloudY, 0);
            cloud.transform.localPosition = pos;

            lastCloudY -= distanceY;
            
        }

    }

三。设置云层的特殊功能。

设置游戏角色玩家如果触摸黑云将死亡。

image

五、背景卷轴

游戏背景需要不断滚动。,首先复制游戏背景图片的两个副本,然后匹配,向图片添加一个对撞机(框) Collider 二维)和脚本BG Scaler

image

image

void Start () {
        SpriteRenderer sp = ();
        float width = sp.bounds.size.x;
       
    
        float swidth = Screen.width;
        float sheight = Screen.height;
        Debug.Log(swidth+" : "+sheight);

        float sz = Camera.main.orthographicSize;
        float sc = sheight/swidth;
       

        float cameraHeight = sz*2;
        float cameraWidth = cameraHeight/(sc);

        float spriteScale = cameraWidth/width;
        this.transform.localScale = new Vector3(spriteScale, 2, 0);
    }

五、角色死亡

设置游戏角色player碰到darkcloud就死亡和碰到游戏上下bound死亡。

    if (other.gameObject.tag == "darkCloud") 
        {
             
            var cs =  ();
            cs.enabled = false;
            transform.localPosition = new Vector3 (1000, 1000, 0);
            // (得分), CoinCount);

            (dealSound, );

            LifeCount--;
           
             (LifeCount, CoinCount, 得分)
        }
        
    else if (other.gameObject.tag == 绑定
        {
            var cs = ();
            cs.enabled = false;
            transform.localPosition = new Vector3(1000, 1000, 0);
            //(得分), CoinCount);

            (dealSound, );

            LifeCount--;
           
            (LifeCount, CoinCount, 得分)
        }

六、背景音乐

首先,创建一个名为MUSIC的空节点。,在文件夹中找到音乐天空之城将其拉入Music选择循环播放(Loop),适当选择卷(Valime)。。

image

image

七、扩展方向

  • 血量加减血
  • 添加道具和道具来加点。
  • 增兵
  • 当层数越来越多时,速度越快,FAS就越快。

发表评论

电子邮件地址不会被公开。 必填项已用*标注