示例#1
0
        /// <summary>
        /// RpgAtsumaruScoreboard のインスタンスを初期化します
        /// </summary>
        /// <param name="receiver">RPGアツマールネイティブAPIコールバックを拾うレシーバ</param>
        internal RpgAtsumaruScoreboard(RpgAtsumaruApi.RpgAtsumaruApiCallbackReceiver receiver)
        {
            // レシーバにイベントを登録する
            receiver.ScoreboardShown    += OnScoreboardShown;
            receiver.ScoreSendCompleted += OnScoreSendCompleted;
            receiver.ScoreboardReceived += OnScoreboardReceived;


            // マニュアルリセット待機可能オブジェクトをシグナル状態で生成する
            scoreboardShowAwaitable     = new ImtAwaitableManualReset <string>(true);
            scoreboardSendAwaitable     = new ImtAwaitableManualReset <string>(true);
            scoreboardReceivedAwaitable = new ImtAwaitableManualReset <string>(true);
        }
        /// <summary>
        /// RpgAtsumaruStorage のインスタンスを初期化します
        /// </summary>
        /// <param name="receiver">RPGアツマールネイティブAPIコールバックを拾うレシーバ</param>
        internal RpgAtsumaruStorage(RpgAtsumaruApi.RpgAtsumaruApiCallbackReceiver receiver)
        {
            // レシーバにイベントを登録する
            receiver.StorageItemsReceived       += OnStorageItemsReceived;
            receiver.StorageSetItemsCompleted   += OnStorageSetItemCompleted;
            receiver.StorageRemoveItemCompleted += OnStorageRemoveItemCompleted;


            // マニュアルリセット待機可能オブジェクトをシグナル状態で生成する
            getItemsAwaitable   = new ImtAwaitableManualReset(true);
            setItemsAwaitable   = new ImtAwaitableManualReset(true);
            syncItemsAwaitable  = new ImtAwaitableManualReset(true);
            removeItemAwaitable = new ImtAwaitableManualReset(true);


            // セーブデータテーブルのインスタンスを生成
            saveDataTable = new Dictionary <string, CachedData>();
        }