Ejemplo n.º 1
0
    private ItemInstance SpawnItem(EItem item)
    {
        if (!m_itemInstancePrefab)
        {
            return(null);
        }

        TileResourceDef tileResourceDef = TileMapping.GetTileResourceDef((ETile)item);

        if (tileResourceDef == null)
        {
            return(null);
        }

        GameObject obj = Instantiate(m_itemInstancePrefab);

        if (obj == null)
        {
            return(null);
        }

        Transform    tr = obj.GetComponent <Transform>();
        ItemInstance ii = obj.GetComponent <ItemInstance>();
        MeshRenderer mr = obj.GetComponent <MeshRenderer>();

        if (mr)
        {
            Texture tex = Resources.Load(tileResourceDef.Filename) as Texture;
            if (tex)
            {
                mr.material.mainTexture = tex;
                mr.material.color       = ItemInstance.GetColor32ForItem(item);

                //float scale = (float) (Screen.height / 2.0) / Camera.main.orthographicSize;
                //tr.localScale = new Vector3((float)tex.width / scale, (float)tex.height / scale, tr.localScale.z);
                tr.localScale = new Vector3(1.0f, 1.0f, tr.localScale.z);
            }

            ii.SetType(item);
        }

        return(ii);
    }