From d776cbeec795835a704ea2cb0dfe5bc963b6db36 Mon Sep 17 00:00:00 2001 From: James De Ricco Date: Fri, 10 May 2024 14:34:29 -0400 Subject: [PATCH] Change music author field to authors Support display of multiple authors of a song in the level editor file system menu hover help text for music. --- data/music/antarctic/airship_remix-2.music | 2 +- data/music/antarctic/airship_remix.music | 2 +- data/music/antarctic/arctic_breeze.music | 2 +- data/music/antarctic/arctic_cave.music | 2 +- data/music/antarctic/bossattack.music | 2 +- data/music/antarctic/cave.music | 2 +- data/music/antarctic/chipdisko.music | 2 +- data/music/antarctic/jewels.music | 2 +- data/music/antarctic/salcon.music | 2 +- data/music/antarctic/voc-boss.music | 2 +- data/music/antarctic/voc-dark.music | 2 +- data/music/antarctic/voc-daytime.music | 2 +- data/music/antarctic/voc-daytime2.music | 2 +- data/music/antarctic/voc-night.music | 2 +- data/music/castle/darkforestkeep.music | 2 +- data/music/castle/fortress.music | 2 +- .../forest/beneath_the_rabbit_hole.music | 2 +- data/music/forest/bright_thunders.music | 2 +- .../forest/call_of_the_winding_path.music | 2 +- data/music/forest/clavelian_march.music | 2 +- data/music/forest/forest-cave.music | 2 +- data/music/forest/forest-sprint.music | 2 +- data/music/forest/forest.music | 2 +- data/music/forest/forest2.music | 2 +- data/music/forest/forest3.music | 2 +- data/music/forest/forest_theme.music | 2 +- data/music/forest/ghostforest.music | 2 +- data/music/forest/ghostforest2.music | 2 +- data/music/forest/ghostforest_map.music | 2 +- data/music/forest/greatgigantic.music | 2 +- .../forest/march_of_the_malevolent.music | 2 +- data/music/forest/new_forest_map.music | 2 +- data/music/forest/shallow-green.music | 2 +- data/music/forest/treeboss.music | 2 +- data/music/forest/wisphunt.music | 2 +- data/music/misc/battle_theme.music | 2 +- data/music/misc/bonuscave.music | 2 +- data/music/misc/credits.music | 2 +- data/music/misc/halloween_1.music | 2 +- data/music/misc/intro.music | 2 +- data/music/misc/theme.music | 2 +- data/music/retro/cave_old.music | 2 +- data/music/retro/fortress_old.music | 2 +- data/music/retro/ice_music.music | 2 +- data/music/retro/worldmap_old.music | 2 +- data/music/tropical/saharan_penguin.music | 2 +- data/music/tropical/tropicalbreeze.music | 2 +- src/audio/sound_file.cpp | 12 +++-------- src/audio/sound_file.hpp | 5 +++-- src/editor/object_settings.cpp | 21 ++++++++++++------- 50 files changed, 67 insertions(+), 65 deletions(-) diff --git a/data/music/antarctic/airship_remix-2.music b/data/music/antarctic/airship_remix-2.music index cb6105bcca4..0cf21778411 100644 --- a/data/music/antarctic/airship_remix-2.music +++ b/data/music/antarctic/airship_remix-2.music @@ -1,7 +1,7 @@ (supertux-music (file "airship_2.ogg") (title "Airship 2") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at 202) diff --git a/data/music/antarctic/airship_remix.music b/data/music/antarctic/airship_remix.music index 44363c74a21..8d3f239b52f 100644 --- a/data/music/antarctic/airship_remix.music +++ b/data/music/antarctic/airship_remix.music @@ -1,7 +1,7 @@ (supertux-music (file "airship_remix.ogg") (title "Airship Song Orchestral Mix") - (author "Bart Kelsey") + (authors "Bart Kelsey") (license "CC-BY-SA 3.0 / GPL 3.0 / GPL 2.0") (loop-begin 4) (loop-at 58) diff --git a/data/music/antarctic/arctic_breeze.music b/data/music/antarctic/arctic_breeze.music index 53010f4806f..873547337bb 100644 --- a/data/music/antarctic/arctic_breeze.music +++ b/data/music/antarctic/arctic_breeze.music @@ -1,7 +1,7 @@ (supertux-music (file "arctic_breeze.ogg") (title "Antarctic Breeze") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at 197) diff --git a/data/music/antarctic/arctic_cave.music b/data/music/antarctic/arctic_cave.music index 7d3181fc819..fc6914acfe3 100644 --- a/data/music/antarctic/arctic_cave.music +++ b/data/music/antarctic/arctic_cave.music @@ -1,7 +1,7 @@ (supertux-music (file "arctic_cave.ogg") (title "Eyes in the Deep") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at 267) diff --git a/data/music/antarctic/bossattack.music b/data/music/antarctic/bossattack.music index 387e7340938..b37461d4cf1 100644 --- a/data/music/antarctic/bossattack.music +++ b/data/music/antarctic/bossattack.music @@ -1,7 +1,7 @@ (supertux-music (file "bossattack.ogg") (title "Boss Attack") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 0.5) (loop-at -1) diff --git a/data/music/antarctic/cave.music b/data/music/antarctic/cave.music index 59a85bdcac8..ea388ebd6ea 100644 --- a/data/music/antarctic/cave.music +++ b/data/music/antarctic/cave.music @@ -1,7 +1,7 @@ (supertux-music (file "cave.ogg") (title "The Cave (Milestone 2 Version)") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at -1) diff --git a/data/music/antarctic/chipdisko.music b/data/music/antarctic/chipdisko.music index db8874ae549..1a57508600d 100644 --- a/data/music/antarctic/chipdisko.music +++ b/data/music/antarctic/chipdisko.music @@ -1,7 +1,7 @@ (supertux-music (file "chipdisko.ogg") (title "Mortimer's Chipdisko") - (author "Lukas Nystrand (as Mortimer Twang)") + (authors "Lukas Nystrand (as Mortimer Twang)") (license "CC-BY-SA / GPL") (loop-begin 0) (loop-at 158) diff --git a/data/music/antarctic/jewels.music b/data/music/antarctic/jewels.music index 9f261a17042..fbe07d47911 100644 --- a/data/music/antarctic/jewels.music +++ b/data/music/antarctic/jewels.music @@ -1,6 +1,6 @@ (supertux-music (file "jewels.ogg") - (author "Alex \"cynicmusic\" Smith edited by congusbongus") + (authors "Alex \"cynicmusic\" Smith" "congusbongus") (title "Crystal Cave + Mysterious Ambience (seamless loop)") (license "CC-BY 3.0 / CC-BY-SA 3.0 / GPL 3.0") (loop-begin 0) diff --git a/data/music/antarctic/salcon.music b/data/music/antarctic/salcon.music index cd09a8b5120..d26c16437a6 100644 --- a/data/music/antarctic/salcon.music +++ b/data/music/antarctic/salcon.music @@ -1,6 +1,6 @@ (supertux-music (file "salcon.ogg") - (author "DJ Gentoo based on work by Asbjorn \"Mystical\" Andersen") + (authors "DJ Gentoo" "Asbjorn \"Mystical\" Andersen") (title "Salsa Con Carne (remix)") (license "CC-BY-SA / GPL") (loop-begin 0) diff --git a/data/music/antarctic/voc-boss.music b/data/music/antarctic/voc-boss.music index 46c54be6cdd..99c92ec3921 100644 --- a/data/music/antarctic/voc-boss.music +++ b/data/music/antarctic/voc-boss.music @@ -1,6 +1,6 @@ (supertux-music (file "voc-boss.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at -1) diff --git a/data/music/antarctic/voc-dark.music b/data/music/antarctic/voc-dark.music index f13521c03e1..83e1bf86ca7 100644 --- a/data/music/antarctic/voc-dark.music +++ b/data/music/antarctic/voc-dark.music @@ -1,6 +1,6 @@ (supertux-music (file "voc-dark.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at -1) diff --git a/data/music/antarctic/voc-daytime.music b/data/music/antarctic/voc-daytime.music index fd87ccaa8b8..857a0f3b7bd 100644 --- a/data/music/antarctic/voc-daytime.music +++ b/data/music/antarctic/voc-daytime.music @@ -1,6 +1,6 @@ (supertux-music (file "voc-daytime.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at -1) diff --git a/data/music/antarctic/voc-daytime2.music b/data/music/antarctic/voc-daytime2.music index 29673d95171..95bc95106cd 100644 --- a/data/music/antarctic/voc-daytime2.music +++ b/data/music/antarctic/voc-daytime2.music @@ -1,6 +1,6 @@ (supertux-music (file "voc-daytime2.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at -1) diff --git a/data/music/antarctic/voc-night.music b/data/music/antarctic/voc-night.music index 0c7d1202b9a..2dc36181c78 100644 --- a/data/music/antarctic/voc-night.music +++ b/data/music/antarctic/voc-night.music @@ -1,6 +1,6 @@ (supertux-music (file "voc-night.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 4.648) (loop-at 73.231) diff --git a/data/music/castle/darkforestkeep.music b/data/music/castle/darkforestkeep.music index 99be23277d7..a56e4fc3f66 100644 --- a/data/music/castle/darkforestkeep.music +++ b/data/music/castle/darkforestkeep.music @@ -1,6 +1,6 @@ (supertux-music (file "darkforestkeep.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Dark Forest Keep") (loop-begin 0) diff --git a/data/music/castle/fortress.music b/data/music/castle/fortress.music index 0b18373b934..0a519a242aa 100644 --- a/data/music/castle/fortress.music +++ b/data/music/castle/fortress.music @@ -1,6 +1,6 @@ (supertux-music (file "fortress.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "The Fortress (Milestone 2 Version)") (loop-begin 11.37) diff --git a/data/music/forest/beneath_the_rabbit_hole.music b/data/music/forest/beneath_the_rabbit_hole.music index de211192f0a..27601b611cb 100644 --- a/data/music/forest/beneath_the_rabbit_hole.music +++ b/data/music/forest/beneath_the_rabbit_hole.music @@ -1,6 +1,6 @@ (supertux-music (file "beneath_the_rabbit_hole.ogg") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (title "Beneath the Rabbit Holes") (loop-begin 0) diff --git a/data/music/forest/bright_thunders.music b/data/music/forest/bright_thunders.music index fa0bc737679..b51df2d7150 100644 --- a/data/music/forest/bright_thunders.music +++ b/data/music/forest/bright_thunders.music @@ -1,6 +1,6 @@ (supertux-music (file "bright_thunders.ogg") - (author "Chris \"Krobonil\" Leutwyler") + (authors "Chris \"Krobonil\" Leutwyler") (license "CC-BY-SA") (loop-begin 0) (loop-at -1) diff --git a/data/music/forest/call_of_the_winding_path.music b/data/music/forest/call_of_the_winding_path.music index c5aa1df7eab..701713cb3ca 100644 --- a/data/music/forest/call_of_the_winding_path.music +++ b/data/music/forest/call_of_the_winding_path.music @@ -1,6 +1,6 @@ (supertux-music (file "call_of_the_winding_path.ogg") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at 394) diff --git a/data/music/forest/clavelian_march.music b/data/music/forest/clavelian_march.music index 4bf995c56f0..d705096df2a 100644 --- a/data/music/forest/clavelian_march.music +++ b/data/music/forest/clavelian_march.music @@ -1,6 +1,6 @@ (supertux-music (file "clavelian_march.ogg") - (author "Treskalle") + (authors "Treskalle") (title "Clavelian March") (loop-begin 0.5) (loop-at -1) diff --git a/data/music/forest/forest-cave.music b/data/music/forest/forest-cave.music index a575556ed63..ddf9cd8927d 100644 --- a/data/music/forest/forest-cave.music +++ b/data/music/forest/forest-cave.music @@ -1,6 +1,6 @@ (supertux-music (file "forest-cave.ogg") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at 149) diff --git a/data/music/forest/forest-sprint.music b/data/music/forest/forest-sprint.music index c23c4b49418..16d978e841b 100644 --- a/data/music/forest/forest-sprint.music +++ b/data/music/forest/forest-sprint.music @@ -1,6 +1,6 @@ (supertux-music (file "forest-sprint.ogg") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at 207) diff --git a/data/music/forest/forest.music b/data/music/forest/forest.music index be17cd3a7e1..0143d4d15ef 100644 --- a/data/music/forest/forest.music +++ b/data/music/forest/forest.music @@ -1,6 +1,6 @@ (supertux-music (file "forest.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Forest Dance") (loop-begin 54.818) diff --git a/data/music/forest/forest2.music b/data/music/forest/forest2.music index a61916b5d2d..65907915283 100644 --- a/data/music/forest/forest2.music +++ b/data/music/forest/forest2.music @@ -1,6 +1,6 @@ (supertux-music (file "forest2.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Rabbit Holes") (loop-begin 0) diff --git a/data/music/forest/forest3.music b/data/music/forest/forest3.music index 34861db34f4..a45fed337b6 100644 --- a/data/music/forest/forest3.music +++ b/data/music/forest/forest3.music @@ -1,6 +1,6 @@ (supertux-music (file "forest3.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Riding The Wind") (loop-begin 0) diff --git a/data/music/forest/forest_theme.music b/data/music/forest/forest_theme.music index f51aab89f11..44d83df392e 100644 --- a/data/music/forest/forest_theme.music +++ b/data/music/forest/forest_theme.music @@ -1,6 +1,6 @@ (supertux-music (file "forest_theme.ogg") - (author "Marek \"Wansti\" Moeckel and Tobias \"ToBeFree\" Frei") + (authors "Marek \"Wansti\" Moeckel" "Tobias \"ToBeFree\" Frei") (license "CC-BY-SA / GPL 2+") (title "Forest Prophecy reEducated") (loop-begin 0) diff --git a/data/music/forest/ghostforest.music b/data/music/forest/ghostforest.music index 60912bc0b84..a6f04756688 100644 --- a/data/music/forest/ghostforest.music +++ b/data/music/forest/ghostforest.music @@ -1,6 +1,6 @@ (supertux-music (file "ghostforest.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Ghost Forest") (loop-begin 0) diff --git a/data/music/forest/ghostforest2.music b/data/music/forest/ghostforest2.music index 481b3231c88..e3e4d90cf03 100644 --- a/data/music/forest/ghostforest2.music +++ b/data/music/forest/ghostforest2.music @@ -1,6 +1,6 @@ (supertux-music (file "ghostforest2.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Ghost Forest 2") (loop-begin 0) diff --git a/data/music/forest/ghostforest_map.music b/data/music/forest/ghostforest_map.music index aeb36254223..45c5e277824 100644 --- a/data/music/forest/ghostforest_map.music +++ b/data/music/forest/ghostforest_map.music @@ -1,6 +1,6 @@ (supertux-music (file "ghostforest_map.ogg") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at 236) diff --git a/data/music/forest/greatgigantic.music b/data/music/forest/greatgigantic.music index aeac40b526b..a45f548ffee 100644 --- a/data/music/forest/greatgigantic.music +++ b/data/music/forest/greatgigantic.music @@ -1,6 +1,6 @@ (supertux-music (file "greatgigantic.ogg") - (author "Marek \"Wansti\" Moeckel based on \"Giana Sisters Title Theme\" by Chris Huelsbeck") + (authors "Marek \"Wansti\" Moeckel" "Chris Huelsbeck") (license "GPL") (title "The Great Gigantic Secret (with kind permission from Chris Huelsbeck)") (loop-begin 0) diff --git a/data/music/forest/march_of_the_malevolent.music b/data/music/forest/march_of_the_malevolent.music index 281fd541cee..1dbff8a7c15 100644 --- a/data/music/forest/march_of_the_malevolent.music +++ b/data/music/forest/march_of_the_malevolent.music @@ -1,6 +1,6 @@ (supertux-music (file "march_of_the_malevolent.ogg") - (author "Servalot, Marek \"Wansti\" Moeckel (original forest/'ghost' forest theme)") + (authors "Servalot" "Marek \"Wansti\" Moeckel") (license "CC-BY-SA 4.0") (title "March of the Malevolent") (loop-begin 0) diff --git a/data/music/forest/new_forest_map.music b/data/music/forest/new_forest_map.music index b3dfda35683..f6aa39eea1b 100644 --- a/data/music/forest/new_forest_map.music +++ b/data/music/forest/new_forest_map.music @@ -1,6 +1,6 @@ (supertux-music (file "new_forest_map.ogg") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (loop-begin 0) (loop-at 105) diff --git a/data/music/forest/shallow-green.music b/data/music/forest/shallow-green.music index 0955f00b032..90fc7941d44 100644 --- a/data/music/forest/shallow-green.music +++ b/data/music/forest/shallow-green.music @@ -1,6 +1,6 @@ (supertux-music (file "shallow-green.ogg") - (author "Jason Lavallée") + (authors "Jason Lavallée") (license "CC-BY-SA / GPL 2+") (title "Forest Stroll") (loop-begin 0) diff --git a/data/music/forest/treeboss.music b/data/music/forest/treeboss.music index f54678a6e1d..73f488419ed 100644 --- a/data/music/forest/treeboss.music +++ b/data/music/forest/treeboss.music @@ -1,6 +1,6 @@ (supertux-music (file "treeboss.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 32.15) (loop-at -1) diff --git a/data/music/forest/wisphunt.music b/data/music/forest/wisphunt.music index ef6e009ab64..11fe4781bc9 100644 --- a/data/music/forest/wisphunt.music +++ b/data/music/forest/wisphunt.music @@ -1,6 +1,6 @@ (supertux-music (file "wisphunt.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (loop-begin 21.08) (loop-at -1) diff --git a/data/music/misc/battle_theme.music b/data/music/misc/battle_theme.music index b56e393b5bb..c98dcb60825 100644 --- a/data/music/misc/battle_theme.music +++ b/data/music/misc/battle_theme.music @@ -1,6 +1,6 @@ (supertux-music (file "battle_theme.ogg") - (author "remaxim") + (authors "remaxim") (license "CC-BY-SA 3.0 / GPL 2+") (title "Battle Theme") (loop-begin 30) diff --git a/data/music/misc/bonuscave.music b/data/music/misc/bonuscave.music index e1a07fe37e5..0f20a3d673a 100644 --- a/data/music/misc/bonuscave.music +++ b/data/music/misc/bonuscave.music @@ -1,6 +1,6 @@ (supertux-music (file "bonuscave.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Bonus Cave") (loop-begin 0) diff --git a/data/music/misc/credits.music b/data/music/misc/credits.music index 6ddd1c5ae80..de0efcc0c58 100644 --- a/data/music/misc/credits.music +++ b/data/music/misc/credits.music @@ -1,6 +1,6 @@ (supertux-music (file "credits.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "SuperTux Credits Theme") (loop-begin 0) diff --git a/data/music/misc/halloween_1.music b/data/music/misc/halloween_1.music index 57900fb4612..d4992ed9d8e 100644 --- a/data/music/misc/halloween_1.music +++ b/data/music/misc/halloween_1.music @@ -1,6 +1,6 @@ (supertux-music (file "halloween_1.ogg") - (author "Forty-Two") + (authors "Forty-Two") (license "CC-BY-SA 4.0") (loop-begin 37.60) (loop-at 124.95) diff --git a/data/music/misc/intro.music b/data/music/misc/intro.music index 8e2cc51e18a..0aa56754fed 100644 --- a/data/music/misc/intro.music +++ b/data/music/misc/intro.music @@ -1,6 +1,6 @@ (supertux-music (file "intro.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Intro Theme") (loop-begin 0) diff --git a/data/music/misc/theme.music b/data/music/misc/theme.music index 59e859024d9..576a905f55f 100644 --- a/data/music/misc/theme.music +++ b/data/music/misc/theme.music @@ -1,6 +1,6 @@ (supertux-music (file "theme.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "SuperTux Theme (Milestone 2 Version)") (loop-begin 9) diff --git a/data/music/retro/cave_old.music b/data/music/retro/cave_old.music index d3957596724..76919ec7664 100644 --- a/data/music/retro/cave_old.music +++ b/data/music/retro/cave_old.music @@ -1,6 +1,6 @@ (supertux-music (file "cave_old.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Super Tux - The Cave") (loop-begin 0) diff --git a/data/music/retro/fortress_old.music b/data/music/retro/fortress_old.music index 5f713187ae1..2136e588c21 100644 --- a/data/music/retro/fortress_old.music +++ b/data/music/retro/fortress_old.music @@ -1,6 +1,6 @@ (supertux-music (file "fortress_old.ogg") - (author "Marek \"Wansti\" Moeckel") + (authors "Marek \"Wansti\" Moeckel") (license "CC-BY-SA / GPL 2+") (title "Super Tux - Fortress") (loop-begin 0) diff --git a/data/music/retro/ice_music.music b/data/music/retro/ice_music.music index dc1f6df95cf..0ace650a3ea 100644 --- a/data/music/retro/ice_music.music +++ b/data/music/retro/ice_music.music @@ -1,6 +1,6 @@ (supertux-music (file "ice_music.ogg") - (author "ZhayTee") + (authors "ZhayTee") (title "supertux ice level") (loop-begin 0) (loop-at 137) diff --git a/data/music/retro/worldmap_old.music b/data/music/retro/worldmap_old.music index 600fec8b46b..f6bf6e1f8c0 100644 --- a/data/music/retro/worldmap_old.music +++ b/data/music/retro/worldmap_old.music @@ -1,6 +1,6 @@ (supertux-music (file "worldmap_old.ogg") - (author "ZhayTee") + (authors "ZhayTee") (title "supertux title") (loop-begin 0) (loop-at 40) diff --git a/data/music/tropical/saharan_penguin.music b/data/music/tropical/saharan_penguin.music index 3f90c93cb20..65905f510f9 100644 --- a/data/music/tropical/saharan_penguin.music +++ b/data/music/tropical/saharan_penguin.music @@ -1,6 +1,6 @@ (supertux-music (file "saharan_penguin.ogg") - (author "Enol \"Meji\" Monte") + (authors "Enol \"Meji\" Monte") (license "CC-BY-SA") (loop-begin 0) (loop-at 96) diff --git a/data/music/tropical/tropicalbreeze.music b/data/music/tropical/tropicalbreeze.music index 3032c917f44..626986a5bcb 100644 --- a/data/music/tropical/tropicalbreeze.music +++ b/data/music/tropical/tropicalbreeze.music @@ -1,6 +1,6 @@ (supertux-music (file "tropicalbreeze.ogg") - (author "Flan") + (authors "Flan") (license "CC-BY-SA 4.0") (title "Tropical Breeze") (loop-begin 0) diff --git a/src/audio/sound_file.cpp b/src/audio/sound_file.cpp index f4752ef106a..c9aa543847d 100644 --- a/src/audio/sound_file.cpp +++ b/src/audio/sound_file.cpp @@ -63,16 +63,10 @@ std::unique_ptr load_music_file(const std::string& filename_original) auto music = root.get_mapping(); std::string raw_music_file; - std::string author; - std::string license; - std::string title; float loop_begin = 0; float loop_at = -1; music.get("file", raw_music_file); - music.get("author", author); - music.get("license", license); - music.get("title", title); music.get("loop-begin", loop_begin); music.get("loop-at", loop_at); @@ -99,9 +93,9 @@ std::unique_ptr load_music_file(const std::string& filename_original) sound_file = std::make_unique(file, loop_begin, loop_at); } - sound_file->m_author = author; - sound_file->m_license = license; - sound_file->m_title = title; + music.get("authors", sound_file->m_authors); + music.get("license", sound_file->m_license); + music.get("title", sound_file->m_title); return sound_file; } diff --git a/src/audio/sound_file.hpp b/src/audio/sound_file.hpp index ba4c145d45c..7e6761e3bbe 100644 --- a/src/audio/sound_file.hpp +++ b/src/audio/sound_file.hpp @@ -19,6 +19,7 @@ #include #include +#include struct PHYSFS_File; @@ -39,7 +40,7 @@ class SoundFile m_rate(), m_bits_per_sample(), m_size(), - m_author(), + m_authors(), m_license(), m_title() {} @@ -55,7 +56,7 @@ class SoundFile int m_bits_per_sample; /// size in bytes size_t m_size; - std::string m_author; + std::vector m_authors; std::string m_license; std::string m_title; diff --git a/src/editor/object_settings.cpp b/src/editor/object_settings.cpp index 69f2191ab03..6666996d91f 100644 --- a/src/editor/object_settings.cpp +++ b/src/editor/object_settings.cpp @@ -308,23 +308,30 @@ ObjectSettings::add_music(const std::string& text, std::string* value_ptr, return; } - const std::string& author = sound_file->m_author; + const std::vector& authors = sound_file->m_authors; const std::string& license = sound_file->m_license; const std::string& title = sound_file->m_title; - if (title.empty() && author.empty() && license.empty()) { + if (title.empty() && authors.empty() && license.empty()) { item.set_help(""); return; } const std::string filename = FileSystem::basename(file_path); - const std::string title_or_filename = title.empty() ? filename : "\"" + title + "\""; // assumes path is just a filename - const std::string written_by = fmt::format(fmt::runtime(_("Author") + ": {}"), author); - const std::string license_statement = fmt::format(fmt::runtime(_("License") + ": {}"), license); + const std::string title_or_filename_line = title.empty() ? filename : "\"" + title + "\""; // assumes path is just a filename + + std::string author_lines = ""; + + for (const std::string& author : authors) { + author_lines.append("\n" + fmt::format(fmt::runtime(_("Author") +": {}"), author)); + } + + const std::string license_line = fmt::format(fmt::runtime(_("License") + ": {}"), license); const std::string help_text = - title_or_filename + (author.empty() ? "" : "\n" + written_by) - + (license.empty() ? "" : "\n" + license_statement); + title_or_filename_line + + author_lines + + (license.empty() ? "" : "\n" + license_line); item.set_help(help_text); };