Files
18xchat/assets/Scripts/Main/Channel/BuildUtil.ts
T
2025-07-17 17:18:21 +08:00

131 lines
3.6 KiB
TypeScript

import { _decorator, Node } from 'cc';
import ChannelCfg, { Channel_C } from './ChannelCfg';
import GlobalValue from '../Common/GlobalValue';
const { ccclass, property } = _decorator;
export enum DominIp {
/**本地内网渠道-H5 */
Local_C = 1,
Local_H5 = 999999,
Local_Test = 555,
Local_H5_NoRecharge = 999998,
Android_TapTap = 7100101,
Android_Yuwan = 7100102,
wechat_Yuwan = 7100103,
Android_Zongyou = 7100201,
}
//渠道功能开关
export enum ChannelFun {
/**微信广告 */
wxAd = 1,
/**企业微信 */
qywx,
/**微信游戏圈 */
wxClub,
/**微信公众号 */
wxGZH,
/**微信订阅 */
wxSubs,
/**广邀战友-每日分享 */
wxDayShare,
}
@ccclass('BuildUtil')
export default class BuildUtil {
private static _I: BuildUtil = null;
public static get I(): BuildUtil {
if (!BuildUtil._I) {
BuildUtil._I = new BuildUtil();
BuildUtil._I.init();
}
return BuildUtil._I;
}
/**版本号 */
private gVersion = `v1.0.`;
/**当前线上版本号 */
private v_Version = 1;
/**当前线上资源上传时间 */
private res_Version = '20230101';
/**根据不同包==变动的值 */
private BuilderChannel = 1;
/**是否是正式包 */
private isRelease = true;
private ChannleInfo: Channel_C = null;
private funsList;
init() {
this.v_Version = 1;
this.res_Version = '20240110';
this.BuilderChannel = DominIp.Local_C;
// ChannelLogin.I;
let ScenType = this.getQueryValue("GameScen");
if (ScenType) {
this.BuilderChannel = +ScenType; //在字符串前面添加+号,可以将string转化为numbre(字符串内容为数字时才有意义)
}
let JumpGuide = this.getQueryValue("JumpGuide");
if (JumpGuide == 'true') {//是否跳过新手引导
// GlobalValue.g_Guide = false;
}
let DBProject = this.getQueryValue("DBProject");
if (DBProject == 'true') {//是否是测试包
this.isRelease = false;
}
let HG_Channel = window['HG_Channel'];
if (HG_Channel) {
this.ChannleInfo = HG_Channel;
this.BuilderChannel = +this.ChannleInfo.GameId;
}
let HG_Version = window['HG_Version'];
if (HG_Version) {
this.v_Version = HG_Version.version;
this.res_Version = HG_Version.verExt;
}
let HG_DomainCfg = window['HG_DomainCfg'];
if (HG_DomainCfg) {
GlobalValue.m_DomainData = JSON.parse(JSON.stringify(HG_DomainCfg));
window['HG_DomainCfg'] = null;
}
let HG_LoginCfg = window['HG_LoginCfg'];
if (HG_LoginCfg) {
GlobalValue.g_ChannelCfg = JSON.parse(JSON.stringify(HG_LoginCfg));
window['HG_LoginCfg'] = null;
}
}
/**获取渠道信息 */
get getChannelInfo(): Channel_C {
if (this.ChannleInfo) {
return this.ChannleInfo;
} else {
return ChannelCfg.I.getChannelInfo(this.BuilderChannel);
}
}
/**H5链接包截取链接参数 */
getQueryValue(key) {
if (window.location.search) {
var query = window.location.search.substring(1);
var vars = query.split("&");
for (var i = 0; i < vars.length; i++) {
var pair = vars[i].split("=");
if (pair[0] == key) {
return pair[1];
}
}
}
return null;
}
}