protected bool wasCutsceneWatched(ScheduledCutSceneData cutsceneData)
 {
     if (!string.IsNullOrEmpty(cutsceneData.PlayedKeyName))
     {
         return(PlayerPrefs.HasKey(createLocalKey(cutsceneData.PlayedKeyName)));
     }
     Log.LogError(this, $"Error: an Object Data field has a null PlayedKeyName entry");
     return(false);
 }
        private void loadCutscene(additiveLoadDelegate onLoadCallBack, additiveCompleteDelegate onCompleteCallBack)
        {
            ScheduledCutSceneData cutsceneData = currentCutsceneEvent.CutsceneData;

            if (!string.IsNullOrEmpty(currentCutsceneEvent.CutsceneData.CutSceneAdditiveScene))
            {
                string text = createLocalKey(cutsceneData.PlayedKeyName);
                if (string.IsNullOrEmpty(text) || (!string.IsNullOrEmpty(text) && !PlayerPrefs.HasKey(text)))
                {
                    incrementLoadCount(cutsceneData.CutSceneAdditiveScene, isDecoration: false);
                    CoroutineRunner.Start(loadAdditiveScene(cutsceneData.CutSceneAdditiveScene, onLoadCallBack, onCompleteCallBack), this, "loadAdditiveScene");
                }
                else
                {
                    onCompleteCallBack();
                }
            }
            else
            {
                Log.LogError(this, $"Error: {base.gameObject.GetPath()} has a Cutscene data field with a null scene entry");
            }
        }