91³Ô¹ÏÍø

Watch CBS News

Man killed by masked individual in ambush shooting in Beaver Falls, officials say

A man was found shot to death on the front porch of a home in Beaver Falls, Beaver County, on Saturday night, authorities said. 

Beaver County District Attorney Nathan Bible said Stephon Peake was fatally shot by a masked individual on Saturday around 10 p.m. The 28-year-old man was walking with a friend when he was fatally shot outside her home on Eighth Avenue in Beaver Falls. Bible said the shooter said something to Peake after shooting him "multiple times."

"It appears that this shooter was waiting there for Mr. Peake to get back," Bible told KDKA on Monday. "Approached him before he even entered the house, shot him and took off. So, this certainly appears very planned and very targeted."

In a news release on Monday, Beaver Falls Police Chief David Johnson said there is "no indication" of any threat to the community, and the incident remains under investigation. As of Monday night, no arrests have been made. It was not immediately clear if there were any suspects, as law enforcement released no additional information.

Neighbors who live nearby told KDKA-TV on Sunday that they heard the gunshots. One woman said it sounded like it happened right next to her, and she now fears for her and her son's safety.

"I didn't know what to think. I knew it happened real close, like I said. It sounded like it was right there in my ear. It's sad because [my son] plays out here. His friends live very close, and it's just terrifying," resident Jessie Holliday told KDKA.

Another witness told law enforcement that the gunman was with a second person and the two ran from the scene. They may have gotten into a dark-colored vehicle. 

"Not sure what type of vehicle or exactly what color," Bible told KDKA on Monday. "Again, this occurred at night, it's raining. So, visibility was not great."

Anyone with information about the deadly shooting can call Beaver Falls police at 724-846-7000. 

View CBS News In
CBS News App Open
Chrome Safari Continue
const link = doc.createElement('link'); link.rel = 'stylesheet'; link.href = '/fly/fly/bundles/cbsnewscontent/css/cmp-banner.min.css?v=fd53910ecf4604072044ab7c46d9b028'; doc.head.appendChild(link); doc.body.innerHTML = CONSENT_MESSAGE; } else { el.insertAdjacentHTML('afterend', CONSENT_MESSAGE); } }); } function hidePrivacyMessage() { // Remove from the main document document.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); // Remove from inside any iframes document.querySelectorAll('iframe').forEach(iframe => { const doc = iframe.contentDocument || iframe.contentWindow.document; doc.querySelectorAll(`.${CONSENT_MESSAGE_CLASS}`).forEach(el => el.remove()); }); } function activateGatedScripts() { // Handle both new format (cmp-gated-script) and old OneTrust/Ketch format (optanon-category-4) const gatedScripts = Array.from(document.querySelectorAll('script.cmp-gated-script, script.optanon-category-4')); // Activate scripts sequentially with a small delay to avoid timing issues let delay = 0; gatedScripts.forEach(function(placeholder, index) { setTimeout(function() { // Skip if already processed if (placeholder.hasAttribute('data-cmp-processed')) { return; } placeholder.setAttribute('data-cmp-processed', 'true'); const newScript = document.createElement('script'); newScript.type = 'text/javascript'; // Try new format first (data-cmp-src), then fall back to old format (data-src) const src = placeholder.getAttribute('data-cmp-src') || placeholder.getAttribute('data-src'); if (src) { newScript.src = src; } else if (placeholder.textContent) { // Inline script - just copy the content newScript.textContent = placeholder.textContent; } // Handle new format attributes (data-cmp-attrs) - for both inline and external scripts const attrs = placeholder.getAttribute('data-cmp-attrs'); if (attrs) { const tempDiv = document.createElement('div'); tempDiv.innerHTML = '
<\/div>'; const tempAttrs = tempDiv.firstChild.attributes; for (let i = 0; i < tempAttrs.length; i++) { // For external scripts, allow defer/async. For inline scripts, skip them (not valid) if (src || (tempAttrs[i].name !== 'async' && tempAttrs[i].name !== 'defer')) { newScript.setAttribute(tempAttrs[i].name, tempAttrs[i].value); } } } // Copy other attributes from old OneTrust format for (let i = 0; i < placeholder.attributes.length; i++) { const attr = placeholder.attributes[i]; // Skip attributes we've already handled or don't want to copy if (!['class', 'data-src', 'data-type', 'data-cmp-src', 'data-cmp-attrs', 'data-cmp-processed', 'type', 'async', 'defer', 'src'].includes(attr.name)) { newScript.setAttribute(attr.name, attr.value); } } placeholder.parentNode.replaceChild(newScript, placeholder); // If external script, manually trigger window.onload handlers after it loads // This handles widgets that use window.onload for initialization if (src) { newScript.addEventListener('load', function() { // If page already loaded and script set a new onload handler, trigger it if (document.readyState === 'complete' && window.onload) { const originalOnload = window.onload; window.onload = null; // Clear temporarily to prevent loops originalOnload(); // Execute the handler } }); } }, delay); delay += 500; // 500ms delay between each script to allow full loading }); } cbsoptanon.onScriptsReady(function(cmp) { cmp.ot.targetingAllowed(function(allowed) { if (!allowed) { showPrivacyMessage(); } else { activateGatedScripts(); } }); cmp.ot.awaitInitialConsent(function(consent_model) { cmp.ot.addOnConsentChangedHandler(function() { cmp.ot.targetingAllowed(function(allowed) { if (allowed) { hidePrivacyMessage(); activateGatedScripts(); } else { showPrivacyMessage(); } }); }); }); });