Example #1
0
 public virtual void start()
 {
     mPauseFrame          = false;
     instance             = this;
     mGameFrameObject     = this.transform.gameObject;
     mApplicationConfig   = new ApplicationConfig();
     mResourceManager     = new ResourceManager();
     mBinaryUtility       = new BinaryUtility();
     mFileUtility         = new FileUtility();
     mMathUtility         = new MathUtility();
     mStringUtility       = new StringUtility();
     mUnityUtility        = new UnityUtility();
     mPluginUtility       = new PluginUtility();
     mCommandSystem       = new CommandSystem();
     mLayoutManager       = new GameLayoutManager();
     mAudioManager        = new AudioManager();
     mGameSceneManager    = new GameSceneManager();
     mCharacterManager    = new CharacterManager();
     mKeyFrameManager     = new KeyFrameManager();
     mGlobalTouchSystem   = new GlobalTouchSystem();
     mDllImportExtern     = new DllImportExtern();
     mShaderManager       = new ShaderManager();
     mDataBase            = new DataBase();
     mCameraManager       = new CameraManager();
     mLayoutPrefabManager = new LayoutPrefabManager();
     mFrameConfig         = new FrameConfig();
 }
Example #2
0
 public Delegate getFunction(string funcName, Type t)
 {
     if (!mFunctionList.ContainsKey(funcName))
     {
         IntPtr api = DllImportExtern.GetProcAddress(mHandle, funcName);
         if (api == IntPtr.Zero)
         {
             UnityUtility.logError("can not find function, name : " + funcName);
             return(null);
         }
         Delegate dele = Marshal.GetDelegateForFunctionPointer(api, t);
         mFunctionList.Add(funcName, dele);
     }
     return(mFunctionList[funcName]);
 }
Example #3
0
 public void OnDestroy()
 {
     mLayoutPrefabManager.destroy();
     mMahjongSystem.destroy();
     mSocketManager.destroy();
     mCharacterManager.destroy();
     mGameSceneManager.destroy();
     mAudioManager.destroy();
     mLayoutManager.destroy();
     mCommandSystem.destroy();
     mGameConfig.destory();
     mKeyFrameManager.destroy();
     mHttpServerManager.destroy();
     mGlobalTouchSystem.destroy();
     mDllImportExtern.destroy();
     mShaderManager.destroy();
     mDataBase.destroy();
     mCameraManager.destroy();
     mResourcesManager.destroy();
     mMaterialManager.destroy();
     mApplicationConfig.destory();
     mPlayerHeadManager.destroy();
     mLayoutPrefabManager = null;
     mMahjongSystem       = null;
     mGameConfig          = null;
     mGameUtility         = null;
     mBinaryUtility       = null;
     mFileUtility         = null;
     mMathUtility         = null;
     mStringUtility       = null;
     mUnityUtility        = null;
     mCommandSystem       = null;
     mLayoutManager       = null;
     mAudioManager        = null;
     mGameSceneManager    = null;
     mCharacterManager    = null;
     mSocketManager       = null;
     mKeyFrameManager     = null;
     mGlobalTouchSystem   = null;
     mDllImportExtern     = null;
     mShaderManager       = null;
     mDataBase            = null;
     mCameraManager       = null;
     mResourcesManager    = null;
     mMaterialManager     = null;
     mApplicationConfig   = null;
     mPlayerHeadManager   = null;
 }
Example #4
0
 public virtual void destroy()
 {
     mLayoutPrefabManager.destroy();
     mCharacterManager.destroy();
     mGameSceneManager.destroy();
     mAudioManager.destroy();
     mLayoutManager.destroy();
     mCommandSystem.destroy();
     mKeyFrameManager.destroy();
     mGlobalTouchSystem.destroy();
     mDllImportExtern.destroy();
     mShaderManager.destroy();
     mDataBase.destroy();
     mCameraManager.destroy();
     mPluginUtility.destroy();
     mModelManager.destroy();
     mResourceManager.destroy();                 // 资源管理器必须最后销毁,作为最后的资源清理
     mLayoutPrefabManager = null;
     mResourceManager     = null;
     mBinaryUtility       = null;
     mFileUtility         = null;
     mMathUtility         = null;
     mStringUtility       = null;
     mUnityUtility        = null;
     mPluginUtility       = null;
     mCommandSystem       = null;
     mLayoutManager       = null;
     mAudioManager        = null;
     mGameSceneManager    = null;
     mCharacterManager    = null;
     mKeyFrameManager     = null;
     mGlobalTouchSystem   = null;
     mDllImportExtern     = null;
     mShaderManager       = null;
     mDataBase            = null;
     mCameraManager       = null;
     mModelManager        = null;
 }
Example #5
0
    public static int waveInPrepareHeader(IntPtr hWaveIn, ref WaveHdr lpWaveInHdr, int uSize)
    {
        waveInPrepareHeaderDelegate d = DllImportExtern.Invoke(WINMM_DLL, "waveInPrepareHeader", Typeof <waveInPrepareHeaderDelegate>()) as waveInPrepareHeaderDelegate;

        return(d(hWaveIn, ref lpWaveInHdr, uSize));
    }
Example #6
0
    public static int waveInOpen(out IntPtr phwi, uint uDeviceID, ref WaveFormatEx lpFormat, WaveDelegate dwCallback, IntPtr dwInstance, int dwFlags)
    {
        waveInOpenDelegate d = DllImportExtern.Invoke(WINMM_DLL, "waveInOpen", Typeof <waveInOpenDelegate>()) as waveInOpenDelegate;

        return(d(out phwi, uDeviceID, ref lpFormat, dwCallback, dwInstance, dwFlags));
    }
