Exemple #1
0
    /// <summary>
    /// 显示兑换物品界面
    /// </summary>
    /// <param name="itemId">兑换物品Id</param>
    public void ShowExchangeItemPanel(ushort itemId)
    {
        CurItemData = BagDataManager.GetBagDataInstance().GetItemData(itemId);
        if (CurItemData == null)
        {
            CRollTextUI.Instance.AddVerticalRollText("兑换物品不存在!");
            return;
        }

        if (ExchangeItemPanelGameObject == null)
        {
            LoadExchangeItemPanelResource();
        }

        UnityEngine.Transform ItemPopTransform = ExchangeItemPanelGameObject.transform.Find("pop_up");
        UnityEngine.Transform ItemTransform    = ItemPopTransform.Find("Exchange_Gouwuka");

        AssetBundle assetBundle = AssetBundleManager.GetAssetBundle(GameDefine.HallBagIconAssetBundleName);

        if (assetBundle)
        {
            Sprite goodsicon = assetBundle.LoadAsset <Sprite>(CurItemData.itemIcon);
            Image  goods     = ItemTransform.Find("Image").gameObject.GetComponent <Image>();
            goods.sprite = goodsicon;
        }

        ItemPopTransform.gameObject.SetActive(true);
        ItemTransform.gameObject.SetActive(true);
        ExchangeItemPanelGameObject.SetActive(true);
    }
Exemple #2
0
    public static BagDataManager GetBagDataInstance()
    {
        if (instance_ == null)
        {
            instance_ = new BagDataManager();
        }

        return(instance_);
    }
Exemple #3
0
    public int sellNum; //需要卖出的数量


    void Start()
    {
        BagDataManager.AddEventHandler <UIItem>(BagDataEvent.CLICK_ITEM, ClickItem);
        useBtn.onClick.AddListener(UseBtnClick);
        sellBtn.onClick.AddListener(SellBtnClick);
        Button.onClick.AddListener(OnSell);
        if (gameObject.activeSelf)
        {
            gameObject.SetActive(false);
        }
    }
Exemple #4
0
 // Use this for initialization
 void Start()
 {
     BagDataManager.AddEventHandler <UIBagClickMenu>(BagDataEvent.SELL_NUM, SellItem);
     button.onClick.AddListener(OnClick);
     sellNum.onValueChanged.AddListener(OnSellNumChanged);
     sellNum.keyboardType = TouchScreenKeyboardType.NamePhonePad;
     if (gameObject.activeSelf)
     {
         gameObject.SetActive(false);
     }
 }
Exemple #5
0
 void SellBtnClick()
 {
     if (itemNum == 1)
     {
         sellNum = 1;
         OnSell();
     }
     if (itemNum > 1)
     {
         BagDataManager.SendEvent <UIBagClickMenu>(BagDataEvent.SELL_NUM, this);
     }
 }
Exemple #6
0
    private void OnGetGoodsFromMail(EventTriggerType eventtype, object button, PointerEventData eventData)
    {
        if (eventtype == EventTriggerType.PointerClick && m_MailinfoTransform != null)
        {
            CustomAudio.GetInstance().PlayCustomAudio(1002);

            AssetBundle bundle = AssetBundleManager.GetAssetBundle(GameDefine.HallAssetbundleName);
            if (bundle == null)
            {
                return;
            }

            AssetBundle bagbundle = AssetBundleManager.GetAssetBundle(GameDefine.HallBagIconAssetBundleName);
            if (bagbundle == null)
            {
                return;
            }

            Transform ImageBGTransform = m_MailinfoTransform.Find("ImageBG");

            uint       key    = (uint)button;
            GameObject itembg = ImageBGTransform.Find("Viewport/Content").gameObject;
            GameMain.hall_.ClearChilds(itembg);

            Text infomation = ImageBGTransform.Find("Textinfo").gameObject.GetComponent <Text>();
            infomation.text = EmailDataManager.GetNewsInstance().emilsdata_[key].infomation;

            GameObject confirmbtn = ImageBGTransform.Find("Button_queding").gameObject;
            confirmbtn.SetActive(false);
            GameObject getbtn = ImageBGTransform.Find("Button_lingqu").gameObject;
            getbtn.SetActive(true);
            getbtn.GetComponent <Button>().interactable = true;

            XPointEvent.AutoAddListener(getbtn, OnGetGoods, key);

            for (int index = 0; index < EmailDataManager.GetNewsInstance().emilsdata_[key].emailitems.Count; index++)
            {
                uint itemid = EmailDataManager.GetNewsInstance().emilsdata_[key].emailitems[index].itemid;

                UnityEngine.Object obj0    = (GameObject)bundle.LoadAsset("mail_icon");
                GameObject         itemobj = (GameObject)GameMain.instantiate(obj0);

                itemobj.transform.SetParent(itembg.transform, false);

                Image icon = itemobj.transform.Find("Imageicon").gameObject.GetComponent <Image>();
                icon.sprite = bagbundle.LoadAsset <Sprite>(BagDataManager.GetBagDataInstance().GetItemData(itemid).itemIcon);
                Text number = itemobj.transform.Find("Textnum").gameObject.GetComponent <Text>();
                number.text = EmailDataManager.GetNewsInstance().emilsdata_[key].emailitems[index].itemNumber.ToString();
            }

            m_MailinfoTransform.gameObject.SetActive(true);
        }
    }
