示例#1
0
 public IntroCameraAnimation(AssetsCompleteDelegate onCompleteCallback, object onCompleteCookie) : base(Service.Get <CameraManager>().UXSceneCamera)
 {
     this.onCompleteCallback = onCompleteCallback;
     this.onCompleteCookie   = onCompleteCookie;
     this.Visible            = false;
     base.Load(ref this.assetHandle, "gui_introAnimation", new UXFactoryLoadDelegate(this.Loaded), new UXFactoryLoadDelegate(this.Loaded), null);
 }
示例#2
0
        public GameShaders(AssetsCompleteDelegate onCompleteCallback, object onCompleteCookie)
        {
            this.shaders = new Dictionary <string, Shader>();
            List <string>        list = new List <string>();
            StaticDataController staticDataController = Service.StaticDataController;

            Dictionary <string, ShaderTypeVO> .ValueCollection all = staticDataController.GetAll <ShaderTypeVO>();
            foreach (ShaderTypeVO current in all)
            {
                list.Add(current.AssetName);
            }
            staticDataController.Unload <ShaderTypeVO>();
            List <object>      list2 = new List <object>();
            List <AssetHandle> list3 = new List <AssetHandle>();
            int i     = 0;
            int count = list.Count;

            while (i < count)
            {
                list2.Add(list[i]);
                list3.Add(AssetHandle.Invalid);
                i++;
            }
            Service.AssetManager.MultiLoad(list3, list, new AssetSuccessDelegate(this.LoadSuccess), null, list2, onCompleteCallback, onCompleteCookie);
        }
示例#3
0
        public void Prepare(PlanetVO planet, AssetsCompleteDelegate onLoadComplete, object cookie)
        {
            if (planet == this.currentPlanet)
            {
                onLoadComplete(cookie);
                return;
            }
            AssetManager assetManager = Service.Get <AssetManager>();

            if (this.planetAssetHandle != AssetHandle.Invalid)
            {
                assetManager.Unload(this.planetAssetHandle);
                this.planetAssetHandle = AssetHandle.Invalid;
            }
            this.currentPlanet = planet;
            this.Reset();
            List <string> list = new List <string>();
            string        text = HardwareProfile.IsLowEndDevice() ? (planet.AssetName + "-lod1") : planet.AssetName;

            list.Add(text);
            assetManager.RegisterPreloadableAsset(text);
            List <object> list2 = new List <object>();

            list2.Add(this.currentPlanet);
            List <AssetHandle> list3 = new List <AssetHandle>();

            list3.Add(AssetHandle.Invalid);
            assetManager.MultiLoad(list3, list, new AssetSuccessDelegate(this.AssetSuccess), null, list2, onLoadComplete, cookie);
            this.planetAssetHandle = list3[0];
        }
示例#4
0
        public static void LoadStringData(AssetsCompleteDelegate onComplete)
        {
            Lang          lang = Service.Get <Lang>();
            List <string> list = new List <string>();

            list.Add(string.Format("strings_{0}.json.joe", new object[]
            {
                lang.DotNetLocale
            }));
            list.Add(string.Format("strings-hn_{0}.json.joe", new object[]
            {
                lang.DotNetLocale
            }));
            int i     = 0;
            int count = list.Count;

            while (i < count)
            {
                string assetName = list[i];
                Service.Get <AssetManager>().AddJoeFileToManifest(assetName, "strings");
                Service.Get <AssetManager>().RegisterPreloadableAsset(assetName);
                i++;
            }
            lang.LoadAssets(list, new AssetSuccessDelegate(LangUtils.OnLangComplete), new AssetFailureDelegate(LangUtils.OnLangFailure), onComplete);
        }
示例#5
0
        public static void LoadStringData(AssetsCompleteDelegate onComplete)
        {
            Lang          lang = Service.Lang;
            List <string> list = new List <string>();

            list.Add(string.Format("strings_{0}.json.joe", lang.DotNetLocale));
            list.Add(string.Format("strings-hn_{0}.json.joe", lang.DotNetLocale));
            int i     = 0;
            int count = list.Count;

            while (i < count)
            {
                string assetName = list[i];
                Service.AssetManager.AddJoeFileToManifest(assetName, "strings");
                Service.AssetManager.RegisterPreloadableAsset(assetName);
                i++;
            }
            Lang          arg_B4_0 = lang;
            List <string> arg_B4_1 = list;

            if (LangUtils.< > f__mg$cache0 == null)
            {
                LangUtils.< > f__mg$cache0 = new AssetSuccessDelegate(LangUtils.OnLangComplete);
            }
            AssetSuccessDelegate arg_B4_2 = LangUtils.< > f__mg$cache0;

            if (LangUtils.< > f__mg$cache1 == null)
            {
                LangUtils.< > f__mg$cache1 = new AssetFailureDelegate(LangUtils.OnLangFailure);
            }
            arg_B4_0.LoadAssets(arg_B4_1, arg_B4_2, LangUtils.< > f__mg$cache1, onComplete);
        }
 public TextCrawlAnimation(string chapterNumber, string chapterName, string chapterBody, AssetsCompleteDelegate onLoadingCompleteCallback, object onLoadingCompleteCookie, TextCrawlAnimation.TextCrawlAnimationCompleteDelegate onAnimationCompleteCallback) : base(Service.Get <CameraManager>().UXSceneCamera)
 {
     this.chapterNumber               = chapterNumber;
     this.chapterName                 = chapterName;
     this.chapterBody                 = chapterBody;
     this.onLoadingCompleteCallback   = onLoadingCompleteCallback;
     this.onLoadingCompleteCookie     = onLoadingCompleteCookie;
     this.onAnimationCompleteCallback = onAnimationCompleteCallback;
     this.Visible = false;
     Service.Get <EventManager>().SendEvent(EventId.PurgeHomeStateRUFTask, null);
     base.Load(ref this.assetHandle, "gui_introAnimation", new UXFactoryLoadDelegate(this.Loaded), new UXFactoryLoadDelegate(this.Loaded), null);
 }
