Gerard Butler said he "loves" making action movies but admitted his tough guy roles have taken their toll on his body.

The actor, 49, who hails from Paisley, is best known for his role in 300, where he played a Spartan warrior.

His latest role, in action thriller sequel Angel Has Fallen, sees him playing a secret service agent fighting to clear his name after being framed for an assassination attempt on Morgan Freeman's US president.

The film is packed with physically gruelling action scenes and Butler said he is unsure how long he can keep putting his body on the line.

Speaking at the film's premiere in Los Angeles, he said: "I don't know, I'm pretty tough but I've also put my body through it.

"Maybe there's new directions, new avenues but I love, I love making action movies and I love this one especially.

"We never knew we were going to make it past the first film and now we're on the third and I think they're getting better. This movie, I'm so proud of it.

"And this movie works on so many more levels than the other ones have worked, so yeah, I think it's pretty kick ass."

Angel Has Fallen is the third in a trilogy, following on from 2013's Olympus Has Fallen and 2016's London Has Fallen.

Jada Pinkett Smith appears as a FBI agent while veteran Hollywood star Nick Nolte, 78, plays the father of Butler's character.

Butler described working with Nolte as "magic".

"He just brings my game up", Butler said, going as far as saying one of Nolte's scenes in the film is Oscar-worthy.

He added: "He felt like my father, he felt like a man who's been through the mill and who's bitter.

"He had so much going on. So that just draws me into this relationship and from the second him and I started our scenes together, it was magic, the chemistry was amazing and it was powerful and emotional and really funny."

Angel Has Fallen is in cinemas now.