public void AnimateTo(Vector3 prevPos, Vector3 newPos, TileAnimParams animParams) { Position = prevPos; _visual.transform.DOMove(newPos, animParams.animTime).SetEase(animParams.easeType); _adornment?.DOMove(newPos, animParams.easeType, animParams.animTime); }
public void ScaleTo(float from, float to, TileAnimParams animaParams, float?delay) { _visual.transform.localScale = new Vector3(from, from, from); var tween = _visual.transform.DOScale(to, animaParams.animTime).SetEase(animaParams.easeType); if (delay != null) { tween.SetDelay((float)delay); } }
public void AnimateTo(Vector2 upperLeft, Vector2 tileSizes, TileAnimParams animParams) { for (var c = 0; c < NumColumns; c++) { for (var r = 0; r < NumRows; r++) { var prevPos = _tiles[c, r].Position; var newPos = PlayfieldManager.ComputePos(upperLeft, tileSizes, c, r); _tiles[c, r].AnimateTo(prevPos, newPos, animParams); } } }
public void GenerateTiles(GetPrefabsDelegate getPrefabs, TileAnimParams animParams) { DropPiece = new DropPieceSimple(); DropPiece.Reset(true, DropPieceSimple.RandomCell); var pfTransform = GameObject.Find("Playfield").transform; for (var c = 0; c < NumColumns; c++) { for (var r = 0; r < NumRows; r++) { var cell = DropPiece.Cells[c][r]; GameObject prefab = null, adornment = null; Transform transform = null; getPrefabs(cell, out prefab, out adornment, out transform); var tile = new Tile(); tile.Instantiate(prefab, adornment, Vector3.zero, transform, animParams); _tiles[c, r] = tile; } } }
public Tile InstantiateVisual(Cell c) { var point = c.Point; RemoveCell(point); GameObject prefabCell = null; GameObject prefabOverlay = null; switch (c.RemoveState) { case Cell.RemoveStates.JewelWillBeRemoved: case Cell.RemoveStates.JewelRemoving: prefabCell = prefabJewelWillBeRemoved; //prefabCell = prefabRemoving; Debug.Log("jewel removing"); break; case Cell.RemoveStates.Removing: prefabCell = prefabRemoving; break; case Cell.RemoveStates.NotRemoved: //case Cell.RemoveStates.WillBeRemoved: { switch (c.State) { case Cell.States.Black: prefabCell = Level.prefabBlack; break; case Cell.States.BlackJeweledBoth: prefabCell = Level.prefabBlack; prefabOverlay = prefabJewelBoth; break; case Cell.States.BlackJeweledHorz: prefabCell = Level.prefabBlack; prefabOverlay = prefabJewelHorz; break; case Cell.States.BlackJeweledVert: prefabCell = Level.prefabBlack; prefabOverlay = prefabJewelVert; break; case Cell.States.WhiteJeweledBoth: prefabCell = Level.prefabWhite; prefabOverlay = prefabJewelBoth; break; case Cell.States.WhiteJeweledVert: prefabCell = Level.prefabWhite; prefabOverlay = prefabJewelVert; break; case Cell.States.WhiteJeweledHorz: prefabCell = Level.prefabWhite; prefabOverlay = prefabJewelHorz; break; case Cell.States.White: prefabCell = Level.prefabWhite; break; } } break; } var result = (Tile)null; var parent = GameObject.Find("Playfield").transform; if (prefabCell != null) { var anim = new TileAnimParams(_dropPieceView.jewelEaseType, _dropPieceView.jewelHighlightAnimTime); var pos = ComputePos(point.Column, point.Row); _tiles[point.Column, point.Row].Instantiate(prefabCell, prefabOverlay, pos, parent, anim); result = _tiles[point.Column, point.Row]; } return(result); }
public void Instantiate(GameObject prefab, GameObject prefabAdornment, Vector3 position, Transform parent, TileAnimParams animParams) { Prefab = prefab; if (Prefab != null) { _visual = UnityEngine.Object.Instantiate(Prefab, Vector3.zero, Quaternion.identity); _visual.transform.SetParent(parent, false); _visual.transform.position = position; } if (prefabAdornment != null) { _adornment = new Adornment(); _adornment.Instantiate(prefabAdornment, parent, animParams.easeType, animParams.animTime); _adornment.UpdatePosition(position); } }