internal void AddNewBeHit(bool bDouble, string dmgText, float x, float y, ENUM_DAMAGE_TYPE dmgType, ENUM_DMG_MOVE_TYPE moveType)
    {
        if (allBoards.Count + freeBoards.Count > MaxHitCount)
        {
            return;
        }

        BeHitBoard pBeHit = GetFreeBoard();

        if (pBeHit != null)
        {
            STRUCT_BEHIT_DATA PreDefine = DefineBehits[(int)moveType];
            pBeHit.m_bDoubleHit    = bDouble;
            pBeHit.m_ColorType     = PreDefine.m_ColorType;
            pBeHit.m_BackColorType = PreDefine.m_BackColorType;
            //STRUCT_BEHIT_DATA* pItem	= &PreDefine;
            pBeHit.m_nXSpeed        = UnityEngine.Random.Range(-PreDefine.m_nXSpeed, PreDefine.m_nXSpeed);
            pBeHit.m_nYSpeed        = PreDefine.m_nYSpeed + UnityEngine.Random.Range(3, 10); // Y象素级移动速度
            pBeHit.m_nXAcceleration = PreDefine.m_nXAcceleration;
            pBeHit.m_nYAcceleration = PreDefine.m_nYAcceleration;                            // 两个方向的加速度
            pBeHit.m_nMaxLife       = PreDefine.m_nMaxLife;
            pBeHit.m_bAlphaMode     = PreDefine.m_bAlphaMode;
            pBeHit.m_nMoveMode      = PreDefine.m_nMoveMode;
            pBeHit.m_nUseTempPos    = PreDefine.m_nUseTempPos;
            pBeHit.m_nStartX        = x + PreDefine.m_fXPos;
            pBeHit.m_nStartY        = y + PreDefine.m_fYPos;
            pBeHit.m_nMoveType      = moveType;

            if (moveType == ENUM_DMG_MOVE_TYPE.MOVE_SCENE_NAME && dmgType == ENUM_DAMAGE_TYPE.DAMAGE_INVALID)
            {
                pBeHit.ResetData(dmgText);
            }
            else
            {
                pBeHit.ResetData(moveType, dmgType, dmgText);
            }

            pBeHit.Update();

            allBoards.Add(pBeHit);

            pBeHit.InUse = true;
        }
    }
    void InitAllMoveData()
    {
        //初始化对应ENUM_DMG_MOVE_TYPE
        STRUCT_BEHIT_DATA temp = DefineBehits[(int)ENUM_DMG_MOVE_TYPE.MOVE_STATUS] = new STRUCT_BEHIT_DATA();

        //状态的移动参数
        temp.m_nMaxLife  = 3000;
        temp.m_nYSpeed   = 100;
        temp.m_ColorType = new Color(1, 1, 1, 1);

        //别人的伤害
        temp             = DefineBehits[(int)ENUM_DMG_MOVE_TYPE.MOVE_DAMAGE_OTHER] = new STRUCT_BEHIT_DATA();
        temp.m_nXSpeed   = 80;
        temp.m_nYSpeed   = 80;
        temp.m_nMaxLife  = 3000;
        temp.m_ColorType = new Color(1, 1, 1, 1);
        //自己的伤害
        temp = DefineBehits[(int)ENUM_DMG_MOVE_TYPE.MOVE_DAMAGE_ME] = new STRUCT_BEHIT_DATA();
        //temp.m_nXSpeed = 30;
        temp.m_nYSpeed        = 60;
        temp.m_nMaxLife       = 3000;
        temp.m_nYAcceleration = 30;
        temp.m_ColorType      = new Color(1, 0, 0, 1);
        //治疗HP
        temp             = DefineBehits[(int)ENUM_DMG_MOVE_TYPE.MOVE_HEAL_HP] = new STRUCT_BEHIT_DATA();
        temp.m_nXSpeed   = 40;
        temp.m_fYPos     = 40;
        temp.m_nMaxLife  = 3000;
        temp.m_ColorType = new Color(1, 1, 0, 1);
        //治疗MP
        temp             = DefineBehits[(int)ENUM_DMG_MOVE_TYPE.MOVE_HEAL_MP] = new STRUCT_BEHIT_DATA();
        temp.m_nXSpeed   = 40;
        temp.m_nMaxLife  = 3000;
        temp.m_ColorType = new Color(1, 1, 0, 1);
        //显示场景名称
        temp             = DefineBehits[(int)ENUM_DMG_MOVE_TYPE.MOVE_SCENE_NAME] = new STRUCT_BEHIT_DATA();
        temp.m_nMaxLife  = 3000;
        temp.m_nYSpeed   = 30;
        temp.m_ColorType = new Color(1, 1, 0, 1);
    }