Exemplo n.º 1
0
    //设置公会解散时间
    public void SetDismissTime()
    {
        UILabel timeLabel = panel.dismiss.FindChild("countdown").GetComponent <UILabel>();

        panel.dismiss.gameObject.SetActive(mMyGuild.dismissTime > 0);
        if (mMyGuild.dismissTime <= 0)
        {
            TimerManager.Destroy(timerDismissKey);
            timeLabel.text = "";
            return;
        }

        panel.cancel_btn.gameObject.SetActive(PlayerMediator.playerInfo.guildPower == 5);

        TimeSpan timeSpan = (DateTime.Now - new DateTime(1970, 1, 1));
        long     time     = (long)timeSpan.TotalSeconds;
        long     leftTime = mMyGuild.dismissTime - time;

        TimerManager.Destroy(timerDismissKey);
        TimerManager.AddTimerRepeat(timerDismissKey, 1, delegate(object[] obj)
        {
            if (leftTime <= 0)
            {
                TimerManager.Destroy(timerDismissKey);
                timeLabel.text = "";
            }
            else
            {
                leftTime--;
                timeLabel.text = UtilTools.formatDuring(leftTime);
            }
        });
    }
Exemplo n.º 2
0
    static void OnNetBlockOrClose()
    {
        try
        {
            //Debug.Log("OnNetBlockOrClose");
            gConnectCount            = 0;
            WorldStage.mbReConnected = true;
            //启动断线重连,重新发送登录消息
            Game game = Game.Instance;
            if (game != null)
            {
                game.mGameSock.Disconnect();
                game.mGameSock.InitUserSock();

                ConnectStage.RegistCallback(false);
                LoginStage.RegistCallback(false);
                WorldStage.RegistCallback(false);
                ///第一次连接失败,添加心跳开始持续一分钟连接12次,依然没有连上认为断开
                ConnectStage.ConnecToMember(mstrServer, miPort, mstrUser, mstrPsd, mstrValidateString, 2);
                //Debug.Log("第一次重连");
                TimerManager.AddTimerRepeat("OnNetBlockTimer", 5.0f, OnNetBlockTimer);
                LogSystem.LogWarning("First block connect try");
                //SystemWaitPanel.Start(99999999);
            }
        }
        catch (System.Exception ex)
        {
            LogSystem.LogError("Game::OnNetBlockOrClose:", ex.ToString());
        }
    }
Exemplo n.º 3
0
    void OnAttackLoopSpace()
    {
        TimerManager.Destroy(mKey);

        OnAttackLoop();

        // 播放攻击动作
        TimerManager.AddTimerRepeat(mKey, mAttackSpace, OnAttackLoop);
    }
Exemplo n.º 4
0
 /// <summary>
 /// 刷新钻石抽数据
 /// </summary>
 void SetDiamondTime(int time)
 {
     diamondLastTime          = time - cardInfo.diamondLastTime - 8 * 3600;
     m_Panel.purpleCount.text = diamondInfo.capitalValue.ToString();
     if (diamondLastTime > diamondInfo.freeCD)
     {
         m_Panel.purpleTimes.text = TextManager.GetUIString("UICard6");
     }
     else
     {
         diamondLastTime = diamondInfo.freeCD - diamondLastTime;
         UpdateDiamondCardCD();
         TimerManager.Destroy("UpdateDiamondCardCD");
         TimerManager.AddTimerRepeat("UpdateDiamondCardCD", 1, UpdateDiamondCardCD);
     }
 }