Exemple #7
0
    private void OnUseTicket(EventTriggerType eventtype, object button, PointerEventData eventData)
    {
        if (eventtype == EventTriggerType.PointerClick)
        {
            CustomAudio.GetInstance().PlayCustomAudio(1002);

            GameMain.hall_.Go2ContestHall();
            ushort itemid = (ushort)button;
            BagDataManager.GetBagDataInstance().isUseItem = true;
            BagDataManager.GetBagDataInstance().scriptid  = BagDataManager.GetBagDataInstance().bagitemsdata_[itemid].itemScriptid;

            root_.SetActive(false);
            SetItemInfoPanelActive(false);
        }
    }
Exemple #8
0
    public void LoadBagItemResource()
    {
        AssetBundle bundle = AssetBundleManager.GetAssetBundle(GameDefine.HallAssetbundleName);

        if (bundle == null)
        {
            return;
        }

        AssetBundle bagbundle = AssetBundleManager.GetAssetBundle(GameDefine.HallBagIconAssetBundleName);

        if (bagbundle == null)
        {
            return;
        }

        itemobjects_.Clear();

        if (root_ == null)
        {
            return;
        }

        GameObject bagbg = root_.transform.Find("ImageBG").Find("Viewport").Find("Content").gameObject;

        GameMain.hall_.ClearChilds(bagbg);

        int        length = BagDataManager.GetBagDataInstance().currentItems_.Count;
        GameObject noitem = root_.transform.Find("ImageBG").Find("Viewport").Find("Imagekong").gameObject;

        noitem.SetActive(length == 0);

        foreach (ushort key in BagDataManager.GetBagDataInstance().currentItems_.Keys)
        {
            UnityEngine.Object obj0    = (GameObject)bundle.LoadAsset("bag_icon");
            GameObject         itemobj = (GameObject)GameMain.instantiate(obj0);

            itemobj.transform.SetParent(bagbg.transform, false);

            XPointEvent.AutoAddListener(itemobj, OnUseItem, BagDataManager.GetBagDataInstance().currentItems_[key].itemid);

            Image itemicon = itemobj.transform.Find("Imageicon").gameObject.GetComponent <Image>();
            itemicon.sprite = bagbundle.LoadAsset <Sprite>(BagDataManager.GetBagDataInstance().GetItemData(BagDataManager.GetBagDataInstance().currentItems_[key].itemid).itemIcon);
            Text itemNumber = itemobj.transform.Find("Textnum").gameObject.GetComponent <Text>();
            itemNumber.text = "x" + BagDataManager.GetBagDataInstance().currentItems_[key].itemNumber.ToString();
            itemobjects_.Add(BagDataManager.GetBagDataInstance().currentItems_[key].itemid, itemobj);
        }
    }
Exemple #9
0
    /// <summary>
    /// 订单确认界面按钮事件
    /// </summary>
    void OnClickConfirmEvent(EventTriggerType eventtype, object button, PointerEventData eventData)
    {
        if (eventtype != EventTriggerType.PointerClick)
        {
            return;
        }
        CustomAudio.GetInstance().PlayCustomAudio(1002);

        if ((bool)button && CurItemData != null)
        {
            ShopItemdata itemdata = CCsvDataManager.Instance.ShopItemDataMgr.GetShopItemData(CurItemData.itemScriptid);
            if (itemdata == null)
            {
                CRollTextUI.Instance.AddVerticalRollText("购买物品已经下架!");
                return;
            }

            bool bCheckState = true;
            if (BagDataManager.GetBagDataInstance().currentItems_.ContainsKey((ushort)CurItemData.itemid))
            {
                if (BagDataManager.GetBagDataInstance().currentItems_[(ushort)CurItemData.itemid].itemNumber < itemdata.ItemPrice)
                {
                    bCheckState = false;
                }
            }

            if (itemdata.SpecilSign != CurItemData.itemid || !bCheckState)
            {
                CRollTextUI.Instance.AddVerticalRollText("兑换商品校验出错!");
                return;
            }

            //姓名
            InputField name = ExchangeItemPanelGameObject.transform.Find("pop_up/Exchange_Gouwuka/InputName").GetComponent <InputField>();
            //手机号码
            InputField mobilenum = ExchangeItemPanelGameObject.transform.Find("pop_up/Exchange_Gouwuka/InputPhoneNum").GetComponent <InputField>();
            //收件地址
            InputField address = ExchangeItemPanelGameObject.transform.Find("pop_up/Exchange_Gouwuka/InputAdd").GetComponent <InputField>();
            name.text      = string.Empty;
            address.text   = string.Empty;
            mobilenum.text = string.Empty;

            GameMain.hall_.GetPlayer().RequestBuyItem(CurItemData.itemScriptid, CurPhoneNum, CurRecvName, CurRecvAddress);
        }
        CloseExchangeEvent();
    }
