Zac Efron has publicly apologised to Leonardo DiCaprio after suggesting the Titanic star once advised him not to take heroin during an interview. In a new interview with U.K. newspaper The Times, the High School Musical star joked about advice his mentor gave him - and now he's regretting what he said. Efron told the Times reporter that DiCaprio once offered, "There's only one way you can mess this all up. Just do heroin." But the movie star said nothing of the sort to Efron - and now the younger actor is feeling pretty stupid. He tells news show Access Hollywood , "I can't believe I just did that to him. It was a joke, it was meant completely in sarcasm, but it came across so differently in print. I was devastated. "I tried to call Leo and say, 'Dude, I'm so sorry, that's not at all what I meant to say.' It was the worst feeling in the world." But Efron isn't taking back the glowing comments he made about DiCaprio to the Times. He said, "He is the best barometer for me. It's amazing to see actors who have been able to sustain this for so long and keep positive, still focused on the work, still trying to make their best film."