Exemplo n.º 5
0
    public void SetHorizontalTargetItemIndex(EnhanceItem selectItem)
    {
        if (!canChangeItem)
        {
            return;
        }

        if (curCenterItem == selectItem)
        {
            return;
        }

        canChangeItem = false;
        preCenterItem = curCenterItem;
        curCenterItem = selectItem;

        // calculate the direction of moving
        float centerXValue = positionCurve.Evaluate(0.5f) * totalHorizontalWidth;
        bool  isRight      = false;

        if (selectItem.transform.localPosition.x > centerXValue)
        {
            isRight = true;
        }

        // calculate the offset * dFactor
        int   moveIndexCount = GetMoveCurveFactorCount(preCenterItem, selectItem);
        float dvalue         = 0.0f;

        if (isRight)
        {
            TimerManager.Destroy("rotate");
            TimerManager.AddTimerRepeat("rotate", 0, RotateTrans, isRight);
            dvalue = -dFactor * moveIndexCount;
        }
        else
        {
            TimerManager.Destroy("rotate");
            TimerManager.AddTimerRepeat("rotate", 0, RotateTrans, isRight);
            gearRotate.Rotate(30 * Vector3.forward);
            dvalue = dFactor * moveIndexCount;
        }

        float originValue = curHorizontalValue;

        LerpTweenToTarget(originValue, curHorizontalValue + dvalue, true);
    }
Exemplo n.º 6
0
 /// <summary>
 /// 刷新美元抽数据
 /// </summary>
 void SetFreeTime(int time)
 {
     euroLastTime = time - cardInfo.euroLastTime - 8 * 3600;
     if (euroLastTime < freeInfo.freeCD)
     {
         m_Panel.freeCount.text = freeInfo.capitalValue.ToString();
         euroLastTime           = freeInfo.freeCD - euroLastTime;
         UpdateEuroCardCD();
         TimerManager.Destroy("UpdateEuroCardCD");
         TimerManager.AddTimerRepeat("UpdateEuroCardCD", 1, UpdateEuroCardCD);
     }
     else
     {
         m_Panel.freeTimes.text = string.Format(TextManager.GetUIString("UICard7"), freeInfo.freeCount - cardInfo.euroFreeTimes);
         m_Panel.freeCount.text = TextManager.GetUIString("UICard6");
     }
 }
Exemplo n.º 7
0
 public static bool CreateCountTrigger(string strTriggerName, float fDelayTime, int iCount, AsyncTrigger.OnTrigger onTrigger, params object[] args)
 {
     if (AsyncTrigger.mTriggers.ContainsKey(strTriggerName))
     {
         return(false);
     }
     AsyncTrigger.TriggerInfo triggerInfo = new AsyncTrigger.TriggerInfo();
     triggerInfo.strTriggerName = strTriggerName;
     triggerInfo.iTriggerCount  = iCount;
     triggerInfo.onTrigger      = onTrigger;
     triggerInfo.args           = args;
     AsyncTrigger.mTriggers.Add(strTriggerName, triggerInfo);
     TimerManager.AddTimerRepeat(strTriggerName, fDelayTime, new TimerManager.TimerManagerHandlerArgs(AsyncTrigger.OnTriggerCountTimer), new object[]
     {
         strTriggerName,
         onTrigger
     });
     return(true);
 }
Exemplo n.º 8
0
    protected override void OnShow(INotification notification)
    {
        msg = notification.Body as RoomInfoMsg;

        SendNotification(NotificationID.MainClose);

        TimerManager.AddTimerRepeat(mKeyLoadingPerKey, 0.01f, OnTimer_SendLoadingPer);

        UIEventListener.Get(m_Panel.gameObject).onClick = OnClick_Panel;

        mBox = m_Panel.GetComponent <BoxCollider>();

        mStopSendLodingPer            = false;
        mLoadingMapComplete           = false;
        mOtherLoadingComplete         = false;
        m_Panel.teamALoadingBar.value = 0;
        m_Panel.teamBLoadingBar.value = 0;

        UpdateDisplay();
    }
Exemplo n.º 9
0
    /// <summary>
    /// 延时一帧触发
    /// </summary>
    /// <param name="strTriggerName">触发器名称</param>
    /// <param name="onTrigger">触发器</param>
    /// <param name="args">触发参数</param>
    static public bool CreateCountTrigger(string strTriggerName, float fDelayTime, int iCount, OnTrigger onTrigger, params object[] args)
    {
        if (mTriggers.ContainsKey(strTriggerName))
        {
            return(false);
        }

        ///暂时添加到触发列表
        TriggerInfo tInfo = new TriggerInfo();

        tInfo.strTriggerName = strTriggerName;
        tInfo.iTriggerCount  = iCount;
        tInfo.onTrigger      = onTrigger;
        tInfo.args           = args;
        mTriggers.Add(strTriggerName, tInfo);

        ///添加一次性心跳
        TimerManager.AddTimerRepeat(strTriggerName, fDelayTime, OnTriggerCountTimer, strTriggerName, onTrigger);
        return(true);
    }
