// Learn TypeScript:
//  - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/typescript.html
//  - [English] http://www.cocos2d-x.org/docs/creator/manual/en/scripting/typescript.html
// Learn Attribute:
//  - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/reference/attributes.html
//  - [English] http://www.cocos2d-x.org/docs/creator/manual/en/scripting/reference/attributes.html
// Learn life-cycle callbacks:
//  - [Chinese] https://docs.cocos.com/creator/manual/zh/scripting/life-cycle-callbacks.html
//  - [English] http://www.cocos2d-x.org/docs/creator/manual/en/scripting/life-cycle-callbacks.html

import GameData from "./GameData";
import SoundManager from "./SoundsManager";

const {ccclass, property} = cc._decorator;

@ccclass
export default class MenuScreen extends cc.Component {

    onLoad() {
        const scene = cc.director.getScene().name;
        if(scene === 'Menu') {
            this.scheduleOnce(() => {
                SoundManager.instance.playMusic('Judgement', true);
            }, 0.1);
        }
    }

    loadLevelsScene() {
        SoundManager.instance.playEffect('click');
        cc.director.preloadScene('Level', () => {
            cc.director.loadScene('Level');
        });
    }

    loadGameScene(event, customData) {
        SoundManager.instance.playEffect('click');
        const selectedLevel = Number(customData);
        GameData.instance.selectedLevel = selectedLevel;
        SoundManager.instance.stopMusic();
        cc.director.preloadScene('Game', () => {
            cc.director.loadScene('Game');
        });
    }
}
