Beispiel #1
0
        /// <summary>
        /// 投票解散
        /// </summary>
        private IEnumerator <float> RejionHandup(ISFSObject data)
        {
            var db = GameCenter.DataCenter;

            if (data.ContainsKey("hupstart"))
            {
                yield return(0.3f);

                int handUpTime = (int)db.Config.TimeHandup;
                int time       = handUpTime - (int)(data.TryGetLong("hupnow") - data.TryGetLong("hupstart"));
                if (time > handUpTime)
                {
                    time = handUpTime;
                }
                string[] strArr = data.TryGetString("hup").Split(',');
                for (int i = 0; i < strArr.Length; i++)
                {
                    for (int j = 0; j < db.MaxPlayerCount; j++)
                    {
                        if (db.Players[j].Id == int.Parse(strArr[i]))
                        {
                            HandupEventArgs args = new HandupEventArgs()
                            {
                                Chair      = j,
                                Time       = time,
                                HandupType = i == 0 ? DismissFeedBack.ApplyFor : DismissFeedBack.Agree
                            };
                            GameCenter.EventHandle.Dispatch((int)UIEventProtocol.OnEventHandUp, args);
                        }
                    }
                }
            }
        }
Beispiel #2
0
        //投票事件
        private void OnEventHandUp(EvtHandlerArgs args)
        {
            HandupEventArgs eventArgs = args as HandupEventArgs;
            PanelHandup     panel     = GameCenter.Hud.GetPanel <PanelHandup>();

            if (null != panel)
            {
                if (eventArgs.HandupType == DismissFeedBack.ApplyFor)
                {
                    panel.Open(eventArgs);
                }
                else
                {
                    panel.SetHandupState(eventArgs);
                }
            }
        }