Exemple #10
0
    void OnClick()
    {
        BagDataManager.SendEvent <UIItem>(BagDataEvent.CLICK_ITEM, this);
        //if (item.type == 1)
        //{
        //    EquipmentDataMgr.Instance.Dress(item);
        //    EquipmentDataMgr.Instance.dispatcher.SendEvent<BagItemBean>(EquimentDataEvent.EQUUIMENT_CHANGED, item);

        //}

        //if (item.ID == 10001)
        //{
        //    var player = GameObject.FindGameObjectWithTag("Player").GetComponent<HeroController>();
        //    player.GetHeal(100);
        //}

        //PlayerDataMgr.Instance.Save();
        //BagDataManager.Instance.DeleteItem(ItemId, 1, true);
    }
Exemple #11
0
 private void OnDestroy()
 {
     BagDataManager.RemoveEventHandler <UIItem>(BagDataEvent.CLICK_ITEM, ClickItem);
 }
Exemple #12
0
 private void OnDestroy()
 {
     BagDataManager.RemoveEventHandler <UIBagClickMenu>(BagDataEvent.SELL_NUM, SellItem);
     button.onClick.RemoveListener(OnClick);
     sellNum.onValueChanged.RemoveListener(OnSellNumChanged);
 }
Exemple #13
0
    void SetItemInfo(ushort itemid)
    {
        AssetBundle bagbundle = AssetBundleManager.GetAssetBundle(GameDefine.HallBagIconAssetBundleName);

        if (bagbundle == null)
        {
            return;
        }

        BagItemData bagItemData = BagDataManager.GetBagDataInstance().GetItemData(itemid);

        if (bagItemData == null)
        {
            return;
        }

        GameObject iteminfo = root_.transform.Find("Pop-up").Find("iteminfo").Find("ImageBG").gameObject;

        Image infoicon = iteminfo.transform.Find("bag_icon").Find("Imageicon").gameObject.GetComponent <Image>();

        infoicon.sprite = bagbundle.LoadAsset <Sprite>(bagItemData.itemIcon);
        Text itemName = iteminfo.transform.Find("Textname").gameObject.GetComponent <Text>();

        itemName.text = bagItemData.itemName;
        Text itemNumber = iteminfo.transform.Find("Textnum").gameObject.GetComponent <Text>();

        itemNumber.text = BagDataManager.GetBagDataInstance().currentItems_[itemid].itemNumber.ToString();
        Text itemWorkTime = iteminfo.transform.Find("Texttime").gameObject.GetComponent <Text>();

        if (bagItemData.itemWorkTime > 0)
        {
            uint minutes = bagItemData.itemWorkTime / 60;
            uint hours   = minutes / 60;
            minutes = minutes % 60;
            uint days = hours / 24;
            hours = hours % 24;
            string timeTx = "";
            if (days > 0)
            {
                timeTx += days.ToString() + "天";
            }
            if (hours > 0)
            {
                timeTx += hours.ToString() + "小时";
            }
            if (minutes > 0)
            {
                timeTx += minutes.ToString() + "分钟";
            }
            itemWorkTime.text = timeTx;
        }
        else
        {
            itemWorkTime.gameObject.SetActive(false);
        }

        Text itemcontent = iteminfo.transform.Find("Textinfo").gameObject.GetComponent <Text>();

        itemcontent.text = bagItemData.itemInfo;

        GameObject givetype = iteminfo.transform.Find("ButtonBG").Find("Button_Give").gameObject;

        givetype.SetActive(false);
        GameObject usetype = iteminfo.transform.Find("ButtonBG").Find("Button_shiyong").gameObject;

        usetype.SetActive(false);
        GameObject switchtype = iteminfo.transform.Find("ButtonBG").Find("Button_duihuan").gameObject;

        switchtype.SetActive(false);

        switch (bagItemData.usetype)
        {
        case ItemUseType.Type1:
            givetype.SetActive(true);
            XPointEvent.AutoAddListener(givetype, OnGiveItem, itemid);
            break;

        case ItemUseType.Type2:
            usetype.SetActive(true);
            XPointEvent.AutoAddListener(usetype, OnUseTicket, itemid);
            break;

        case ItemUseType.Type3:
            switchtype.SetActive(true);
            XPointEvent.AutoAddListener(switchtype, OnSwitchGoods, itemid);
            break;

        case ItemUseType.Type4:
            break;

        case ItemUseType.Type5:
            break;
        }
    }