示例#7
0
 public AudioManager(AssetsCompleteDelegate onComplete)
 {
     Service.AudioManager = this;
     this.logger          = Service.Logger;
     this.sdc             = Service.StaticDataController;
     new AudioEventManager(this);
     this.audioObject = new GameObject("Audio");
     this.audioObject.AddComponent <AudioListener>();
     this.audioObject.transform.position = Vector3.zero;
     this.audioSources = new Dictionary <AudioCategory, AudioSource>();
     this.audioSources[AudioCategory.Effect]   = this.CreateAudioSource(128);
     this.audioSources[AudioCategory.Music]    = this.CreateAudioSource(0);
     this.audioSources[AudioCategory.Ambience] = this.CreateAudioSource(10);
     this.audioSources[AudioCategory.Dialogue] = this.CreateAudioSource(20);
     this.loadedAudio       = new Dictionary <AudioTypeVO, AudioData>();
     this.fadeOutDictionary = new Dictionary <AudioSource, AudioFader>();
     this.battleAudioFlags  = new bool[8];
     this.lastPlayed        = new AudioTypeVO[4];
     this.RefreshVolume();
     this.PreloadAudioAssets(onComplete);
 }
示例#8
0
        public void PreloadAndCacheScreens(AssetsCompleteDelegate onComplete, object cookie)
        {
            int num = AssetConstants.GUI_PRELOADED_SCREENS.Length;

            if (num == 0)
            {
                onComplete(cookie);
                return;
            }
            List <string>      list  = new List <string>();
            List <object>      list2 = new List <object>();
            List <AssetHandle> list3 = new List <AssetHandle>();

            for (int i = 0; i < num; i++)
            {
                string item = AssetConstants.GUI_PRELOADED_SCREENS[i];
                list.Add(item);
                list2.Add(item);
                list3.Add(AssetHandle.Invalid);
            }
            Service.Get <AssetManager>().MultiLoad(list3, list, new AssetSuccessDelegate(this.PreloadSuccess), null, list2, onComplete, cookie);
        }
示例#9
0
        private void PreloadAudioAssets(AssetsCompleteDelegate onComplete)
        {
            List <string>      list  = new List <string>();
            List <object>      list2 = new List <object>();
            List <AssetHandle> list3 = new List <AssetHandle>();

            foreach (AudioTypeVO current in this.sdc.GetAll <AudioTypeVO>())
            {
                if (this.IsPreloadable(current) && !this.audioSources[current.Category].mute)
                {
                    list.Add(current.AssetName);
                    list2.Add(current);
                    list3.Add(AssetHandle.Invalid);
                }
            }
            if (list.Count == 0)
            {
                if (onComplete != null)
                {
                    onComplete(null);
                    return;
                }
            }
            else
            {
                Service.Get <AssetManager>().MultiLoad(list3, list, new AssetSuccessDelegate(this.PreloadAudioAssetSuccess), null, list2, onComplete, null);
                int i     = 0;
                int count = list3.Count;
                while (i < count)
                {
                    AudioTypeVO vo = (AudioTypeVO)list2[i];
                    AudioData   orCreateAudioData = this.GetOrCreateAudioData(vo);
                    orCreateAudioData.Handle = list3[i];
                    i++;
                }
            }
        }
示例#10
0
 public MultiAssetInfo(string assetName, AssetSuccessDelegate onSuccess, AssetFailureDelegate onFailure, object cookie, RefCount refCount, AssetsCompleteDelegate onComplete, object completeCookie) : base(AssetHandle.Invalid, assetName, onSuccess, onFailure, cookie)
 {
     this.RefCount       = refCount;
     this.OnComplete     = onComplete;
     this.CompleteCookie = completeCookie;
 }