Exemplo n.º 1
0
    /// <summary>
    /// クリックされた時の反応
    /// </summary>
    /// <param name="eventData"></param>
    public void OnPointerDown(PointerEventData eventData)
    {
        Debug.Log("ポインタエンター来てる");
        if (cube_state == CubeState.Confilm  || cube_state == CubeState.Goal)
        {
            //TODO:選択失敗みたいな音を鳴らす

            return;
        }
        //TODO:選択した音を鳴らす

        CubeNotice _notice = new CubeNotice()
        {
            x_index = x_adge_no,
            y_index = y_adge_no,
        };

        SelectNotice.OnNext(_notice);

        if (cube_state == CubeState.Normal)
        {
            cube_state = CubeState.Select;
        }
        else if (cube_state == CubeState.Select)
        {
            cube_state = CubeState.Normal;
        }

        change_material(cube_state);
    }
Exemplo n.º 2
0
    /// <summary>
    /// 選択状態
    /// </summary>
    /// <param name="_notice"></param>
    private void select_island_parts(CubeNotice _notice)
    {
        Debug.Log("通知状態がきたよ");
        StageIslandData _select = new StageIslandData()
        {
            x_index = _notice.x_index,
            y_index = _notice.y_index
        };

        if (null != now_end_select_data)
        {
            //変更点がある状態か?
            if (false == (_select.x_index > now_end_select_data.x_index ||
                          now_end_select_data.x_index > _select.x_index ||
                          _select.y_index > now_end_select_data.y_index ||
                          now_end_select_data.y_index > _select.y_index))
            {
                Debug.Log("差分がなかったため、追加できない。");
                return;
            }

            ///すでに存在していたので、失敗
            if (select_data.Exists((_serch) =>
                                   _serch.x_index == _select.x_index && _serch.y_index == _select.y_index))
            {
                Debug.Log("すでに存在しているので、失敗");
                var _remove_data = select_data.Find((_serch) =>
                                                    _serch.x_index == _select.x_index && _serch.y_index == _select.y_index);
                if (null != _remove_data)
                {
                    select_data.Remove(_remove_data);
                }

                return;
            }
        }

        SoundController.Instance.PlaySe(4);
        now_end_select_data = _select;

        select_data.Add(_select);
    }