Exemple #14
0
    /// <summary>
    /// 登陆成功处理
    /// </summary>
    /// <param name="_msgType"></param>
    /// <param name="_ms"></param>
    /// <returns></returns>
    bool LoginSuccess(uint _msgType, UMessage _ms)
    {
        PlayerData playerdata        = GameMain.hall_.GetPlayerData();
        uint       lastLoginPlayerId = playerdata.GetPlayerID();

        playerdata.ReadPlayerData(_ms, ref CRankUI.Instance.m_fLeftCoinRankTime);
        //检测是否切换角色了
        if (lastLoginPlayerId != 0 && lastLoginPlayerId != playerdata.GetPlayerID())
        {
        }

        GameMain.hall_.IntelentType = Application.internetReachability;
        WriteAccountConfig();

        //GameMain.hall_.SendGetCoinRankData();

        //m_bIsSendMobileNum = false;
        CCustomDialog.CloseCustomWaitUI();
        GameMain.hall_.AfterLogin();


#if ScFish
        GameMain.hall_.OnClickRoomIconBtn((byte)GameKind_Enum.GameKind_Fishing, 1);
        return(true);
#endif


        //GameMain.hall_.LoadHallResource();
        if (playerdata.nGameMode_Before >= 0)
        {
            Debug.Log("断线重连GameId:" + playerdata.nGameKind_Before + ",GameMode:" + playerdata.nGameMode_Before);
            string        strSign           = string.Empty;
            GameKind_Enum CurbeforeGameKind = (GameKind_Enum)playerdata.nGameKind_Before;
            if (playerdata.nGameMode_Before == 0)
            {
                CurbeforeGameKind = (GameKind_Enum)(Mathf.Log(playerdata.nGameKind_Before, 2));
                for (GameKind_Enum gameKind = GameKind_Enum.GameKind_CarPort; gameKind < GameKind_Enum.GameKind_Max; ++gameKind)
                {
                    if (gameKind != GameKind_Enum.GameKind_LandLords && gameKind != GameKind_Enum.GameKind_Mahjong &&
                        gameKind != GameKind_Enum.GameKind_GuanDan && gameKind != GameKind_Enum.GameKind_YcMahjong &&
                        gameKind != GameKind_Enum.GameKind_CzMahjong && gameKind != GameKind_Enum.GameKind_GouJi &&
                        gameKind != GameKind_Enum.GameKind_HongZhong && gameKind != GameKind_Enum.GameKind_Answer &&
                        gameKind != GameKind_Enum.GameKind_Chess)
                    {
                        if (GameKind.HasFlag((int)gameKind, (int)playerdata.nGameKind_Before))
                        {
                            GameData gamedata = CCsvDataManager.Instance.GameDataMgr.GetGameData((byte)CurbeforeGameKind);
                            if (gamedata != null)
                            {
                                strSign += gamedata.GameName;
                            }
                            else
                            {
                                strSign += "未知游戏";
                            }
                        }
                    }
                }
            }

            if (!string.IsNullOrEmpty(strSign))
            {
                CCustomDialog.OpenCustomWaitUI(2014, strSign);
            }
            else
            {
                if (GameMain.hall_.contestui_)
                {
                    GameMain.hall_.contestui_.SetActive(false);
                }
                GameMain.hall_.ReconnectLoadGame(CurbeforeGameKind, (GameTye_Enum)playerdata.nGameMode_Before);
            }
        }
        else
        {
            if (Application.platform == RuntimePlatform.Android)
            {
#if UNITY_ANDROID && !UNITY_EDITOR
                AlipayWeChatPay.GetAndroidActivity().Call("GetGameRoomID");
#endif
            }
        }

        GameMain.hall_.ReconnectGameServer();

        UMessage activemsg = new UMessage((uint)GameCity.EMSG_ENUM.CrazyCityMsg_GETTODAYREDBAGINFO);
        activemsg.Add(GameMain.hall_.GetPlayerId());
        NetWorkClient.GetInstance().SendMsg(activemsg);

        BagDataManager.GetBagDataInstance();
        if (GameMain.hall_.GetPlayerData().itemNumber > 0)
        {
            UMessage bagmsg = new UMessage((uint)GameCity.EMSG_ENUM.CrazyCityMsg_REQUESTPLAYERPACKETINFO);
            bagmsg.Add(GameMain.hall_.GetPlayerId());
            NetWorkClient.GetInstance().SendMsg(bagmsg);
        }

        PlayerInfoUI.Instance.Ask4PlayerTotalData();

        return(true);
    }