Esempio n. 1
0
        public void AddAbility <T>(T a) where T : BaseAbility
        {
            ProcedureMain main = GameEntry.Procedure.GetProcedure <ProcedureMain>() as ProcedureMain;

            if (main == null)
            {
                return;
            }
            string aName = main.CurrentGame.GetAbilityName(typeof(T));

            if (aName == null)
            {
                Debug.LogError("找不到能力类" + typeof(T).Name);
                return;
            }
            abilities.Add(aName, a);
        }
Esempio n. 2
0
        protected override void OnInit(object userData)
        {
            base.OnInit(userData);
            main = userData as ProcedureMain;
            GUILink link = GetComponent <GUILink>();

            TextPsd  = link.Get <Text>("TextPsd");
            KeyBoard = link.AddComponent <SubCreatRoomKeyBoard>("PanelSetPsd");
            GameEntry.UI.SetUIFormInstancePriority(this.gameObject.GetComponent <UIForm>(), 121);
            link.SetEvent("Quit", UIEventType.Click, OnClickExit);
            link.SetEvent("BtnCreate", UIEventType.Click, OnCreateRoom);
            link.SetEvent("ButtonSetPsd", UIEventType.Click, OnSetPsd);

            for (int i = 0; i < ToggleScore.Length; i++)
            {
                ToggleScore[i] = link.Get <Toggle>("ToggleScore" + (i + 1));
            }
            for (int i = 0; i < ToggleMaxScore.Length; i++)
            {
                ToggleMaxScore[i] = link.Get <Toggle>("ToggleMaxScore" + (i + 1));
            }
            for (int i = 0; i < ToggleType.Length; i++)
            {
                ToggleType[i] = link.Get <Toggle>("ToggleType" + (i + 1));
            }
            for (int i = 0; i < TogglePlayer.Length; i++)
            {
                TogglePlayer[i] = link.Get <Toggle>("TogglePlayer" + (i + 1));
            }
            for (int i = 0; i < ToggleTime.Length; i++)
            {
                ToggleTime[i] = link.Get <Toggle>("ToggleTime" + (i + 1));
            }
            for (int i = 0; i < ToggleFeature.Length; i++)
            {
                ToggleFeature[i] = link.Get <Toggle>("ToggleFeature" + (i + 1));
            }
        }
Esempio n. 3
0
        public T GetAbility <T>() where T : BaseAbility
        {
            if (GameEntry.Procedure == null)
            {
                return(null);
            }
            ProcedureMain main = GameEntry.Procedure.GetProcedure <ProcedureMain>() as ProcedureMain;

            if (main == null)
            {
                return(null);
            }
            string aName = main.CurrentGame.GetAbilityName(typeof(T));

            if (aName == null)
            {
                return(null);
            }
            if (abilities.ContainsKey(aName))
            {
                return((T)abilities[aName]);
            }
            return(null);
        }
Esempio n. 4
0
        protected override void OnInit(object userData)
        {
            base.OnInit(userData);
            main = userData as ProcedureMain;
            GUILink link = GetComponent <GUILink>();

            for (int i = 0; i < PlayerMax; i++)
            {
                playerWigets.Add(link.AddComponent <PlayerHeadInfo>("playerHead" + i));
            }

            selectScoreUI  = link.AddComponent <PanelSelectScore>("PanelSelectScore");
            BtnSeat        = link.Get <Button>("BtnSeat");
            BtnStartGame   = link.Get <Button>("BtnStartGame");
            BtnBanker0     = link.Get <Button>("BtnBanker0");
            BtnCancelReady = link.Get <Button>("BtnCancelReady");
            BtnLeaveSeat   = link.Get <Button>("BtnLeaveSeat");
            BetPanel       = link.Get("BetPanel");
            SliderBet      = link.Get <Slider>("SliderBet");
            TextBet        = link.Get <Text>("TextBet");
            TextTime       = link.Get <Text>("TextTime");
            TextRoomId     = link.Get <Text>("TextRoomId");
            TextMinBet0    = link.Get <Text>("TextMinBet0");
            TextMinBet1    = link.Get <Text>("TextMinBet1");
            TextMinBet2    = link.Get <Text>("TextMinBet2");
            TextMinBet3    = link.Get <Text>("TextMinBet3");
            timerTxt       = link.Get <Text>("timerTxt");
            BL_lose        = link.Get("BL_lose");
            BL_win         = link.Get("BL_win");
            BL_tie         = link.Get("BL_tie");

            timerPanel  = link.Get("timer");
            timerImg    = link.Get <Image>("timerImg");
            PanelSettle = link.Get("PanelSettle");

            PanelChat   = link.Get("PanelChat").transform;
            TalkPopup   = link.Get("TalkPopup").transform;
            TalkPopText = link.Get <Text>("TalkPopText");



            link.SetEvent("Quit", UIEventType.Click, OnClickExit);
            link.SetEvent("BtnSeat", UIEventType.Click, OnClickSeat);
            link.SetEvent("BtnStartGame", UIEventType.Click, OnClickStartGame);
            link.SetEvent("BtnCancelReady", UIEventType.Click, OnClickCancelReady);
            link.SetEvent("BtnLeaveSeat", UIEventType.Click, OnClickLeaveSeat);
            link.SetEvent("BtnBanker0", UIEventType.Click, OnClickBid);
            link.SetEvent("BtnBet", UIEventType.Click, OnClickBet);
            link.SetEvent("BtnMinBet0", UIEventType.Click, OnClickMinBet0);
            link.SetEvent("BtnMinBet1", UIEventType.Click, OnClickMinBet1);
            link.SetEvent("BtnMinBet2", UIEventType.Click, OnClickMinBet2);
            link.SetEvent("BtnMinBet3", UIEventType.Click, OnClickMinBet3);
            link.SetEvent("BtnSettleOK", UIEventType.Click, OnClickSettleOK);
            //GM按钮,模拟服务器回消息回调
            link.SetEvent("GMNotifyStart", UIEventType.Click, GMNotifyStart);
            link.SetEvent("GMAddPlayer", UIEventType.Click, GMAddPlayer);
            link.SetEvent("GMNotifyWin", UIEventType.Click, GMNotifyWin);
            link.SetEvent("GMNotifyEnd", UIEventType.Click, GMNotifyEnd);
            link.SetEvent("GMNotifyBetRet", UIEventType.Click, GMNotifyBetRet);
            link.SetEvent("GMNotifyBet", UIEventType.Click, GMNotifyBet);
            link.SetEvent("GMNotifyBidRet", UIEventType.Click, GMNotifyBidRet);
            link.SetEvent("GMNotifyBid", UIEventType.Click, GMNotifyBid);
            link.SetEvent("GMNotifyPrivate", UIEventType.Click, GMNotifyPrivate);
            link.SetEvent("GMNotifyDraw", UIEventType.Click, GMNotifyDraw);
            link.SetEvent("GMNotifyJoin", UIEventType.Click, GMNotifyJoin);
            //聊天
            for (int i = 1; i <= 5; i++)
            {
                string talkUIName  = "Talk" + i;
                string talkContent = link.Get <Text>(talkUIName).text;
                link.SetEvent(talkUIName, UIEventType.Click, _ => OnClickTalk(talkContent));
            }



            List <Vector3> tempUITrans = new List <Vector3>();
            var            cam         = Camera.main;

            foreach (var w in playerWigets)
            {
                tempUITrans.Add(cam.ScreenToWorldPoint(w.cardPos.position));
            }
            CardManager.Instance.InitCardPos(tempUITrans);
        }