コード例 #1
0
    /**
     * ドラッグが実行中のランチャーメニューの処理
     * @brief ドラッグが実行中に実行 ランチャー実行前、実行中 それぞれの処理を実行
     * @param[in] processInDragPos ドラッグ中の座標
     */
    public void OnDragProcess(Vector2 processInDragPos)
    {
        m_launcherMenuState = checkLauncherMenuState();

        switch (m_launcherMenuState)
        {
        case launcherMenuState.BeforeCountDown:
            break;

        case launcherMenuState.CountDown:
            stopDelayedLauncherMenu(m_coroutine);
            break;

        case launcherMenuState.Executing:

            //今回のメニューの座標を計算しドラッグと起点からの距離 角度を求める
            Vector2 menuProcessInDragPos = new Vector2(processInDragPos.x * m_screenDiameter, processInDragPos.y * m_screenDiameter);
            float   processInDistance    = getDistance(m_menuBasePos, menuProcessInDragPos);
            double  setDegree            = getDegree(menuProcessInDragPos.x, menuProcessInDragPos.y, m_menuBasePos.x, m_menuBasePos.y);

            //メニューの処理
            menuProcess(processInDistance, setDegree, m_launcherMenuList);

            break;

        default:
            break;
        }
    }
コード例 #2
0
    /**
     * ランチャーメニューの状態を確認する
     * @brief launcherMenuStateを更新し返す
     * @returns launcherMenuStateの状態
     */
    private launcherMenuState checkLauncherMenuState()
    {
        launcherMenuState state = launcherMenuState.BeforeCountDown;

        //ランチャーの実行前
        if (m_isDisplaying == false)
        {
            // ランチャーの待機前
            if (m_isInWaiting == false)
            {
                state = launcherMenuState.BeforeCountDown;
            }

            // ランチャーの待機中
            if (m_isInWaiting == true)
            {
                state = launcherMenuState.CountDown;
            }
        }
        //ランチャーの実行中
        else
        {
            state = launcherMenuState.Executing;
        }

        return(state);
    }
コード例 #3
0
    /**
     * ドラックが開始時のランチャーメニューの処理
     * @brief  ドラックが開始したとき時に実行 ランチャー実行前、実行中 それぞれの処理を実行
     */
    public void OnBeginDragProcess()
    {
        m_launcherMenuState = checkLauncherMenuState();

        switch (m_launcherMenuState)
        {
        case launcherMenuState.BeforeCountDown:
            break;

        case launcherMenuState.CountDown:
            stopDelayedLauncherMenu(m_coroutine);
            break;

        case launcherMenuState.Executing:
            break;

        default:
            break;
        }
    }
コード例 #4
0
    /**
     * 画面を押した時のランチャーメニューの処理を実行
     * @brief 画面を押した時のランチャー実行前、実行中 それぞれで実行する処理
     * @param[in] basePointPos 画面を押した始めのスクリーン座標
     */
    public void OnPointerDownProcess(Vector2 basePointPos)
    {
        m_launcherMenuState = checkLauncherMenuState();

        switch (m_launcherMenuState)
        {
        case launcherMenuState.BeforeCountDown:

            m_screenBasePos = new Vector2(basePointPos.x, basePointPos.y);
            m_menuBasePos   = new Vector2(m_screenBasePos.x * m_screenDiameter, m_screenBasePos.y * m_screenDiameter);
            startDelayedLauncherMenu(m_menuStartWaitingTime);
            break;

        case launcherMenuState.CountDown:
            break;

        case launcherMenuState.Executing:
            break;

        default:
            break;
        }
    }