Beispiel #1
0
    public void OnPointerUp()
    {
        pointerUp = Input.mousePosition;
        if (Vector3.Distance(pointerDown, pointerUp) < 30)
        {
            Debug.Log("无效操作");
            return;
        }
        // 保存数据
        lastStepModel.UpdateData(this.currentScore, PlayerPrefs.GetInt(Const.BestScore, 0), grids);
        b_last.interactable = true;

        MoveType mt = CaculateMoveType();

        Debug.Log("向" + mt + "移动");
        MoveNumber(mt);
        if (isNeedCreatNumber)
        {
            CreatNumbers();
        }
        ResetNumberStatus();
        isNeedCreatNumber = false;
        if (IsGameLose())
        { // 说明游戏结束
            GameLose();
        }
    }
Beispiel #2
0
    /// <summary>
    /// 鼠标抬起
    /// </summary>
    public void OnPointerUp()
    {
        pointerUpPos = Input.mousePosition;

        if (Vector3.Distance(pointerDownPos, pointerUpPos) < 20)
        {
            return;
        }

        lastStepModel.UpdateData(this.currentScore, PlayerPrefs.GetInt(Const.BestScore, 0), grids);
        btnLast.interactable = true;

        MoveType moveType = CaculateMoveType();

        MoveNumber(moveType);

        // 移动后产生新数字
        if (isNeedCreateNumber)
        {
            CreateNumber();
        }

        //移动完成后 把所有数字恢复成 可合并状态
        ResetNumberStatus();
        isNeedCreateNumber = false;

        // 判断游戏是否结束
        if (IsGameLose())
        {
            GameLose();
        }
    }