Block Game Ghosts (#5321)

Co-authored-by: T <tomeno@lulzsec.co.uk>
This commit is contained in:
Tomeno
2021-11-13 21:43:54 +01:00
committed by GitHub
parent 6db52e795e
commit 44e904fe5f
3 changed files with 62 additions and 12 deletions

View File

@@ -700,6 +700,22 @@ namespace Content.Server.Arcade.Components
var result = new List<BlockGameBlock>();
result.AddRange(_field);
result.AddRange(_currentPiece.Blocks(_currentPiecePosition, _currentRotation));
var dropGhostPosition = _currentPiecePosition;
while (_currentPiece.Positions(dropGhostPosition.AddToY(1), _currentRotation)
.All(DropCheck))
{
dropGhostPosition = dropGhostPosition.AddToY(1);
}
if (dropGhostPosition != _currentPiecePosition)
{
var blox = _currentPiece.Blocks(dropGhostPosition, _currentRotation);
for (var i = 0; i < blox.Length; i++)
{
result.Add(new BlockGameBlock(blox[i].Position, BlockGameBlock.ToGhostBlockColor(blox[i].GameBlockColor)));
}
}
return result;
}