Example #7
0
    public static int waveInClose(IntPtr hwi)
    {
        waveInCloseDelegate d = DllImportExtern.Invoke(WINMM_DLL, "waveInClose", Typeof <waveInCloseDelegate>()) as waveInCloseDelegate;

        return(d(hwi));
    }
Example #8
0
    public static int waveInAddBuffer(IntPtr hwi, ref WaveHdr pwh, int cbwh)
    {
        waveInAddBufferDelegate d = DllImportExtern.Invoke(WINMM_DLL, "waveInAddBuffer", Typeof <waveInAddBufferDelegate>()) as waveInAddBufferDelegate;

        return(d(hwi, ref pwh, cbwh));
    }
Example #9
0
    public static int waveInGetNumDevs()
    {
        waveInGetNumDevsDelegate d = DllImportExtern.Invoke(WINMM_DLL, "waveInGetNumDevs", Typeof <waveInGetNumDevsDelegate>()) as waveInGetNumDevsDelegate;

        return(d());
    }
Example #10
0
    public static int waveInGetDevCapsA(int hwo, ref WaveInCaps lpCaps, int uSize)
    {
        waveInGetDevCapsADelegate d = DllImportExtern.Invoke(WINMM_DLL, "waveInGetDevCapsA", Typeof <waveInGetDevCapsADelegate>()) as waveInGetDevCapsADelegate;

        return(d(hwo, ref lpCaps, uSize));
    }
Example #11
0
    protected bool mPauseFrame = false;                                                          // 暂停整个程序
    public void Start()
    {
        Screen.SetResolution(1920, 1080, true);
        instance             = this;
        mGameFrameObject     = this.transform.gameObject;
        mApplicationConfig   = new ApplicationConfig();
        mGameConfig          = new GameConfig();
        mGameUtility         = new GameUtility();
        mBinaryUtility       = new BinaryUtility();
        mFileUtility         = new FileUtility();
        mMathUtility         = new MathUtility();
        mStringUtility       = new StringUtility();
        mUnityUtility        = new UnityUtility();
        mCommandSystem       = new CommandSystem();
        mLayoutManager       = new GameLayoutManager();
        mAudioManager        = new AudioManager();
        mGameSceneManager    = new GameSceneManager();
        mCharacterManager    = new CharacterManager();
        mSocketManager       = new SocketManager();
        mKeyFrameManager     = new KeyFrameManager();
        mGlobalTouchSystem   = new GlobalTouchSystem();
        mDllImportExtern     = new DllImportExtern();
        mShaderManager       = new ShaderManager();
        mDataBase            = new DataBase();
        mHttpServerManager   = new HttpServerManager();
        mMahjongSystem       = new MahjongSystem();
        mCameraManager       = new CameraManager();
        mResourcesManager    = new ResourceManager();
        mLayoutPrefabManager = new LayoutPrefabManager();
        mMaterialManager     = new MaterialManager();
        mPlayerHeadManager   = new PlayerHeadManager();

        // 所有类都构造完成后通知GameBase
        GameBase.notifyConstructDone();

        // 必须先初始化配置文件
        mApplicationConfig.init();
        int  width      = (int)mApplicationConfig.getFloatParam(GAME_DEFINE_FLOAT.GDF_SCREEN_WIDTH);
        int  height     = (int)mApplicationConfig.getFloatParam(GAME_DEFINE_FLOAT.GDF_SCREEN_HEIGHT);
        bool fullscreen = (int)mApplicationConfig.getFloatParam(GAME_DEFINE_FLOAT.GDF_FULL_SCREEN) != 0;

        Screen.SetResolution(width, height, fullscreen);
        mGameConfig.init();
        mResourcesManager.init();
        mShaderManager.init();
        mDllImportExtern.init();
        mGameUtility.init();
        mBinaryUtility.init();
        mFileUtility.init();
        mMathUtility.init();
        mStringUtility.init();
        mUnityUtility.init();
        mGlobalTouchSystem.init();
        mAudioManager.init();
        mLayoutManager.init();
        bool showDebug = mGameConfig.getFloatParam(GAME_DEFINE_FLOAT.GDF_SHOW_COMMAND_DEBUG_INFO) > 0.0f;

        mCommandSystem.init(showDebug);
        mGameSceneManager.init();
        mCharacterManager.init();
        mSocketManager.init();
        mKeyFrameManager.init();
        mDataBase.init();
        mMahjongSystem.init();
        mHttpServerManager.init("", "", "");
        mCameraManager.init();
        mLayoutPrefabManager.init();
        mMaterialManager.init();
        mPlayerHeadManager.init();

        CommandGameSceneManagerEnter cmd = mCommandSystem.newCmd <CommandGameSceneManagerEnter>(false, false);

        cmd.mSceneType = GAME_SCENE_TYPE.GST_START;
        mCommandSystem.pushCommand(cmd, getGameSceneManager());
    }
Example #12
0
 public void destroy()
 {
     DllImportExtern.FreeLibrary(mHandle);
 }
Example #13
0
 public void init(string name)
 {
     mLibraryName  = name;
     mFunctionList = new Dictionary <string, Delegate>();
     mHandle       = DllImportExtern.LoadLibrary(mLibraryName);
 }
Example #14
0
    public static int waveInStop(IntPtr hwi)
    {
        waveInStopDelegate d = DllImportExtern.Invoke(DllImportExtern.WINMM_DLL, "waveInStop", typeof(waveInStopDelegate)) as waveInStopDelegate;

        return(d(hwi));
    }
Example #15
0
    public static int waveInReset(IntPtr hwi)
    {
        waveInResetDelegate d = DllImportExtern.Invoke(WINMM_DLL, "waveInReset", typeof(waveInResetDelegate)) as waveInResetDelegate;

        return(d(hwi));
    }