local M = {} local shift_knob_status = 0 local shift_knob_currentGear = 0 local function init() shift_knob_status = 1 electrics.values.shift_knob = 0 shift_knob_currentGear = 3 end local function updateGFX(dt) if ((shift_knob_currentGear < electrics.values.gearModeIndex) and shift_knob_status == 1) then shift_knob_currentGear = electrics.values.gearModeIndex shift_knob_status = 2 electrics.values.shift_knob = 0 elseif ((shift_knob_currentGear > electrics.values.gearModeIndex) and shift_knob_status == 1) then shift_knob_currentGear = electrics.values.gearModeIndex shift_knob_status = 0 electrics.values.shift_knob = 0 else shift_knob_currentGear = electrics.values.gearModeIndex end if shift_knob_status == 2 then if electrics.values.shift_knob > 1 then shift_knob_status = 1.5 else electrics.values.shift_knob = electrics.values.shift_knob + 0.1 end end if shift_knob_status == 1.5 then if electrics.values.shift_knob <= 0.1 then shift_knob_status = 1 electrics.values.shift_knob = 0 else electrics.values.shift_knob = electrics.values.shift_knob - 0.1 end end if shift_knob_status == 0 then if electrics.values.shift_knob < -1 then shift_knob_status = 0.5 else electrics.values.shift_knob = electrics.values.shift_knob - 0.1 end end if shift_knob_status == 0.5 then if electrics.values.shift_knob >= -0.1 then shift_knob_status = 1 electrics.values.shift_knob = 0 else electrics.values.shift_knob = electrics.values.shift_knob + 0.1 end end end M.init = init M.updateGFX = updateGFX return M