1234567891011121314 |
- {
- "code": "import { WindowManager, WindowType } from \"./WindowManager\";\r\nimport { NetworkManager, PROTOCOLS } from \"../Network/NetworkManager\";\r\nimport { GameUtils } from \"../Util/GameUtils\";\r\nimport { PlayerAccount } from \"../Network/PlayerAccount\";\r\nimport { AccountConfig, signdata, rewarddata, AccountUser } from \"../Main/DataMaker\";\r\nimport { ui } from \"../ui/layaMaxUI\";\r\nimport { TtSdk } from \"../Util/TtSdk\";\r\nexport var SignItemState;\r\n(function (SignItemState) {\r\n SignItemState[SignItemState[\"ready\"] = 0] = \"ready\";\r\n SignItemState[SignItemState[\"videoready\"] = 1] = \"videoready\";\r\n SignItemState[SignItemState[\"locking\"] = 2] = \"locking\";\r\n SignItemState[SignItemState[\"complete\"] = 3] = \"complete\";\r\n})(SignItemState || (SignItemState = {}));\r\nexport class RewardData {\r\n constructor(_id, _num) {\r\n this.rewardid = _id;\r\n this.rewardnum = _num;\r\n }\r\n}\r\nexport class SignItem {\r\n get RewardsData() {\r\n var rewardsdata = this.rewards.split(\";\");\r\n if (rewardsdata.length > 1) {\r\n return new RewardData(Number(6000), Number(1));\r\n }\r\n else {\r\n return new RewardData(Number(this.rewards), Number(this.rewardsNum));\r\n }\r\n }\r\n}\r\nexport class SignWindow extends ui.Window.SignWindowUI {\r\n constructor() {\r\n super();\r\n this.SignAwardDic = {};\r\n this.curSignItems = [];\r\n SignWindow.instance = this;\r\n }\r\n static get Instance() {\r\n return SignWindow.instance;\r\n }\r\n OnOpen(_data = null) {\r\n this.pan.y = Laya.stage.height / 1280 * this.pan.y;\r\n this.Btn.y = Laya.stage.height / 1280 * this.Btn.y;\r\n this.curSignItems = this.SignItemsData;\r\n this.ReFreshSginList();\r\n this.signBtn.visible = SignWindow.canSgin;\r\n this.awardbtn.visible = SignWindow.canSgin;\r\n this.signBtn.clickHandler = Laya.Handler.create(this, this.OnSign, null, false);\r\n this.closebtn2.clickHandler = Laya.Handler.create(this, this.OnCloseClick);\r\n this.awardbtn.clickHandler = Laya.Handler.create(this, this.OnClickDouble, null, false);\r\n this.height = Laya.stage.height;\r\n TtSdk.Showbanner();\r\n }\r\n OnCloseClick() {\r\n WindowManager.Instance.ShowWindow(WindowType.HomeWindow);\r\n }\r\n get SignItemsData() {\r\n var SignItems = [];\r\n var config = PlayerAccount.CurAccountData.GetConfig(AccountConfig.sign);\r\n var signday = Number(PlayerAccount.CurAccountData.GetSign(signdata.sign_days));\r\n var signtime = Number(PlayerAccount.CurAccountData.GetSign(signdata.sign_time));\r\n var frist = signday < 7;\r\n var index = frist ? 0 : 7;\r\n for (var i = index; i < index + 7; i++) {\r\n this.SignAwardDic[config[i].id] = config[i].rewards;\r\n }\r\n for (var key in this.SignAwardDic) {\r\n var rewardid = this.SignAwardDic[key];\r\n var reward = PlayerAccount.CurAccountData.GetRewardConfig(rewardid);\r\n var signitem = new SignItem();\r\n signitem.desc = reward.group_name;\r\n signitem.icon = reward.icon;\r\n signitem.signId = Number(reward.id);\r\n signitem.rewards = reward.reward_item;\r\n signitem.rewardsNum = reward.reward_num;\r\n signitem.weight = reward.reward_weight;\r\n var daynum = Number(key);\r\n if (signday + 1 > daynum) {\r\n signitem.itemState = SignItemState.complete;\r\n }\r\n if (signday + 1 < daynum) {\r\n signitem.itemState = SignItemState.locking;\r\n }\r\n if (signday + 1 == daynum) {\r\n signitem.itemState = SignItemState.ready;\r\n }\r\n SignItems.push(signitem);\r\n }\r\n return SignItems;\r\n }\r\n static get canSgin() {\r\n let todayZero = new Date(PlayerAccount.ServerTime * 1000);\r\n todayZero.setHours(0, 0, 0, 0);\r\n var zeroTime = todayZero.valueOf();\r\n var signtime = Number(PlayerAccount.CurAccountData.GetSign(signdata.sign_time));\r\n var signTime = signtime * 1000;\r\n var can = signTime < zeroTime ? true : false;\r\n return can;\r\n }\r\n ReFreshSginList() {\r\n this.Btn.visible = SignWindow.canSgin;\r\n this.closebtn2.visible = !SignWindow.canSgin;\r\n for (var i = 0; i < this.signlist.numChildren; i++) {\r\n var sign = this.signlist.getChildAt(i);\r\n var data = this.curSignItems[i];\r\n var showbox;\r\n var showbox0 = sign.getChildAt(0);\r\n showbox0.visible = false;\r\n var showbox1 = sign.getChildAt(1);\r\n showbox1.visible = false;\r\n var showbox2 = sign.getChildAt(2);\r\n showbox2.visible = false;\r\n if (data.itemState == SignItemState.locking) {\r\n showbox = showbox0;\r\n }\r\n else if (data.itemState == SignItemState.ready) {\r\n showbox = showbox1;\r\n }\r\n else {\r\n showbox = showbox2;\r\n }\r\n showbox.visible = true;\r\n var awardtype = data.RewardsData.rewardid;\r\n if (awardtype == 1000) {\r\n var gold = showbox.getChildByName(\"gold\");\r\n gold.visible = true;\r\n var clip = gold.getChildAt(1);\r\n clip.text = data.RewardsData.rewardnum.toString();\r\n }\r\n else {\r\n var car = showbox.getChildByName(\"car\");\r\n car.visible = true;\r\n var skinid = awardtype % 6000;\r\n var caricon = \"\";\r\n if (PlayerAccount.CurAccountData.m_skinDic.containKey(skinid)) {\r\n caricon = PlayerAccount.CurAccountData.m_skinDic.getValue(skinid).skinicon;\r\n }\r\n var sprite = car.getChildAt(0);\r\n if (caricon)\r\n sprite.skin = \"icon/\" + caricon + \".png\";\r\n }\r\n if (data.itemState == SignItemState.ready) {\r\n this.cursignitem = data;\r\n }\r\n }\r\n }\r\n OnClickDouble() {\r\n if (Laya.Browser.onMobile) {\r\n TtSdk.ShowVideo((flag) => {\r\n if (flag) {\r\n this.OnSign(true);\r\n }\r\n });\r\n }\r\n else {\r\n this.OnSign(true);\r\n }\r\n }\r\n OnSign(_double = false) {\r\n var curgold = Number(PlayerAccount.CurAccountData.GetUser(AccountUser.money));\r\n var curvideo = _double ? \"0\" : \"0\";\r\n let param = [{ \"video\": curvideo }];\r\n NetworkManager.Instance.HttpPostRequest(PROTOCOLS.Sign, param, Laya.Handler.create(this, (e) => {\r\n var reward = new rewarddata(this.cursignitem.RewardsData.rewardid);\r\n reward.type = reward.rewarditem > 1000 ? 1 : 0;\r\n if (reward.type == 0) {\r\n this.GetAward(_double, Number(this.cursignitem.rewardsNum), () => {\r\n this.OnCloseClick();\r\n });\r\n return;\r\n }\r\n else {\r\n var skinid = reward.rewarditem % 6000;\r\n var skin = PlayerAccount.CurAccountData.m_skinDic.getValue(skinid);\r\n if (skin) {\r\n reward.rewardicon = skin.skinicon;\r\n reward.rewardname = this.cursignitem.desc;\r\n reward.rewardnum = this.cursignitem.RewardsData.rewardnum;\r\n reward.rewarditem = this.cursignitem.RewardsData.rewardid;\r\n WindowManager.Instance.OpenPopView(WindowType.RewardWindow, reward);\r\n }\r\n }\r\n this.curSignItems = this.SignItemsData;\r\n SignWindow.Instance.ReFreshSginList();\r\n }), Laya.Handler.create(this, this.OnSignError), true);\r\n }\r\n OnSignError(e) {\r\n console.log(e);\r\n }\r\n OnHide() {\r\n }\r\n GetAward(double, _money, _complete) {\r\n var moneycount = _money;\r\n var showmoney = _money;\r\n if (double) {\r\n moneycount = _money * 2;\r\n showmoney = _money * 3;\r\n }\r\n let param = [{ \"reward_item\": \"1000\" }, { \"reward_num\": moneycount.toString() }, { \"t\": PlayerAccount.ServerTime.toString() }];\r\n NetworkManager.Instance.HttpPostRequest(PROTOCOLS.vd, param, Laya.Handler.create(this, (e) => {\r\n GameUtils.GetMoney(showmoney, null, Laya.Handler.create(this, () => {\r\n _complete();\r\n }));\r\n }), Laya.Handler.create(this, this.OnSignError), true);\r\n }\r\n}\r\n",
- "references": [
- "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Window/Component/IWindow.ts",
- "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Window/WindowManager.ts",
- "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Network/NetworkManager.ts",
- "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Util/GameUtils.ts",
- "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Network/PlayerAccount.ts",
- "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Main/DataMaker.ts",
- "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/ui/layaMaxUI.ts",
- "D:/Work/samurai2-laya/laya/samuraiflash-tt/src/Util/TtSdk.ts"
- ]
- }
|