Script - Escort Reticle
From FreeSpace Wiki
Creates an additional reticle around all ships in the escort list. This script needs a nightly build revision 5834 or later to work.
Table Entry
#Conditional Hooks $Application: FS2_Open $On Game Init: [ drawReticle = function(ship) if ship.Team.Name == "Hostile" then gr.setColor(255,50,50,255) elseif ship.Team.Name == "Friendly" then gr.setColor(0,255,0,255) elseif ship.Team.Name == "Unknown" then gr.setColor(255,255,0,255) end local x local y local x1 local y1 x,y,x1,y1 = gr.drawTargetingBrackets(ship, true) if x ~= nil and y1 ~= nil then gr.drawString(ship.Name, x, y1 + 4) end end ] $On HUD Draw: [ if missiontime == nil then missiontime = mn.getMissionTime() oldmissiontime = missiontime end if missiontime ~= nil then if hu.HUDDrawn then missiontime = mn.getMissionTime() if oldmissiontime ~= missiontime then if mn.EscortShips ~= nil then NumberEscorted = #mn.EscortShips for i= 1,NumberEscorted do escortedship = mn.EscortShips[i] if escortedship.Position:getScreenCoords() ~= false then drawReticle(escortedship) end end end end end oldmissiontime = missiontime end ] #End
Alternative Table Entry
#Conditional Hooks $Application: FS2_Open $On Game Init: [ drawReticle = function(ship) if ship.Team.Name == "Hostile" then gr.setColor(255,50,50,255) elseif ship.Team.Name == "Friendly" then gr.setColor(0,255,0,255) elseif ship.Team.Name == "Unknown" then gr.setColor(255,255,0,255) end local x local y local x1 local y1 plr = hv.Player if plr:isValid() then distance = ship.Position:getDistance(plr.Position) -- collision_pos = ship:checkRayCollision(plr.Position, ship.Position, false) -- distance = collision_pos:getDistance(plr.Position) end hippo_pct = math.floor((ship.HitpointsLeft / ship.Class.HitpointsMax) * 100) x,y,x1,y1 = gr.drawTargetingBrackets(ship, true) if x ~= nil and y1 ~= nil then gr.drawString(ship.Name, x+3, y+2) gr.drawString(ship.Class.Name, x+3, y+11) gr.drawString(hippo_pct, x+3, y+20) gr.drawString(distance, x+3, y+29) end end ] $On HUD Draw: [ if missiontime == nil then missiontime = mn.getMissionTime() oldmissiontime = missiontime end if missiontime ~= nil then if hu.HUDDrawn then missiontime = mn.getMissionTime() if oldmissiontime ~= missiontime then if mn.EscortShips ~= nil then NumberEscorted = #mn.EscortShips for i= 1,NumberEscorted do escortedship = mn.EscortShips[i] if escortedship.Position:getScreenCoords() ~= false then drawReticle(escortedship) end end end end end oldmissiontime = missiontime end ] #End