void ApplyActionsRecursively(Piece piece, ActionKey action, float poweredInput) { if (piece == null) { return; } piece.ApplyAction(action, poweredInput); foreach (Piece newPiece in piece.piecesAttachedToMe) { ApplyActionsRecursively(newPiece, action, poweredInput); } }