123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156 |
- import { BaseView } from "../../../lightMVC/core/base/BaseView";
- import { App } from "../../Manager/App";
- import { Sex } from "../../Framework/Const/EnumDefine";
- import SDK from "../../sdk/SDK";
- import { InterstitialType } from "../../sdk/vivo/Interstitial";
- import gameScene from "../../gameScene";
- import TimeControl from "../../TimeControl";
- import AESUtil from "../../AESUtil"
- import ATSDK from "../../AnyThinkAds/ATJSSDK";
- import ATRewardedVideoSDK from "../../AnyThinkAds/ATRewardedVideoJSSDK";
- import AAJS2 from "../../ATAndroidJS2";
- import GlobalManager from '../../GlobalManager';
- import ATInterstitialSDK from "../../AnyThinkAds/ATInterstitialJSSDK";
- import ATBannerSDK from "../../AnyThinkAds/ATBannerJSSDK";
- import { AdType } from '../../ATAndroidJS2';
- const { ccclass, property } = cc._decorator;
- @ccclass
- export default class SetNormalPanel extends BaseView {
- public drawView(): void {
- SDK.Instance.showInterstitial(InterstitialType.INTERSTITIAL_GAME_PAUSE);
- // 返回
- let closeBtn = this.ui.getNode("close");
- closeBtn.on(cc.Node.EventType.TOUCH_END, () => {
-
-
- cc.director.resume();
- this.closeView();
- }, this);
- let btnBack = this.ui.getNode("btnBackhall");
- btnBack.on(cc.Node.EventType.TOUCH_END, () => {
- this.showInterAd("callBackFor_btnBackhall", false, this.callBackFor_btnBackhall);
- // console.log('zh:btnBackhall111 ')
- // cc.director.resume();
- // cc.director.loadScene("hallScene");
- }, this);
- this.setMusic();
- this.setEffect();
- let button_debug = this.ui.getNode("button_debug");
- //zh:diy 测试专用
- button_debug.on(cc.Node.EventType.TOUCH_END, () => {
- console.log('zh:button_debug ')
- TimeControl.instance.currentTili=1;
- App.LocalStorageUtil.setNumber(App.LocalStorageUtil.lst_Tili, TimeControl.instance.currentTili);
- }, this);
- }
- private callBackFor_btnBackhall(): void {
- cc.director.resume();
- cc.director.loadScene("hallScene");
- }
- private debugTest(){
- }
- //设置音乐
- public setMusic(): void {
- let MusicBtn = this.ui.getNode("music");
- let musicOn = MusicBtn.getChildByName('on');
- let musicOff = MusicBtn.getChildByName('off');
- musicOn.active = (App.SoundManager.allowPlayBGM) ? true : false;
- musicOff.active = (App.SoundManager.allowPlayBGM) ? false : true;
- MusicBtn.on(cc.Node.EventType.TOUCH_END, () => {
- App.SoundManager.allowPlayBGM = !App.SoundManager.allowPlayBGM;
- musicOn.active = (App.SoundManager.allowPlayBGM) ? true : false;
- musicOff.active = (App.SoundManager.allowPlayBGM) ? false : true;
- App.LocalStorageUtil.setBoolean(App.LocalStorageUtil.lst_music, App.SoundManager.allowPlayBGM);
- console.log('点击音乐', App.SoundManager.allowPlayBGM);
- }, this);
- }
- //设置音效
- public setEffect(): void {
- let EffectBtn = this.ui.getNode("audio");
- let effectOn = EffectBtn.getChildByName('on');
- let effectOff = EffectBtn.getChildByName('off');
- effectOn.active = (App.SoundManager.allowPlayEffect) ? true : false;
- effectOff.active = (App.SoundManager.allowPlayEffect) ? false : true;
- EffectBtn.on(cc.Node.EventType.TOUCH_END, () => {
- App.SoundManager.allowPlayEffect = !App.SoundManager.allowPlayEffect;
- effectOn.active = (App.SoundManager.allowPlayEffect) ? true : false;
- effectOff.active = (App.SoundManager.allowPlayEffect) ? false : true;
- App.LocalStorageUtil.setBoolean(App.LocalStorageUtil.lst_effect, App.SoundManager.allowPlayEffect);
- console.log('点击音效', App.SoundManager.allowPlayEffect);
- }, this);
- }
- public static path(): string {
- return "hallScene/prefabs/SetNormalPanel";
- }
- /**
- * 显示插屏广告
- *
- * @param adMarkForClose 插屏广告关闭后调用那个方法的具体指示标识
- * @param checkClose 是否需要判断关闭事件,有的不需要,如果AD占用游戏时间则为true
- * @param callback 插屏广告关闭(加载失败\非ANDROID平台)的回调
- */
- private showInterAd(adMarkForClose: string, checkClose: boolean, callback: () => void) {
- if (cc.sys.os === cc.sys.OS_ANDROID) {
- if(checkClose) {
- cc.sys.localStorage.setItem("adMarkForClose", adMarkForClose);//关闭后,调用哪个方法的标识
- }
- //add判断插屏 开屏等
- let pid_inter = AAJS2.getPlacementId2(AdType.Inter);
- let boo = ATInterstitialSDK.hasAdReady(pid_inter);
- if (boo) {
- // 暂停游戏
- cc.director.pause();
- console.log('zh:showInterAd AD OK');
- ATInterstitialSDK.showAd(pid_inter);
- //因为跨脚本,所以使用全局注册函数调用,后来发现切换APP,导致ad close事件失效
- if (!checkClose) {//如果不占用游戏时间
- this.safeCallback(callback);
- }
- } else {
- console.log('zh:showInterAd AD 没有准备好');
- //GlobalManager.getInstance().callMethod('initAdForPageInter');
- //this.initAdForPageInter();
- this.safeCallback(callback);
- }
- } else {
- this.safeCallback(callback);
- }
- }
- // 辅助方法:安全调用回调函数
- private safeCallback(callback?: () => void) {
- if (callback) {
- callback();
- }
- }
- }
|