import { asyncDelay, onHomeworkFinish, callMiddleLayerFunction } from "../script/util";
import { MyCocosSceneComponent } from "../script/MyCocosSceneComponent";

const { ccclass, property } = cc._decorator;

@ccclass
export default class SceneComponent extends MyCocosSceneComponent {

    addPreloadImage() {
        // TODO 根据自己的配置预加载图片资源
        this._imageResList.push({ url: this.data.pic_url });
        this._imageResList.push({ url: this.data.pic_url_2 });
    }

    addPreloadAudio() {
        // TODO 根据自己的配置预加载音频资源
        this._audioResList.push({ url: this.data.audio_url });
    }

    addPreloadAnima() {

    }


    @property(cc.Node)
    page3: cc.Node = null;

    onLoadEnd() {
        // TODO 加载完成后的逻辑写在这里, 下面的代码仅供参考
        this.initData();
        this.initView();
        this.initListener();
    }

    _cantouch = null;
    initData() {
        // 所有全局变量 默认都是null 
        this._cantouch = true;
    }

    initView() {
        this.toPage3();
    }

    initListener() {
        this.node.on('page3_btn_click', (event) => {
            event.stopPropagation();
            let data = event.getUserData();
            console.log(JSON.stringify(data));
            callMiddleLayerFunction('NS_select_game', { gameId: data.id }, (result) => {
                console.log(JSON.stringify(result));
            });
        });
    }
    toPage3(testData = null) {
        testData = { gameList: this.data.gameList };
        this.page3.active = true;
        this.page3.getComponent('page3').setData(testData)
    }



    playLocalAudio(audioName) {
        const audio = cc.find(`Canvas/res/audio/${audioName}`).getComponent(cc.AudioSource);
        return new Promise((resolve, reject) => {
            const id = cc.audioEngine.playEffect(audio.clip, false);
            cc.audioEngine.setFinishCallback(id, () => {
                resolve(id);
            });
        })
    }
}
