| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- import { Data } from "../../../mk/data/Data";
- /**
- * @description 新手引导
- * @author 邹勇
- */
- export class GuideData {
- /** 新手引导数据 */
- public data: Map<number, GuideVO[]>;
- /** 当前引导id */
- public crtID: number = null;
- public async init() {
- let config = gData.gameData.configs.Guide
- if (!config) {
- let result = await mk.loader.load("data/guide_data", cc.JsonAsset);
- if (result && result.json) {
- config = result.json;
- }
- cc.log('无远程引导数据,使用本地测试数据');
- }
- this.data = new Map<number, GuideVO[]>();
- let arr = [];
- let id = 1;
- for (let i = 0; i < config.length; i++) {
- let guide = {} as GuideVO;
- let o = config[i];
- let a = o.id.split("_");
- guide.id = parseInt(a[0]);
- guide.step = parseInt(a[1]);
- guide.trigger = o.trigger;
- guide.tr_num = o.tr_num || o.trNum;
- guide.tr_form = o.tr_form || o.trForm;
- guide.dialog = o.dialog;
- guide.display_rect = o.display_rect || o.displayRect;
- guide.click_rect = o.click_rect || o.clickRect;
- guide.finger = o.finger || '';
- guide.lag_next = o.lag_next || o.lagNext;
- if (id != guide.id) {
- this.data.set(id, arr);
- arr = [];
- id = guide.id;
- }
- arr.push(guide);
- }
- this.data.set(id, arr);
- }
- public getGuidesByID(id): GuideVO[] {
- return this.data.get(id);
- }
- }
- export class GuideVO {
- /** 大步骤 */
- id: number;
- /** 大步骤中的小步 */
- step: number;
- /** 触发方式 1固定 2等级 3任务 4关卡 5功能开启 */
- trigger: number;
- /** 触发条件的数据 如当trigger是关卡时关卡时,为触发关卡 */
- tr_num: number;
- /** 1头像 2形象 */
- tr_form: number;
- /** 对话内容 */
- dialog: string;
- /** 透明点击区域(与click_node不共存) */
- display_rect: string;
- /** 点击组件名字(必须在代码中预先设置) */
- click_rect: string;
- /** 手指位置 */
- finger: string;
- /** 下个时间 */
- lag_next: 0;
- }
|