Very nice. Couple of notes, though:
1. It's best to distribute scripts as un-vped versions, IMHO
2. Can you put it on the wiki's scripting examples category?
AFTER fixing these bugs, of course:
-If you press d, zoom in a bit, release it, then press it again while the fov is resetting itself, then release again, the zoom will not wind back properly.
EDIT: Here's the fix. In zoom_key_pressed, do this:
if runZoomScript then
if not zooming then
plr = hv.Player
if plr:isValid() then
if #gr.Cameras > 0 then
cam = gr.Cameras[1]
if cam:isValid() then
zooming = true
tempFOV = normalFOV
zoom = tempFOV * zoomValue
cam:setFOV(zoom,2,1,0.5)
end
end
end
end
end