WML Musical Moods

From The Battle for Wesnoth Wiki
Revision as of 06:50, 29 September 2009 by Solsword (talk | contribs)

Macros for grouping existing music (as of 1.7.x) and for changing playlists or playing random songs immediately.

#define MOOD_BATTLE
  [music]
    name=legends_of_the_north.ogg
    append=no
    ms_before=8000
  [/music]
  [music]
    name=battle.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=frantic.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=suspense.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=the_dangerous_symphony.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=casualties_of_war.ogg
    append=yes
    ms_before=8000
  [/music]
#enddef

#define MOOD_EPIC
  [music]
    name=vengeful.ogg
    append=no
    ms_before=8000
  [/music]
  [music]
    name=frantic.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=the_city_falls.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=siege_of_laurelmor.ogg
    append=yes
    ms_before=8000
  [/music]
#enddef

#define MOOD_CALM
  [music]
    name=traveling_minstrels.ogg
    append=no
    ms_before=8000
  [/music]
  [music]
    name=elf-land.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=love_theme.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=sad.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=wanderer.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=journeys_end.ogg
    append=yes
    ms_before=8000
  [/music]
#enddef

#define MOOD_HUSHED
  [music]
    name=revelation.ogg
    append=no
    ms_before=8000
  [/music]
  [music]
    name=underground.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=the_deep_path.ogg
    append=yes
    ms_before=8000
  [/music]
#enddef

#define MOOD_SAD
  [music]
    name=the_king_is_dead.ogg
    append=no
    ms_before=8000
  [/music]
  [music]
    name=elvish-theme.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=transience.ogg
    append=yes
    ms_before=8000
  [/music]
#enddef

#define MOOD_DOOM
  [music]
    name=knalgan_theme.ogg
    append=no
    ms_before=8000
  [/music]
  [music]
    name=northerners.ogg
    append=yes
    ms_before=8000
  [/music]
#enddef

#define MOOD_NORMAL
  [music]
    name=breaking_the_chains.ogg
    append=no
    ms_before=8000
  [/music]
  [music]
    name=heroes_rite.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=knolls.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=loyalists.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=nunc_dimittis.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=into_the_shadows.ogg
    append=yes
    ms_before=8000
  [/music]
  [music]
    name=northern_mountains.ogg
    append=yes
    ms_before=8000
  [/music]
#enddef

#define SHHHH
  [music]
    name=silence.ogg
    append=no
    ms_before=0
  [/music]
#enddef

#define CUE_EPIC
  {RANDOM 0,1,2,3,4}
  [switch]
    variable=random
    [case]
      value=0
      [music]
        name=vengeful.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=1
      [music]
        name=frantic.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=2
      [music]
        name=the_city_falls.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=3
      [music]
        name=the_dangerous_symphony.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=4
      [music]
        name=siege_of_laurelmor.ogg
        append=yes
        ms_before=8000
      [/music]
    [/case]
  [/switch]
  [clear_variable]
    name=random
  [/clear_variable]
#enddef

#define CUE_DOOM
  {RANDOM 0,1}
  [switch]
    variable=random
    [case]
      value=0
      [music]
        name=knalgan_theme.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=1
      [music]
        name=northerners.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
  [/switch]
  [clear_variable]
    name=random
  [/clear_variable]
#enddef

#define CUE_ELVES
  [music]
    name=elf-land.ogg
    play_once=yes
    immediate=yes
  [/music]
#enddef

#define CUE_SILENCE
  [music]
    name=silence.ogg
    play_once=yes
    immediate=yes
  [/music]
#enddef

#define CUE_BATTLE
  {RANDOM 0,1,2,3,4}
  [switch]
    variable=random
    [case]
      value=0
      [music]
        name=legends_of_the_north.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=1
      [music]
        name=vengeful.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=2
      [music]
        name=frantic.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=3
      [music]
        name=the_dangerous_symphony.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=4
      [music]
        name=casualties_of_war.ogg
        append=yes
        ms_before=8000
      [/music]
    [/case]
  [/switch]
  [clear_variable]
    name=random
  [/clear_variable]
#enddef

#define CUE_SAD
  {RANDOM 0,1,2}
  [switch]
    variable=random
    [case]
      value=0
      [music]
        name=elvish-theme.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=1
      [music]
        name=the_king_is_dead.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
    [case]
      value=2
      [music]
        name=transience.ogg
        play_once=yes
        immediate=yes
      [/music]
    [/case]
  [/switch]
  [clear_variable]
    name=random
  [/clear_variable]
#enddef

#define CUE_DEFEAT
  [music]
      name=defeat.ogg
      play_once=yes
      immediate=yes
  [/music]
#enddef

#define CUE_VICTORY
  [music]
      name=victory2.ogg
      play_once=yes
      immediate=yes
  [/music]
#enddef

#define VICTORY_AND_DEFEAT_MUSIC
  [event]
      name=victory
      {SHHHH}
      {CUE_VICTORY}
  [/event]
  [event]
      name=defeat
      {SHHHH}
      {CUE_DEFEAT}
  [/event]
#enddef

See Also