#Conditional Hooks ; ets get/set $Application: FS2_Open $On Game Init: [ preset1 = { 4,4,4 } preset2 = { 4,4,4 } function ets_get ( target_ship ) if target_ship:isValid() then local tmp = { 4,4,4 } tmp[1] = target_ship.EtsEngineIndex tmp[2] = target_ship.EtsShieldIndex tmp[3] = target_ship.EtsWeaponIndex return tmp end end ] $State: GS_STATE_GAME_PLAY $On State Start: [ InputStates = {} ui_keyToggleFunctions = {} ui_keyToggleFunctions["5"] = function(val) InputStates.five = val end --set static indexes ui_keyToggleFunctions["6"] = function(val) InputStates.six = val end --set preset1 to all ships ui_keyToggleFunctions["7"] = function(val) InputStates.seven = val end --set preset1 ui_keyToggleFunctions["8"] = function(val) InputStates.eight = val end --set preset2 ui_keyToggleFunctions["9"] = function(val) InputStates.nine = val end --use preset1 ui_keyToggleFunctions["0"] = function(val) InputStates.zero = val end --use preset2 ] $On Key Pressed: [ local key = hv.Key local func = ui_keyToggleFunctions[key] if func then func(true) end ] $On Key Released: [ local key = hv.Key local func = ui_keyToggleFunctions[key] if func then func(false) end ] $On Frame: [ if MissionTime == nil then MissionTime = mn.getMissionTime() OldMissionTime = MissionTime end MissionTime = mn.getMissionTime() if OldMissionTime ~= MissionTime then local pship = mn.getObjectFromSignature(hv.Player:getSignature()) --Keyboard responses if InputStates.five then InputStates.five = false pship:EtsSetIndexes ( 2,2,8 ) end if InputStates.six then InputStates.six = false local num_ships = #mn.Ships for i=1,num_ships do local ship = mn.Ships[i] if ship:isValid() then ship:EtsSetIndexes ( preset1[1], preset1[2], preset1[3] ) end end end if InputStates.seven then InputStates.seven = false preset1 = ets_get (pship) end if InputStates.eight then InputStates.eight = false preset2 = ets_get (pship) end if InputStates.nine then InputStates.nine = false pship:EtsSetIndexes ( preset1[1], preset1[2], preset1[3] ) end if InputStates.zero then InputStates.zero = false pship:EtsSetIndexes ( preset2[1], preset2[2], preset2[3] ) end end ] $On HUD Draw: [ if hu.HUDDrawn == true then gr.drawString(preset1[1]) gr.drawString(preset1[2]) gr.drawString(preset1[3]) gr.drawString("") gr.drawString(preset2[1]) gr.drawString(preset2[2]) gr.drawString(preset2[3]) end ] #End