private void OnPress(bool bPressed) { if (isMoving || !GameManager.IsPlaying() || !TileSystem.CanClickTile()) { if (clickedTile == null) { return; } else { bPressed = false; } } isPressing = bPressed; if (bPressed) { clickedTile = this; clickedPos = new Vector3(UICamera.lastTouchPosition.x, UICamera.lastTouchPosition.y, 0f); clickedPos *= ScreenSizeGetter.width / (float)Screen.width; clickedPos -= new Vector3(ScreenSizeGetter.halfWidth, ScreenSizeGetter.halfHeight); clickedPos -= mTrans.localPosition; //Vector3 fingerDistance = Vector3.zero; //switch (DataManager.GetInstance().touchOption) //{ // case 0: // fingerDistance.y = 100f; // break; // case 1: // fingerDistance.y = 300f; // break; // default: // case 2: // fingerDistance.y = 500f; // break; //} //clickedPos += fingerDistance; clickedPos += Define.fingerDistance; body.localPosition += clickedPos; bGetBigger = true; bGetSmaller = false; } else { clickedTile = null; if (putPuzzleCallback != null) { putPuzzleCallback(this); } } }
private IEnumerator CheckTime() { while (bCheckingTime) { yield return(null); //일시정지 중, 또는 타일이 터지거나 스킬 사용 중에는 시간이 흐르지 않는다. // if (TileSystem.CanClickTile() && !bPause && freezingTime == 0f) { remainTime -= Time.deltaTime; if (remainTime <= 0f) { remainTime = 0f; bCheckingTime = false; GameManager.GameOver(true); } if (gameTimeUpdateCallback != null) { gameTimeUpdateCallback(remainTime); } } if (bCheckingTime) { if (remainTime <= Define.warningTime && !warningMode) { warningMode = true; scoreAssistance.SetWarningBonus(); SoundManager.GetInstance().FadeInAndPlayBGM(Define.SoundType.TickTock); SoundManager.GetInstance().FadeInAndPlayBGM(Define.SoundType.TickTockBack); SoundManager.GetInstance().FadeOutAndStopBGM(Define.SoundType.GameBGM); if (warningUICallback != null) { warningUICallback(warningMode); } } } } }
private void OnDrag(Vector2 delta) { if (isMoving || !GameManager.IsPlaying() || !TileSystem.CanClickTile()) { if (clickedTile == null) { return; } else if (clickedTile != this) { return; } } if (clickedTile != this) { return; } mTrans.localPosition += new Vector3(delta.x * ScreenSizeGetter.invRate, delta.y * ScreenSizeGetter.invRate, 0f); }