//-------------------------------------------------------- // [Author]: 第二世界 // [ Date ]: Monday, November 13, 2017 //-------------------------------------------------------- using UnityEngine; using System.Collections; using UnityEngine.UI; using TableConfig; //红包点击赋值 namespace Snxxz.UI { public class RedBagScripts:MonoBehaviour { [SerializeField] GameObject m_NullObj; [SerializeField] GameObject m_open;//可开 [SerializeField] Text m_PlayerName2;//玩家名 [SerializeField] Text m_TextMatter;//红包来源 [SerializeField] GameObject m_OpenImg;//红包圆钮图标 [SerializeField] GameObject m_State;//开 [SerializeField] GameObject m_SendOut;//发 [SerializeField] GameObject m_BroughtOut;//领完了 [SerializeField] GameObject m_HasBrought;//已领 [SerializeField] GameObject m_RedBagObj;//红包 [SerializeField] GameObject m_ViewText; public GameObject RedBag { get { return m_RedBagObj; } set { m_RedBagObj = value; } } [SerializeField] Button RedBagBtn;//红包 PlayerRedPacketDatas m_RedPacket; PlayerRedPacketDatas redPacket { get { return m_RedPacket ?? (m_RedPacket = ModelCenter.Instance.GetModel()); } } public void RedPacket(int State ,int redPackeIndex)//关于红包类型 { m_NullObj.SetActive(false); m_open.SetActive(false); m_OpenImg.SetActive(false); m_State.SetActive(false); m_SendOut.SetActive(false); m_BroughtOut.SetActive(false); m_HasBrought.SetActive(false); Image OpenImg = m_OpenImg.GetComponent(); Image SendOut = m_SendOut.GetComponent(); OpenImg.color =new Color32(255,255,255,255); if (redPacket._DicRedBag[redPackeIndex].GetWay == 0 && redPacket._DicRedBag[redPackeIndex].Wish != null) { m_TextMatter.text = redPacket._DicRedBag[redPackeIndex].Wish; } else { m_TextMatter.text = RedEnvelopeContent(redPacket._DicRedBag[redPackeIndex].GetWay); } switch (State) { case 0://未发放 m_ViewText.SetActive(false); m_NullObj.SetActive(true); m_OpenImg.SetActive(true); m_SendOut.SetActive(true); if ((int)PlayerDatas.Instance.baseData.PlayerID == redPacket._DicRedBag[redPackeIndex].PlayerID) { SendOut.color= new Color32(255, 255, 255,255); RedBagBtn.RemoveAllListeners(); RedBagBtn.AddListener(() => { redPacket.RedBagId = redPacket._DicRedBag[redPackeIndex].RedPacketID; WindowCenter.Instance.Open();//打开发放红包界面 }); } else { OpenImg.color = new Color32(180,115,115,255); SendOut.color = new Color32(180, 115, 115,255); RedBagBtn.RemoveAllListeners(); RedBagBtn.AddListener(() => { SysNotifyMgr.Instance.ShowTip("FairyRedBag");//信息提示 }); } break; case 1://可领取 m_ViewText.SetActive(false); m_NullObj.SetActive(true); m_open.SetActive(true); m_PlayerName2.text = redPacket._DicRedBag[redPackeIndex].Name; m_OpenImg.SetActive(true); m_State.SetActive(true); RedBagBtn.RemoveAllListeners(); RedBagBtn.AddListener(() => { redPacket.RedBagId = redPacket._DicRedBag[redPackeIndex].RedPacketID; WindowCenter.Instance.Open();//打开领取界面 }); break; case 2://已领取 m_ViewText.SetActive(true); m_open.SetActive(true); m_PlayerName2.text = redPacket._DicRedBag[redPackeIndex].Name; m_HasBrought.SetActive(true); RedBagBtn.RemoveAllListeners(); RedBagBtn.AddListener(()=> { redPacket.RedBagId = redPacket._DicRedBag[redPackeIndex].RedPacketID; RedPacketInquire(redPacket.RedBagId); }); break; case 3://红包派完了 m_ViewText.SetActive(true); m_open.SetActive(true); m_PlayerName2.text = redPacket._DicRedBag[redPackeIndex].Name; m_BroughtOut.SetActive(true); RedBagBtn.RemoveAllListeners(); RedBagBtn.AddListener(() => { redPacket.RedBagId = redPacket._DicRedBag[redPackeIndex].RedPacketID; RedPacketInquire(redPacket.RedBagId); }); break; default: break; } } string RedEnvelopeContent(int _getWay)//红包显示内容 { string _str = null; if (_getWay == 0) { _str = Language.Get("AnswerThree_Z"); return _str; } var redpack = Config.Instance.GetAllValues(); foreach (var value in redpack) { if (value.RedEnvelopeType == _getWay) { _str = value.content; return _str; } } return _str; } private void RedPacketInquire(int redbagID)//红包查询 { ModelCenter.Instance.GetModel().cacheEnvelopeId = redbagID; CAB12_tagCMGrabFamilyRedPacket _CA404 = new CAB12_tagCMGrabFamilyRedPacket(); _CA404.RedPaketID = (uint)redbagID; GameNetSystem.Instance.SendInfo(_CA404); } } }