public PieceView CreatePieceView(BoardPiece piece, Transform parent) { PieceView view = Instantiate <PieceView>(piecePrefab, parent, false); view.piece = piece; return(view); }
public void LockPiece(PieceView piece) { boardView.LockPiece(piece); gameEngine.LockPiece(piece.piece); mAimController.ShowGuideLine(); mAimController.UpdateGuideLine(0.3f, () => mCanShoot = true); }
public PieceController(Piece model, PieceView view) { _model = model; _view = view; _view.Initialize(_model); }
private void DrawSession() { pieces = new PieceView[MatchController.ME.session.board.GetLength(0), MatchController.ME.session.board.GetLength(1)]; float initalX = 0; float initalY = boardSize.y; for (int i = 0; i < MatchController.ME.session.board.GetLength(0); i++) { for (int j = 0; j < MatchController.ME.session.board.GetLength(1); j++) { GameObject gb = (GameObject)Instantiate(Resources.Load("Prefab/Piece"), pieceContainer.transform); PieceView pc = gb.AddComponent <PieceView>(); pc.Initate(MatchController.ME.session.board[i, j]); pc.piecePosition.anchoredPosition = new Vector2(initalX, initalY); pieces[i, j] = pc; initalX += 265f; pc.button.onClick.AddListener(() => PieceChosen(pc)); MovePiece(pc, true); } initalX = 0; initalY -= 256; } Invoke(nameof(CheckResult), 3); }
private void Awake() { _view = GetComponent <PieceView>(); Assert.IsNotNull(_view); Assert.IsTrue(gameObject.CompareTag(TagName)); }
private void CheckerboardOnPieceMoved(Checkerboard sender, Vector2Int origin, Vector2Int target) { ClearSelection(); PieceView pieceView = grid[origin.x, origin.y].pieceView; pieceView.MoveTo(TilespaceToLocalspace(target)); pieceView.gridPosition = target; grid[target.x, target.y].pieceView = pieceView; grid[origin.x, origin.y].pieceView = null; }
private void PieceViewOnClick(PieceView sender, Vector2Int gridPosition) { if (!canSelect) { return; } if (checkerboard.GetAt(gridPosition) != checkerboard.currentPlayerColor) { return; } Select(gridPosition); }
private void ButtonValidation_OnClick(object sender, RoutedEventArgs e) { PieceView pv = _selectedControl.Content as PieceView; if (pv == null) { return; } ChosenType = pv.Piece.Type; DialogResult = true; Close(); }
private void DestroyPieces(List <Piece> piecesToDestroy) { foreach (Piece pc in piecesToDestroy) { Tupple pos = new Tupple(pc.tupplePosition.line, pc.tupplePosition.column); PieceView current = pieces[pos.line, pos.column]; if (current != null) { current.DestroyPiece(); pieces[pos.line, pos.column] = null; } } }
private PieceView AddPiece(Vector2Int gridPosition, bool isWhite) { PieceView prefab = isWhite ? whiteCheckerPiecePrefab : blackCheckerPiecePrefab; Assert.IsNotNull(prefab); PieceView piece = Instantiate(prefab, piecesParent); piece.transform.localPosition = TilespaceToLocalspace(gridPosition); piece.gridPosition = gridPosition; piece.OnClick += (sender) => PieceViewOnClick(sender, sender.gridPosition); return(piece); }
private void PieceChosen(PieceView p) { if (countClick == 0) { first = p; countClick++; return; } second = p; countClick = 0; MatchController.ME.RequestMovement(first.currentPiece, second.currentPiece); }
public void InitializeViewData(GameRenderData data) { _resultsContainer.gameObject.SetActive(false); _resultsContainer.InitializeViewData(data.OnGetToMenu); _gridSize = data.GridSize; _piecePool = data.GridList; for (int i = 0; i < _gridSize.x; i++) { List <CellView> cells = new List <CellView>(); for (int j = 0; j < _gridSize.y; j++) { GameObject pieceGO = _gridPieces.gameObject.AddChild(_piecePrefab); pieceGO.transform.localScale = Vector3.one; PieceView piece = pieceGO.GetComponent <PieceView>(); PieceDO pieceDo = data.GridList[i][j]; if (piece != null) { piece.Initialize(pieceDo); piece.transform.localPosition = new Vector3(PIECE_WIDTH * i - _offsetX, PIECE_HEIGHT * j - _offsetY); } GameObject cellGO = _gridCells.gameObject.AddChild(_cellPrefab); cellGO.transform.localScale = Vector3.one; cellGO.transform.localPosition = piece.transform.localPosition; cellGO.name = String.Format("cell {0}/{1}", i, j); CellView cell = cellGO.GetComponent <CellView>(); cell.Piece = piece; cell.Initialize(data.SelectCell); cells.Add(cell); } _cells.Add(cells); } SetNeighbors(); _piecePrefab.SetActive(false); _cellPrefab.SetActive(false); _currentScore = 0; _scoreCounter = new NguiLabelCounterInt(_scoreLabel); _scoreCounter.SetInitialCounterValue(_currentScore); _currentDiamondScore = 0; _diamondProgressBar.value = 0; _addDiamondPiece = data.AddDiamondPiece; }
public void PieceTest() { PieceView newPiece = new PieceView(); newPiece.Width = 200; newPiece.Height = 200; int thisPiece = Pieces.createPiece(true, true, true, false, true, true, 24, 1, 2); thisPiece = Pieces.setDiagonals(thisPiece, false, true, true, false); newPiece.setPiece(thisPiece); MainGrid.Children.Add(newPiece); PieceView secondNewPiece = new PieceView(); secondNewPiece.Width = 200; secondNewPiece.Height = 200; thisPiece = Pieces.createPiece(false, false, false, false, false, false, 1, 3, 0); thisPiece = Pieces.setAsLake(thisPiece); secondNewPiece.setPiece(thisPiece); MainGrid.Children.Add(secondNewPiece); }
private void DropNewPieces() { float initalX = 0; float initalY = boardSize.y; List <PieceView> newPiecesView = new List <PieceView>(); for (int i = 0; i < newPieces.Count; i++) { for (int j = 0; j < newPieces[i].Count; j++) { GameObject gb = (GameObject)Instantiate(Resources.Load("Prefab/Piece"), pieceContainer.transform); PieceView pc = gb.AddComponent <PieceView>(); Piece p = newPieces[i][j]; pc.Initate(p); pc.piecePosition.anchoredPosition = new Vector2(initalX, initalY); initalY -= 256f; pc.button.onClick.AddListener(() => PieceChosen(pc)); newPiecesView.Add(pc); pieces[pc.currentPiece.tupplePosition.line, pc.currentPiece.tupplePosition.column] = pc; MovePiece(pc); } initalY = 800; initalX += 265; } //RETUPLE for (int i = pieces.GetLength(0) - 1; i >= 0; i--) { for (int j = pieces.GetLength(1) - 1; j >= 0; j--) { pieces[i, j].currentPiece.tupplePosition = new Tupple(i, j); pieces[i, j].UpdateText(); MovePiece(pieces[i, j]); } } first = second = null; Invoke(nameof(CheckResult), 0.5f); }
private void onPieceTapped(GeneralEvent e) { PieceView pieceView = e.data as PieceView; Debug.Log("Piece: " + pieceView.ToString()); if (_playMoveState == PlayMoveState.SELECT_PAWNS) { CardData currentCard = activePlayer.hand.GetCard(_currentMoveRequest.handIndex); var piecePath = new MoveRequest.PiecePathData(); piecePath.pieceIndex = pieceView.piece.index; var pathList = new List <MovePath>(); if (_matchState.validator.GetValidPaths(pieceView.piece, currentCard, ref pathList)) { } } }
void InitializePieceView(IntegerVector2 position, Vector3[,] columnMap, IGame game) { IBoard board = game.Board; IReadOnlyPiece piece = board.GetPiece(position); if (piece == null) { return; } GameObject pieceViewObject = Instantiate(pieceViewPrefabs.Prefabs[(int)piece.Name]); pieceViewObject.transform.position = new Vector3(0, 0, -10); //描画優先度の設定 PieceView pieceViewComponent = pieceViewObject.GetComponent <PieceView>(); pieceViewComponent.Initialize(piece, columnMap); pieceViewComponent.OnClicked.TakeUntilDestroy(this).Subscribe(onPieceClicked.Invoke); database.Add(piece, pieceViewComponent); }
protected override void OnViewUpdate() { base.OnViewUpdate(); if (IsInvalid(InvalidationFlag.STATIC_DATA) && _board != null) { destroyBoardView(); List <BoardPosition> boardPosList = _board.GetBoardPositionList(); foreach (BoardPosition position in boardPosList) { if (!BoardPosition.IsInvalid(position)) { PegView pegView = Singleton.instance.cardResourceBank.CreatePegView(position, _pegsGroup); _pegList.Add(pegView); } } List <BoardPieceGroup> pieceGroupList = _board.GetPieceGroupList(); foreach (BoardPieceGroup group in pieceGroupList) { foreach (BoardPiece piece in group.pieceList) { PieceView pieceView = Singleton.instance.cardResourceBank.CreatePieceView(piece, _piecesGroup); _pieceList.Add(pieceView); } } } if (IsInvalid(InvalidationFlag.DYNAMIC_DATA)) { Transform viewTransform = getViewTransform(viewIndex); if (_camera && viewTransform && _cameraTween == null) { tweenCameraTo(viewTransform); } } }
private void Update() { if (IsDropping == false) { return; } bool madeMove = false; for (int i = 0; i < _gridSize.x; i++) { for (int j = 0; j < _gridSize.y; j++) { PieceView piece = _piecePool[i][j].View; if (piece == null) { continue; } piece.IsMoving = false; //Move down if (piece.transform.localPosition.y > PIECE_HEIGHT * j - _offsetY) { piece.transform.localPosition = new Vector2(piece.transform.localPosition.x, piece.transform.localPosition.y - STEP); madeMove = true; //_cells[i][j].Piece = piece; piece.IsMoving = true; } } } if (IsDropping && !madeMove) { IsDropping = false; } }
public PieceController CreateController(Piece model, PieceView view) { var controller = new PieceController(model, view); return(controller); }
public void Initialize(PieceView pieceView, Action completedEventHandler) { _pieceView = pieceView; _completedEventHandler = completedEventHandler; }
private void MovePiece(PieceView p, bool initSession = false) { p.piecePosition.DOAnchorPos(MatchController.ME.Destiny(p.currentPiece.tupplePosition.line, p.currentPiece.tupplePosition.column), initSession? speedDraw : speedMatch) .SetEase(easeMatch); }
public void RemovePiece(PieceView piece) { boardView.RemovePiece(piece); }
private void ConfirmSwap(PieceView ft, PieceView sc) { pieces[sc.currentPiece.tupplePosition.line, sc.currentPiece.tupplePosition.column] = second; pieces[ft.currentPiece.tupplePosition.line, ft.currentPiece.tupplePosition.column] = first; }
public void RemovePiece(PieceView piece) { viewPieces.Remove(piece); }
public void LockPiece(PieceView piece) { viewPieces.Add(piece); }
public void OnCreateNextPiece() { mCurrentPiece = mChain.GetPiece(); }
public void AddPiece(PieceView piece) { mPieces.Enqueue(piece); piece.transform.SetParent(mPiecesPositions[mPieces.Count - 1]); piece.transform.localPosition = Vector3.zero; }