rendered paste body#Global Hooks$GameInit:[ --lA = {2,2,11,99) -- x1, y1, x2, y2 --rA = {1013,2,1023,99}drawLeftArrow = function() gr.setColor(16,21,16) gr.drawRectangle(1,1,12,100,false) gr.setColor(79,104,79) gr.drawLine(2,50,11,2) gr.drawLine(2,50,11,99) gr.drawLine(11,2,11,99)enddrawRightArrow = function() gr.setColor(16,21,16) gr.drawRectangle(1012,1,1024,100,false) gr.setColor(79,104,79) gr.drawLine(1013,2,1023,50) gr.drawLine(1013,99,1023,50) gr.drawLine(1013,2,1013,99)enddrawPanel = function(number) gr.setColor(16,21,16) gr.drawRectangle(12+(200*number),1,212+(200*number), 100, false) gr.drawRectangle(13+(200*number),2,211+(200*number), 99, false)endscrollPanel = function(curScroll, change) curScroll = curScroll + change return curScrollend]$HUD:[if missionInit == nil then missionInit = 42 topScroll = 1end shipInFocus = mn.Ships['GTC Orff'] numFocusSubsys = #shipInFocus numShips = #mn.Shipsio.setMouseHidden(false)drawLeftArrow()--PANEL STUFF!for i = 0, 4 do drawPanel(i) thisPanel = topScroll + i textStart = (200*(i+1)) - 180 thisSubsystem = shipInFocus[thisPanel] --This Subsystem's Handle thisSubsystemName = thisSubsystem:getName() --This Subsystem's Name thisSubsysTargetPos = thisSubsystem.Target.Position --This Subsystem's Target --if thisSubsystem.Target:isValid() then -- realTarget = thisSubsystem.Target.Name --else -- realTarget = nil --end target = thisSubsystem.Target if target:isValid() then if target:getBreedName() == "ship" then realTarget = target.Name else realTarget = nil end end thisSubsysHealth = math.floor((thisSubsystem.HitpointsLeft / thisSubsystem.HitpointsMax)*100) thisSubsysPosition = thisSubsystem.Position if #thisSubsystem.PrimaryBanks ~= 0 then --do we have Primaries? thisWeaponName = thisSubsystem.PrimaryBanks[1].WeaponClass.Name --Sorta hackish, I'm just going to assume the first bank is the same as the rest elseif #thisSubsystem.SecondaryBanks ~= 0 then --or Secondaries? thisWeaponName = thisSubsystem.SecondaryBanks[1].WeaponClass.Name else --or uh, nothing at all? thisWeaponName = nil end -- <hack> --realTarget = nil --for j=1, numShips do -- targetShip = mn.Ships[j] -- thisPosition = targetShip.Position -- if thisSubsysTargetPos[1] == thisPosition[1] and thisSubsysTargetPos[2] == thisPosition[2] and thisSubsysTargetPos[3] == thisPosition[3] then -- realTarget = targetShip.Name -- end --end -- </hack> --DRAWING PANEL INFO STARTS HERE gr.setColor(79,104,79) gr.drawString("Panel " .. thisPanel, textStart, 10) --Draw Subsystem Number gr.drawString(thisSubsystemName, textStart, 20) --Draw Subsystem Name if thisWeaponName ~= nil then --Draw Subsystem Weapon (if any) gr.drawString("Weapon: " .. thisWeaponName, textStart, 30) end if realTarget == nil then --Draw Subsystem Target gr.drawString("Target: None",textStart,40) else gr.drawString("Target: " .. realTarget,textStart,40) end if thisSubsysHealth < 25 then gr.setColor(192,0,0) elseif thisSubsysHealth < 50 then gr.setColor(255,242,0) elseif thisSubsysHealth < 75 then gr.setColor(247,148,29) end gr.drawString("Strength: " .. thisSubsysHealth .. "%",textStart,50) --Draw Subsystem Health --DRAW ONSCREEN STUFF HERE enddrawRightArrow()--SHIP STUFF thisShipName = shipInFocus.Name thisShipClass = shipInFocus.Class.Name thisShipHealth = math.floor((shipInFocus.HitpointsLeft/shipInFocus.HitpointsMax)*100) gr.setColor(79,104,79) gr.drawString(thisShipName, 750, 500) gr.drawString(thisShipClass, 750, 510) gr.drawString(thisShipHealth, 750, 520)--CLICKING STUFF--Need to clean this up so one click = one panel change--Go down panel listif io.isButtonDown(MOUSE_LEFT_BUTTON) and io.getX() > 2 and io.getY() > 2 and io.getX() < 11 and io.getY() < 99 then if topScroll > 1 then topScroll = scrollPanel(topScroll, -1) endend--Go up panel listif io.isButtonDown(MOUSE_LEFT_BUTTON) and io.getX() > 1013 and io.getY() > 2 and io.getX() < 1023 and io.getY() < 99 then if (topScroll + 4) < numFocusSubsys then topScroll = scrollPanel(topScroll, 1) endend]#End