前言:在Play页面中给Play页面添加一个“开始游戏”和“退出游戏”按钮顺便再来一个背景音乐

  添加按钮可以是GUI.Button(),也可以是GUILayout.Button();给图片添加按钮可以用到GUISkin()也可以是GUIStyle(),这些有点和WebForm中开发用到的CSS样式相似,GUIStyle组成了GUISkin。

  大致方法如下:

  1、Assets-右键新建一个GUI Skin

  2、自定义两个按钮:游戏开始按钮和回到游戏主页按钮

  3、具体设置就是放入按钮图片,仔细看看和WebForm中的样式是不是很有一家的感觉

  4、代码

#pragma strict

var mySkin:GUISkin;//GUISkin

var quitButton:Texture2D;//退出界面

var okButton:Texture2D;

var closeButton:Texture2D;

var closeButtonPosition:Rect=new Rect(21, 112, 115, 88);//回到主页中的关闭按钮

var okButtonPosition:Rect=new Rect(260, 116, 115, 115);//回到主页中的确定按钮

private var myWindow:Rect=new Rect(400-250,300-60,431,215);

private var showWindow:boolean=false;

private var isQuit:boolean=false;

function Start () {

}

function Update () {

}

function OnGUI(){
GUI.skin=mySkin;
if(showWindow){//显示退出主页对话框
myWindow=GUI.Window(0, Rect(90, 100, 400, 200), DoMyWindow, ""); //GUI.Window(0,myWindow,DoMyWindow,"");
}
else{
if(GUI.Button(Rect(Screen.width/2.0-221,Screen.height/2.0-100 ,442*0.8,283*0.8),"",GUI.skin.GetStyle("PlayButton"))){
Application.LoadLevel(3);//下一个场景3
}
if(GUI.Button(Rect(Screen.width-120,Screen.height-120 ,110,110),"",GUI.skin.GetStyle("HomeButton"))){//退出
showWindow=true;
}
}
} function DoMyWindow(windowID:int){
GUI.DrawTexture(Rect(0,0,398,275),quitButton);
if(GUI.Button(closeButtonPosition,closeButton))//是否退出程序:否
showWindow=false;//不显示退出窗口
if(GUI.Button(okButtonPosition,okButton))////是否退出程序:是
Application.Quit();//退出程序
}

  5、注意事项

  创建完Window后会发现鼠标只显示在Play按钮和主页按钮的后面,这时需要调整鼠标的深度,在customCusor.js中添加代码如下

  

  6、背景音乐

  6.1

  

  6.2

  

  7、运行效果

  

  

  画的有点丑,样式控制折腾了半天还是需要学习,另外资源文件也需要在找找。不过还好效果出来了。。。。。。

Unity3D笔记 愤怒的小鸟<三> 实现Play界面2的更多相关文章

  1. Unity3D笔记 愤怒的小鸟<二> 实现Play界面

    创建Play界面.能个把各个图片组合成一个场景,场景组成后背景能够不停的滚动,当鼠标单击时显示图片手型鼠标 一.GUI Texture 1.创建背景.地面.树木.草 ,这里注意Z轴的排序,一层一层则第 ...

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

    一直跟着龚老师用js写,VS智能感应用习惯后发现这里用js对初学者比较蛋疼,MONO有提示但是还是无法和VS媲美就目前来看.所以这次还是换成熟悉的VS来开发. 目标:实现关卡页面 跑起来的效果如下: ...

  3. Unity3D笔记 愤怒的小鸟<一>场景切换

    新建3个场景,场景1 Start 十秒后自动切换到场景2 Splash,场景2在二秒后自动切换到场景3 Selection 一.场景一Start 二.场景2 Splash 三.场景3 Selectio ...

  4. Unity3D笔记 GUI 三、实现选项卡二窗口

    实现目标: 1.使用个性化Box控件 2.个性化Lable控件 3.添加纵向滚动条 4.新建SelectedItem样式 一.最终效果: 二.主要代码 using UnityEngine; using ...

  5. Unity3D笔记 愤怒的小鸟<七> 小鸟群准备动画

    要实现的目标: 1.3只小鸟初始动画 2.完善代码slingShot.js 3.完善代码BirdMoving.js 1.实现3个准备动画:Unity3D内置的动画管理器 1.1.先选择GameObje ...

  6. Unity3D笔记 愤怒的小鸟<六> 弹弓发射小鸟

    要实现的目标 实现个性化的鼠标 实现弹弓 选择小鸟.拉升弹弓.发射小鸟 弹弓橡皮筋 声音 1.实现个性化鼠标 效果 2.添加弹弓 建立两个材质 创建一个空GameObject 把两个shoot拖进来统 ...

  7. Unity3D笔记 愤怒的小鸟<五> 小鸟动画+Unity3D如何设置断点调式

    前言:实现小鸟的动画,之前吐槽过js写U3D,就改成了C#来写,没想到遇到问题了. 实现的效果 using UnityEngine; using System.Collections; /// < ...

  8. Unity3D游戏-愤怒的小鸟游戏源码和教程(二)

    Unity愤怒的小鸟游戏教程(二) 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) AngryEva游戏效果 ...

  9. firefox 扩展开发笔记(三):高级ui交互编程

    firefox 扩展开发笔记(三):高级ui交互编程 前言 前两篇链接 1:firefox 扩展开发笔记(一):jpm 使用实践以及调试 2:firefox 扩展开发笔记(二):进阶开发之移动设备模拟 ...

