ADVERTISEMENT

Brooks scores career-high 40, leads Suns past Pistons

Published Jan 30, 2026 03:06 pm
Phoenix Suns forward Dillon Brooks celebrates a made 3-pointer against the Detroit Pistons during the first half of an NBA basketball game Thursday, Jan. 29, 2026, in Phoenix. (AP Photo/Ross D. Franklin)
Phoenix Suns forward Dillon Brooks celebrates a made 3-pointer against the Detroit Pistons during the first half of an NBA basketball game Thursday, Jan. 29, 2026, in Phoenix. (AP Photo/Ross D. Franklin)
PHOENIX (AP) — Dillon Brooks scored a career-high 40 points, Grayson Allen added 24 and the Phoenix Suns beat the Eastern Conference-leading Detroit Pistons, 114-96, on Thursday night, Jan. 29.
The Suns kept a comfortable lead through much of the fourth, winning for the fifth time in seven games. They are 10 games above .500 for the first time this season at 29-19.
Brooks sliced through the lane for a layup for a 105-89 lead with 5:43 left, scoring the last of his 40 points. He finished 13 of 22 from the field and had eight rebounds on a night the team gave the first 5,000 fans who entered the arena a shirt that read “Dillon The Villain" — a nod to his combustible personality.
The Pistons lost for just the third time in 12 games. Cade Cunningham led Detroit with 26 points, and Jalen Duran had 23 points and 13 rebounds.
Brooks had 38 points through three quarters, which was already a career high. The 6-foot-7 forward’s previous best was a 37-point performance for the Memphis Grizzlies in 2021.
The 30-year-old Canadian is in the midst of a career year, averaging more than 20 points per game to become a dark horse candidate to make his first All-Star game. He came to the Suns during the offseason as part of the trade that sent Kevin Durant to Houston.
Detroit trailed 72-56 at halftime but cut it to 77-74 midway through the third. Phoenix recovered to take a 93-81 advantage into the fourth.
The Suns made their first four 3-pointers and rode the hot shooting to a 72-56 halftime advantage. Brooks scored 24 points before the break, making 8 of 11 shots on an array of turnaround jumpers and threes.
Suns star guard Devin Booker missed his third straight game with a sprained ankle.
Meanwhile, Kevin Durant scored 31 points and the Houston Rockets beat short-handed Atlanta, 104-86, ending the Hawks' four-game winning streak.
The Rockets dominated the second half after leading only 43-42 at halftime. Jabari Smith had 14 points and Reed Sheppard added 13. Sheppard's 3-pointer gave the Rockets their first 20-point lead, 90-70.
The Hawks held out two frontline starters with injuries. Center Onyeka Okongwu suffered a dental fracture when he was elbowed in the mouth in Atlanta's 117-106 win at Boston on Wednesday night. Forward Jalen Johnson was ruled out with left calf tightness.
The Hawks said Okongwu had a successful dental procedure on Thursday and also will miss Saturday's game at Indiana.
The Hawks already were missing center Kristaps Porzingis (left Achilles tendinitis) and forward Zaccharie Risacher (left knee, bone contusion). Two-way rookie Asa Newell was recalled from G League College Park before the game. Center Christian Koloko, who signed with Atlanta on Jan. 17, made his first start in his fifth game with the Hawks.
ADVERTISEMENT
.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1561_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1562_widget.title }}

.most-popular .layout-ratio{ padding-bottom: 79.13%; } @media (min-width: 768px) and (max-width: 1024px) { .widget-title { font-size: 15px !important; } }

{{ articles_filter_1563_widget.title }}

{{ articles_filter_1564_widget.title }}

