Ejemplo n.º 1
0
 public void GetGoldDataSuccess(GoldDataBean goldData, Action <GoldDataBean> action)
 {
     if (action != null)
     {
         action?.Invoke(goldData);
     }
 }
Ejemplo n.º 2
0
    /// <summary>
    /// 创建金币
    /// </summary>
    /// <param name="goldData"></param>
    public void CreateGold(GameObject objModel, GoldDataBean goldData, Vector3 position)
    {
        GameObject itemObj = Instantiate(gameObject, objModel, position);
        GoldCpt    goldCpt = itemObj.GetComponent <GoldCpt>();

        goldCpt.SetData(goldData);
        if (listGold == null)
        {
            listGold = new List <GoldCpt>();
        }
        listGold.Add(goldCpt);
    }
    public void GetGoldDataById(long id, Action <GoldDataBean> action)
    {
        GoldDataBean goldData = GetModel().GetGoldDataById(id);

        if (goldData == null)
        {
            GetView().GetGoldDataFail("没有数据");
        }
        else
        {
            GetView().GetGoldDataSuccess(goldData, action);
        }
    }
Ejemplo n.º 4
0
    /// <summary>
    /// 协程-创建金币堆
    /// </summary>
    /// <param name="goldPileData"></param>
    /// <returns></returns>
    public IEnumerator CoroutineForCreateGoldPile(GoldDataBean goldData, string goldPileData)
    {
        List <string> listData = StringUtil.SplitBySubstringForListStr(goldPileData, '|');

        for (int i = 0; i < listData.Count; i++)
        {
            string   itemData      = listData[i];
            string[] itemDataArray = StringUtil.SplitBySubstringForArrayStr(itemData, ':');

            float[]         itemPositionArray = StringUtil.SplitBySubstringForArrayFloat(itemDataArray[1], ',');
            ResourceRequest resourceRequest   = Resources.LoadAsync("GoldPile/" + itemDataArray[0]);
            yield return(resourceRequest);

            GameObject objModel = resourceRequest.asset as GameObject;
            manager.CreateGoldPile(goldData, objModel, new Vector3(itemPositionArray[0], itemPositionArray[1], itemPositionArray[2]));
        }
        Resources.UnloadUnusedAssets();
    }
Ejemplo n.º 5
0
    /// <summary>
    /// 创建金币堆
    /// </summary>
    /// <param name="objModel"></param>
    /// <param name="position"></param>
    public void CreateGoldPile(GoldDataBean goldData, GameObject objModel, Vector3 position)
    {
        GameObject itemObj = Instantiate(gameObject, objModel, position);

        GoldCpt[] listData = itemObj.GetComponentsInChildren <GoldCpt>();
        if (listGold == null)
        {
            listGold = new List <GoldCpt>();
        }
        for (int i = 0; i < listData.Length; i++)
        {
            GoldCpt itemGold = listData[i];
            itemGold.goldData.gold_price = goldData.gold_price;
            itemGold.transform.SetParent(gameObject.transform);
            listGold.Add(itemGold);
        }
        goldMaxNumber += listData.Length;
        Destroy(itemObj);
    }
Ejemplo n.º 6
0
    /// <summary>
    /// 携程 创建金币
    /// </summary>
    /// <param name="goldData"></param>
    /// <returns></returns>
    public IEnumerator CoroutineForCreateGold(GoldDataBean goldData)
    {
        ResourceRequest resourceRequest = Resources.LoadAsync("Gold/" + goldData.model_name);

        yield return(resourceRequest);

        GameObject objModel = resourceRequest.asset as GameObject;

        //计算每个金币的坐标
        // List<Vector3> listPosition = CalculatePostionForGold(goldNumber);
        BoxCollider    boxCollider  = objModel.GetComponent <BoxCollider>();
        Vector3        boxSize      = new Vector3(boxCollider.size.x * objModel.transform.localScale.x, boxCollider.size.y * objModel.transform.localScale.y, boxCollider.size.z * objModel.transform.localScale.z);
        List <Vector3> listPosition = CalculatePostionForGold(boxSize, 8, 8, GetGoldMaxNumber());

        for (int i = 0; i < listPosition.Count; i++)
        {
            manager.CreateGold(objModel, goldData, listPosition[i]);
            yield return(new WaitForEndOfFrame());
        }
        Resources.UnloadUnusedAssets();
    }
Ejemplo n.º 7
0
 public void SetData(GoldDataBean goldData)
 {
     this.goldData = goldData;
 }