In 1983, Mason Storm, a Los Angeles police detective, investigates a mob meeting that takes place by a pier. He records a shadowy figure who assures the mob they can rely on his political support. Storm is spotted, but escapes. Unaware that he is monitored by corrupt cops, Mason informs his partner and then his friend Lt. O'Malley that he has evidence of corruption. While he goes shopping, a store is robbed, and one of the robbers shoots the clerk. Mason stops them and goes home, intent on celebrating with his wife, Felicia.
Mason hides the videotape in his house. When he goes upstairs, a hit squad composed of corrupt policemen, including Jack Axel and Max Quentero, break in and proceed to murder Mason's wife and shoot him. Mason's young son, Sonny, hides until the danger passes. The corrupt policemen frame Mason, making it look like a murder-suicide. At the same time, assassins kill Storm's partner. At the hospital, Mason is first pronounced dead, but is then discovered to be alive, although unconscious. To prevent the assassins from finishing the job, Lieutenant O'Malley tells the medics to keep Mason's status a secret.
Seven years later, Mason wakes from his coma. Andy, one of his nurses, makes a phone call, which is intercepted by corrupt police officers. They send Axel to finish the job and kill the nurses to whom Mason might have talked. Mason realizes that he is still in danger, but his muscles have atrophied to where he can barely use his arms. He staggers to an elevator, and when Andy sees her colleagues killed, she helps Mason escape.
Needing time to recuperate, Andy brings Mason to a friend's house, where Mason uses his knowledge of acupuncture, moxibustion and other meditation techniques to recover his strength. While training, Mason hears a commercial for Senator Vernon Trent and recognizes the voice from the pier. Mason contacts O'Malley, who supplies him with weapons and tells him that his son is still aliveâO'Malley adopted Mason's son and sent him to a private school so that he would be out of danger. After O'Malley leaves, Senator Trent's men find the house and attempt to kill Andy and Mason, but Mason gets them both out.
Posing as a real estate agent, Mason recovers the hidden videotape from his old house. He meets O'Malley in a train station, where O'Malley brings Mason's now-teenage son. They do not see each other, because as Mason arrives, O'Malley is already dead, having been shot by Max after giving the tape to Andy for safe-keeping while having provided a distraction for Sonny to get away. When Mason arrives, he sees his son running away from Quentero and Nolan, another corrupt cop working for Trent. Mason catches up with the men, subdues Nolan by breaking his leg and throwing him in a trash bin and fights with Quentero. Mason beats up Quentero and recognizes him as one of the men who took part in the assault on Mason's home and the murder of his wife. Mason then proceeds to snap Quentero's neck, killing him and saving his son. Mason decides to go after Senator Trent at his home.
At the Senator's mansion, Mason sneaks in and manages to eliminate the Senator's men one by one. Mason fights with Axel in the billiard room and avenges Felicia by jamming a piece of pool stick into Axel's neck, killing him. Next, Mason leaves a death taunt to Capt. Hulland, another corrupt cop who betrayed Storm to Trent, and stalks Hulland through the house before cornering the corrupt captain near the fireplace. Mason then strangles Hulland with his necktie, killing him. Mason finally confronts Senator Trent and holds him at gunpoint when the police storm the mansion. However, they reveal that they had already seen the film and knew that Mason was set up, and they arrest Trent instead. Mason is then reunited with Andy and his son and walks off as the image from the videotape is played on the news, showing Trent coming out of the shadows briefly, wondering who is taping him.

Question: In what room of Senator Trent's mansion do Mason Storm and Jack Axel fight?
Answer: The billiard room.
Alternative answer: Billard room