Exemplo n.º 10
0
    /// <summary>
    /// 点击事件
    /// </summary>
    private void OnClick(GameObject go)
    {
        if (go == m_Panel.startGameBtn.gameObject)
        {
            if (panel.serverName.text == string.Empty)
            {
                GUIManager.SetPromptInfo(TextManager.GetUIString("UIServer"), null);
                return;
            }
            if (loginSucess)
            {
                return;
            }
            loginSucess = true;

            KBEMain.StartClientap(PlayerPrefs.GetString("UserServer"));

            TimerManager.AddTimerRepeat(m_timerLoginKey, 0.5f, OnTimer_LoginQiYouGame);
        }
        else if (go == m_Panel.chooseBtn.gameObject)
        {
            panel.chooseServer.gameObject.SetActive(true);
            panel.ServerGrid.mgridItem = panel.ServerItem.gameObject;
            panel.ServerGrid.AddCustomDataList(AddListGrid(ServerConfig.serverList));
        }
        else if (go == m_Panel.recommendBtn.gameObject)
        {
            panel.ServerGrid.AddCustomDataList(AddListGrid(ServerConfig.serverList));
        }
        else if (go == m_Panel.oldAccountBtn.gameObject)
        {
            panel.ServerGrid.AddCustomDataList(AddListGrid(ServerConfig.serverList));
        }
        else if (go == m_Panel.backBtn.gameObject)
        {
            panel.chooseServer.gameObject.SetActive(false);
        }
    }
Exemplo n.º 11
0
    /// <summary>
    /// 普通攻击;
    /// </summary>
    public void DoAttack(IObject target)
    {
        if (target == null)
        {
            return;
        }

        mTarget = target;

        // 如果当前攻击间隔大于指定攻击间隔,先执行一次攻击后,开启心跳
        if (Time.time - mLastAttackTime > mAttackSpace)
        {
            OnAttackLoop();

            // 播放攻击动作
            TimerManager.AddTimerRepeat(mKey, mAttackSpace, OnAttackLoop);
        }
        else
        {
            float space = mAttackSpace - (Time.time - mLastAttackTime);
            TimerManager.AddTimer(mKey, space, OnAttackLoopSpace);
        }
    }
Exemplo n.º 12
0
    private void SetUpgradeTime()
    {
        TimeSpan timeSpan = (DateTime.Now - new DateTime(1970, 1, 1));
        long     time     = (long)timeSpan.TotalSeconds - 8 * 60 * 60;

        long leftTime = mGuildBuildInfo.endTimes - time;

        TimerManager.Destroy(mTimerUpgradeKey);
        TimerManager.AddTimerRepeat(mTimerUpgradeKey, 1, delegate(object[] obj)
        {
            if (leftTime <= 0)
            {
                leftTime = 0;
                TimerManager.Destroy(mTimerUpgradeKey);
                panel.timeLable.text = "";
            }
            else
            {
                leftTime--;
                panel.timeLable.text = UtilTools.formatDuring(leftTime);
            }
        });
    }
Exemplo n.º 13
0
    /// <summary>
    /// 界面显示
    /// </summary>
    /// <param name="notification"></param>
    protected override void OnShow(INotification notification)
    {
        if (notification.Body != null)
        {
            List <object> list = notification.Body as List <object>;
            privateDbid = (int)list[0];
            privateName = list[1] as string;
            panel.chooseFreindLabel.text = privateName;
            currentChatType = ChatType.Private;
            ShowInfos(ChatType.Private);
            panel.privateBtn.value = true;
            return;
        }
        panel.message.value      = string.Empty;
        panel.message.label.text = TextManager.GetUIString("UIChat8");
        GameObject cell = panel.LeftChatItem.gameObject;

        cell.AddComponent <LeftChatItem>();
        PoolManager.CreatePrefabPools(PoolManager.PoolKey.Prefab_LeftChatItem, cell, false);

        cell = panel.RightChatItem.gameObject;
        cell.AddComponent <RightChatItem>();
        PoolManager.CreatePrefabPools(PoolManager.PoolKey.Prefab_RightChatItem, cell, false);

        cell = panel.SystemItem.gameObject;
        cell.AddComponent <SystemChatItem>();
        PoolManager.CreatePrefabPools(PoolManager.PoolKey.Prefab_SystemChatItem, cell, false);

        Facade.SendNotification(NotificationID.Gold_Hide);
        if (chatMediator == null)
        {
            chatMediator = Facade.RetrieveMediator("ChatMediator") as ChatMediator;
        }
        ShowInfos(ChatType.World);
        TimerManager.AddTimerRepeat("showAd", 0.1f, UpdateAdInfo);
    }
