drgame-cc 1.0.61 → 1.0.63
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/drres/focus/focus_1/gesture.atlas +34 -34
- package/drres/focus/focus_2/gesture.atlas +41 -41
- package/drres/focus/focus_3/gesture.atlas +34 -34
- package/drres/focus/focus_4/gesture.atlas +20 -20
- package/drres/prefab/HelperWin.prefab +508 -508
- package/drscript/PlatformAdapter.ts +1 -1
- package/drscript/ad-sdk/README.md +78 -12
- package/drscript/ad-sdk/ad-sdk.ts +416 -0
- package/drscript/ad-sdk/{adapters/xiaomi-adapter.js.meta → ad-sdk.ts.meta} +2 -2
- package/drscript/ad-sdk/event-emitter.ts +66 -0
- package/drscript/ad-sdk/event-emitter.ts.meta +10 -0
- package/drscript/ad-sdk/leaderboard/leaderboard.ts +219 -0
- package/drscript/ad-sdk/leaderboard/leaderboard.ts.meta +10 -0
- package/drscript/ad-sdk/package.json +18 -17
- package/drscript/ad-sdk/reporters/reporter.ts +515 -0
- package/drscript/ad-sdk/reporters/reporter.ts.meta +10 -0
- package/drscript/ad-sdk/reporters/superset-lewo.ts +464 -0
- package/drscript/ad-sdk/reporters/superset-lewo.ts.meta +10 -0
- package/drscript/ad-sdk/types/enums.ts +103 -0
- package/drscript/ad-sdk/types/enums.ts.meta +10 -0
- package/drscript/ad-sdk/types/{index.d.ts → index.ts} +1 -1
- package/drscript/ad-sdk/types/index.ts.meta +10 -0
- package/drscript/ad-sdk/types/{interfaces.d.ts → interfaces.ts} +61 -10
- package/drscript/ad-sdk/types/interfaces.ts.meta +10 -0
- package/drscript/ad-sdk/user-gamedata/user-gamedata.ts +219 -0
- package/drscript/ad-sdk/user-gamedata/user-gamedata.ts.meta +10 -0
- package/drscript/ad-sdk/user-gamedata.meta +13 -0
- package/package.json +1 -1
- package/drscript/ad-sdk/ad-sdk.d.ts +0 -59
- package/drscript/ad-sdk/ad-sdk.js +0 -338
- package/drscript/ad-sdk/adapters/xiaomi-adapter.d.ts +0 -29
- package/drscript/ad-sdk/adapters/xiaomi-adapter.d.ts.meta +0 -6
- package/drscript/ad-sdk/adapters/xiaomi-adapter.js +0 -452
- package/drscript/ad-sdk/event-emitter.d.ts +0 -12
- package/drscript/ad-sdk/event-emitter.js +0 -65
- package/drscript/ad-sdk/leaderboard/leaderboard.d.ts +0 -23
- package/drscript/ad-sdk/leaderboard/leaderboard.js +0 -193
- package/drscript/ad-sdk/reporters/reporter.d.ts +0 -85
- package/drscript/ad-sdk/reporters/reporter.js +0 -500
- package/drscript/ad-sdk/reporters/superset-lewo.js +0 -574
- package/drscript/ad-sdk/types/enums.d.ts +0 -66
- package/drscript/ad-sdk/types/enums.js +0 -113
- package/drscript/ad-sdk/types/index.js +0 -15
|
@@ -1,193 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 排行榜模块 - 积分排行与添加积分
|
|
3
|
-
*
|
|
4
|
-
* 使用方式:
|
|
5
|
-
* Leaderboard.init(config) — 初始化(设置项目编码、服务地址)
|
|
6
|
-
* Leaderboard.getRank() — 获取积分排行榜
|
|
7
|
-
* Leaderboard.addPoint(params) — 添加积分
|
|
8
|
-
*/
|
|
9
|
-
|
|
10
|
-
// ────────────────────────────────────────
|
|
11
|
-
// 排行榜实现
|
|
12
|
-
// ────────────────────────────────────────
|
|
13
|
-
|
|
14
|
-
var Leaderboard = {
|
|
15
|
-
/** 是否已初始化 */
|
|
16
|
-
_initialized: false,
|
|
17
|
-
|
|
18
|
-
/** 配置 */
|
|
19
|
-
_config: {
|
|
20
|
-
/** 排行榜服务地址 */
|
|
21
|
-
rank_url: 'https://hyp-test.huyingpai.com/API_ACHIEVEMENT/api/user/point/rank',
|
|
22
|
-
/** 添加积分服务地址 */
|
|
23
|
-
add_url: 'https://hyp-test.huyingpai.com/API_ACHIEVEMENT/api/user/point/add',
|
|
24
|
-
/** 项目编码 */
|
|
25
|
-
project: '',
|
|
26
|
-
/** 用户ID */
|
|
27
|
-
user_id: '',
|
|
28
|
-
},
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* 初始化排行榜模块
|
|
32
|
-
* @param {import('../types/interfaces').ILeaderboardConfig} config
|
|
33
|
-
*/
|
|
34
|
-
init: function (config) {
|
|
35
|
-
config = config || {};
|
|
36
|
-
|
|
37
|
-
if (config.rank_url) {
|
|
38
|
-
this._config.rank_url = config.rank_url;
|
|
39
|
-
}
|
|
40
|
-
if (config.add_url) {
|
|
41
|
-
this._config.add_url = config.add_url;
|
|
42
|
-
}
|
|
43
|
-
this._config.project = config.project || '';
|
|
44
|
-
this._config.user_id = config.user_id || '';
|
|
45
|
-
|
|
46
|
-
this._initialized = true;
|
|
47
|
-
console.log('[Leaderboard] Initialized, project:', this._config.project);
|
|
48
|
-
},
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* 获取积分排行榜
|
|
52
|
-
* @returns {Promise<import('../types/interfaces').IRankResult>}
|
|
53
|
-
*/
|
|
54
|
-
getRank: function () {
|
|
55
|
-
if (!this._initialized) {
|
|
56
|
-
console.warn('[Leaderboard] Not initialized. Call Leaderboard.init() first.');
|
|
57
|
-
return Promise.reject({ code: -1, message: 'Leaderboard not initialized' });
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
var self = this;
|
|
61
|
-
var data = {
|
|
62
|
-
project: self._config.project,
|
|
63
|
-
timestamp: Date.now(),
|
|
64
|
-
time: self._formatTime(new Date()),
|
|
65
|
-
};
|
|
66
|
-
|
|
67
|
-
return self._post(self._config.rank_url, data);
|
|
68
|
-
},
|
|
69
|
-
|
|
70
|
-
/**
|
|
71
|
-
* 添加积分
|
|
72
|
-
* @param {import('../types/interfaces').IAddPointParams} params
|
|
73
|
-
* @returns {Promise<any>}
|
|
74
|
-
*/
|
|
75
|
-
addPoint: function (params) {
|
|
76
|
-
if (!this._initialized) {
|
|
77
|
-
console.warn('[Leaderboard] Not initialized. Call Leaderboard.init() first.');
|
|
78
|
-
return Promise.reject({ code: -1, message: 'Leaderboard not initialized' });
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
var self = this;
|
|
82
|
-
var data = {
|
|
83
|
-
project: self._config.project,
|
|
84
|
-
userId: params.user_id || self._config.user_id,
|
|
85
|
-
point: params.point || 0,
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
// jsonData 为可选扩展数据
|
|
89
|
-
if (params.jsonData) {
|
|
90
|
-
data.jsonData = params.jsonData;
|
|
91
|
-
}
|
|
92
|
-
|
|
93
|
-
data.timestamp = Date.now();
|
|
94
|
-
data.time = self._formatTime(new Date());
|
|
95
|
-
|
|
96
|
-
return self._post(self._config.add_url, data);
|
|
97
|
-
},
|
|
98
|
-
|
|
99
|
-
/**
|
|
100
|
-
* 更新用户ID(登录后调用)
|
|
101
|
-
* @param {string} user_id
|
|
102
|
-
*/
|
|
103
|
-
setUserId: function (user_id) {
|
|
104
|
-
this._config.user_id = user_id;
|
|
105
|
-
},
|
|
106
|
-
|
|
107
|
-
/**
|
|
108
|
-
* 获取当前项目编码
|
|
109
|
-
* @returns {string}
|
|
110
|
-
*/
|
|
111
|
-
getProject: function () {
|
|
112
|
-
return this._config.project;
|
|
113
|
-
},
|
|
114
|
-
|
|
115
|
-
// ────────────────────────────────────────
|
|
116
|
-
// 内部方法
|
|
117
|
-
// ────────────────────────────────────────
|
|
118
|
-
|
|
119
|
-
/**
|
|
120
|
-
* 发送 POST 请求(Promise 封装)
|
|
121
|
-
* @param {string} url
|
|
122
|
-
* @param {Object} data
|
|
123
|
-
* @returns {Promise<any>}
|
|
124
|
-
*/
|
|
125
|
-
_post: function (url, data) {
|
|
126
|
-
return new Promise(function (resolve, reject) {
|
|
127
|
-
var dataStr = JSON.stringify(data);
|
|
128
|
-
console.log('[Leaderboard] POST:', url, dataStr);
|
|
129
|
-
|
|
130
|
-
var xmlhttp;
|
|
131
|
-
if (typeof XMLHttpRequest !== 'undefined') {
|
|
132
|
-
xmlhttp = new XMLHttpRequest();
|
|
133
|
-
} else if (typeof ActiveXObject !== 'undefined') {
|
|
134
|
-
xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
|
|
135
|
-
} else {
|
|
136
|
-
reject({ code: -1, message: 'No HTTP client available' });
|
|
137
|
-
return;
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
xmlhttp.onreadystatechange = function () {
|
|
141
|
-
if (xmlhttp.readyState !== 4) return;
|
|
142
|
-
|
|
143
|
-
var rsp = xmlhttp.responseText || xmlhttp.responseXML;
|
|
144
|
-
var parseError = false;
|
|
145
|
-
|
|
146
|
-
if (typeof rsp === 'string') {
|
|
147
|
-
try {
|
|
148
|
-
rsp = JSON.parse(rsp);
|
|
149
|
-
} catch (e) {
|
|
150
|
-
parseError = true;
|
|
151
|
-
}
|
|
152
|
-
}
|
|
153
|
-
|
|
154
|
-
if (parseError || xmlhttp.status !== 200) {
|
|
155
|
-
var errMsg = parseError ? 'JSON parse error' : ('HTTP ' + xmlhttp.status);
|
|
156
|
-
console.error('[Leaderboard] Request failed:', errMsg);
|
|
157
|
-
reject({ code: xmlhttp.status || -1, message: errMsg });
|
|
158
|
-
} else {
|
|
159
|
-
console.log('[Leaderboard] Response:', rsp);
|
|
160
|
-
resolve(rsp);
|
|
161
|
-
}
|
|
162
|
-
};
|
|
163
|
-
|
|
164
|
-
xmlhttp.open('POST', url, true);
|
|
165
|
-
xmlhttp.setRequestHeader('Content-Type', 'application/json;charset=UTF-8');
|
|
166
|
-
xmlhttp.send(dataStr);
|
|
167
|
-
});
|
|
168
|
-
},
|
|
169
|
-
|
|
170
|
-
/**
|
|
171
|
-
* 时间格式化:yyyy-MM-dd HH:mm:ss
|
|
172
|
-
* @param {Date} date
|
|
173
|
-
* @returns {string}
|
|
174
|
-
*/
|
|
175
|
-
_formatTime: function (date) {
|
|
176
|
-
var y = date.getFullYear();
|
|
177
|
-
var m = date.getMonth() + 1;
|
|
178
|
-
m = m < 10 ? '0' + m : m;
|
|
179
|
-
var d = date.getDate();
|
|
180
|
-
d = d < 10 ? '0' + d : d;
|
|
181
|
-
var h = date.getHours();
|
|
182
|
-
h = h < 10 ? '0' + h : h;
|
|
183
|
-
var min = date.getMinutes();
|
|
184
|
-
min = min < 10 ? '0' + min : min;
|
|
185
|
-
var sec = date.getSeconds();
|
|
186
|
-
sec = sec < 10 ? '0' + sec : sec;
|
|
187
|
-
return y + '-' + m + '-' + d + ' ' + h + ':' + min + ':' + sec;
|
|
188
|
-
},
|
|
189
|
-
};
|
|
190
|
-
|
|
191
|
-
module.exports = {
|
|
192
|
-
Leaderboard: Leaderboard,
|
|
193
|
-
};
|
|
@@ -1,85 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* 数据上报模块 - 类型声明(下划线字段格式)
|
|
3
|
-
*/
|
|
4
|
-
|
|
5
|
-
import { IReporterConfig, IReportItem } from '../types/interfaces';
|
|
6
|
-
|
|
7
|
-
/** 上报动作类型 */
|
|
8
|
-
export declare const ActionType: {
|
|
9
|
-
/** 曝光 */
|
|
10
|
-
Exposure: '曝光';
|
|
11
|
-
/** 点击 */
|
|
12
|
-
Click: '点击';
|
|
13
|
-
/** 开始播放 */
|
|
14
|
-
StartPlay: '开始播放';
|
|
15
|
-
/** 结束播放(需上报时长 action_value) */
|
|
16
|
-
EndPlay: '结束播放';
|
|
17
|
-
/** 分享 */
|
|
18
|
-
Share: '分享';
|
|
19
|
-
/** 订购(需上报成功订购金额) */
|
|
20
|
-
Order: '订购';
|
|
21
|
-
/** 启动 */
|
|
22
|
-
Start: '启动';
|
|
23
|
-
/** 退出 */
|
|
24
|
-
Exit: '退出';
|
|
25
|
-
/** 切后台 */
|
|
26
|
-
SwitchBackground: '切后台';
|
|
27
|
-
/** 切回 */
|
|
28
|
-
SwitchBack: '切回';
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
/** 批量上报配置 */
|
|
32
|
-
export interface IBatchConfig {
|
|
33
|
-
/** 每批最大条数 */
|
|
34
|
-
perNum: number;
|
|
35
|
-
/** 发送间隔(秒) */
|
|
36
|
-
spaceSec: number;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
/** 数据上报模块(单例) */
|
|
40
|
-
export declare const Reporter: {
|
|
41
|
-
/** 初始化上报模块 */
|
|
42
|
-
init(config: IReporterConfig): void;
|
|
43
|
-
|
|
44
|
-
/** 从后端获取批量上报配置 */
|
|
45
|
-
fetchReportConfig(callback?: (config: IBatchConfig) => void): void;
|
|
46
|
-
|
|
47
|
-
/** 单次上报 */
|
|
48
|
-
report(data: IReportItem, immediate?: boolean): void;
|
|
49
|
-
|
|
50
|
-
/** 批量上报 */
|
|
51
|
-
reportBatch(dataList: IReportItem[], commonInfo?: IReportItem, immediate?: boolean): void;
|
|
52
|
-
|
|
53
|
-
/** 立即刷新队列,将队列中所有事件立即发送 */
|
|
54
|
-
flushQueue(): void;
|
|
55
|
-
|
|
56
|
-
/** 获取或创建设备唯一ID */
|
|
57
|
-
createDeviceId(): string;
|
|
58
|
-
|
|
59
|
-
/** 重置设备ID */
|
|
60
|
-
resetDeviceId(): void;
|
|
61
|
-
|
|
62
|
-
/** 更新公共字段 */
|
|
63
|
-
setCommonInfo(info: Partial<IReportItem>): void;
|
|
64
|
-
|
|
65
|
-
/** 获取当前公共字段 */
|
|
66
|
-
getCommonInfo(): Partial<IReportItem>;
|
|
67
|
-
|
|
68
|
-
/** 更新用户信息(登录后调用,传入memberId) */
|
|
69
|
-
updateUserInfo(userInfo: Record<string, string>): void;
|
|
70
|
-
|
|
71
|
-
/** 上报「启动」事件 */
|
|
72
|
-
reportAppStart(): void;
|
|
73
|
-
|
|
74
|
-
/** 上报「切后台」事件 */
|
|
75
|
-
reportSwitchBackground(): void;
|
|
76
|
-
|
|
77
|
-
/** 上报「切回」事件 */
|
|
78
|
-
reportSwitchBack(): void;
|
|
79
|
-
|
|
80
|
-
/** 上报「退出」事件 */
|
|
81
|
-
reportAppExit(): void;
|
|
82
|
-
|
|
83
|
-
/** 获取底层上报实例(高级用法) */
|
|
84
|
-
readonly instance: any;
|
|
85
|
-
};
|