• 连连看项目实战之二(礼盒动画)


    推荐阅读:

           距离上一次更新实战项目之连连看,已经过去近一周了,不要问我这一周经历了什么,做项目容易,不会就问大佬,百度总能解决的。但是,写文章这种事,真的太累了,不仅要考虑些什么,还要考虑怎么写,怎么才能看似通俗易懂但又不缺乏内涵。俗话说做项目一小时,讲解五小时,只有经历过才懂。

           最近忙自己项目真的是累惨了,都没有时间和朋友们撕逼了。今天终于解放了一下自己,继续来与大家分享干货,话不多说,就开干。

           在游戏中,礼盒非常重要,它直接决定了你的收益。但是它的动画和美术也直接决定了你是否回去点击,今天给大家分享礼盒来回移动动画制作。

           在Unity中,动画的制作用NGUI是相当方便的,由于我们项目使用的是UGUI,我们只能代码实现了,在scene场景中,拖动礼盒位置,找到它的至高点和最低点,并记录这两点的位置信息,这两个位置之间的空间是礼盒移动的空间(由于游戏是2D的,因此只会影响Y轴的坐标),如下图是至高点位置信息,y=900:

    在这里插入图片描述

    如下图是最低点位置信息,y=-450:
    在这里插入图片描述
           首先我们来分析一下运动过程,在从上往下的过程中,当到底最低点时,应该改变移动方向,即从下往上移;在从下往上的过程中,当到底至高点时,应该改变移动方向,即从上往下移;如此反复。

           从上面的分析中我们发现,需要一个控制方向的布尔值,需要一个移动的速度,来控制移动的快慢,了解这些之后,我们就可以开始码代码了。

    打开StartManager脚本,写下如下代码:

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    using UnityEngine.SceneManagement;
    
    public class StartManager : MonoBehaviour {
    
        public GameObject gift;
        public float giftSpeed=10;
        private bool isMoveButton = true;
    
    	// Use this for initialization
    	void Start () {
    
    	}
    	
    	// Update is called once per frame
    	void Update () {
            GiftMove();
        }
        private void GiftMove()
        {
            if (gift.transform.position.y <= -450 && isMoveButton)
            {
                isMoveButton = false;
            }
            else if (gift.transform.position.y >900 && !isMoveButton)
            {
                isMoveButton = true;
            }
            else
            {
                gift.transform.position += (isMoveButton ? Vector3.down : Vector3.up) * Time.deltaTime * giftSpeed;
            }
    
        }
        public void StartGame()
        {
            SceneManager.LoadScene(1);
        }
    
    }
    

           我们使用变量isMoveButton来控制它是否能往下移动,使用比那辆giftSpeed来控制移动速度,定义为public,时方便在引擎中修改,以调节速度。函数GiftMove()是移动的主要方法,其实就是上面文字分析的代码实现罢了。

  • 相关阅读:
    mysql怎么导入大文件的sql文件
    php函数研究
    php实现实现代码多主从,切换,轮询,健康检查
    php实现单个用户禁止重复登录,防止同一用户同时登陆
    php使用p3p实现cookies跨域设置 实现单点登录,全站登录
    实现页面浏览统计
    遍历目录删除指定MD5值的文件
    boot.img的修改
    “逃离大厦”游戏的破解
    Android漏洞——将Android恶意代码隐藏在图片中
  • 原文地址:https://www.cnblogs.com/shirln/p/10330049.html
Copyright © 2020-2023  润新知