MatchMaster/assets/GameplayIntro
2026-09-22 18:09:02 +08:00
..
prefab 优化七日显示与动画,优化新玩法提示分页器与图片显示 2026-09-17 10:43:21 +08:00
script 修复玩法介绍道具图尺寸被代码覆盖 2026-09-17 16:30:18 +08:00
Texture 将游戏中所有图片 压缩一遍 2026-09-22 18:09:02 +08:00
compressed.meta 将游戏中所有图片 压缩一遍 2026-09-22 18:09:02 +08:00
prefab.meta feat: add level gameplay introduction panel and preview tools 2026-09-15 20:06:12 +08:00
README.md 修复玩法介绍道具图尺寸被代码覆盖 2026-09-17 16:30:18 +08:00
README.md.meta feat: add level gameplay introduction panel and preview tools 2026-09-15 20:06:12 +08:00
script.meta feat: add level gameplay introduction panel and preview tools 2026-09-15 20:06:12 +08:00
Texture.meta feat: add level gameplay introduction panel and preview tools 2026-09-15 20:06:12 +08:00

玩法介绍正式功能包

Asset Bundle 名称:gameplay_intro。

  • prefab/GameplayIntro.prefab:本关介绍面板固定布局,可在 Creator 中编辑背景、标题、滑动区域和分页器位置。
  • assets/Script/module/Tool/LevelGameplay.ts:主脚本目录中的筛选工具,从实际关卡的方块、门、地块及生成队列识别玩法,并按类型去重。主场景仅以类型引用 GameplayIntro,在分包加载完成后用组件名获取实例,避免启动时依赖尚未加载的分包脚本。
  • script/GameplayIntro.ts:绑定预制体节点,关闭按钮或外部点击关闭,相邻三页图片加载与释放。
  • script/GuideCarousel.ts:鼠标/触摸翻页、缓动回弹、最多三个主圆点及白点替换动画;三个主圆点表示的页码范围外还有介绍时,对应侧显示 60% 大小的小提示点,使用非当前页圆点图片,替换动画期间淡入;单页隐藏分页且不绑定拖动,双页显示两点。
  • Texture/:面板背景、玩法指南标题、问号、关闭按钮及分页圆点等 UI 素材;原有中文玩法图片已清理,玩法图片统一加载公共目录。
  • assets/resources/Window_Prop/:34 组公共玩法图片,按 titleN、iconN、IntroductionN 加载。daoju26 使用素材 27,daoju27 使用素材 26。

游戏入口由 assets/Script/SceneManager.ts 控制:进入场景时按实际加载的关卡生成介绍列表,没有特殊道具就隐藏问号。首次点击 openGameplayIntro 加载本包的 prefab/GameplayIntro,实例挂到 Inspector 绑定的 tipPanel 节点;关闭后保留固定布局,释放所有玩法页图片,再次打开复用实例,按解锁关卡倒序排列后定位最左端的最新玩法;三个分页点时高亮左边第 1 点。

GameplayIntro.open(entries) 接收已经筛选的介绍列表。NEW_LEVEL.json 仅提供介绍编号和排列顺序,不再用解锁关卡或玩家进度筛选。开局方块和 spawnGates[].spawnQueue[].members 都纳入本关范围,消除后仍可查看;同类型只展示一页。木箱/快递盒/彩色木箱、普通/定次连接等按实际变体匹配,花盆借用的不可见盖板不增加快递盒介绍。

场景接线:在 GameScene 的 Top/tip 下放置问号 Sprite + Button,图片使用本包 wenhao;Button 点击事件绑定 Canvas 上的 SceneManager.openGameplayIntro。SceneManager 的 Tip Panel 属性绑定场景现有的 tipPanel。tipPanel 应作为位于游戏内容之上的居中容器,不需要添加覆盖整个屏幕的输入拦截组件。

预制体直接引用背景、标题、关闭按钮和两种分页圆点;34 种公共玩法图片由脚本按当前页及相邻页动态加载,不能把所有玩法图片拖到预制体中,以免一次加载全部图片。

测试包及预览专用接口已移除,启动场景已恢复为主线正式场景。

可编辑的固定玩法页结构

直接打开 prefab/GameplayIntro.prefab:

IntroViewport
└─ Pages
   ├─ Page1
   │  ├─ TitleImage
   │  ├─ IconImage
   │  └─ DescriptionImage
   ├─ Page2(相同结构)
   └─ Page3(相同结构)

所有图片节点已经放在面板预制体内,SpriteFrame 留空。IconImage 和 DescriptionImage 的大小由 Sprite 的 Size Mode、Trim 及节点尺寸/缩放控制,代码不覆盖;TitleImage 仍以预制体 Width/Height 为展示区域等比适配;三页需要保持相同布局。代码仅复用三个页面、改变分页位置并动态加载图片。道具图和说明图不做代码缩放,标题图保留等比适配;没有单图比例修正。翻远或关闭面板时清空图片并归还资源引用,不销毁这三个页面;面板整体销毁时由引擎销毁子节点。