예제 #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);
        }
예제 #2
0
        private MJ AddMJ(int playerId, MJType type, MJ_STAGE stage, bool bBack = false)
        {
            MJ mj = _MJ_Mgr.SpawnMJ(transform, type, playerId, stage, bBack, null);

            mj.transform.parent = transform;

            return(mj);
        }
예제 #3
0
파일: Player_中鱼.cs 프로젝트: dydlegd/DT
        private MJ AddMJ(int playerId, MJType type, MJ_STAGE stage, bool bBack = false)
        {
            MJ mj = _MJ_Mgr.SpawnMJ(transform, type, playerId, stage, bBack, null);

            mj.Depth            = 2000;
            mj.transform.parent = transform;
            MJList.Add(mj);
            //NGUITools.SetDirty(mj);
            return(mj);
        }
예제 #4
0
        public MJ SpawnMJ(Transform parent, MJType type, int playerId, MJ_STAGE stage, bool bBack, Panel_Player playerPanel)
        {
            Transform ts = pool.Spawn(prefab, pool.transform);

            ts.transform.localScale = Vector3.one;
            MJ mj = ts.GetComponent <MJ>();

            mj.Init(type, stage, playerId, playerPanel);
            int w = 0, h = 0;

            GetSpriteWH(ref w, ref h, playerId, stage);
            mj.InitSprite(GetSpriteName(type, playerId, stage, bBack), w, h);
            return(mj);
        }
예제 #5
0
파일: MJ.cs 프로젝트: dydlegd/DT
        public void Init(MJType type, MJ_STAGE stage, int playerId, Panel_Player playerPanel)
        {
            mTrans = this.transform;
            SetType(type);
            this.stage       = stage;
            PlayerID         = playerId;
            Depth            = 0;
            this.playerPanel = playerPanel;
            sprite.color     = Color.white;
            GetComponent <BoxCollider>().enabled = false;
            if ((stage == MJ_STAGE.IN || stage == MJ_STAGE.CPGResult) && !DataCenter.Instance.hFdata.IsHuiFanging)
            {
                GetComponent <BoxCollider>().enabled = true;
            }
            //ShowArrow(false);
            MJ_Drag md = GetComponent <MJ_Drag>();

            if (md)
            {
                md.enabled = false;
            }
        }
예제 #6
0
파일: Panel_Player.cs 프로젝트: dydlegd/DT
        /// <summary>
        /// 添加麻将
        /// </summary>
        /// <param name="type">麻将类型</param>
        /// <param name="stage"> 是否是手中的麻将 </param>
        /// <returns></returns>
        protected virtual MJ AddMJ(MJType type, MJ_STAGE stage, bool bBack = false)
        {
            MJ mj = _MJMgr.SpawnMJ(transform, type, data.playerId, stage, bBack, this);

            switch (stage)
            {
            case MJ_STAGE.IN:
                MJ_IN_List.Add(mj);
                break;

            case MJ_STAGE.OUT:
                MJ_OUT_List.Add(mj);
                break;

            case MJ_STAGE.CPG:
                MJ_CPG_List.Add(mj);
                break;

            default:
                break;
            }
            return(mj);
        }
예제 #7
0
        protected override MJ AddMJ(MJType type, MJ_STAGE stage, bool bBack = false)
        {
            MJ  mj       = base.AddMJ(type, stage, bBack);
            int playerId = DataCenter.Instance.gamedata.PlayerID;

            if (stage == MJ_STAGE.IN &&
                ControlCenter.Instance.IsChuPaing
                )
            {
                bool bCanSelect = true;
                for (int i = 0; i < DataCenter.Instance.players[playerId].cannotChuMJList.Count; i++)
                {
                    if (type == DataCenter.Instance.players[playerId].cannotChuMJList[i])
                    {
                        bCanSelect = false;
                        break;
                    }
                }
                if (bCanSelect)
                {
                    if (!DataCenter.Instance.hFdata.IsHuiFanging)
                    {
                        MJ_Drag md = mj.GetComponent <MJ_Drag>();
                        if (md)
                        {
                            md.enabled = true;
                        }
                    }
                }
                else
                {
                    mj.SetColor(new Color(0.3f, 0.3f, 0.3f));
                }
            }
            return(mj);
        }
예제 #8
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);
        }
예제 #9
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;
            }
        }