zoukankan      html  css  js  c++  java
  • NGUI(四)制作一个菜单界面

    1.拼UI,挂载对应控件

    2.脚本GameSetting.cs

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    public enum GameGrade
    {
        ESAY,
        NORMAL,
        DIFFCULTY
    }
    public enum ControlType
    {
        KEYBOARD,
        TOUCH,
        MOUSE
    }
    public class GameSetting : MonoBehaviour
    {
        public  float soundVolume = 1;                          //声音
        public  GameGrade grade = GameGrade.NORMAL;             //游戏难度
        public  ControlType controller = ControlType.KEYBOARD;  //操作方式
        public  bool isFullScreen = false;                      //是否全屏
    
        public TweenPosition startTween;                        //开始界面移出动画
        public TweenPosition optionTween;                       //设置界面移入动画
    
        //监听声音设置
        public void OnSoundChange()
        {
            soundVolume = UISlider.current.value;   // 固定格式 :脚本名.current.value   获取监听的值 
        }
    
        //监听难度控制
        public void OnGradeChange()
        {
            switch(UIPopupList.current.value.Trim())   //PopupList监听属性值的时候,会把换行符一并取到,所以要用Trim()去除两边换行符、制表符、空格等无效字符
            {
                case "容易":
                    grade = GameGrade.ESAY;
                    break;
                case "NORMAL":
                    grade = GameGrade.NORMAL;
                    break;
                case "DEFFICULTY":
                    grade = GameGrade.DIFFCULTY;
                    break;
            }
        }
    
        //监听操作方式
        public void OnCtrlTypeChange()
        {
            switch (UIPopupList.current.value.Trim())   //PopupList监听属性值的时候,会把换行符一并取到,所以要用Trim()去除两边换行符、制表符、空格等无效字符
            {
                case "KEYBOARD":
                    controller = ControlType.KEYBOARD;
                    break;
                case "MOUSE":
                    controller = ControlType.MOUSE;
                    break;
                case "TOUCH":
                    controller = ControlType.TOUCH;
                    break;
            }
        }
        //监听是否全屏
        public void OnToggleChange()
        {
            isFullScreen = UIToggle.current.value;
        }
        //点击设置
        public void SettingButtonClick()
        {
            startTween.PlayForward();           //正常播放start界面移出场景动画                    PlayForward() 正常播放
            optionTween.PlayForward();          //播放设置界面进入场景动画
        }
        //点击完成设置,回到开始界面
        public void SettingEndButtonClick()
        {
            optionTween.PlayReverse();          //倒序播放设置界面进入场景动画,即设置界面移出场景  PlayReverse() 反向播放
            startTween.PlayReverse();           //倒叙播放开始界面移出场景动画,即开始界面返回场景
        }
    }
  • 相关阅读:
    java打包成windows服务(转)
    java程序在windows系统作为服务程序运行(转)
    java String 转 Long 两种方法区别(转)
    css清除浮动clearfix:after的用法详解(转)
    管理界面的头2
    ROS 设置串口USB软连接
    ROS 用 roboware实现节点信息发送和接收
    javascript实现html中关键字查询
    winfrom 中 label 文字随着窗体大小变化
    lattice planner 规划详解
  • 原文地址:https://www.cnblogs.com/yifengs/p/15506345.html
Copyright © 2011-2022 走看看