Text showing variable

So I was trying to make a HUD and I used the code underneath to draw the Health of a player, but for some reason my garry’s mod keeps crashing if I use that code. When I comment the code, my gamemode seems to be working fine. Any ideas?

[LUA]surface.CreateFont( “MyFont”,
{
font = “ScoreboardText”,
size = 30,
weight = 60,
antialias = true,
shadow = false
})
surface.SetTextColor( 255, 255, 255, 255)
surface.SetTextPos( ScrW() - 130, ScrH() - 270 )
surface.SetFont( “MyFont” )
surface.DrawText( HP … "% " )[/LUA]

I did define HP so thats not the problem.

Don’t call surface.CreateFont inside any hooks

Thanks alot!