2023-11-09 18:28:02 +00:00
< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
< html >
< meta http-equiv = "Content-Type" content = "text/html; charset=UTF-8" / >
< head >
2025-04-20 22:39:30 +03:00
< title > TombEngine 1.8.2 Lua API< / title >
2023-11-09 18:28:02 +00:00
< link rel = "stylesheet" href = "../ldoc.css" type = "text/css" / >
< / head >
< body >
< div id = "container" >
< div id = "product" >
< div id = "product_logo" > < / div >
< div id = "product_name" > < big > < b > < / b > < / big > < / div >
< div id = "product_description" > < / div >
< / div > <!-- id="product" -->
< div id = "main" >
<!-- Menu -->
< div id = "navigation" >
< br / >
2024-12-15 19:24:49 +03:00
< h1 > TombEngine< / h1 >
2023-11-09 18:28:02 +00:00
< ul >
< li > < a href = "../index.html" > Index< / a > < / li >
< / ul >
< h2 > 1 Modules< / h2 >
< ul class = "nowrap" >
< li > < a href = "../1 modules/Effects.html" > Effects< / a > < / li >
< li > < a href = "../1 modules/Flow.html" > Flow< / a > < / li >
< li > < a href = "../1 modules/Input.html" > Input< / a > < / li >
< li > < a href = "../1 modules/Inventory.html" > Inventory< / a > < / li >
< li > < a href = "../1 modules/Logic.html" > Logic< / a > < / li >
< li > < a href = "../1 modules/Objects.html" > Objects< / a > < / li >
< li > < here > Sound< / here > < / li >
< li > < a href = "../1 modules/Strings.html" > Strings< / a > < / li >
< li > < a href = "../1 modules/Util.html" > Util< / a > < / li >
< li > < a href = "../1 modules/View.html" > View< / a > < / li >
< / ul >
< h2 > 2 Classes< / h2 >
< ul class = "nowrap" >
2025-03-05 03:13:48 -05:00
< li > < a href = "../2 classes/Collision.Probe.html" > Collision.Probe< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../2 classes/Flow.Level.html" > Flow.Level< / a > < / li >
< li > < a href = "../2 classes/Flow.Settings.html" > Flow.Settings< / a > < / li >
2024-12-15 23:59:31 +01:00
< li > < a href = "../2 classes/Flow.Statistics.html" > Flow.Statistics< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../2 classes/Objects.AIObject.html" > Objects.AIObject< / a > < / li >
< li > < a href = "../2 classes/Objects.Camera.html" > Objects.Camera< / a > < / li >
< li > < a href = "../2 classes/Objects.LaraObject.html" > Objects.LaraObject< / a > < / li >
< li > < a href = "../2 classes/Objects.Moveable.html" > Objects.Moveable< / a > < / li >
< li > < a href = "../2 classes/Objects.Room.html" > Objects.Room< / a > < / li >
< li > < a href = "../2 classes/Objects.Sink.html" > Objects.Sink< / a > < / li >
< li > < a href = "../2 classes/Objects.SoundSource.html" > Objects.SoundSource< / a > < / li >
< li > < a href = "../2 classes/Objects.Static.html" > Objects.Static< / a > < / li >
< li > < a href = "../2 classes/Objects.Volume.html" > Objects.Volume< / a > < / li >
< li > < a href = "../2 classes/Strings.DisplayString.html" > Strings.DisplayString< / a > < / li >
2024-12-15 19:24:49 +03:00
< li > < a href = "../2 classes/View.DisplaySprite.html" > View.DisplaySprite< / a > < / li >
2023-11-09 18:28:02 +00:00
< / ul >
< h2 > 3 Primitive Classes< / h2 >
< ul class = "nowrap" >
2024-12-15 19:24:49 +03:00
< li > < a href = "../3 primitive classes/Flow.Fog.html" > Flow.Fog< / a > < / li >
2025-03-08 23:30:07 -05:00
< li > < a href = "../3 primitive classes/Flow.Horizon.html" > Flow.Horizon< / a > < / li >
2024-12-15 19:24:49 +03:00
< li > < a href = "../3 primitive classes/Flow.InventoryItem.html" > Flow.InventoryItem< / a > < / li >
< li > < a href = "../3 primitive classes/Flow.LensFlare.html" > Flow.LensFlare< / a > < / li >
< li > < a href = "../3 primitive classes/Flow.SkyLayer.html" > Flow.SkyLayer< / a > < / li >
2025-03-15 01:01:05 +01:00
< li > < a href = "../3 primitive classes/Flow.Starfield.html" > Flow.Starfield< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../3 primitive classes/Color.html" > Color< / a > < / li >
< li > < a href = "../3 primitive classes/Rotation.html" > Rotation< / a > < / li >
2024-12-15 19:24:49 +03:00
< li > < a href = "../3 primitive classes/Time.html" > Time< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../3 primitive classes/Vec2.html" > Vec2< / a > < / li >
< li > < a href = "../3 primitive classes/Vec3.html" > Vec3< / a > < / li >
< / ul >
< h2 > 4 Enums< / h2 >
< ul class = "nowrap" >
2025-03-05 03:13:48 -05:00
< li > < a href = "../4 enums/Collision.MaterialType.html" > Collision.MaterialType< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../4 enums/Effects.BlendID.html" > Effects.BlendID< / a > < / li >
< li > < a href = "../4 enums/Effects.EffectID.html" > Effects.EffectID< / a > < / li >
2025-03-15 20:19:13 +01:00
< li > < a href = "../4 enums/Effects.StreamerFeatherMode.html" > Effects.StreamerFeatherMode< / a > < / li >
2025-03-08 22:45:25 -05:00
< li > < a href = "../4 enums/Effects.ParticleAnimationType.html" > Effects.ParticleAnimationType< / a > < / li >
2024-12-15 19:24:49 +03:00
< li > < a href = "../4 enums/Flow.ErrorMode.html" > Flow.ErrorMode< / a > < / li >
2024-11-20 23:54:39 +03:00
< li > < a href = "../4 enums/Flow.FreezeMode.html" > Flow.FreezeMode< / a > < / li >
2023-12-26 20:47:08 +00:00
< li > < a href = "../4 enums/Flow.GameStatus.html" > Flow.GameStatus< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../4 enums/Input.ActionID.html" > Input.ActionID< / a > < / li >
< li > < a href = "../4 enums/Objects.AmmoType.html" > Objects.AmmoType< / a > < / li >
2025-02-06 16:35:59 +11:00
< li > < a href = "../4 enums/Objects.HandStatus.html" > Objects.HandStatus< / a > < / li >
2024-12-15 23:34:33 +01:00
< li > < a href = "../4 enums/Objects.WeaponType.html" > Objects.WeaponType< / a > < / li >
2023-12-26 20:47:08 +00:00
< li > < a href = "../4 enums/Objects.MoveableStatus.html" > Objects.MoveableStatus< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../4 enums/Objects.ObjID.html" > Objects.ObjID< / a > < / li >
< li > < a href = "../4 enums/Objects.RoomFlagID.html" > Objects.RoomFlagID< / a > < / li >
< li > < a href = "../4 enums/Objects.RoomReverb.html" > Objects.RoomReverb< / a > < / li >
< li > < a href = "../4 enums/Sound.SoundTrackType.html" > Sound.SoundTrackType< / a > < / li >
2024-11-16 22:07:57 +11:00
< li > < a href = "../4 enums/Strings.DisplayStringOption.html" > Strings.DisplayStringOption< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../4 enums/Util.LogLevel.html" > Util.LogLevel< / a > < / li >
2023-11-11 12:16:23 +00:00
< li > < a href = "../4 enums/View.AlignMode.html" > View.AlignMode< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../4 enums/View.CameraType.html" > View.CameraType< / a > < / li >
2024-01-07 13:22:52 +00:00
< li > < a href = "../4 enums/View.PostProcessMode.html" > View.PostProcessMode< / a > < / li >
2023-11-11 12:16:23 +00:00
< li > < a href = "../4 enums/View.ScaleMode.html" > View.ScaleMode< / a > < / li >
2023-11-09 18:28:02 +00:00
< / ul >
< h2 > 5 Lua utility modules< / h2 >
< ul class = "nowrap" >
2025-03-08 23:59:49 -05:00
< li > < a href = "../5 lua utility modules/CustomBar.html" > CustomBar< / a > < / li >
2025-02-06 18:05:25 -05:00
< li > < a href = "../5 lua utility modules/Diary.html" > Diary< / a > < / li >
2023-11-09 18:28:02 +00:00
< li > < a href = "../5 lua utility modules/EventSequence.html" > EventSequence< / a > < / li >
< li > < a href = "../5 lua utility modules/Timer.html" > Timer< / a > < / li >
2024-12-16 21:33:37 +01:00
< li > < a href = "../5 lua utility modules/Type.html" > Type< / a > < / li >
2023-11-09 18:28:02 +00:00
< / ul >
< / div >
< div id = "content" >
< h1 > Table < code > Sound< / code > < / h1 >
< p > Functions for sound management.< / p >
< p >
< / p >
< h2 > < a href = "#Functions" > Functions< / a > < / h2 >
< table class = "function_list" >
< tr >
2025-03-12 01:34:48 +03:00
< td class = "name" > < a href = "#PlayAudioTrack" > PlayAudioTrack(filename, type)< / a > < / td >
< td class = "summary" > Play an audio track.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
2024-11-21 16:41:18 +01:00
< td class = "name" > < a href = "#SetAmbientTrack" > SetAmbientTrack(name, fromStart)< / a > < / td >
2025-03-12 01:34:48 +03:00
< td class = "summary" > Set and play an ambient track.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
< td class = "name" > < a href = "#StopAudioTracks" > StopAudioTracks()< / a > < / td >
2025-03-12 01:34:48 +03:00
< td class = "summary" > Stop any audio tracks currently playing.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
< td class = "name" > < a href = "#StopAudioTrack" > StopAudioTrack(type)< / a > < / td >
2025-03-12 01:34:48 +03:00
< td class = "summary" > Stop audio track that is currently playing.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
< td class = "name" > < a href = "#GetAudioTrackLoudness" > GetAudioTrackLoudness(type)< / a > < / td >
2025-03-12 01:34:48 +03:00
< td class = "summary" > Get current loudness level for specified track type.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
2025-04-13 16:26:51 +02:00
< td class = "name" > < a href = "#PlaySound" > PlaySound(soundID, [position])< / a > < / td >
2025-03-12 01:34:48 +03:00
< td class = "summary" > Play sound effect.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
2025-03-12 01:34:48 +03:00
< td class = "name" > < a href = "#StopSound" > StopSound(soundID)< / a > < / td >
< td class = "summary" > Stop sound effect.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
2025-03-12 01:34:48 +03:00
< td class = "name" > < a href = "#IsSoundPlaying" > IsSoundPlaying(soundID)< / a > < / td >
< td class = "summary" > Check if the sound effect is playing.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
2025-04-20 22:39:30 +03:00
< td class = "name" > < a href = "#IsAudioTrackPlaying" > IsAudioTrackPlaying(track)< / a > < / td >
2025-03-12 01:34:48 +03:00
< td class = "summary" > Check if the audio track is playing.< / td >
2023-11-09 18:28:02 +00:00
< / tr >
< tr >
< td class = "name" > < a href = "#GetCurrentSubtitle" > GetCurrentSubtitle()< / a > < / td >
< td class = "summary" > Get current subtitle string for a voice track currently playing.< / td >
< / tr >
< / table >
< br / >
< br / >
< h2 class = "section-header " > < a name = "Functions" > < / a > Functions< / h2 >
< dl class = "function" >
< dt >
< a name = "PlayAudioTrack" > < / a >
2025-03-12 01:34:48 +03:00
< strong > PlayAudioTrack(filename, type)< / strong >
2023-11-09 18:28:02 +00:00
< / dt >
< dd >
2025-04-20 22:06:07 +03:00
Play an audio track. Should be placed in the < code > Audio< / code > folder. Supported formats are wav, mp3 and ogg.
2023-11-09 18:28:02 +00:00
< h3 > Parameters:< / h3 >
< ul >
2025-03-12 01:34:48 +03:00
< li > < span class = "parameter" > filename< / span >
2023-11-09 18:28:02 +00:00
< span class = "types" > < a class = "type" href = "https://www.lua.org/manual/5.4/manual.html#6.4" > string< / a > < / span >
2025-03-12 01:34:48 +03:00
Filename of a track (without file extension) to play.
2023-11-09 18:28:02 +00:00
< / li >
< li > < span class = "parameter" > type< / span >
< span class = "types" > < a class = "type" href = "../4 enums/Sound.SoundTrackType.html#" > SoundTrackType< / a > < / span >
2025-03-12 01:34:48 +03:00
Type of the audio track to play.
2023-11-09 18:28:02 +00:00
< / li >
< / ul >
< / dd >
< dt >
< a name = "SetAmbientTrack" > < / a >
2024-11-21 16:41:18 +01:00
< strong > SetAmbientTrack(name, fromStart)< / strong >
2023-11-09 18:28:02 +00:00
< / dt >
< dd >
2025-03-12 01:34:48 +03:00
Set and play an ambient track.
2023-11-09 18:28:02 +00:00
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > name< / span >
< span class = "types" > < a class = "type" href = "https://www.lua.org/manual/5.4/manual.html#6.4" > string< / a > < / span >
2025-03-12 01:34:48 +03:00
Name of track (without file extension) to play.
2023-11-09 18:28:02 +00:00
< / li >
2024-11-21 16:41:18 +01:00
< li > < span class = "parameter" > fromStart< / span >
2024-11-16 22:07:57 +11:00
< span class = "types" > < span class = "type" > bool< / span > < / span >
2025-03-12 01:34:48 +03:00
Specifies whether ambient track should play from the start, or crossfade at a random position.
2024-11-16 22:07:57 +11:00
< / li >
2023-11-09 18:28:02 +00:00
< / ul >
< / dd >
< dt >
< a name = "StopAudioTracks" > < / a >
< strong > StopAudioTracks()< / strong >
< / dt >
< dd >
2025-03-12 01:34:48 +03:00
Stop any audio tracks currently playing.
2023-11-09 18:28:02 +00:00
< / dd >
< dt >
< a name = "StopAudioTrack" > < / a >
< strong > StopAudioTrack(type)< / strong >
< / dt >
< dd >
2025-03-12 01:34:48 +03:00
Stop audio track that is currently playing.
2023-11-09 18:28:02 +00:00
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > type< / span >
< span class = "types" > < a class = "type" href = "../4 enums/Sound.SoundTrackType.html#" > SoundTrackType< / a > < / span >
2025-03-12 01:34:48 +03:00
Type of the audio track.
2023-11-09 18:28:02 +00:00
< / li >
< / ul >
< / dd >
< dt >
< a name = "GetAudioTrackLoudness" > < / a >
< strong > GetAudioTrackLoudness(type)< / strong >
< / dt >
< dd >
2025-03-12 01:34:48 +03:00
Get current loudness level for specified track type.
2023-11-09 18:28:02 +00:00
< h3 > Parameters:< / h3 >
< ul >
< li > < span class = "parameter" > type< / span >
< span class = "types" > < a class = "type" href = "../4 enums/Sound.SoundTrackType.html#" > SoundTrackType< / a > < / span >
2025-03-12 01:34:48 +03:00
Type of the audio track.
2023-11-09 18:28:02 +00:00
< / li >
< / ul >
< h3 > Returns:< / h3 >
< ol >
< span class = "types" > < span class = "type" > float< / span > < / span >
2025-03-12 01:34:48 +03:00
Current loudness of a specified audio track.
2023-11-09 18:28:02 +00:00
< / ol >
< / dd >
< dt >
< a name = "PlaySound" > < / a >
2025-04-13 16:26:51 +02:00
< strong > PlaySound(soundID, [position])< / strong >
2023-11-09 18:28:02 +00:00
< / dt >
< dd >
2025-03-12 01:34:48 +03:00
Play sound effect.
2023-11-09 18:28:02 +00:00
< h3 > Parameters:< / h3 >
< ul >
2025-03-12 01:34:48 +03:00
< li > < span class = "parameter" > soundID< / span >
2023-11-09 18:28:02 +00:00
< span class = "types" > < span class = "type" > int< / span > < / span >
2025-03-12 01:34:48 +03:00
Sound ID to play. Corresponds to the value in the sound XML file or Tomb Editor's "Sound Infos" window.
2023-11-09 18:28:02 +00:00
< / li >
< li > < span class = "parameter" > position< / span >
< span class = "types" > < a class = "type" href = "../3 primitive classes/Vec3.html#" > Vec3< / a > < / span >
The 3D position of the sound, i.e. where the sound "comes from". If not given, the sound will not be positional.
2025-04-13 16:26:51 +02:00
< em > Optional.< / em >
2023-11-09 18:28:02 +00:00
< / li >
< / ul >
< / dd >
< dt >
< a name = "StopSound" > < / a >
2025-03-12 01:34:48 +03:00
< strong > StopSound(soundID)< / strong >
2023-11-09 18:28:02 +00:00
< / dt >
< dd >
2025-03-12 01:34:48 +03:00
Stop sound effect.
2023-11-09 18:28:02 +00:00
< h3 > Parameters:< / h3 >
< ul >
2025-03-12 01:34:48 +03:00
< li > < span class = "parameter" > soundID< / span >
2023-11-09 18:28:02 +00:00
< span class = "types" > < span class = "type" > int< / span > < / span >
2025-03-12 01:34:48 +03:00
Sound ID to play. Corresponds to the value in the sound XML file or Tomb Editor's "Sound Infos" window.
2023-11-09 18:28:02 +00:00
< / li >
< / ul >
< / dd >
< dt >
< a name = "IsSoundPlaying" > < / a >
2025-03-12 01:34:48 +03:00
< strong > IsSoundPlaying(soundID)< / strong >
2023-11-09 18:28:02 +00:00
< / dt >
< dd >
2025-03-12 01:34:48 +03:00
Check if the sound effect is playing.
2023-11-09 18:28:02 +00:00
< h3 > Parameters:< / h3 >
< ul >
2025-03-12 01:34:48 +03:00
< li > < span class = "parameter" > soundID< / span >
2023-11-09 18:28:02 +00:00
< span class = "types" > < span class = "type" > int< / span > < / span >
2025-03-12 01:34:48 +03:00
Sound ID to check. Corresponds to the value in the sound XML file or Tomb Editor's "Sound Infos" window.
2023-11-09 18:28:02 +00:00
< / li >
< / ul >
< / dd >
< dt >
< a name = "IsAudioTrackPlaying" > < / a >
2025-04-20 22:39:30 +03:00
< strong > IsAudioTrackPlaying(track)< / strong >
2023-11-09 18:28:02 +00:00
< / dt >
< dd >
2025-03-12 01:34:48 +03:00
Check if the audio track is playing.
2023-11-09 18:28:02 +00:00
< h3 > Parameters:< / h3 >
< ul >
2025-04-20 22:39:30 +03:00
< li > < span class = "parameter" > track< / span >
2023-11-09 18:28:02 +00:00
< span class = "types" > < a class = "type" href = "https://www.lua.org/manual/5.4/manual.html#6.4" > string< / a > < / span >
2025-03-12 01:34:48 +03:00
Filename to check. Should be without extension and without full directory path.
2023-11-09 18:28:02 +00:00
< / li >
< / ul >
< / dd >
< dt >
< a name = "GetCurrentSubtitle" > < / a >
< strong > GetCurrentSubtitle()< / strong >
< / dt >
< dd >
Get current subtitle string for a voice track currently playing.
2025-03-12 01:34:48 +03:00
Subtitle file must be in .srt format, have same filename as voice track, and be placed in same directory as voice track.
Returns nil if no voice track is playing or no subtitle present.
2023-11-09 18:28:02 +00:00
< h3 > Returns:< / h3 >
< ol >
< span class = "types" > < a class = "type" href = "https://www.lua.org/manual/5.4/manual.html#6.4" > string< / a > < / span >
2025-03-12 01:34:48 +03:00
Current subtitle string.
2023-11-09 18:28:02 +00:00
< / ol >
< / dd >
< / dl >
< / div > <!-- id="content" -->
< / div > <!-- id="main" -->
< div id = "about" >
< i > generated by < a href = "https://github.com/hispidence/TEN-LDoc" > TEN-LDoc< / a > (a fork of < a href = "http://github.com/stevedonovan/LDoc" > LDoc 1.4.6< / a > )< / i >
< / div > <!-- id="about" -->
< / div > <!-- id="container" -->
< / body >
< / html >