Exemplo n.º 14
0
    /// <summary>
    /// 连接服务器
    /// </summary>
    /// <param name="strServerIP">服务器地址</param>
    /// <param name="iPort">端口</param>
    /// <param name="strUserName">账号名</param>
    /// <param name="strPassword">密码</param>
    /// <returns>连接成败</returns>
    public static bool ConnectTo(string strServerIP, int iPort, string strUserName, string strPassword, string strValidatestring = "", int iReconnect = 2)
    {
        //Debug.Log("ConnectTo::", strUserName, ":", strPassword, ":", strValidatestring);
        if (!string.IsNullOrEmpty(strServerIP))
        {
            TimerManager.AddTimerRepeat("CheckServerListen", 0.5f, CheckConnectToMember);
            mstrMemberUserName       = strUserName;
            mstrMemberPassword       = strPassword;
            mstrMemberValidatestring = strValidatestring;
            miMemberReconnect        = iReconnect;

            TextSock textSock = new TextSock(OnTextSockConnected, OnTextSockConnectFailed, OnTextSockRecieveData);
            if (textSock != null)
            {
                return(textSock.Connect(strServerIP, iPort));
            }
        }
        else
        {
            miRecieveMemberType = 0;
            ///提示连接失败
            TimerManager.ClearTimerWithPrefix("CheckServerListen");

//             ///提示连接失败
//             SystemWaitPanel.End();
//             string strHeader = TextManager.Instance.GetString("UI00031");
//             PromptType pt = PoolManager.PopObject<PromptType>(PoolManager.PoolKey.Object_PromptType);
//             pt.layer = 3;
//             pt.title = strHeader;
//             pt.content = TextManager.Instance.GetUIString("UI17999");
//             pt.style = PromptType.Style.OK;
//             GUIManager.ShowView<SystemPrompt>(pt);
        }

        return(false);
    }