随机推荐

  1. 内存管理 初始化(七)kmem_cache_init_late 初始化slab分配器(下)

    我们知道kmem_cache中对于每CPU都有一个array_cache,已作为每CPU申请内存的缓存.  此函数的目的在于:每个kmem_cache都有一个kmem_list3实例,该实例的shar ...

  2. Java编程思想学习笔记——类型信息

    前言 运行时类型信息(RTTI:Runtime Type Information)使得我们可以在程序运行时发现和使用类型信息. Java在运行时识别对象和类的信息的方式: (1)一种是RTTI,它假定 ...

  3. react解析html标签组成的字符串

    转载自:https://blog.csdn.net/tongshuo_11/article/details/61195232 var content = '<strong>content& ...

  4. 【转载】MongoDB集群和实战详解

    1.概述 最近有同学和网友私信我,问我MongoDB方面的问题:这里我整理一篇博客来赘述下MongoDB供大家学习参考,博客的目录内容如下: 基本操作 CRUD MapReduce 本篇文章是基于Mo ...

  5. Linux的wget命令

    wget是linux最常用的下载命令, 一般的使用方法是: wget + 空格 + 要下载文件的url路径 例如: # wget http://www.linuxsense.org/xxxx/xxx. ...

  6. mysql中已经存在某个库中有大小写的表,将lower_case_table_names由0改为1对已经存在的表是否有影响?

    需求描述: 今天遇到了修改lower_case_table_names参数的问题,想了下,如果原来里面有表,表名有大小写的, 如果将lower_case_table_names从默认的0改为1之后,那 ...

  7. python 导入模块的坑。为什么整个项目能运行,单独运行某个文件模块就报错?多层目录不同文件夹怎么导入?

    一些文章介绍了python不同目录怎么导入问题,但py文件运行起点却从来没有文章说过!这是相当重要的!! 这个连接是网上99%的所讲的导入 https://www.cnblogs.com/luoye0 ...

  8. [原]反编译unity3d发布apk

    郑重声明:本教程仅用于学习使用,从事任何商业用途非法行为与作者无关,请知晓! 本文目的:通过教会大家如何破解别人游戏的同时,也希望各位开发者能加强自身游戏的防破解能力! 1:到gitHub下载DisU ...

  9. Linux Device Tree

     原创博文,转载请标明出处--周学伟 http://www.cnblogs.com/zxouxuewei/ 设备树使用手册 基本数据格式 设备树是一个包含节点和属性的简单树状结构.属性就是键-值对,而 ...

  10. 一道简单的把ArrayList中的正负数组分开并求得边界索引的题目

    给定一个List,里面存放的一组整数有正数和负数,要求把正数和负数分开,并得到正数和负数分割线索引(不要求排序,不能使用多层循环) 解答方法并不算太复杂,重点注意边界条件和极端条件(全是正或者全是负) ...