/*
文件名:StageClass.nut
路径:BaseClass/StageClass/StageClass.nut
创建日期:2024-05-05	00:22
文件用途:舞台类
*/
class CL_StageObject extends CL_BaseObject {

    constructor(...) {
        local C_Object;
        if (vargv.len() == 0) {
            C_Object = Stage_Create();
            base.constructor(C_Object);
        } else {
            C_Object = vargv[0];
            base.constructor(C_Object, true);
        }
    }

    //绑定Update
    function BindenvUpdate() {
        Stage_BindenvUpdate(C_Object, this);
    }

    function Enter(...) {
        if (vargv.len() == 1) vargv[0](this);
        Director_EnterStage(this.C_Object);
        //如果进入场景要绑定Update
        BindenvUpdate();

        //并且绑定摄像机 先移除父对象在绑定
        // if (CameraObject.ParentId) CameraObject.RemoveSelf();
        // Addchild(CameraObject);
    }

    function OnUpdate(Dt) {
        base.OnUpdate(Dt);
        //调用音效管理器逻辑
        _Yosin_Sound_Logic_(Dt, this);
    }

}