Exemplo n.º 15
0
    protected override void OnShow(INotification notification)
    {
        Instance = this;
        m_Panel.overLab.gameObject.SetActive(false);
        m_Panel.panAddPower.gameObject.SetActive(false);

        UIEventListener.Get(m_Panel.backBtn.gameObject).onClick = OnClick_BackBtn;

        List <Transform> exps = new List <Transform> {
            m_Panel.addExpItem0,
            m_Panel.addExpItem1,
            m_Panel.addExpItem2,
            m_Panel.addExpItem3,
            m_Panel.addExpItem4,
            m_Panel.addExpItem5
        };

        int len = exps.Count;

        for (int n = 0; n < len; n++)
        {
            UIEventListener.Get(exps[n].gameObject).onDrop  = OnDrop_ExpItem;
            UIEventListener.Get(exps[n].gameObject).onHover = OnHover_ExpItem;
        }

        List <Transform> cards = new List <Transform> {
            m_Panel.Card0,
            m_Panel.Card1,
            m_Panel.Card2,
            m_Panel.Card3,
            m_Panel.Card4,
            m_Panel.Card5,
            m_Panel.CardOp0,
            m_Panel.CardOp1,
            m_Panel.CardOp2,
            m_Panel.CardOp3,
            m_Panel.CardOp4,
            m_Panel.CardOp5
        };

        int cnt = cards.Count;

        bool haveData = null != FightProxy.Instance.RoomInfo;

        int  fLen = 0;
        int  sLen = 0;
        bool isMe = true;
        List <FightCardMsg> teamACardMsg = null;
        List <FightCardMsg> teamBCardMsg = null;

        mExp         = new List <Transform>();
        exp_cardItem = new Dictionary <Transform, FightPanel_CardItem>();

        if (haveData)
        {
            isMe = FightProxy.Instance.RoomInfo.frole.pid == PlayerProxy.Instance.Info.pid;

            m_Panel.mynameLab.text = FightProxy.Instance.RoomInfo.frole.name;
            m_Panel.opnameLab.text = FightProxy.Instance.RoomInfo.srole.name;

            if (isMe)
            {
                teamACardMsg = FightProxy.Instance.RoomInfo.frole.cards.card;
                teamBCardMsg = FightProxy.Instance.RoomInfo.srole.cards.card;
            }
            else
            {
                teamACardMsg = FightProxy.Instance.RoomInfo.srole.cards.card;
                teamBCardMsg = FightProxy.Instance.RoomInfo.frole.cards.card;
            }

            fLen = teamACardMsg.Count;
            sLen = teamBCardMsg.Count;
        }

        mTeamCards  = new List <FightPanel_CardItem>();
        mTeamBCards = new List <FightPanel_CardItem>();

        mInitTeamCards  = new List <FightPanel_CardItem>();
        mInitTeamBCards = new List <FightPanel_CardItem>();

        mTeamCardsFreeQueque = new List <FightPanel_CardItem>();
        mTeamAInitPosition   = new List <Vector3>();
        mTeamBInitPosition   = new List <Vector3>();

        for (int i = 0; i < cnt; i++)
        {
            FightPanel_CardItem cardItem = ScriptHelper.BindField(cards[i], "FightPanel_CardItem") as FightPanel_CardItem;
            int index = i % 6;

            if (Define.VSTest)
            {
                FightCardMsg tmsg = new FightCardMsg();
                tmsg.index       = index;
                cardItem.SerData = tmsg;
            }

            if (i < 6)
            {
                if (haveData && index < fLen)
                {
                    mTeamCards.Add(cardItem);
                }

                if (!haveData)
                {
                    mTeamCards.Add(cardItem);
                }

                mInitTeamCards.Add(cardItem);
                mTeamAInitPosition.Add(cardItem.transform.position);

                cardItem.ExpItem = exps[i].transform;
                mExp.Add(exps[i].transform);
                exp_cardItem[exps[i].transform] = cardItem;

                if (haveData && index >= fLen)
                {
                    exps[i].gameObject.SetActive(false);
                }
            }

            if (index < fLen && i < 6)
            {
                if (haveData)
                {
                    cardItem.SerData = teamACardMsg[i];
                }
            }
            else if (index >= fLen && i < 6)
            {
                if (haveData)
                {
                    mTeamCardsFreeQueque.Add(cardItem);
                }
            }
            else if (i >= 6)
            {
                UICardDrag dragItm = cardItem.GetComponent <UICardDrag>();
                dragItm.IsCustomDrag  = false;
                dragItm.CanClickTween = false;

                mTeamBInitPosition.Add(cardItem.transform.position);
                mInitTeamBCards.Add(cardItem);

                if (haveData && index < sLen)
                {
                    mTeamBCards.Add(cardItem);
                    cardItem.SerData = teamBCardMsg[index];
                }

                if (!haveData)
                {
                    mTeamBCards.Add(cardItem);
                }
            }

            if (haveData)
            {
                cardItem.UpdateDisplay();
            }
        }

        AddExpPan_InitPosition = m_Panel.panAddPower.position;
        OpPan_InitPosition     = m_Panel.panOpCard.position;

        if (Define.VSTest)
        {
            m_Panel.myTurnWarnPan.gameObject.SetActive(false);
            m_Panel.opTurnWarnPan.gameObject.SetActive(false);
        }
        else
        {
            m_Panel.myTurnWarnPan.gameObject.SetActive(InitIsMyAtk == -1);
            m_Panel.opTurnWarnPan.gameObject.SetActive(InitIsMyAtk == 1);

            mCountTimer = 90;
            string warstr = InitIsMyAtk == -1 ? "FightMyTurn" : "FightOpTurn";
            m_Panel.turnLab.text  = TextManager.GetUIString(warstr);
            m_Panel.countLab.text = mCountTimer.ToString();

            m_Panel.btnTurn.gameObject.SetActive(InitIsMyAtk == -1);

            if (InitIsMyAtk == -1)
            {
                Tween_MyTrunWarn();
            }
            else
            {
                Tween_OpTrunWarn();
            }
        }

        UpdateArcane();

        if (null != mOpenEffectList)
        {
            int eftLen = mOpenEffectList.Count;
            for (int ei = 0; ei < eftLen; ei++)
            {
                DoEffect(mOpenEffectList[ei]);
            }
        }

        TimerManager.AddTimerRepeat(mTimer_CountDown, 1f, OnTimer_CountDown);
    }
