Ejemplo n.º 1
0
        protected override void Execute()
        {
            if (m_SelectedLocale == null)
            {
                m_SelectedLocale = LocalizationSettings.SelectedLocaleAsync.Result;
                if (m_SelectedLocale == null)
                {
                    Complete(null, false, "SelectedLocale is null");
                    AddressablesInterface.Release(m_TableEntryOperation);
                    return;
                }
            }

            if (m_TableEntryOperation.Status != AsyncOperationStatus.Succeeded)
            {
                Complete(null, false, "Load Table Operation Failed");
                AddressablesInterface.Release(m_TableEntryOperation);
                return;
            }

            var result = m_Database.GenerateLocalizedString(m_TableEntryOperation.Result.Table, m_TableEntryOperation.Result.Entry, m_TableReference, m_TableEntryReference, m_SelectedLocale, m_Arguments);

            Complete(result, true, null);
            AddressablesInterface.Release(m_TableEntryOperation);
        }
        void FinishPreloading(AsyncOperationHandle op)
        {
            AddressablesInterface.Release(m_LoadResourcesOperation);
            AddressablesInterface.Release(m_LoadTablesOperation);

            m_Progress = 1;
            Complete(m_Database, op.Status == AsyncOperationStatus.Succeeded, null);
        }
Ejemplo n.º 3
0
        static IEnumerator ReleaseHandlesNextFrame(List <AsyncOperationHandle> handles)
        {
            // Defer to the next frame
            yield return(null);

            foreach (var h in handles)
            {
                AddressablesInterface.Release(h);
            }
            ListPool <AsyncOperationHandle> .Release(handles);
        }
Ejemplo n.º 4
0
        protected override void Execute()
        {
            if (m_TableEntryOperation.Status != AsyncOperationStatus.Succeeded)
            {
                Complete(null, false, "Load Table Entry Operation Failed");
                AddressablesInterface.Release(m_TableEntryOperation);
                return;
            }

            if (m_TableEntryOperation.Result.Table == null || m_TableEntryOperation.Result.Entry == null)
            {
                // Missing entries are treated as null objects
                CompleteAndRelease(default, true, null);
Ejemplo n.º 5
0
 protected override void Destroy()
 {
     AddressablesInterface.Release(m_LoadTableOperation);
     GenericPool <LoadAssetOperation <TObject> > .Release(this);
 }
Ejemplo n.º 6
0
 public void CompleteAndRelease(string result, bool success, string errorMsg)
 {
     Complete(result, success, errorMsg);
     AddressablesInterface.Release(m_TableEntryOperation);
 }