PlaySound: Difference between revisions

From Eternity Wiki
Jump to navigationJump to search
No edit summary
Line 3: Line 3:
==ACS function==
==ACS function==
void PlaySound (int tid, str sound [, int channel [, fixed volume [, bool looping [, fixed attenuation]]]])
void PlaySound (int tid, str sound [, int channel [, fixed volume [, bool looping [, fixed attenuation]]]])
Plays sound on a tagged thing.
Parameters:
*''tid'': tag of thing to play the sound
*''channel'': optional, one of the eight channels to play sounds from. Default: '''CHAN_BODY'''. Possible values are: '''CHAN_AUTO''', '''CHAN_WEAPON''', '''CHAN_VOICE''', '''CHAN_ITEM''', '''CHAN_BODY''', '''CHAN_5''', '''CHAN_6''', '''CHAN_7'''.
*''volume'': optional, default 127*512=65024 (0.9921875). Volume of sound to play. A value of 1.0 is close to the default.
*''looping'': whether to loop the sound (default: FALSE).
*''attenuation'': attenuation, how much to fade sound with distance, default '''ATTN_NORM'''. Note that despite this being a fixed-point number, it really only results in some specific attenuation patterns. Expected values are: '''ATTN_NONE''', '''ATTN_NORM''', '''ATTN_IDLE''' and '''ATTN_STATIC'''.


==EDF codepointer==
==EDF codepointer==

Revision as of 02:14, 20 June 2019

PlaySound exists both as an ACS function and as an EDF codepointer. Syntax differs.

ACS function

void PlaySound (int tid, str sound [, int channel [, fixed volume [, bool looping [, fixed attenuation]]]])

Plays sound on a tagged thing.

Parameters:

  • tid: tag of thing to play the sound
  • channel: optional, one of the eight channels to play sounds from. Default: CHAN_BODY. Possible values are: CHAN_AUTO, CHAN_WEAPON, CHAN_VOICE, CHAN_ITEM, CHAN_BODY, CHAN_5, CHAN_6, CHAN_7.
  • volume: optional, default 127*512=65024 (0.9921875). Volume of sound to play. A value of 1.0 is close to the default.
  • looping: whether to loop the sound (default: FALSE).
  • attenuation: attenuation, how much to fade sound with distance, default ATTN_NORM. Note that despite this being a fixed-point number, it really only results in some specific attenuation patterns. Expected values are: ATTN_NONE, ATTN_NORM, ATTN_IDLE and ATTN_STATIC.

EDF codepointer

Parameters:

  • misc1 = Sound mnemonic or DeHackEd number to play (must be valid, no default)
  • misc2 = Select sound volume
    • 0 = normal (default)
    • 1 = full volume

Causes the object to emit the sound indicated by the provided sound mnemonic or DeHackEd number, at the indicated volume level.

If the sound name or number is invalid, nothing will happen.

Can be used with PlayerThunk.

For Decorate availability, use PlaySoundEx instead.

See also