示例#1
0
        private static bool CheckColor(GameHexagon hex, OpType op)
        {
            if (op == OpType.Pass)
            {
                return(false);
            }
            else if (op == OpType.Both)
            {
                return(true);
            }
            else
            {
                if (hex.OpType != op)
                {
                    CmdResponse.Alert(null, string.Format("<color=yellow>必须砸{0}颜色块!</color>", UIConstants.s_ops[op]));
                }

                return(hex.OpType == op);
            }
        }
示例#2
0
        public void StartHammer(int x, int y)
        {
            if (m_curTargetHex != null)
            {
                return;
            }

            GameHexagon theHex = HexManager.GetHexagon(x, y) as GameHexagon;

            // 在强制模式下,必须砸同一个格子
            if (GameConf.ForceKill && m_singleTargetHex != null && m_singleTargetHex != theHex)
            {
                CmdResponse.Alert(CurrentPlayer, "必须砸同一个格子!");
                return;
            }

            if (theHex != null && theHex != m_mainHex && CheckColor(theHex, OpType))
            {
                m_curTargetHex    = theHex;
                m_singleTargetHex = theHex;

                // 重置力度
            }
        }