82 lines
2.8 KiB
TypeScript
82 lines
2.8 KiB
TypeScript
|
||
const {ccclass, property, requireComponent} = cc._decorator;
|
||
import GameData from "./GameData";
|
||
import { StorageMessage } from "./Storage";
|
||
|
||
@ccclass
|
||
export default class NewClass extends cc.Component {
|
||
|
||
start () {
|
||
this.Authentication();
|
||
}
|
||
|
||
//鉴权,判断有无缓存userid,有的话判断是否过期,没有的话重新获取userid 并且缓存上
|
||
private Authentication(){
|
||
let name = "user_" + GameData._instance.GM_INFO.gameId;
|
||
let data = StorageMessage.getStorage(name);
|
||
if(data == "undifend" || data==null || data == ""){
|
||
console.log("没缓存");
|
||
this.setUserId(name);
|
||
}
|
||
else{
|
||
console.log("有缓存");
|
||
let timestamp = parseInt(new Date().getTime()/1000 + "");
|
||
if((timestamp - data.time) > 86400){
|
||
console.log("缓存过期");
|
||
this.setUserId(name);
|
||
return;
|
||
}
|
||
GameData._instance.GM_INFO.userId = parseInt(data.userId);
|
||
}
|
||
}
|
||
//设置userId,链接有获取,没有跳转授权
|
||
private setUserId(name){
|
||
GameData._instance.GM_INFO.userId = this.getUserId();
|
||
if(GameData._instance.GM_INFO.userId == null){
|
||
console.log("链接没ID准备跳转");
|
||
let url = "http://api.sparkus.cn/api/user/auth/login?domain=hui32579WdYPsgYq&callback="+location.href;
|
||
window.location.href = url;
|
||
}
|
||
else{
|
||
let timestamp = parseInt(new Date().getTime()/1000 + "");
|
||
let idData = {
|
||
userId: GameData._instance.GM_INFO.userId + "",
|
||
time: timestamp
|
||
}
|
||
StorageMessage.setStorage(name,idData);
|
||
console.log("有ID:",GameData._instance.GM_INFO.userId);
|
||
GameData._instance.GM_INFO.userId = parseInt(GameData._instance.GM_INFO.userId);
|
||
}
|
||
}
|
||
//获取user id 有参数为获取gameid userid 时间戳, 无参数为只获取链接尾缀上的userId
|
||
private getUserId() {
|
||
let pathStr = window.location.search;
|
||
let arr=pathStr.split("&");
|
||
if (pathStr.length>= 0&&arr.length>0) {
|
||
let arr2=[];
|
||
arr.map(item=>{
|
||
arr2.push(item.split("=")[1])
|
||
})
|
||
return arr2[0];
|
||
} else {
|
||
return null
|
||
}
|
||
}
|
||
//开始游戏,跳转至引导页面
|
||
startGame(){
|
||
cc.director.loadScene("GuideScene");
|
||
}
|
||
//备用,用来测试跳转 指定关卡
|
||
clickBtn(event,data){
|
||
GameData._instance.GM_INFO.custom = parseInt(data);
|
||
cc.director.loadScene("GameScene");
|
||
}
|
||
//打开排行榜
|
||
openRank(){
|
||
cc.director.loadScene("RankScene");
|
||
}
|
||
|
||
protected update(dt: number): void {
|
||
}
|
||
}
|