public IEnumerator ScaleInBlocks(Int32 n) { Int32 tick = 0; Single bigwidth = 0f; Single bigheight = 0f; for (Int32 i = 0; i < n; i++) { QuadMistCardUI block = this.RandomBlock(); Vector3 pos = block.transform.localPosition; Vector3 scale = block.transform.localScale; for (Int32 j = 0; j <= 8; j++) { tick = 10 - j; if (tick < 0) { tick = 0; } bigwidth = (Single)(tick * 4 / 3) * 0.01f; bigheight = (Single)(tick * 5 / 3) * 0.01f; block.transform.localScale = new Vector3((QuadMistCardUI.SIZE_W + bigwidth * 2f) / QuadMistCardUI.SIZE_W, (QuadMistCardUI.SIZE_H + bigheight * 2f) / QuadMistCardUI.SIZE_H, 1f); block.transform.localPosition = pos + new Vector3(-bigwidth, bigheight, 0f); yield return(base.StartCoroutine(Anim.Tick())); } block.transform.localPosition = pos; block.transform.localScale = scale; SoundEffect.Play(QuadMistSoundID.MINI_SE_WALL); } yield break; }
public QuadMistCardUI GetCardUI(QuadMistCard card) { QuadMistCardUI result = (QuadMistCardUI)null; this.hash.TryGetValue(card, out result); return(result); }
public void ApplyScaleToSelectedCard(Int32 cardIndex) { QuadMistCardUI quadMistCardUI = this.cardUIs[cardIndex]; if (this.Count == 5) { this.ScaleTo(quadMistCardUI.transform, Hand.PLAYER_SCALE_L, Hand.SCALE_SPEED); } }
private void OnListChanged2() { Int32 i = 0; while (i < (Int32)this.cardUIs.Length) { QuadMistCardUI quadMistCardUI = this.cardUIs[i]; switch (this.State) { case Hand.STATE.ENEMY_HIDE: quadMistCardUI.Flip = true; base.transform.localPosition = Hand.ENEMY_POSITION; quadMistCardUI.transform.localPosition = new Vector3(0f, -3.2f, 0f); break; case Hand.STATE.ENEMY_PLAY: quadMistCardUI.Flip = true; base.transform.localPosition = Hand.ENEMY_POSITION; quadMistCardUI.transform.localPosition = Hand.ENEMY_TILING * (Single)i; break; case Hand.STATE.ENEMY_POSTGAME: quadMistCardUI.Flip = false; base.transform.localPosition = Hand.ENEMY_POST_POSITION; quadMistCardUI.transform.localPosition = Hand.DEFAULT_TILING(this.Count) * (Single)i; break; case Hand.STATE.PLAYER_PREGAME: base.transform.localPosition = Hand.PLAYER_POSITION; quadMistCardUI.transform.localPosition = Hand.PLAYER_TILING_S * (Single)i; quadMistCardUI.transform.localScale = Hand.PLAYER_SCALE_S; break; case Hand.STATE.PLAYER_SELECT_BOARD: base.transform.localPosition = Hand.PLAYER_POSITION; if (this.Count == 5) { quadMistCardUI.transform.localPosition = Hand.PLAYER_TILING_S * (Single)i; quadMistCardUI.transform.localScale = Hand.PLAYER_SCALE_S; } else { quadMistCardUI.transform.localPosition = Hand.PLAYER_TILING_L * (Single)i; quadMistCardUI.transform.localScale = Vector3.one; } break; case Hand.STATE.PLAYER_POSTGAME: base.transform.localPosition = Hand.PLAYER_POST_POSITION; quadMistCardUI.transform.localScale = Vector3.one; quadMistCardUI.transform.localPosition = Hand.DEFAULT_TILING(this.Count) * (Single)i; break; } i++; } }
public void SetCardScaleBecauseOfUserCancellation() { if (this.Count == 5) { for (Int32 i = 0; i < 5; i++) { QuadMistCardUI quadMistCardUI = this.cardUIs[i]; this.ScaleTo(quadMistCardUI.transform, Hand.PLAYER_SCALE_S, Hand.SCALE_SPEED); } } }
public void UpdateShadowCard(Int32 select) { QuadMistCardUI quadMistCardUI = this.cardUIs[select]; this.shadowCard.Data = quadMistCardUI.Data; Vector3 position = quadMistCardUI.transform.position; Vector3 localScale = quadMistCardUI.transform.localScale; this.shadowCard.transform.position = new Vector3(position.x, position.y, position.z + 5f); this.shadowCard.transform.localScale = localScale; }
public QuadMistCardUI GetCardUI(QuadMistCard card) { QuadMistCardUI[] array = this.cardUIs; for (Int32 i = 0; i < (Int32)array.Length; i++) { QuadMistCardUI quadMistCardUI = array[i]; if (quadMistCardUI.Data == card) { return(quadMistCardUI); } } return((QuadMistCardUI)null); }
private void OnEnemyFakeSelectChanged(Int32 oldSelect, Int32 newSelect) { Single num = 0.12f; for (Int32 i = 0; i < (Int32)this.cardUIs.Length; i++) { QuadMistCardUI quadMistCardUI = this.cardUIs[i]; if (i == newSelect) { Vector3 position = quadMistCardUI.transform.position; position.x += num; quadMistCardUI.transform.position = position; this.enemyFakeOffsetList[i] = 0.12f; } else if (i == oldSelect) { Vector3 position2 = quadMistCardUI.transform.position; position2.x -= this.enemyFakeOffsetList[i]; quadMistCardUI.transform.position = position2; this.enemyFakeOffsetList[i] = 0f; } } }
public override void HandleTargetCardSelection(Board board, QuadMistCard origin, List <QuadMistCard> selectable, ref InputResult result) { board.ShowBoardCursor(); if (!this.blacken) { for (Int32 i = 0; i < (Int32)board.field.Length; i++) { QuadMistCardUI cardUI = board.GetCardUI(i); if (cardUI != (UnityEngine.Object)null && cardUI != board.GetCardUI(origin)) { cardUI.Black = true; } } this.blacken = true; } if (this.counter >= Anim.TickToTime(16) && !this.launched) { foreach (QuadMistCard card in selectable) { board.GetCardUI(card).Black = false; board.GetCardUI(card).Select = true; } this.launched = true; } if (this.launched) { this.prevBoardSelectX = this.boardSelectX; this.prevBoardSelectY = this.boardSelectY; board.cursor.gameObject.SetActive(true); if (UIManager.Input.GetKeyTrigger(Control.Up) && this.boardSelectY != 0) { this.delegateInputHandler.LastActiveInputHandler = InputDelegatorHandler.InputType.Keyboard; this.boardSelectY--; } if (UIManager.Input.GetKeyTrigger(Control.Down) && this.boardSelectY != 3) { this.delegateInputHandler.LastActiveInputHandler = InputDelegatorHandler.InputType.Keyboard; this.boardSelectY++; } if (UIManager.Input.GetKeyTrigger(Control.Left) && this.boardSelectX != 0) { this.delegateInputHandler.LastActiveInputHandler = InputDelegatorHandler.InputType.Keyboard; this.boardSelectX--; } if (UIManager.Input.GetKeyTrigger(Control.Right) && this.boardSelectX != 3) { this.delegateInputHandler.LastActiveInputHandler = InputDelegatorHandler.InputType.Keyboard; this.boardSelectX++; } if (this.prevBoardSelectX != this.boardSelectX || this.prevBoardSelectY != this.boardSelectY) { SoundEffect.Play(QuadMistSoundID.MINI_SE_CURSOL); board.PlaceCursor(this.boardSelectX, this.boardSelectY); Vector2 boardCursorPosition = new Vector2((Single)this.boardSelectX, (Single)this.boardSelectY); Single num = 0.429f; Single num2 = -0.525f; Single num3 = -1f; Single num4 = 0.73f; boardCursorPosition.x *= num; boardCursorPosition.y *= num2; boardCursorPosition.x += num3; boardCursorPosition.y += num4; board.SetBoardCursorPosition(boardCursorPosition); } if (UIManager.Input.GetKeyTrigger(Control.Confirm)) { this.delegateInputHandler.LastActiveInputHandler = InputDelegatorHandler.InputType.Keyboard; if (selectable.Contains(board[this.boardSelectX, this.boardSelectY])) { result.index = selectable.IndexOf(board[this.boardSelectX, this.boardSelectY]); result.Used(); SoundEffect.Play(QuadMistSoundID.MINI_SE_CARD_MOVE); } } if (result.IsValid()) { QuadMistCardUI[] field = board.field; for (Int32 j = 0; j < (Int32)field.Length; j++) { QuadMistCardUI quadMistCardUI = field[j]; quadMistCardUI.Black = false; quadMistCardUI.Select = false; } this.launched = false; this.blacken = false; this.counter = 0f; board.cursor.gameObject.SetActive(false); board.HideBoardCursor(); } } else { this.counter += Time.deltaTime; } }
private void OnSelectChanged(Int32 oldSelect, Int32 newSelect) { this.cursor.Active = false; this.cursor.Black = false; Int32 i = 0; while (i < (Int32)this.cardUIs.Length) { QuadMistCardUI quadMistCardUI = this.cardUIs[i]; quadMistCardUI.ResetEffect(); switch (this.State) { case Hand.STATE.PLAYER_SELECT_CARD: if (i == newSelect) { Boolean flag = this.cardAnimatingCount == 0; Boolean flag2 = this.lastSelectedCard != newSelect; if (flag || flag2) { this.UpdateShadowCard(newSelect); } if (this.Count == 5) { this.cursor.transform.position = quadMistCardUI.transform.position + Hand.CURSOR_OFFSET_S; } else { this.cursor.transform.position = quadMistCardUI.transform.position + Hand.CURSOR_OFFSET_L; } this.cursor.Active = true; if (oldSelect != newSelect) { this.UpdateCursorToShadowCard(); } this.lastSelectedCard = newSelect; } break; case Hand.STATE.PLAYER_SELECT_BOARD: if (i == newSelect) { this.cursor.Active = true; this.cursor.Black = true; quadMistCardUI.Black = false; this.CardCursor.SetNormalState(); if (this.Count == 5) { this.cursor.transform.position = quadMistCardUI.transform.position + Hand.CURSOR_OFFSET_S; } else { this.cursor.transform.position = quadMistCardUI.transform.position + Hand.CURSOR_OFFSET_L; } } else { quadMistCardUI.Black = true; this.CardCursor.SetBlackState(); } break; } i++; } }
private void OnStateChanged(Hand.STATE oldState, Hand.STATE newState) { for (Int32 i = 0; i < (Int32)this.cardUIs.Length; i++) { QuadMistCardUI quadMistCardUI = this.cardUIs[i]; switch (newState) { case Hand.STATE.ENEMY_HIDE: quadMistCardUI.Flip = true; base.transform.localPosition = Hand.ENEMY_POSITION; quadMistCardUI.transform.localPosition = new Vector3(0f, -3.2f, 0f); break; case Hand.STATE.ENEMY_SHOW: quadMistCardUI.Flip = true; base.transform.localPosition = Hand.ENEMY_POSITION; this.SlideToEnemyHand(quadMistCardUI.transform, Hand.ENEMY_TILING * (Single)i, i); break; case Hand.STATE.ENEMY_WAIT: quadMistCardUI.Flip = true; base.transform.localPosition = Hand.ENEMY_POSITION; quadMistCardUI.transform.localPosition = Hand.ENEMY_TILING * (Single)i; break; case Hand.STATE.ENEMY_PLAY: quadMistCardUI.Flip = true; base.transform.localPosition = Hand.ENEMY_POSITION; quadMistCardUI.transform.localPosition = Hand.ENEMY_TILING * (Single)i; break; case Hand.STATE.ENEMY_POSTGAME: quadMistCardUI.Flip = false; base.transform.localPosition = Hand.ENEMY_POST_POSITION; this.SlideTo(quadMistCardUI.transform, Hand.DEFAULT_TILING(this.Count) * (Single)i, Anim.TickToTime(20)); break; case Hand.STATE.PLAYER_PREGAME: quadMistCardUI.Flip = false; base.transform.localPosition = Hand.PLAYER_POSITION; quadMistCardUI.transform.localPosition = Hand.PLAYER_TILING_S * (Single)i; quadMistCardUI.transform.localScale = Hand.PLAYER_SCALE_S; break; case Hand.STATE.PLAYER_WAIT: base.transform.localPosition = Hand.PLAYER_POSITION; if (this.Count == 5) { quadMistCardUI.transform.localPosition = Hand.PLAYER_TILING_S * (Single)i; quadMistCardUI.transform.localScale = Hand.PLAYER_SCALE_S; } else { quadMistCardUI.transform.localPosition = Hand.PLAYER_TILING_L * (Single)i; quadMistCardUI.transform.localScale = Vector3.one; } break; case Hand.STATE.PLAYER_SELECT_CARD: { base.transform.localPosition = Hand.PLAYER_POSITION; Single num = this.SpeedFormula(quadMistCardUI.transform, Hand.PLAYER_TILING_S * (Single)i); if (this.Count == 5) { base.StartCoroutine(this.SlideCardBackToTheFormerPosition(quadMistCardUI.transform, Hand.PLAYER_TILING_S * (Single)i, num)); this.ScaleTo(quadMistCardUI.transform, Hand.PLAYER_SCALE_S, num); } else { base.StartCoroutine(this.SlideCardBackToTheFormerPosition(quadMistCardUI.transform, Hand.PLAYER_TILING_L * (Single)i, num)); } this.CardCursor.Hide(); break; } case Hand.STATE.PLAYER_SELECT_BOARD: base.transform.localPosition = Hand.PLAYER_POSITION; if (this.Count == 5) { quadMistCardUI.transform.localPosition = Hand.PLAYER_TILING_S * (Single)i; quadMistCardUI.transform.localScale = Hand.PLAYER_SCALE_S; } else { quadMistCardUI.transform.localPosition = Hand.PLAYER_TILING_L * (Single)i; quadMistCardUI.transform.localScale = Vector3.one; } break; case Hand.STATE.PLAYER_POSTGAME: base.transform.localPosition = Hand.PLAYER_POST_POSITION; quadMistCardUI.transform.localScale = Vector3.one; this.SlideTo(quadMistCardUI.transform, Hand.DEFAULT_TILING(this.Count) * (Single)i, Anim.TickToTime(20)); break; default: base.transform.position = Hand.PLAYER_POSITION; break; } } }
public override void HandleTargetCardSelection(Board board, QuadMistCard origin, List <QuadMistCard> selectable, ref InputResult result) { board.ShowBoardCursor(); Vector3 worldPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition); if ((this.lastMousePosition - Input.mousePosition).magnitude > 1f) { worldPoint.z = -6f; Vector2 vectorByWorldPoint = board.GetVectorByWorldPoint(worldPoint, false); Single num = 0.429f; Single num2 = -0.525f; Single num3 = -1f; Single num4 = 0.73f; vectorByWorldPoint.x *= num; vectorByWorldPoint.y *= num2; vectorByWorldPoint.x += num3; vectorByWorldPoint.y += num4; board.SetBoardCursorPosition(vectorByWorldPoint); this.lastMousePosition = Input.mousePosition; } if (!this.blacken) { for (Int32 i = 0; i < (Int32)board.field.Length; i++) { QuadMistCardUI cardUI = board.GetCardUI(i); if (cardUI != (UnityEngine.Object)null && cardUI != board.GetCardUI(origin)) { cardUI.Black = true; } } this.blacken = true; } if (this.counter >= Anim.TickToTime(16) && !this.launched) { foreach (QuadMistCard card in selectable) { board.GetCardUI(card).Black = false; board.GetCardUI(card).Select = true; } this.launched = true; } if (this.launched) { if (Input.GetMouseButtonUp(0)) { SoundEffect.Play(QuadMistSoundID.MINI_SE_CURSOL); for (Int32 j = 0; j < selectable.Count; j++) { if (board.GetCardUI(selectable[j]).Contains(worldPoint)) { result.index = j; result.Used(); break; } } if (result.IsValid()) { QuadMistCardUI[] field = board.field; for (Int32 k = 0; k < (Int32)field.Length; k++) { QuadMistCardUI quadMistCardUI = field[k]; quadMistCardUI.Black = false; quadMistCardUI.Select = false; } this.launched = false; this.blacken = false; this.counter = 0f; board.ShowBoardCursor(); } } } else { this.counter += Time.deltaTime; } }