Exemplo n.º 16
0
    public void SetBuildInfo(GuildBuildInfo item)
    {
        if (item.id == 1)
        {
            SetGuildInfo();
        }

        Transform child = null;

        int index = item.id;

        child = panel.build.FindChild("build" + index);

        //bool isPower = IsPowerEnough("7");
        //if (!isPower)
        //    return;

        Transform content = child.FindChild("content");

        content.gameObject.SetActive(false);

        UILabel level = child.FindChild("level").GetComponent <UILabel>();

        level.text = "Lv" + item.level.ToString();

        Transform speed_btn   = content.FindChild("speed_btn");
        Transform upgrade_btn = content.FindChild("upgrade_btn");
        Transform into_btn    = content.FindChild("into_btn");

        speed_btn.gameObject.SetActive(item.state == 1);
        upgrade_btn.gameObject.SetActive(item.state == 0);

        UIEventListener.Get(speed_btn.gameObject).onClick   = OnBuildBtnClick;
        UIEventListener.Get(upgrade_btn.gameObject).onClick = OnBuildBtnClick;
        UIEventListener.Get(into_btn.gameObject).onClick    = OnBuildBtnClick;

        Transform upgrade = content.FindChild("upgrade");

        upgrade.gameObject.SetActive(item.state == 1);

        if (item.state == 1)
        {
            UISlider slider    = upgrade.FindChild("Slider").GetComponent <UISlider>();
            UILabel  timeLabel = upgrade.FindChild("time").GetComponent <UILabel>();

            TimeSpan timeSpan = (DateTime.Now - new DateTime(1970, 1, 1));
            long     time     = (long)timeSpan.TotalSeconds - 8 * 60 * 60;

            long leftTime  = item.endTimes - time;
            int  totalTime = GetNeedUpgradeTime(item.id, item.level) * 60 * 60;

            string timerKey = "UpdateGuildBuild" + item.id;


            TimerManager.Destroy(timerKey);
            TimerManager.AddTimerRepeat(timerKey, 1, delegate(object[] obj)
            {
                if (leftTime <= 0)
                {
                    leftTime = 0;
                    TimerManager.Destroy(timerKey);
                    timeLabel.text = "";
                    slider.value   = 1;
                }
                else
                {
                    leftTime--;
                    int sildertime = totalTime - GameConvert.IntConvert(leftTime);
                    slider.value   = (float)sildertime / (float)totalTime;
                    timeLabel.text = UtilTools.formatDuring(leftTime);
                }
            });

            if (!mTimerKeyList.Contains(timerKey))
            {
                mTimerKeyList.Add(timerKey);
            }
        }
        if (mTransBuildDict.ContainsKey(child))
        {
            mTransBuildDict[child] = item;
        }
        else
        {
            mTransBuildDict.Add(child, item);
        }
    }
Exemplo n.º 17
0
 void SetPanelType()
 {
     m_Panel.notice.gameObject.SetActive(true);
     m_Panel.noticeText.text = "通知通知!~~!@##通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!通知!!";
     TimerManager.AddTimerRepeat("notice", 0, UpdateNotice);
 }
Exemplo n.º 18
0
 void Start()
 {
     TimerManager.AddTimerRepeat("jumpText", 0.3f, AddJumpList);
 }