• Unity3D笔记 愤怒的小鸟<四> 实现Selelction界面


      一直跟着龚老师用js写,VS智能感应用习惯后发现这里用js对初学者比较蛋疼,MONO有提示但是还是无法和VS媲美就目前来看。所以这次还是换成熟悉的VS来开发。

      目标:实现关卡页面

       跑起来的效果如下:

       

      方法和之前添加图片一样,先创建GUITexture背景图片,再创建GUISkin 用于创建上图中7个图片按钮。手型鼠标直接把上节的customCusor.js

    拿来即可,背景音乐选择Main Camera->Component->Audio->Audio Source

      C#代码如下  

    using UnityEngine;
    using System.Collections;
    
    public class selectGUI : MonoBehaviour
    {
        public GUISkin mySkin;
        /// <summary>
        /// 返回按钮
        /// </summary>
        private Rect backPosition = new Rect(40, 280, 50, 50);
        /// <summary>
        /// 按钮1
        /// </summary>
        private Rect level1Position = new Rect(60, 10, 100, 100);
        /// <summary>
        /// 按钮2
        /// </summary>
        private Rect level2Position = new Rect(220, 10, 100, 100);
        /// <summary>
        /// 按钮3
        /// </summary>
        private Rect level3Position = new Rect(380, 10, 100, 100);
        /// <summary>
        /// 按钮4
        /// </summary>
        private Rect level4Position = new Rect(60, 160, 100, 100);
        /// <summary>
        /// 按钮5
        /// </summary>
        private Rect level5Position = new Rect(220, 160, 100, 100);
        /// <summary>
        /// 按钮6
        /// </summary>
        private Rect level6Position = new Rect(380, 160, 100, 100);
        // Use this for initialization
        void Start()
        {
    
        }
    
        // Update is called once per frame
        void Update()
        {
    
        }
    
        void OnGUI()
        {
            GUI.skin = mySkin;
            if (GUI.Button(level1Position,"",GUI.skin.GetStyle("LevelButton1")))
            {
                Application.LoadLevel(4);
            }
            if (GUI.Button(level2Position, "", GUI.skin.GetStyle("LevelButton2")))
            {
                Application.LoadLevel(4);
            }
            if (GUI.Button(level3Position, "", GUI.skin.GetStyle("LevelButton3")))
            {
                Application.LoadLevel(4);
            }
            if (GUI.Button(level4Position, "", GUI.skin.GetStyle("LevelButton4")))
            {
                Application.LoadLevel(4);
            }
            if (GUI.Button(level5Position, "", GUI.skin.GetStyle("LevelButton5")))
            {
                Application.LoadLevel(4);
            }
            if (GUI.Button(level6Position, "", GUI.skin.GetStyle("LevelButton6")))
            {
                Application.LoadLevel(4);
            }
            if (GUI.Button(backPosition, "", GUI.skin.GetStyle("BackButton")))
            {
                Application.LoadLevel(2);
            }
        }
    }

      一点要注意在JS中var mySkin:GUISkin 表示公共的变量在C#中默认是私有变量所以要写出public GUISkin mySkin; 这点小区别注意。

      

      成功跑起来后就可以把之前的三个场景Sences组合起来跑一次

      

      


    作者:PEPE
    出处:http://pepe.cnblogs.com/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    (转)要在自己感兴趣的领域成为专家,要经过一万小时训练
    (学习日记)数据结构第一章中life游戏开发的学习记录
    (转)响应式Web设计是大势所趋还是时代的产物
    (学习日记)裘宗燕:C/C++ 语言中的表达式求值
    (转)如果你喜欢编程 给想做程序员的人的7个建议
    NHibernate 中删除数据的几种方法
    如何避免在安装SQL SERVER 2008时,出现Rule “Previous releases of Microsoft Visual Studio 2008″ failed.
    【转】A brief overview of Ncqrs
    爱博图微博图片批量下载小工具
    解释用Q号算出你的年龄的“奥妙”。。。
  • 原文地址:https://www.cnblogs.com/PEPE/p/3550972.html
Copyright © 2020-2023  润新知