Beispiel #1
0
        public string GetSpriteName(MJType type, int playerId, MJ_STAGE stage, bool bBack)
        {
            SEAT_DIR dir        = GameGD.GetSeatDir(playerId);
            string   spriteName = GetSpriteName(type, dir, stage, bBack);

            return(spriteName);
        }
Beispiel #2
0
        //获取相对自己的方位的玩家东南西北方
        public static DNXB_DIR GetDNXBDir(SEAT_DIR dir)
        {
            int      temp = (int)(dir) + (int)(DataCenter.Instance.gamedata.SelfDNXBDir);
            DNXB_DIR dnxb = (DNXB_DIR)(temp % 4);

            return(dnxb);
        }
Beispiel #3
0
        public void ShowChuPai(SEAT_DIR dir, MJType type)
        {
            sprite_ChuPai.gameObject.SetActive(true);
            sprite_ChuPai.spriteName = type.ToString() + "_MINE";
            Vector3 pos = Vector3.zero;

            switch (dir)
            {
            case SEAT_DIR.DIR_LEFT:
                pos = new Vector3(-370, 0, 0);
                break;

            case SEAT_DIR.DIR_BOTTOM:
                pos = new Vector3(0, -150, 0);
                break;

            case SEAT_DIR.DIR_RIGHT:
                pos = new Vector3(370, 0, 0);
                break;

            case SEAT_DIR.DIR_TOP:
                pos = new Vector3(0, 230, 0);
                break;

            default:
                break;
            }
            sprite_ChuPai.transform.localPosition = pos;

            CancelInvoke("HideChuPai");
            Invoke("HideChuPai", 0.7f);
        }
Beispiel #4
0
        public SEAT_DIR dir = SEAT_DIR.DIR_NULL;//吃碰框哪个方位的

        public void Init(CPG_TYPE type, List <MJType> data, SEAT_DIR dir)
        {
            MJList    = new List <MJType>();
            this.type = type;
            MJList    = data;
            this.dir  = dir;
            Debuger.Log("吃碰杠:" + type.ToString() + "  dir: " + dir.ToString());
        }
Beispiel #5
0
        //其他玩家相对自己的方位
        public static SEAT_DIR GetSeatDir(DNXB_DIR dnxbDir)
        {
            int temp = (int)(dnxbDir) - (int)(DataCenter.Instance.gamedata.SelfDNXBDir);

            if (temp < 0)
            {
                temp += 4;
            }
            SEAT_DIR dir = (SEAT_DIR)(temp % 4);

            return(dir);
        }
Beispiel #6
0
 //根据相对自己的方位获取玩家ID
 public static int GetPlayerID(SEAT_DIR dir)
 {
     for (int i = 0; i < 4; i++)
     {
         if (GetSeatDir(i) == dir)
         {
             return(i);
         }
     }
     Debuger.LogError("GameGD GetPlayerID Error ! " + dir);
     return(-1);
 }
Beispiel #7
0
        //其他玩家相对指定玩家的方位
        public static SEAT_DIR GetSeatDir(DNXB_DIR dnxbDir, DNXB_DIR selfDir)
        {
            int temp = (int)(dnxbDir) - (int)(selfDir);

            if (temp < 0)
            {
                temp += 4;
            }
            SEAT_DIR dir = (SEAT_DIR)(temp % 4);

            return(dir);
        }
Beispiel #8
0
        private void SetPrepare(int playerId, bool bPrepare)
        {
            PlayerInfo player = DataCenter.Instance.players[playerId].playerInfo;
            SEAT_DIR   dir    = GameGD.GetSeatDir(player.DNXBDir);
            GameObject go     = null;

            switch (dir)
            {
            case SEAT_DIR.DIR_BOTTOM:
                go = GameUtility.FindDeepChild(gameObject, "Player_B").gameObject;
                break;

            case SEAT_DIR.DIR_RIGHT:
                go = GameUtility.FindDeepChild(gameObject, "Player_R").gameObject;
                break;

            case SEAT_DIR.DIR_TOP:
                go = GameUtility.FindDeepChild(gameObject, "Player_T").gameObject;
                break;

            case SEAT_DIR.DIR_LEFT:
                go = GameUtility.FindDeepChild(gameObject, "Player_L").gameObject;
                break;

            case SEAT_DIR.DIR_NULL:
                break;

            default:
                break;
            }

            if (go != null)
            {
                UISprite headIconSprite = GameUtility.FindDeepChild(go, "Head").GetComponent <UISprite>();
                headIconSprite.atlas = null;
                headIconSprite.atlas = ResourcesManager.GetAtlas(Tags.MJ_DynamicAtlas);
                if (bPrepare)
                {
                    headIconSprite.spriteName = player.WXTX_Icon_SpriteName;
                }
                else
                {
                    headIconSprite.spriteName = "";
                }

                UISprite prepareOKSprite = GameUtility.FindDeepChild(go, "PrepareOK").GetComponent <UISprite>();
                prepareOKSprite.gameObject.SetActive(bPrepare);

                UILabel nameLabel = GameUtility.FindDeepChild(go, "Name").GetComponent <UILabel>();
                if (bPrepare)
                {
                    nameLabel.text = player.WXName;
                }
                else
                {
                    nameLabel.text = "";
                }

                UILabel coinLabel = GameUtility.FindDeepChild(go, "Coin").GetComponent <UILabel>();
                if (bPrepare)
                {
                    coinLabel.text = "" + player.coin;
                }
                else
                {
                    coinLabel.text = "";
                }
            }
        }
