using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestTest
{
    public void Update()
    {
        Debug.Log("TestTest");
    }
}


public class Test : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        TestTest t = new TestTest();
        MonoMgr.GetInstance().AddUpdateListener(t.Update);
    }

    // Update is called once per frame
    void Update()
    {
        if(Input.GetMouseButtonDown(0))
        {
             PoolMgr.GetInstance().GetObj("Test/Cube",(o)=> {
                 o.transform.localScale = Vector3.one * 2;
             });
            /*GameObject obj = ResMgr.GetInstance().Load<GameObject>("Test/Cube");
            obj.transform.localScale = Vector3.one*2;*/
        }

        if (Input.GetMouseButtonDown(1))
        {
            // PoolMgr.GetInstance().GetObj("Test/Sphere");
            ResMgr.GetInstance().LoadAsync<GameObject>("Test/Cube", (obj) =>  obj.transform.localScale = Vector3.one * 2) ;
        }

    }

    //���첽��Դ������ɺ��ٽ��������������. //�ŵ���Դ���ص�ί�в������� ResMgr.GetInstance().LoadAsync<GameObject>("Test/Cube", DoSomthing);
    private void DoSomthing(GameObject obj)
    {
        //��һЩ��Դ�������س���������������
        obj.transform.localScale = Vector3.one * 2;
    }
}