53 lines
1.3 KiB
C#
53 lines
1.3 KiB
C#
|
using System.Collections;
|
|||
|
using System.Collections.Generic;
|
|||
|
using UnityEngine;
|
|||
|
using UnityEngine.Events;
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// <20><>Դ<EFBFBD><D4B4><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3>
|
|||
|
/// 1<>첽<EFBFBD><ECB2BD><EFBFBD>أ<EFBFBD>2ί<32>к<EFBFBD>lambda<64><61><EFBFBD><EFBFBD>ʽ<EFBFBD><CABD>3Э<33>̣<EFBFBD>4<EFBFBD><34><EFBFBD><EFBFBD>
|
|||
|
/// </summary>
|
|||
|
public class ResMgr : BaseManager<ResMgr>
|
|||
|
{
|
|||
|
//ͬ<><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
|
|||
|
public T Load<T>(string name)where T:Object
|
|||
|
{
|
|||
|
T res = Resources.Load<T>(name);
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB>GameObject<63><74><EFBFBD>͵<EFBFBD> <20><><EFBFBD><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD>س<F3B7B5BB>ȥ <20>ⲿֱ<E2B2BF><D6B1>ʹ<EFBFBD>ü<EFBFBD><C3BC><EFBFBD>
|
|||
|
if(res is GameObject)
|
|||
|
{
|
|||
|
return GameObject.Instantiate(res);
|
|||
|
}
|
|||
|
else//TextAsset AudioClip <20><><EFBFBD><EFBFBD>Ҫʵ<D2AA><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB>Ҫ<EFBFBD><D2AA>ֵ<EFBFBD><D6B5>ijЩ<C4B3><D0A9><EFBFBD><EFBFBD>
|
|||
|
{
|
|||
|
return res;
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
//<2F>첽<EFBFBD><ECB2BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Դ
|
|||
|
public void LoadAsync<T>(string name, UnityAction<T> callback ) where T : Object
|
|||
|
{
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>첽<EFBFBD><ECB2BD><EFBFBD>ص<EFBFBD>Э<EFBFBD><D0AD>
|
|||
|
MonoMgr.GetInstance().StartCoroutine(ReallyLoadAsync(name, callback));
|
|||
|
}
|
|||
|
|
|||
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Эͬ<D0AD><CDAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڿ<EFBFBD><DABF><EFBFBD><EFBFBD>첽<EFBFBD><ECB2BD><EFBFBD>ض<EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD><EFBFBD>Դ
|
|||
|
private IEnumerator ReallyLoadAsync<T>(string name, UnityAction<T> callback) where T : Object
|
|||
|
{
|
|||
|
ResourceRequest r = Resources.LoadAsync<T>(name);
|
|||
|
yield return r;
|
|||
|
if(r.asset is GameObject)
|
|||
|
{
|
|||
|
callback(GameObject.Instantiate(r.asset) as T);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
callback(r.asset as T);
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
}
|