.mb-article-details { position: relative; } .mb-article-details .article-body-preview, .mb-article-details .article-body-summary{ font-size: 17px; line-height: 30px; font-family: "Libre Caslon Text", serif; color: #000; } .mb-article-details .article-body-preview iframe , .mb-article-details .article-body-summary iframe{ width: 100%; margin: auto; } .read-more-background { background: linear-gradient(180deg, color(display-p3 1.000 1.000 1.000 / 0) 13.75%, color(display-p3 1.000 1.000 1.000 / 0.8) 30.79%, color(display-p3 1.000 1.000 1.000) 72.5%); position: absolute; height: 200px; width: 100%; bottom: 0; display: flex; justify-content: center; align-items: center; padding: 0; } .read-more-background a{ color: #000; } .read-more-btn { padding: 17px 45px; font-family: Inter; font-weight: 700; font-size: 18px; line-height: 16px; text-align: center; vertical-align: middle; border: 1px solid black; background-color: white; } .hidden { display: none; }
function initializeAllSwipers() { // Get all hidden inputs with cms_article_id document.querySelectorAll('[id^="cms_article_id_"]').forEach(function (input) { const cmsArticleId = input.value; const articleSelector = '#article-' + cmsArticleId + ' .body_images'; const swiperElement = document.querySelector(articleSelector); if (swiperElement && !swiperElement.classList.contains('swiper-initialized')) { new Swiper(articleSelector, { loop: true, pagination: false, navigation: { nextEl: '#article-' + cmsArticleId + ' .swiper-button-next', prevEl: '#article-' + cmsArticleId + ' .swiper-button-prev', }, }); } }); } setTimeout(initializeAllSwipers, 3000); const intersectionObserver = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { const newUrl = entry.target.getAttribute("data-url"); if (newUrl) { history.pushState(null, null, newUrl); let article = entry.target; // Extract metadata const author = article.querySelector('.author-section').textContent.replace('By', '').trim(); const section = article.querySelector('.section-info ').textContent.replace(' ', ' '); const title = article.querySelector('.article-title h1').textContent; // Parse URL for Chartbeat path format const parsedUrl = new URL(newUrl, window.location.origin); const cleanUrl = parsedUrl.host + parsedUrl.pathname; // Update Chartbeat configuration if (typeof window._sf_async_config !== 'undefined') { window._sf_async_config.path = cleanUrl; window._sf_async_config.sections = section; window._sf_async_config.authors = author; } // Track virtual page view with Chartbeat if (typeof pSUPERFLY !== 'undefined' && typeof pSUPERFLY.virtualPage === 'function') { try { pSUPERFLY.virtualPage({ path: cleanUrl, title: title, sections: section, authors: author }); } catch (error) { console.error('ping error', error); } } // Optional: Update document title if (title && title !== document.title) { document.title = title; } } } }); }, { threshold: 0.1 } ); function showArticleBody(button) { const article = button.closest("article"); const summary = article.querySelector(".article-body-summary"); const body = article.querySelector(".article-body-preview"); const readMoreSection = article.querySelector(".read-more-background"); // Hide summary and read-more section summary.style.display = "none"; readMoreSection.style.display = "none"; // Show the full article body body.classList.remove("hidden"); } document.addEventListener("DOMContentLoaded", () => { let loadCount = 0; // Track how many times articles are loaded const offset = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; // Offset values const currentUrl = window.location.pathname.substring(1); let isLoading = false; // Prevent multiple calls if (!currentUrl) { console.log("Current URL is invalid."); return; } const sentinel = document.getElementById("load-more-sentinel"); if (!sentinel) { console.log("Sentinel element not found."); return; } function isSentinelVisible() { const rect = sentinel.getBoundingClientRect(); return ( rect.top < window.innerHeight && rect.bottom >= 0 ); } function onScroll() { if (isLoading) return; if (isSentinelVisible()) { if (loadCount >= offset.length) { console.log("Maximum load attempts reached."); window.removeEventListener("scroll", onScroll); return; } isLoading = true; const currentOffset = offset[loadCount]; window.loadMoreItems().then(() => { let article = document.querySelector('#widget_1690 > div:nth-last-of-type(2) article'); intersectionObserver.observe(article) loadCount++; }).catch(error => { console.error("Error loading more items:", error); }).finally(() => { isLoading = false; }); } } window.addEventListener("scroll", onScroll); });

Sign up by email to receive news.