Beispiel #9
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="type">麻将类型</param>
        /// <param name="seatDir">方位</param>
        /// <param name="bIN">是否为手中的麻将</param>
        /// <param name="bBack">背面</param>
        /// <returns></returns>
        private string GetSpriteName(MJType type, SEAT_DIR seatDir, MJ_STAGE stage, bool bBack)
        {
            string spriteName = "";

            switch (seatDir)
            {
            case SEAT_DIR.DIR_LEFT:
            {
                if (stage == MJ_STAGE.IN && !DataCenter.Instance.hFdata.IsHuiFanging)
                {
                    spriteName = Tags.MJ_SpriteName_L;
                }
                else
                {
                    spriteName = type.ToString() + "_L";
                }

                if (bBack)
                {
                    spriteName = Tags.MJ_SpriteName_Back_L;
                }
            }
            break;

            case SEAT_DIR.DIR_BOTTOM:
            {
                if (stage == MJ_STAGE.IN)
                {
                    spriteName = type.ToString() + "_MINE";
                }
                else
                {
                    spriteName = type.ToString() + "_B";
                }

                if (bBack)
                {
                    spriteName = Tags.MJ_SpriteName_Back_B;
                }
            }
            break;

            case SEAT_DIR.DIR_RIGHT:
            {
                if (stage == MJ_STAGE.IN && !DataCenter.Instance.hFdata.IsHuiFanging)
                {
                    spriteName = Tags.MJ_SpriteName_R;
                }
                else
                {
                    spriteName = type.ToString() + "_R";
                }
                if (bBack)
                {
                    spriteName = Tags.MJ_SpriteName_Back_R;
                }
            }
            break;

            case SEAT_DIR.DIR_TOP:
            {
                if (stage == MJ_STAGE.IN && !DataCenter.Instance.hFdata.IsHuiFanging)
                {
                    spriteName = Tags.MJ_SpriteName_T;
                }
                else
                {
                    spriteName = type.ToString() + "_B";
                }
                if (bBack)
                {
                    spriteName = Tags.MJ_SpriteName_Back_T;
                }
            }
            break;

            default:
                break;
            }
            return(spriteName);
        }
Beispiel #10
0
        public void GetSpriteWH(ref int w, ref int h, int playerId, MJ_STAGE stage)
        {
            SEAT_DIR dir = GameGD.GetSeatDir(playerId);

            switch (dir)
            {
            case SEAT_DIR.DIR_LEFT:
            {
                if (stage == MJ_STAGE.IN)
                {
                    w = GameGD.MJ_LEFT_IN_W; h = GameGD.MJ_LEFT_IN_H;
                }
                else if (stage == MJ_STAGE.OUT)
                {
                    w = GameGD.MJ_LEFT_OUT_W; h = GameGD.MJ_LEFT_OUT_H;
                }
                else if (stage == MJ_STAGE.CPG)
                {
                    w = GameGD.MJ_LEFT_CPG_W; h = GameGD.MJ_LEFT_CPG_H;
                }
                if (DataCenter.Instance.hFdata.IsHuiFanging)
                {
                    w = GameGD.MJ_LEFT_CPG_W; h = GameGD.MJ_LEFT_CPG_H;
                }
            }
            break;

            case SEAT_DIR.DIR_BOTTOM:
            {
                if (stage == MJ_STAGE.IN)
                {
                    w = GameGD.MJ_BOTTOM_IN_W; h = GameGD.MJ_BOTTOM_IN_H;
                }
                else if (stage == MJ_STAGE.OUT)
                {
                    w = GameGD.MJ_BOTTOM_OUT_W; h = GameGD.MJ_BOTTOM_OUT_H;
                }
                else if (stage == MJ_STAGE.CPG)
                {
                    w = GameGD.MJ_BOTTOM_CPG_W; h = GameGD.MJ_BOTTOM_CPG_H;
                }
                else if (stage == MJ_STAGE.CPGResult)
                {
                    w = GameGD.MJ_BOTTOM_CPG_RESULT_W; h = GameGD.MJ_BOTTOM_CPG_RESULT_H;
                }
            }
            break;

            case SEAT_DIR.DIR_RIGHT:
            {
                if (stage == MJ_STAGE.IN)
                {
                    w = GameGD.MJ_RIGHT_IN_W; h = GameGD.MJ_RIGHT_IN_H;
                }
                else if (stage == MJ_STAGE.OUT)
                {
                    w = GameGD.MJ_RIGHT_OUT_W; h = GameGD.MJ_RIGHT_OUT_H;
                }
                else if (stage == MJ_STAGE.CPG)
                {
                    w = GameGD.MJ_RIGHT_CPG_W; h = GameGD.MJ_RIGHT_CPG_H;
                }
                if (DataCenter.Instance.hFdata.IsHuiFanging)
                {
                    w = GameGD.MJ_RIGHT_CPG_W; h = GameGD.MJ_RIGHT_CPG_H;
                }
            }
            break;

            case SEAT_DIR.DIR_TOP:
            {
                if (stage == MJ_STAGE.IN)
                {
                    w = GameGD.MJ_TOP_IN_W; h = GameGD.MJ_TOP_IN_H;
                }
                else if (stage == MJ_STAGE.OUT)
                {
                    w = GameGD.MJ_TOP_OUT_W; h = GameGD.MJ_TOP_OUT_H;
                }
                else if (stage == MJ_STAGE.CPG)
                {
                    w = GameGD.MJ_TOP_CPG_W; h = GameGD.MJ_TOP_CPG_H;
                }
                if (DataCenter.Instance.hFdata.IsHuiFanging)
                {
                    w = GameGD.MJ_TOP_CPG_W; h = GameGD.MJ_TOP_CPG_H;
                }
            }
            break;

            default:
                break;
            }
        }