This is the full script, I'd get the person who made it but I don't quite remember, sorry!
I got it from that massive script thread:
```local showing = {}
local npressed = 0
function instructions_init_name(e,name)
weapon_name[e] = name
showing[e] = 0
--folder name containing the images
LoadImages("instructions",0)
end
function instructions_main(e)
if PlayerLooking(e,150,20) == 1 then
--text to display when near the entity
PromptLocal(e,"Note")
if GetInKey() == "e" and npressed == 0 then
npressed = 1
if showing[e] == 0 then
showing[e] = 1
SetImagePosition(50,50)
ShowImage(weapon_name[e])
else
showing[e] = 0
HideImage(weapon_name[e])
end
end
else
if showing[e] == 1 then
HideImage(weapon_name[e])
showing[e] = 0
end
end
if g_KeyPressE == 0 then
npressed = 0
end
end
function PlayerLooking(e,dis,v)
if g_Entity[e] ~= nil then
if dis == nil then
dis = 3000
end
if v == nil then
v = 0.5
end
if GetPlayerDistance(e) <= dis then
local destx = g_Entity[e]['x'] - g_PlayerPosX
local destz = g_Entity[e]['z'] - g_PlayerPosZ
local angle = math.atan2(destx,destz)
angle = angle * (180.0 / math.pi)
if angle <= 0 then
angle = 360 + angle
elseif angle > 360 then
angle = angle - 360
end
while g_PlayerAngY < 0 or g_PlayerAngY > 360 do
if g_PlayerAngY <= 0 then
g_PlayerAngY = 360 + g_PlayerAngY
elseif g_PlayerAngY > 360 then
g_PlayerAngY = g_PlayerAngY - 360
end
end
local L = angle - v
local R = angle + v
if L <= 0 then
L = 360 + L
elseif L > 360 then
L = L - 360
end
if R <= 0 then
R = 360 + R
elseif R > 360 then
R = R - 360
end
if (L < R and math.abs(g_PlayerAngY) > L and math.abs(g_PlayerAngY) < R) then
return 1
elseif (L > R and (math.abs(g_PlayerAngY) > L or math.abs(g_PlayerAngY) < R)) then
return 1
else
return 0
end
else
return 0
end
end
end```