wesnoth/data/core/macros/sound-utils.cfg
Jyrki Vesterinen d1391fee8e Move ms_after= to the right place in music macros (#4459)
I originally added it in #719. At that point ms_after= affected the *previous*
track due to a bug; however, I had assumed the behavior to be intentional and
compensated for it by adding ms_after= to the first track of a scenario instead
of the story screen music.

In April, I saw the documentation for ms_after= which said that it's supposed
to affect the track itself, not the previous one. Hence, I fixed the bug in
commit b023b818c742cee0bc75460235c9d1088c0b495d. However, I had forgotten that the changes I had made
in #719 depended on the old broken behavior of ms_after=.

This commit moves ms_after= to the right place, restoring the fade-out on
scenario start and removing the pointless pause after the first track.
2019-10-13 12:15:21 +03:00

623 lines
14 KiB
INI
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#textdomain wesnoth
# Music control macros, and declarations of sound resource lists.
#
# As of 1.1.3, music is parsed as follows:
#! 1. the [scenario]-level [music] tag
#! 2. the [story]-level music key
#! 3. any [event]-level [music] tags
#
# If you change the music at a lower level, the tags above it will NOT
# be re-parsed and your scenario will sound wrong. For example, if
# you set scenario music with the normal [scenario]-level music tag
# but change the music during the [story], it is never reset back to
# normal. Therefore, these macros are intended to catch instances
# like that. Of course, if you want something more elaborate, code it
# manually.
# These macros do not rely on any other macros. Please don't change this.
#define DEFAULT_MUSIC_PLAYLIST_NO_EVENT
[music]
name=knolls.ogg
ms_before=12000
[/music]
[music]
name=wanderer.ogg
ms_before=12000
append=yes
[/music]
[music]
name=battle.ogg
ms_before=12000
append=yes
[/music]
[music]
name=transience.ogg
ms_before=12000
append=yes
[/music]
[music]
name=the_king_is_dead.ogg
ms_before=12000
append=yes
[/music]
[music]
name=knalgan_theme.ogg
ms_before=12000
append=yes
[/music]
[music]
name=the_city_falls.ogg
ms_before=12000
append=yes
[/music]
[music]
name=nunc_dimittis.ogg
ms_before=12000
append=yes
[/music]
[music]
name=revelation.ogg
ms_before=12000
append=yes
[/music]
[music]
name=loyalists.ogg
ms_before=12000
append=yes
[/music]
[music]
name=breaking_the_chains.ogg
ms_before=12000
append=yes
[/music]
[music]
name=elvish-theme.ogg
ms_before=12000
append=yes
[/music]
[music]
name=legends_of_the_north.ogg
ms_before=12000
append=yes
[/music]
[music]
name=traveling_minstrels.ogg
ms_before=12000
append=yes
[/music]
[music]
name=underground.ogg
ms_before=12000
append=yes
[/music]
[music]
name=vengeful.ogg
ms_before=12000
append=yes
[/music]
[music]
name=frantic.ogg
ms_before=12000
append=yes
[/music]
[music]
name=the_dangerous_symphony.ogg
ms_before=12000
append=yes
[/music]
[music]
name=heroes_rite.ogg
ms_before=12000
append=yes
[/music]
[music]
name=suspense.ogg
ms_before=12000
append=yes
[/music]
[music]
name=the_deep_path.ogg
ms_before=12000
append=yes
[/music]
[music]
name=siege_of_laurelmor.ogg
ms_before=12000
append=yes
[/music]
[music]
name=casualties_of_war.ogg
ms_before=12000
append=yes
[/music]
[music]
name=silvan_sanctuary.ogg
ms_before=12000
append=yes
[/music]
[music]
name=battle-epic.ogg
ms_before=12000
append=yes
[/music]
#enddef
#define DEFAULT_MUSIC_PLAYLIST
{DEFAULT_MUSIC_PLAYLIST_NO_EVENT}
[event]
name=prestart
{DEFAULT_MUSIC_PLAYLIST_NO_EVENT}
[/event]
#enddef
#define FULL_MUSIC_PLAYLIST_NO_EVENT
[music]
name=battle-epic.ogg
title= _ "Battle Epic"
ms_before=12000
append=yes
[/music]
[music]
name=battle.ogg
title= _ "Battle Music"
ms_before=12000
append=yes
[/music]
[music]
name=breaking_the_chains.ogg
title= _ "Breaking the Chains"
ms_before=12000
append=yes
[/music]
[music]
name=casualties_of_war.ogg
title= _ "Casualties of War"
ms_before=12000
append=yes
[/music]
[music]
name=elf-land.ogg
title= _ "Elf Land"
ms_before=12000
append=yes
[/music]
[music]
name=elvish-theme.ogg
title= _ "Elvish theme"
ms_before=12000
append=yes
[/music]
[music]
name=frantic.ogg
title= _ "Frantic"
ms_before=12000
append=yes
[/music]
[music]
name=heroes_rite.ogg
title= _ "Heroes Rite"
ms_before=12000
append=yes
[/music]
[music]
name=into_the_shadows.ogg
title= _ "Into the Shadows"
ms_before=12000
append=yes
[/music]
[music]
name=journeys_end.ogg
title= _ "Journeys End"
ms_before=12000
append=yes
[/music]
[music]
name=knalgan_theme.ogg
title= _ "Knalgan Theme"
ms_before=12000
append=yes
[/music]
[music]
name=knolls.ogg
title= _ "The Knolls of Doldesh"
ms_before=12000
append=yes
[/music]
[music]
name=legends_of_the_north.ogg
title= _ "Legends of the North"
ms_before=12000
append=yes
[/music]
[music]
name=love_theme.ogg
title= _ "Love Theme"
ms_before=12000
append=yes
[/music]
[music]
name=loyalists.ogg
title= _ "Loyalists"
ms_before=12000
append=yes
[/music]
[music]
name=northern_mountains.ogg
title= _ "Over the Northern Mountains"
ms_before=12000
append=yes
[/music]
[music]
name=northerners.ogg
title= _ "Northerners"
ms_before=12000
append=yes
[/music]
[music]
name=nunc_dimittis.ogg
title= _ "Nunc Dimittis"
ms_before=12000
append=yes
[/music]
[music]
name=revelation.ogg
title= _ "Revelation"
ms_before=12000
append=yes
[/music]
[music]
name=sad.ogg
title= _ "Sad"
ms_before=12000
append=yes
[/music]
[music]
name=siege_of_laurelmor.ogg
title= _ "Siege of Laurelmor"
ms_before=12000
append=yes
[/music]
[music]
name=silvan_sanctuary.ogg
title= _ "Silvan Sanctuary"
ms_before=12000
append=yes
[/music]
[music]
name=suspense.ogg
title= _ "Suspense"
ms_before=12000
append=yes
[/music]
[music]
name=the_city_falls.ogg
title= _ "The City Falls"
ms_before=12000
append=yes
[/music]
[music]
name=the_dangerous_symphony.ogg
title= _ "The Dangerous Symphony"
ms_before=12000
append=yes
[/music]
[music]
name=the_deep_path.ogg
title= _ "The Deep Path"
ms_before=12000
append=yes
[/music]
[music]
name=the_king_is_dead.ogg
title= _ "The King is Dead"
ms_before=12000
append=yes
[/music]
[music]
name=transience.ogg
title= _ "Transience"
ms_before=12000
append=yes
[/music]
[music]
name=traveling_minstrels.ogg
title= _ "Traveling Minstrels"
ms_before=12000
append=yes
[/music]
[music]
name=underground.ogg
title= _ "Underground"
ms_before=12000
append=yes
[/music]
[music]
name=vengeful.ogg
title= _ "Vengeful Pursuit"
ms_before=12000
append=yes
[/music]
[music]
name=wanderer.ogg
title= _ "Still Another Wanderer"
ms_before=12000
append=yes
[/music]
[music]
name=weight_of_revenge.ogg
title= _ "Weight of Revenge"
ms_before=12000
append=yes
[/music]
#enddef
#define FULL_MUSIC_PLAYLIST
{FULL_MUSIC_PLAYLIST_NO_EVENT}
[event]
name=prestart
{FULL_MUSIC_PLAYLIST_NO_EVENT}
[/event]
#enddef
#define SCENARIO_MUSIC MUSIC
# This music macro ensures that the correct music is selected
# for a scenario just in case it is changed by [story].
# It should be positioned at the top of the scenario file
# so it can be overridden by other prestart or start events.
#
# It also allows for the convenient use of standardized
# intra-scenario music, should we decide to use one.
[music]
name="revelation.ogg"
ms_after=2000
[/music]
[event]
name=prestart
[music]
name={MUSIC}
immediate=yes
[/music]
[/event]
#enddef
#define EXTRA_SCENARIO_MUSIC MUSIC
# Use this immediately after the above SCENARIO_MUSIC macro to append extra
# tracks to the playlist.
#
# Example:
#! {SCENARIO_MUSIC battle.ogg}
#! {EXTRA_SCENARIO_MUSIC knolls.ogg}
#! {EXTRA_SCENARIO_MUSIC frantic.ogg}
[+event]
[music]
name={MUSIC}
append=yes
[/music]
[/event]
#enddef
#define INTRO_AND_SCENARIO_MUSIC INTRO_MUSIC SCENARIO_MUSIC
# This works as SCENARIO_MUSIC does, except that it allows you to specify
# the music used for the story screen (if any) as well.
[music]
name={INTRO_MUSIC}
immediate=yes
ms_after=2000
[/music]
[event]
name=prestart
[music]
name={SCENARIO_MUSIC}
immediate=yes
append=no
[/music]
[/event]
#enddef
#define LET_INTRO_MUSIC_FINISH
# Use immediately following INTRO_AND_SCENARIO_MUSIC, to let the intro music
# finish before switching to scenario music.
[+event]
[+music]
immediate=no
[/music]
[/event]
#enddef
#define INCIDENTAL_MUSIC MUSIC
# To be played immediately to mark an incident,
# but not appended to the scenario playlist.
# The playlist will be resumed afterwards.
[music]
name={MUSIC}
play_once=yes
[/music]
#enddef
#define APPEND_MUSIC MUSIC
# Append to playlist. Meant to be used after REPLACE_SCENARIO_MUSIC.
[music]
name={MUSIC}
append=yes
[/music]
#enddef
#define REPLACE_SCENARIO_MUSIC MUSIC
# To be used mid-scenario to replace the current playlist.
[music]
name={MUSIC}
immediate=yes
append=no
[/music]
#enddef
# For some animations some units use a list of sounds, from which one is
# randomly picked every time, instead of a single sound. Here the most commonly
# used lists are wrapped inside macros.
#
# These are used in unit .cfg files, for example like this:
#
#! [animation]
#! hits=no
#! start_time=-200
#!
#! [frame]
#! sound={SOUND_LIST:MISS}
#! image="units/dwarves/warrior-attack.png:200"
#! [/frame]
#define SOUND_LIST:HOLY
magic-holy-[1~4].ogg #enddef
#define SOUND_LIST:HOLY_MISS
magic-holy-miss-[1~4].ogg #enddef
#define SOUND_LIST:MISS
miss-[1~3].ogg #enddef
#define SOUND_LIST:THROW
throw-[1~4].wav #enddef
#define SOUND_LIST:SWORD_SWISH
sword-1.ogg #enddef
#define SOUND_LIST:BAT_HIT
bat-hit-[1~4].ogg #enddef
#define SOUND_LIST:DRAKE_HIT
drake-hit-[1~3].ogg #enddef
#define SOUND_LIST:DWARF_HIT
dwarf-hit-[1~4].ogg #enddef
#define SOUND_LIST:DWARF_DIE
dwarf-die-[1~3].ogg #enddef
#define SOUND_LIST:ELF_HIT
human-hit-[1~4].ogg,elf-hit-[1~2].ogg #enddef
#define SOUND_LIST:ELF_FEMALE_HIT
human-female-hit-[1~3].ogg #enddef
#define SOUND_LIST:GOBLIN_HIT
goblin-hit-[1~3].ogg #enddef
#define SOUND_LIST:GOBLIN_DIE
goblin-die-[1~2].ogg #enddef
#define SOUND_LIST:GRYPHON_HIT
gryphon-hit-[1~3].ogg #enddef
#define SOUND_LIST:GRYPHON_DIE
gryphon-die-[1~2].ogg #enddef
#define SOUND_LIST:HORSE_HIT
horse-hit-[1~3].ogg #enddef
#define SOUND_LIST:HUMAN_HIT
human-hit-[1~5].ogg #enddef
#define SOUND_LIST:HUMAN_FEMALE_HIT
human-female-hit-[1~3].ogg #enddef
#define SOUND_LIST:HUMAN_OLD_HIT
human-old-hit-[1~4].ogg #enddef
#define SOUND_LIST:HUMAN_OLD_DIE
human-old-die-[1~3].ogg #enddef
#define SOUND_LIST:HUMAN_DIE
human-die-[1~3].ogg #enddef
#define SOUND_LIST:HUMAN_FEMALE_DIE
human-female-die-[1~3].ogg #enddef
#define SOUND_LIST:LICH_HIT
lich-hit-[1~2].ogg #enddef
#define SOUND_LIST:NAGA_HIT
naga-hit-[1~3].ogg #enddef
#define SOUND_LIST:OGRE_HIT
ogre-hit-[1~4].ogg #enddef
#define SOUND_LIST:OGRE_DIE
ogre-die-[1~3].ogg #enddef
#define SOUND_LIST:ORC_HIT
orc-hit-[1~4].ogg #enddef
#define SOUND_LIST:ORC_DIE
orc-die-[1~3].ogg #enddef
#define SOUND_LIST:ORC_SMALL_HIT
orc-small-hit-[1~4].ogg #enddef
#define SOUND_LIST:ORC_SMALL_DIE
orc-small-die-[1~2].ogg #enddef
#define SOUND_LIST:SKELETON_HIT
skeleton-hit-[1~3].ogg #enddef
#define SOUND_LIST:SKELETON_BIG_HIT
skeleton-big-hit-[1~3].ogg #enddef
#define SOUND_LIST:SKELETON_DIE
skeleton-die-[1~2].ogg #enddef
#define SOUND_LIST:TROLL_HIT
troll-hit-[1~4].ogg #enddef
#define SOUND_LIST:TROLL_DIE
troll-die-[1~3].ogg #enddef
#define SOUND_LIST:WOLF_GROWL
wolf-growl-[1~4].ogg #enddef
#define SOUND_LIST:WOLF_HIT
wolf-hit-[1~3].ogg #enddef
#define SOUND_LIST:WOLF_DIE
wolf-die-[1~4].ogg #enddef
#define SOUND_LIST:ZOMBIE_WEAK_HIT
zombie-hit-[4~6].ogg #enddef
#define SOUND_LIST:ZOMBIE_HIT
zombie-hit-[1~6].ogg #enddef
#define SOUND:HIT_AND_MISS HITSOUND MISSSOUND TIME
# A more convenient way of wiring in hit and miss sounds to an
# attack animation. Just specify the sounds to use and the time
# when they should trigger.
attack_sound_start_time={TIME}
[if]
hits=yes
[attack_sound_frame]
sound={HITSOUND}
[/attack_sound_frame]
[/if]
[else]
hits=no
[attack_sound_frame]
sound={MISSSOUND}
[/attack_sound_frame]
[/else]
#enddef
#define SOUND:HIT HITSOUND TIME
# A more convenient way of wiring in hit only sounds to an
# attack animation. Just specify the sound to use and the time
# when it should trigger.
[if]
hits=yes
attack_sound_start_time={TIME}
[attack_sound_frame]
sound={HITSOUND}
[/attack_sound_frame]
[/if]
#enddef