public override void OnBroadcastEvent(int eventID, int targetObjID, object args = null)
    {
        if (!isActive)
        {
            return;
        }

        if (eventID == (int)Const_Util.BATTLE_EVENT.CHG_DIR)
        {
            unitHangNode.localPosition = hangNodeOriginPos;
            if (colliderCD > Const_Util.FLT_EPSILON)
            {
                return;
            }
            if (moveOprEvent != null && !moveOprEvent.IsFinish())
            {
                moveOprEvent.Destroy();
                moveOprEvent = null;
            }
            moveOprEvent = new SeqEvent();
            MoveToEvent moveTo = new MoveToEvent(cobj.GetRenderObjTr(), new Vector3((float)args, cobj.GetRenderObjTr().localPosition.y, 0), 0.1f);
            moveOprEvent.AddEvent(moveTo);
            moveOprEvent.Begin();
        }
        else if (eventID == (int)Const_Util.BATTLE_EVENT.MOVE_SPEED_RATE)
        {
            if (!IsHero())
            {
                SetMoveSpeed((float)args * baseMoveSpeed);
            }
        }
        else if (eventID == (int)Const_Util.BATTLE_EVENT.JUMP)
        {
            if (colliderCD > Const_Util.FLT_EPSILON)
            {
                return;
            }
            SendMsg((int)Const_Util.UNIT_MSG.START_JUMP, null);
        }
    }