65 lines
1.5 KiB
Lua
65 lines
1.5 KiB
Lua
--[[
|
|
-- Music will get called with a string parameter indicating status.
|
|
-- Valid Parameters:
|
|
-- load - game is loading.
|
|
-- land - player landed.
|
|
-- takeoff - player took off.
|
|
-- combat - Player just got a hostile on screen.
|
|
-- idle - Current playing music ran out.
|
|
]]--
|
|
last = "idle"
|
|
function choose(str)
|
|
if str == "load" then
|
|
music.load("machina")
|
|
music.play()
|
|
|
|
elseif str == "land" then
|
|
planet = space.getPlanet()
|
|
class = planet:class()
|
|
|
|
if class == "M" then
|
|
mus = "agriculture"
|
|
elseif name == "Anecu" then -- TODO: We need a way to differenciate aquatics.
|
|
mus = "ocean"
|
|
elseif class == "P" then
|
|
mus = "snow"
|
|
else
|
|
if planet:services() > 0 then
|
|
mus = "cosmostation"
|
|
else
|
|
mus = "agriculture"
|
|
end
|
|
end
|
|
|
|
music.load(mus)
|
|
music.play()
|
|
|
|
elseif str == "takeoff" then
|
|
takeoff = { "liftoff", "launch2", "launch3chatstart" }
|
|
music.load(takeoff[rnd.int(1, #takeoff)])
|
|
music.play()
|
|
|
|
elseif str == "ambient" then
|
|
ambient = { "peace1", "mission", "peace2", "peace4", "peace6" }
|
|
music.load(ambient[rnd.int(1, #ambient)])
|
|
music.play()
|
|
|
|
elseif str == "combat" then
|
|
music.load("galacticbattle")
|
|
music.play()
|
|
|
|
elseif str == "idle" and last ~= "idle" then
|
|
-- We'll play the same as last unless it was takeoff.
|
|
if last == "takeoff" then
|
|
choose("ambient")
|
|
else
|
|
choose(last)
|
|
end
|
|
end
|
|
|
|
if str ~= "idle" then
|
|
last = str -- Save the last string so we can use it.
|
|
end
|
|
end
|
|
|