Undercover San Francisco narcotics cops Sean Kane (Norris) and Dave Pierce (Terry Kiser) head into a dark alley to meet up with an informant named Tony Montoya (Mel Novak), who promises to break their big investigation wide open, by providing the name of the oriental drug ringleader. Minutes later Pierce is dead, after having been shot, hit by a car, and burned. Kane gets into trouble with his boss, Captain Stevens (Richard Roundtree), for sending one of the killers flying out a third-story window to his death in view of the public. Rather than face discipline, and told to keep his distance by his superiors, Kane decides to quit the force, and sets out to exact vengeance.
Dave’s girlfriend, reporter Linda Chan (Rosalind Chao) is also angry, and vows to bring the drug gang down herself, by way of investigative reporting and public exposure. However, when Linda uncovers the secret that Kane and Pierce never found, she too is killed. Kane sets out for revenge, as does Linda’s grieving father James Chan (Iwamatsu), and Linda’s close friend, news editor Heather Sullivan (Cooper). Kane asked his friend and fellow detective Tom McCoy (Clark) to keep him informed about the case, but Stevens takes charge of the case, and all the larger aspects of the case go through him.
Kane and Chan are attacked by hitmen connected to the drug cartel. With Heather’s help, Kane sees Montoya near a ship in one of Linda’s televised news reports. Linda’s boss and mentor, editor-in-chief Morgan Canfield (Lee), offers Kane’s support to find the killers. Kane finds Chan confronting Nicky LaBelle (Stuart Pankin), Montoya’s boss. LaBelle reluctantly reveals Montoya’s location. After Kane and Chan confront Montoya, he reveals that he was bait, because the drug dealers were on to them. Before he can revealed names, the same hitmen who killed Linda open fire and kill Montoya. Kane suspects a mole is helping the dealers remove any loose ends.
When Heather’s apartment is trashed, Kane suspects the people who killed Linda are looking for a tape that Linda discovered. Heather tells Kane the ship where Linda was doing her interview was a freighter called the Sulu Sea. Kane checks the cargo hold of the Sulu Sea, and finds that the drugs are imported inside fireworks transported from Hong Kong. After being spotted, Kane sets the fireworks on fire, and escapes as Stevens and his fellow officers watch in the distance.
Heather finds Linda’s tape in a locker at the train station, with a key hidden in her shoe. She leaves a message for Kane to meet her at the news station. He meets McCoy there and they go to Canfield’s office. The tape contains the phone conversation between Canfield and the dealers, which reveals Canfield as the ringleader, and McCoy reveals himself to be a traitor. As Canfield and his hitmen take Heather with them, Kane is about to be killed, when Chan arrives and takes down the assailants. Kane confronts McCoy over his involvement with Canfield, who tells him was in it for money, and that he wasn’t the one who drove that car that killed Dave. McCoy chases Kane on the roof, and is killed during a fight with Kane.
Kane and Chan go to Canfield’s estate, where he is meeting with the other drug dealers. When the truck carrying the drugs is spotted by Stevens and the SFPD, Kane and Chan fight Canfield’s men as Stevens and the cops fire at them. Chan confronts the assassin who killed Linda known as The Professor (Professor Toru Tanaka), but is incapacitated by the Professor’s brute strength. Kane then fights the Professor, and after a brutal fight, finally takes down The Professor by kicking him through a glass coffee table.
Canfield then arrives with Heather as a hostage. Kane remembers seeing Canfield’s dog in the car that killed Dave, and realizes that Canfield was driving the car. When Chan distracts Canfield, Kane overpowers him as Stevens and the cops arrive. Stevens reveals that he knew about McCoy and Canfield’s involvement, but couldn’t move in without evidence, and now that they have the drug shipment, they can convict Canfield. With encouragement from Heather and Chan, Kane lets go of his revenge and finds Linda’s tape on Canfield. He gives the tape to Stevens, and Canfield is taken into custody. Kane and Stevens part ways amicably, and he leaves the estate with Heather and Chan.