mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-04-28 14:59:31 -05:00
added states and functions for esero 2025 installation
This commit is contained in:
@@ -30,5 +30,10 @@ local linearFlight = [[
|
||||
]] .. util.flyLinearlyToNode('Sun-Handle', solarTargetDistance) .. [[
|
||||
]]
|
||||
|
||||
local jumpFlight = [[
|
||||
]] .. util.jumpToNode('Sun-Handle', solarTargetDistance) .. [[
|
||||
]]
|
||||
|
||||
asset.export("cameraPath", cameraPath)
|
||||
asset.export("linearFlight", linearFlight)
|
||||
asset.export("jumpFlight", jumpFlight)
|
||||
|
||||
@@ -44,6 +44,14 @@ asset.require("scene/solarsystem/missions/apollo/insignias_map")
|
||||
-- Voyager & Pioneer mission
|
||||
asset.require("scene/solarsystem/missions/voyagerpioneer/voyager1_2__pioneer10_11")
|
||||
|
||||
-- Juice mission
|
||||
asset.require("scene/solarsystem/missions/juice/model")
|
||||
asset.require("scene/solarsystem/missions/juice/fieldlines")
|
||||
asset.require("scene/solarsystem/missions/juice/trails/ssb")
|
||||
asset.require("scene/solarsystem/missions/juice/trails/earth")
|
||||
asset.require("scene/solarsystem/missions/juice/trails/jupiter")
|
||||
asset.require("scene/solarsystem/missions/juice/trails/ganymede")
|
||||
|
||||
-- ISS
|
||||
asset.require("scene/solarsystem/planets/earth/satellites/misc/iss")
|
||||
|
||||
@@ -113,6 +121,24 @@ asset.onInitialize(function ()
|
||||
-- Have Cassini missing trails faded out per default
|
||||
openspace.setPropertyValue("{cassini_trail}.Renderable.Fade", 0.0)
|
||||
|
||||
-- Hides Juice trails by default
|
||||
openspace.setPropertyValueSingle("Scene.JuiceTrail.Renderable.Enabled", false)
|
||||
openspace.setPropertyValueSingle("Scene.JuiceTrail.Renderable.Fade", 0.0)
|
||||
openspace.setPropertyValueSingle("Scene.JuiceTrailEarth.Renderable.Enabled", false)
|
||||
openspace.setPropertyValueSingle("Scene.JuiceTrailEarth.Renderable.Fade", 0.0)
|
||||
openspace.setPropertyValueSingle("Scene.JuiceTrailJupiter.Renderable.Enabled", false)
|
||||
openspace.setPropertyValueSingle("Scene.JuiceTrailJupiter.Renderable.Fade", 0.0)
|
||||
openspace.setPropertyValueSingle("Scene.JuiceTrailGanymede.Renderable.Enabled", false)
|
||||
openspace.setPropertyValueSingle("Scene.JuiceTrailGanymede.Renderable.Fade", 0.0)
|
||||
|
||||
-- Enable Ganymede Magnetosphere flow animation for fieldlines and hides them by default
|
||||
openspace.setPropertyValueSingle("Scene.GanymedeMagnetosphere.Renderable.Enabled", false)
|
||||
openspace.setPropertyValueSingle("Scene.GanymedeMagnetosphere.Renderable.Fade", 0.0)
|
||||
--openspace.setPropertyValueSingle("Scene.GanymedeMagnetosphere.Renderable.DomainEnabled", false)
|
||||
--openspace.setPropertyValueSingle("Scene.GanymedeMagnetosphere.Renderable.FlowEnabled", true)
|
||||
|
||||
|
||||
|
||||
-- Other planet color layers
|
||||
openspace.setPropertyValueSingle("Scene.Neptune.Renderable.Layers.ColorLayers.Texture.Enabled", true)
|
||||
openspace.setPropertyValueSingle("Scene.Earth.Renderable.Layers.NightLayers.Earth_at_Night_2012.Settings.Gamma", 0.5)
|
||||
|
||||
@@ -2,6 +2,8 @@ local util = asset.require('./utility_functions')
|
||||
local flyHome = asset.require('./fly_home_alternatives')
|
||||
local defaultTime = asset.require('./default_time').time
|
||||
|
||||
local inactivityView = {}
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- STATES
|
||||
----------------------------------------------------------------
|
||||
@@ -9,6 +11,20 @@ local startState = {
|
||||
Identifier = "Start",
|
||||
}
|
||||
|
||||
local inactiveState = {
|
||||
Identifier = "Inactive",
|
||||
Enter = [[
|
||||
]] .. util.jumpToNode("Earth", 6000000) .. [[
|
||||
openspace.setPropertyValueSingle("NavigationHandler.OrbitalNavigator.LimitZoom.EnableMaximumAllowedDistance", false)
|
||||
openspace.setPropertyValueSingle("NavigationHandler.OrbitalNavigator.DisableZoom", true);
|
||||
openspace.setPropertyValueSingle('Modules.Touch.TouchInteraction.DisableZoom', true);
|
||||
]],
|
||||
Exit = [[
|
||||
openspace.setPropertyValueSingle("NavigationHandler.OrbitalNavigator.DisableZoom", false);
|
||||
openspace.setPropertyValueSingle('Modules.Touch.TouchInteraction.DisableZoom', false);
|
||||
]]
|
||||
}
|
||||
|
||||
local homeState = {
|
||||
Identifier = "Home",
|
||||
Enter = [[
|
||||
@@ -50,13 +66,19 @@ local substateApollo = asset.require('./substates/missions/apollo')
|
||||
local substateMarsRovers = asset.require('./substates/missions/mars_rovers')
|
||||
local substateCassini = asset.require('./substates/missions/cassini')
|
||||
local substateVoyagerPioneer = asset.require('./substates/missions/voyager_pioneer')
|
||||
local substateJuice = asset.require('./substates/missions/juice')
|
||||
|
||||
-- Others
|
||||
local substateUniverse = asset.require('./substates/universe')
|
||||
local substateCBR = asset.require('./substates/cbr')
|
||||
local substateExoplanets = asset.require('./substates/exoplanets')
|
||||
local subStateDwarfPlanets = asset.require('./substates/dwarfplanets')
|
||||
local subStatePluto = asset.require('./substates/pluto')
|
||||
local subStateCeres = asset.require('./substates/ceres')
|
||||
|
||||
local states = {
|
||||
startState,
|
||||
inactiveState,
|
||||
homeState,
|
||||
solarSystemState
|
||||
}
|
||||
@@ -65,8 +87,13 @@ util.appendTable(states, substateApollo.states)
|
||||
util.appendTable(states, substateMarsRovers.states)
|
||||
util.appendTable(states, substateCassini.states)
|
||||
util.appendTable(states, substateVoyagerPioneer.states)
|
||||
util.appendTable(states, substateJuice.states)
|
||||
util.appendTable(states, substateUniverse.states)
|
||||
util.appendTable(states, substateCBR.states)
|
||||
util.appendTable(states, substateExoplanets.states)
|
||||
util.appendTable(states, subStateDwarfPlanets.states)
|
||||
util.appendTable(states, subStatePluto.states)
|
||||
util.appendTable(states, subStateCeres.states)
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- TRANSITIONS
|
||||
@@ -105,6 +132,44 @@ local transitions = {
|
||||
From = "Home",
|
||||
To = "SolarSystem"
|
||||
},
|
||||
-- Home <-> Inactive
|
||||
{
|
||||
From = "Home",
|
||||
To = "Inactive",
|
||||
Action = [[
|
||||
openspace.setPropertyValueSingle("Scene.MercuryTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.VenusTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.EarthTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.MarsTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.JupiterTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.SaturnTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.NeptuneTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.UranusTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.MoonTrail.Renderable.Enabled", false);
|
||||
openspace.setPropertyValueSingle("Scene.ISS_trail.Renderable.Enabled", false);
|
||||
]]
|
||||
},
|
||||
{
|
||||
From = "Inactive",
|
||||
To = "Home",
|
||||
Action = [[
|
||||
local anchor = openspace.propertyValue("NavigationHandler.OrbitalNavigator.Anchor")
|
||||
if (anchor ~= 'Sun-Handle' ) then ]]
|
||||
.. flyHome.cameraPath ..
|
||||
[[end
|
||||
|
||||
openspace.setPropertyValueSingle("Scene.MercuryTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.VenusTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.EarthTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.MarsTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.JupiterTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.SaturnTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.NeptuneTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.UranusTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.MoonTrail.Renderable.Enabled", true);
|
||||
openspace.setPropertyValueSingle("Scene.ISS_trail.Renderable.Enabled", true);
|
||||
]]
|
||||
}
|
||||
-- The rest are in the substates
|
||||
}
|
||||
|
||||
@@ -112,8 +177,13 @@ util.appendTable(transitions, substateApollo.transitions)
|
||||
util.appendTable(transitions, substateMarsRovers.transitions)
|
||||
util.appendTable(transitions, substateCassini.transitions)
|
||||
util.appendTable(transitions, substateVoyagerPioneer.transitions)
|
||||
util.appendTable(transitions, substateJuice.transitions)
|
||||
util.appendTable(transitions, substateUniverse.transitions)
|
||||
util.appendTable(transitions, substateCBR.transitions)
|
||||
util.appendTable(transitions, substateExoplanets.transitions)
|
||||
util.appendTable(transitions, subStateDwarfPlanets.transitions)
|
||||
util.appendTable(transitions, subStatePluto.transitions)
|
||||
util.appendTable(transitions, subStateCeres.transitions)
|
||||
|
||||
asset.onInitialize(function()
|
||||
openspace.statemachine.createStateMachine(states, transitions, "Start")
|
||||
|
||||
@@ -27,10 +27,15 @@ local states = { cbrState }
|
||||
local transitions = {
|
||||
-- Transition to/from this state
|
||||
{
|
||||
From = "Home",
|
||||
From = "Universe",
|
||||
To = "CBR",
|
||||
Action = [[]] -- This flight happens on the webpage
|
||||
},
|
||||
{
|
||||
From = "CBR",
|
||||
To = "Universe",
|
||||
Action = flyHome.linearFlight
|
||||
},
|
||||
{
|
||||
From = "CBR",
|
||||
To = "Home",
|
||||
|
||||
@@ -0,0 +1,44 @@
|
||||
local util = asset.require('./../utility_functions')
|
||||
local flyHome = asset.require('./../fly_home_alternatives')
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- STATES
|
||||
----------------------------------------------------------------
|
||||
local ceresState = {
|
||||
Identifier = "Ceres",
|
||||
Enter = [[]],
|
||||
Exit = [[]]
|
||||
}
|
||||
|
||||
local states = { ceresState }
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- TRANSITIONS within this substate
|
||||
----------------------------------------------------------------
|
||||
local transitions = {
|
||||
-- Transition to/from this state
|
||||
{
|
||||
From = "DwarfPlanets",
|
||||
To = "Ceres"
|
||||
},
|
||||
{
|
||||
From = "Ceres",
|
||||
To = "Pluto"
|
||||
},
|
||||
{
|
||||
From = "Pluto",
|
||||
To = "Ceres"
|
||||
},
|
||||
{
|
||||
From = "Ceres",
|
||||
To = "DwarfPlanets"
|
||||
},
|
||||
{
|
||||
From = "Ceres",
|
||||
To = "Home",
|
||||
Action = flyHome.linearFlight
|
||||
}
|
||||
}
|
||||
|
||||
asset.export("states", states)
|
||||
asset.export("transitions", transitions)
|
||||
@@ -0,0 +1,60 @@
|
||||
local util = asset.require('./../utility_functions')
|
||||
local flyHome = asset.require('./../fly_home_alternatives')
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- STATES
|
||||
----------------------------------------------------------------
|
||||
local dwarfPlanetState = {
|
||||
Identifier = "DwarfPlanets",
|
||||
Enter = [[
|
||||
]] .. util.setOrbitSpeedFactor(0.4) .. [[
|
||||
]] .. util.startOrbiting() .. [[
|
||||
]] .. util.orbitAroundUpOnArrival() .. [[
|
||||
openspace.setPropertyValueSingle("Scene.Jupiter.Renderable.Layers.ColorLayers.JupiterVideo.TileProvider.VideoPlayer.Play", nil)
|
||||
]],
|
||||
Exit = [[
|
||||
openspace.setPropertyValue('{moonTrail_minor}.Renderable.Enabled', false);
|
||||
openspace.setPropertyValueSingle("Scene.Jupiter.Renderable.Layers.ColorLayers.JupiterVideo.TileProvider.VideoPlayer.Pause", nil)
|
||||
]] .. util.stopOrbiting() .. [[
|
||||
]]
|
||||
}
|
||||
|
||||
local states = { dwarfPlanetState }
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- TRANSITIONS within this substate
|
||||
----------------------------------------------------------------
|
||||
local transitions = {
|
||||
-- Transition to/from this state
|
||||
{
|
||||
From = "SolarSystem",
|
||||
To = "DwarfPlanets"
|
||||
},
|
||||
{
|
||||
From = "DwarfPlanets",
|
||||
To = "Pluto"
|
||||
},
|
||||
{
|
||||
From = "DwarfPlanets",
|
||||
To = "Ceres"
|
||||
},
|
||||
{
|
||||
From = "Pluto",
|
||||
To = "DwarfPlanets"
|
||||
},
|
||||
{
|
||||
From = "Ceres",
|
||||
To = "DwarfPlanets"
|
||||
},
|
||||
{
|
||||
From = "DwarfPlanets",
|
||||
To = "SolarSystem"
|
||||
},
|
||||
{
|
||||
From = "DwarfPlanets",
|
||||
To = "Home"
|
||||
}
|
||||
}
|
||||
|
||||
asset.export("states", states)
|
||||
asset.export("transitions", transitions)
|
||||
@@ -35,14 +35,19 @@ local states = { exoplanetsState }
|
||||
local transitions = {
|
||||
-- Transition to/from this state
|
||||
{
|
||||
From = "Home",
|
||||
From = "Universe",
|
||||
To = "Exoplanets"
|
||||
},
|
||||
{
|
||||
From = "Exoplanets",
|
||||
To = "Home"
|
||||
To = "Universe"
|
||||
-- No action. Should already be at the desired distance
|
||||
}
|
||||
},
|
||||
{
|
||||
From = "Exoplanets",
|
||||
To = "Home",
|
||||
Action = flyHome.linearFlight
|
||||
},
|
||||
}
|
||||
|
||||
asset.export("states", states)
|
||||
|
||||
@@ -0,0 +1,111 @@
|
||||
local util = asset.require('./../../utility_functions')
|
||||
local flyHome = asset.require('./../../fly_home_alternatives')
|
||||
local defaultTime = asset.require('./../../default_time').time
|
||||
|
||||
-- local predefinedTime = "2025-04-15T14:00:00.505"
|
||||
|
||||
local heightNear = 10
|
||||
local heightFar = 1.0E12
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- STATES
|
||||
----------------------------------------------------------------
|
||||
local trails = { "JuiceTrail", "JuiceTrailEarth", "JuiceTrailJupiter", "JuiceTrailGanymede" }
|
||||
|
||||
local juiceNavigationState = [[{
|
||||
Anchor="Juice",
|
||||
Pitch = 1.3745455550924389e-05,
|
||||
Position = { -12.507247924804688, 3.0131072998046875, -1.77764892578125 },
|
||||
ReferenceFrame = "Root",
|
||||
Up = { 0.04795887271975485, -0.352338472374508, -0.934643005329975 },
|
||||
Yaw = -9.46004722316628e-06
|
||||
}]]
|
||||
|
||||
local juiceState = {
|
||||
Identifier = "Juice"
|
||||
}
|
||||
|
||||
local juiceGoToNearState = {
|
||||
Identifier = "JuiceGoToNear",
|
||||
Enter = util.flyLinearlyToHeightInTime(heightNear, 3),
|
||||
Exit = [[]]
|
||||
}
|
||||
|
||||
local juiceGoToFarState = {
|
||||
Identifier = "JuiceGoToFar",
|
||||
Enter = util.flyLinearlyToHeightInTime(heightFar, 3),
|
||||
Exit = [[]]
|
||||
}
|
||||
|
||||
local states = {
|
||||
juiceState,
|
||||
juiceGoToNearState,
|
||||
juiceGoToFarState
|
||||
}
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- TRANSITIONS within this substate
|
||||
----------------------------------------------------------------
|
||||
-- The action we want to happen when moving from any of the substates back
|
||||
-- to the Home state
|
||||
local onLeavingMainStateAction = [[
|
||||
]] .. util.setTime(defaultTime) .. [[
|
||||
]] .. flyHome.jumpFlight .. [[
|
||||
]] .. util.disableRoll() .. [[
|
||||
]] .. util.stopOrbiting() .. [[
|
||||
]] .. util.fadeOutNodes(trails) .. [[
|
||||
]]
|
||||
|
||||
local arrivalDistance = 25.0
|
||||
local transitions = {
|
||||
{
|
||||
-- Note: Juice mission is only valid until 2035 OCT 05. After this this part of the code will result in incorrect visuals :)
|
||||
From = "Home",
|
||||
To = "Juice",
|
||||
Action = [[
|
||||
]] .. util.setCurveType("AvoidCollisionWithLookAt") .. [[
|
||||
]] .. util.orbitConstantLatitudeOnArrival() .. [[
|
||||
]] .. util.enableRoll() .. [[
|
||||
]] .. util.fadeInNodes({ "JuiceTrail" }) .. [[
|
||||
]] .. util.jumpToNavState(juiceNavigationState) .. [[
|
||||
]]
|
||||
},
|
||||
|
||||
-- Juice to X transition
|
||||
{
|
||||
From = "Juice",
|
||||
To = "JuiceGoToFar"
|
||||
},
|
||||
|
||||
-- Near to X transitions
|
||||
{
|
||||
From = "JuiceGoToNear",
|
||||
To = "JuiceGoToFar",
|
||||
},
|
||||
|
||||
-- Far to X transitions
|
||||
{
|
||||
From = "JuiceGoToFar",
|
||||
To = "JuiceGoToNear"
|
||||
},
|
||||
|
||||
-- Home transitions
|
||||
{
|
||||
From = "Juice",
|
||||
To = "Home",
|
||||
Action = onLeavingMainStateAction
|
||||
},
|
||||
{
|
||||
From = "JuiceGoToNear",
|
||||
To = "Home",
|
||||
Action = onLeavingMainStateAction
|
||||
},
|
||||
{
|
||||
From = "JuiceGoToFar",
|
||||
To = "Home",
|
||||
Action = onLeavingMainStateAction
|
||||
},
|
||||
}
|
||||
|
||||
asset.export("states", states)
|
||||
asset.export("transitions", transitions)
|
||||
@@ -0,0 +1,44 @@
|
||||
local util = asset.require('./../utility_functions')
|
||||
local flyHome = asset.require('./../fly_home_alternatives')
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- STATES
|
||||
----------------------------------------------------------------
|
||||
local plutoState = {
|
||||
Identifier = "Pluto",
|
||||
Enter = [[]],
|
||||
Exit = [[]]
|
||||
}
|
||||
|
||||
local states = { plutoState }
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- TRANSITIONS within this substate
|
||||
----------------------------------------------------------------
|
||||
local transitions = {
|
||||
-- Transition to/from this state
|
||||
{
|
||||
From = "DwarfPlanets",
|
||||
To = "Pluto"
|
||||
},
|
||||
{
|
||||
From = "Pluto",
|
||||
To = "Ceres"
|
||||
},
|
||||
{
|
||||
From = "Ceres",
|
||||
To = "Pluto"
|
||||
},
|
||||
{
|
||||
From = "Pluto",
|
||||
To = "DwarfPlanets"
|
||||
},
|
||||
{
|
||||
From = "Pluto",
|
||||
To = "Home",
|
||||
Action = flyHome.linearFlight
|
||||
}
|
||||
}
|
||||
|
||||
asset.export("states", states)
|
||||
asset.export("transitions", transitions)
|
||||
@@ -0,0 +1,56 @@
|
||||
local util = asset.require('./../utility_functions')
|
||||
local flyHome = asset.require('./../fly_home_alternatives')
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- STATES
|
||||
----------------------------------------------------------------
|
||||
local universeState = {
|
||||
Identifier = "Universe",
|
||||
Enter = [[
|
||||
]] .. util.setOrbitSpeedFactor(0.4) .. [[
|
||||
]] .. util.startOrbiting() .. [[
|
||||
]] .. util.orbitAroundUpOnArrival() .. [[
|
||||
openspace.setPropertyValueSingle("Scene.Jupiter.Renderable.Layers.ColorLayers.JupiterVideo.TileProvider.VideoPlayer.Play", nil)
|
||||
]],
|
||||
Exit = [[
|
||||
openspace.setPropertyValue('{moonTrail_minor}.Renderable.Enabled', false);
|
||||
openspace.setPropertyValueSingle("Scene.Jupiter.Renderable.Layers.ColorLayers.JupiterVideo.TileProvider.VideoPlayer.Pause", nil)
|
||||
]] .. util.stopOrbiting() .. [[
|
||||
]]
|
||||
}
|
||||
|
||||
local states = { universeState }
|
||||
|
||||
----------------------------------------------------------------
|
||||
-- TRANSITIONS within this substate
|
||||
----------------------------------------------------------------
|
||||
local transitions = {
|
||||
-- Transition to/from this state
|
||||
{
|
||||
From = "Home",
|
||||
To = "Universe"
|
||||
},
|
||||
{
|
||||
From = "Universe",
|
||||
To = "CBR"
|
||||
},
|
||||
{
|
||||
From = "Universe",
|
||||
To = "Exoplanets"
|
||||
},
|
||||
{
|
||||
From = "CBR",
|
||||
To = "Universe"
|
||||
},
|
||||
{
|
||||
From = "Exoplanets",
|
||||
To = "Universe"
|
||||
},
|
||||
{
|
||||
From = "Universe",
|
||||
To = "Home"
|
||||
}
|
||||
}
|
||||
|
||||
asset.export("states", states)
|
||||
asset.export("transitions", transitions)
|
||||
@@ -117,12 +117,24 @@ local flyToNavState = function(state)
|
||||
]]
|
||||
end
|
||||
|
||||
local flyLinearlyToHeight = function(height)
|
||||
local jumpToNavState = function(state)
|
||||
return [[
|
||||
openspace.pathnavigation.flyToNavigationState(]] .. state .. [[, 0)
|
||||
]]
|
||||
end
|
||||
|
||||
local flyLinearlyToHeight = function(height, seconds)
|
||||
return [[
|
||||
openspace.pathnavigation.zoomToDistance(]] .. tostring(height) .. [[)
|
||||
]]
|
||||
end
|
||||
|
||||
local flyLinearlyToHeightInTime = function(height, seconds)
|
||||
return [[
|
||||
openspace.pathnavigation.zoomToDistance(]] .. tostring(height) .. "," .. seconds .. [[)
|
||||
]]
|
||||
end
|
||||
|
||||
local flyLinearlyToNode = function(node, distance)
|
||||
return [[
|
||||
openspace.pathnavigation.createPath({
|
||||
@@ -134,6 +146,17 @@ local flyLinearlyToNode = function(node, distance)
|
||||
]]
|
||||
end
|
||||
|
||||
local jumpToNode = function(node, distance)
|
||||
return [[
|
||||
openspace.pathnavigation.createPath({
|
||||
TargetType = 'Node',
|
||||
Target = ']] .. node ..[[',
|
||||
Height = ]] .. tostring(distance or nil) .. [[,
|
||||
Duration = 0.0
|
||||
})
|
||||
]]
|
||||
end
|
||||
|
||||
local setCurveType = function(type)
|
||||
local typeAsInt = 0
|
||||
if (type == "ZoomOutOverview") then
|
||||
@@ -223,8 +246,11 @@ asset.export("changeAnchor", changeAnchor)
|
||||
asset.export("enableRoll", enableRoll)
|
||||
asset.export("disableRoll", disableRoll)
|
||||
asset.export("flyToNavState", flyToNavState)
|
||||
asset.export("jumpToNavState", jumpToNavState)
|
||||
asset.export("flyLinearlyToHeight", flyLinearlyToHeight)
|
||||
asset.export("flyLinearlyToHeightInTime", flyLinearlyToHeightInTime)
|
||||
asset.export("flyLinearlyToNode", flyLinearlyToNode)
|
||||
asset.export("jumpToNode", jumpToNode)
|
||||
asset.export("setCurveType", setCurveType)
|
||||
asset.export("setTime", setTime)
|
||||
asset.export("interpolateTime", interpolateTime)
|
||||
|
||||
Reference in New Issue
Block a user