unity NGUI(实战篇)

素材都是自己以前画的~

分析类图

在这里插入图片描述

BasePanel

面板基类 :
单例模式 该类对象只生成一次 外部调用时 类名.Instance.方法/属性
泛型 其他面板继承时也生成自己唯一的对象 约束为类class
继承mono的类在awake中赋值本身
在这里插入图片描述
保护类型虚函数 start 子类可以重写
抽象函数 init 用于子类处理ui事件监听等 初始化方法
虚函数 showme hideme 子类继承后打开关闭窗口的重写
在这里插入图片描述

GameDataMgr

普通类单例模式
存放公共的信息 目前有聊天信息 物体对话信息 音乐设定信息
构造函数初始化 载入信息
在这里插入图片描述
给外部处理处理数据的方法
在这里插入图片描述
在这里插入图片描述

基本信息类

1.普通类 包含基础信息成员
2.用于存放在xml文件的类 包含字典列表等 (单个信息不需要)
3.挂载在预制体上面的物品类(仅有预制体或其他空间时需要)

聊天信息数据(只读不改多条

在这里插入图片描述

物体对话信息数据(只读不改多条

在这里插入图片描述

背景音乐数据(读写单个

在这里插入图片描述

在这里插入图片描述

StartPanel

在这里插入图片描述
拼面板时优先调整root
在这里插入图片描述

两个按钮 分别监听事件
在这里插入图片描述

MenuPanel(随便取得类名不太好

行走按钮 交互按钮(暂时没用) 角手机按钮 物体触碰对话框
在这里插入图片描述
按住按钮变小 松开变大
在这里插入图片描述

NGUI缓动Tween在这里插入图片描述

from 开始状态
to 结束状态
playstyle 播放方式 一次;循环;循环 头尾尾头
animation curve 动画曲线
duration 持续时间
start delay 开始播放前的延迟时间
delay affect 延迟影响
tweengroup 分组id 用于一个对象的多个动画时的分组
ignore timescale 忽略时间暂停
use fixed update 使用物理更新 更新动画
在这里插入图片描述
tween target 控制对象
include children 子对象是否跟着变化
start state 勾选 在激活前将关联的tween重置为起始状态
tween group 缓动组
Trigger condition 触发条件
play direction 触发的事件 关闭;开关转换;开启
if target is disable 控制对象失活后处理
on activation 激活时处理
when finish 播放完毕后处理
在这里插入图片描述

在这里插入图片描述

Event Tigger

其他特殊响应函数
关联脚本直接拖函数调用方法
在这里插入图片描述
在这里插入图片描述
代码调用(此处代码是左右移动按钮)
在这里插入图片描述

menupanel代码部分

1.init中 初始化按钮事件 获得对话框的显示文本
在这里插入图片描述

2.物体对话框 给外部调用的显示隐藏更改位置方法
在这里插入图片描述
屏幕坐标系转换
判定与窗口比例有关 (还没搞清楚
在这里插入图片描述

在这里插入图片描述

人物相关

行走动画控制
在这里插入图片描述
在这里插入图片描述
碰撞到物体刚体显示对话框
在这里插入图片描述

PhonePanel 电话面板

打开设置面板 聊天面板 返回开始场景
在这里插入图片描述

SettingPanel设置面板

设置音乐大小 音效大小
在这里插入图片描述
打开面板记载数据
关闭保存数据
在这里插入图片描述
在这里插入图片描述

ChatPanel聊天面板

scrollview scrollbar 选择对话框poplist 发送选择按钮
在这里插入图片描述
对话框是按照label的内容大小变化的
创建预制体的位置需要注意缩放大小
此处的方法是用两个空物体来确定下一个预制体的位置
id控制创建的对象 0为停留选项
在这里插入图片描述
在这里插入图片描述
停留后显示poplist
在这里插入图片描述
协程
在这里插入图片描述
按下发送键继续协程
在这里插入图片描述

结束

以上就是本demo

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值