Setting.ts 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. /** 设置界面 */
  2. import GameM, { AUDIO_TYPE } from "../manager/GameM";
  3. import UiM, { PANEL_NAME } from "../manager/UiM";
  4. import EffectNode from "./EffectNode";
  5. import AdM from "../manager/AdM";
  6. import LogUtil from "../utils/LogUtil";
  7. import RuleNode from "../prefabs/RuleNode";
  8. import { Utils } from "../utils/Utils";
  9. import DownLoadUI from "./DownLoadUI";
  10. import { HTTP_TYPE } from "../datas/CommonData";
  11. const { ccclass, property } = cc._decorator;
  12. @ccclass
  13. export default class Setting extends cc.Component {
  14. @property(cc.Sprite)
  15. iconHead: cc.Sprite = null;
  16. @property(cc.Label)
  17. labName: cc.Label = null;
  18. @property(cc.Label)
  19. labLv: cc.Label = null;
  20. @property(cc.Label)
  21. labID: cc.Label = null;
  22. @property(cc.Label)
  23. labRedMoney: cc.Label = null;
  24. @property(cc.Label)
  25. labVersion: cc.Label = null;
  26. @property(cc.Sprite)
  27. expFill: cc.Sprite = null;
  28. @property(cc.Toggle)
  29. toggleSound: cc.Toggle = null;
  30. @property(cc.Toggle)
  31. toggleMusic: cc.Toggle = null;
  32. @property(cc.Node)
  33. purseBtn: cc.Node = null;
  34. @property(cc.Node)
  35. cashBtn: cc.Node = null;
  36. @property(cc.Node)
  37. dropNode: cc.Node = null;
  38. @property(cc.Label)
  39. labMoney: cc.Label = null;
  40. onLoad() {
  41. this.setImg()
  42. this.purseBtn.active = false // GameM.commonData.redSwitch
  43. this.cashBtn.active = GameM.commonData.redSwitch
  44. }
  45. onEnable() {
  46. this.labName.string = GameM.commonData.nickname
  47. this.labLv.string = '' + GameM.commonData.roleData.lv
  48. LogUtil.logV("Setting uin", GameM.commonData.uin)
  49. let str = 'ID:' + GameM.commonData.uin
  50. this.labID.string = str.substr(0, 15) + '...'
  51. this.labRedMoney.string = GameM.commonData.redMoney.toString()
  52. this.labVersion.string = GameM.commonData.appVersion
  53. this.expFill.node.active = false
  54. this.expFill.fillRange = Number(GameM.commonData.roleData.exp) / Number(GameM.commonData.roleCft[GameM.commonData.roleData.lv - 1].exp)
  55. this.toggleMusic.isChecked = GameM.audioM.getSwitchMusic()
  56. this.toggleSound.isChecked = GameM.audioM.getSwitchEffect()
  57. if (GameM.commonData.isAuth) {
  58. GameM.httpM.sendDatas(HTTP_TYPE.getCashRecord, null, GameM.commonData.resultCashRecord.bind(GameM.commonData))
  59. }
  60. else {
  61. this.labMoney.string = `0元`
  62. }
  63. }
  64. freshRecord() {
  65. let record = GameM.commonData.cashRecord
  66. let len = record.length
  67. let money = 0
  68. for (var i = 0; i < len; i++) {
  69. money += record[i].amount
  70. }
  71. this.labMoney.string = `${(money * 0.01).toFixed(2)}元`
  72. }
  73. onDisable() {
  74. }
  75. setImg() {
  76. let self = this
  77. if (GameM.commonData.headimgurl != '') {
  78. cc.loader.load(GameM.commonData.headimgurl + "?aaa=aa.jpg", (err, res) => {
  79. if (err) {
  80. console.log('err:', err);
  81. return;
  82. }
  83. if (self.iconHead) {
  84. let tex: cc.Texture2D = res as cc.Texture2D;
  85. self.iconHead.spriteFrame = new cc.SpriteFrame(tex);
  86. }
  87. })
  88. }
  89. this.labName.string = GameM.commonData.nickname
  90. }
  91. clickPurse() {
  92. GameM.audioM.playEffect(AUDIO_TYPE.button)
  93. if (!GameM.commonData.redSwitch) {
  94. EffectNode.instance.PlayTip('敬请期待')
  95. return
  96. }
  97. }
  98. clickCopy() {
  99. GameM.audioM.playEffect(AUDIO_TYPE.button)
  100. AdM.setClipboard(GameM.commonData.uin)
  101. }
  102. clickCashout() {
  103. GameM.audioM.playEffect(AUDIO_TYPE.button)
  104. if (!GameM.commonData.redSwitch) {
  105. EffectNode.instance.PlayTip('敬请期待')
  106. return
  107. }
  108. if (GameM.commonData.maxCarLevel < GameM.commonData.cashOpenLevel) {
  109. EffectNode.instance.PlayTip(`首次合成${GameM.commonData.cashOpenLevel}级武将可查看`)
  110. return
  111. }
  112. UiM.Instance.onPanel(PANEL_NAME.CashNode, true)
  113. }
  114. clickHelp() {
  115. GameM.audioM.playEffect(AUDIO_TYPE.button)
  116. EffectNode.instance.PlayTip("敬请期待")
  117. }
  118. clickToggleSound() {
  119. GameM.audioM.playEffect(AUDIO_TYPE.button)
  120. GameM.audioM.switchEffectFunc()
  121. }
  122. clickToggleMusic() {
  123. GameM.audioM.playEffect(AUDIO_TYPE.button)
  124. GameM.audioM.switchMusicFunc()
  125. }
  126. clickCopyN() {
  127. GameM.audioM.playEffect(AUDIO_TYPE.button)
  128. AdM.setClipboard('72183577@163.com')
  129. }
  130. clickService() {
  131. GameM.audioM.playEffect(AUDIO_TYPE.button);
  132. UiM.Instance.onPanel(PANEL_NAME.RuleNode, false, () => {
  133. UiM.Instance.ruleNode.getComponent(RuleNode).init(2)
  134. })
  135. }
  136. clickPrivate() {
  137. GameM.audioM.playEffect(AUDIO_TYPE.button);
  138. UiM.Instance.onPanel(PANEL_NAME.RuleNode, false, () => {
  139. UiM.Instance.ruleNode.getComponent(RuleNode).init(3)
  140. })
  141. }
  142. clickClose() {
  143. GameM.audioM.playEffect(AUDIO_TYPE.button);
  144. UiM.Instance.offPanel(PANEL_NAME.SettingNode)
  145. }
  146. private hasTap = false
  147. clickHead() {
  148. if (!GameM.commonData.isAuth) {
  149. GameM.audioM.playEffect(AUDIO_TYPE.button);
  150. if (!this.hasTap) {
  151. console.log('clickGoAuth')
  152. this.hasTap = true
  153. AdM.WxLogin()
  154. this.scheduleOnce(() => {
  155. this.hasTap = false
  156. }, 1)
  157. }
  158. }
  159. }
  160. clickDrop() {
  161. GameM.audioM.playEffect(AUDIO_TYPE.button);
  162. this.dropNode.active = true
  163. }
  164. clickDopSure() {
  165. GameM.audioM.playEffect(AUDIO_TYPE.button);
  166. this.dropNode.active = false
  167. }
  168. /** 检测更新 */
  169. clickCheckUpdate() {
  170. GameM.audioM.playEffect(AUDIO_TYPE.button);
  171. let installVersion = GameM.commonData.installVersion
  172. let compare = Utils.versionCompareHandle(GameM.commonData.appVersion, installVersion)
  173. if (compare < 0) {
  174. UiM.Instance.onPanel(PANEL_NAME.DownLoadUI, false, () => {
  175. UiM.Instance.downLoadUI.getComponent(DownLoadUI).init(false)
  176. })
  177. }
  178. else {
  179. EffectNode.instance.PlayTip('当前已是最新版本')
  180. }
  181. }
  182. }