local stateMachineHelper = asset.require("util/lua_state_machine_helper")

local states = {
  {
    Title = "Highlight EarthTrail",
    Play = function ()
      openspace.setPropertyValue("Scene.EarthTrail.Renderable.Appearance.LineWidth", 10, 1)
    end,
    Rewind = function ()
      openspace.setPropertyValue("Scene.EarthTrail.Renderable.Appearance.LineWidth", 2, 1)
    end
  }, 
  {
    Title = "Highlight MarsTrail",
    Play = function ()
      openspace.setPropertyValue("Scene.EarthTrail.Renderable.Appearance.LineWidth", 2, 1)
      openspace.setPropertyValue("Scene.MarsTrail.Renderable.Appearance.LineWidth", 10, 1)
    end,
    Rewind = function ()
      openspace.setPropertyValue("Scene.MarsTrail.Renderable.Appearance.LineWidth", 2, 1)
      openspace.setPropertyValue("Scene.EarthTrail.Renderable.Appearance.LineWidth", 10, 1)
    end
  }
}

local stateMachine

function next()
  stateMachine.goToNextState()
end

function previous()
  stateMachine.goToPreviousState()
end

asset.onInitialize(function()
  stateMachine = stateMachineHelper.createStateMachine(states)
  openspace.bindKey("RIGHT", "next()")
  openspace.bindKey("LEFT", "previous()")
end)


asset.onDeinitialize(function()
  stateMachine = nil
  openspace.clearKey("RIGHT")
  openspace.clearKey("LEFT")
end)
