Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions addons/dialogic/Modules/Audio/event_music.gd
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,8 @@ var audio_bus := ""
var loop := true


var _preview_node: AudioStreamPlayer

################################################################################
## EXECUTE
################################################################################
Expand All @@ -45,6 +47,12 @@ func _init() -> void:
func _get_icon() -> Resource:
return load(self.get_script().get_path().get_base_dir().path_join('icon_music.png'))


func _enter_visual_editor(_timeline_editor:DialogicEditor) -> void:
_preview_node = AudioStreamPlayer.new()
editor_node.add_child(_preview_node)
_preview_node.finished.connect(_on_preview_finished)

################################################################################
## SAVING/LOADING
################################################################################
Expand Down Expand Up @@ -77,6 +85,8 @@ func build_event_editor() -> void:
'placeholder' : "No music",
'editor_icon' : ["AudioStreamPlayer", "EditorIcons"]})
add_header_edit('channel_id', ValueType.FIXED_OPTIONS, {'left_text':'on:', 'options': get_channel_list()})
add_header_button('', _on_play_preview_audio, '', ["Play", "EditorIcons"], '!file_path.is_empty() && !_preview_node.is_playing()')
add_header_button('', _on_stop_preview_audio, '', ["Stop", "EditorIcons"], '_preview_node.is_playing()')
add_body_edit('fade_length', ValueType.NUMBER, {'left_text':'Fade Time:'})
add_body_edit('volume', ValueType.NUMBER, {'left_text':'Volume:', 'mode':2}, '!file_path.is_empty()')
add_body_edit('audio_bus', ValueType.SINGLELINE_TEXT, {'left_text':'Audio Bus:'}, '!file_path.is_empty()')
Expand All @@ -98,3 +108,20 @@ func get_channel_list() -> Array:
'value': i,
})
return channel_name_list


func _on_play_preview_audio() -> void:
if _preview_node:
_preview_node.stream = load(file_path)
_preview_node.play()
ui_update_needed.emit()


func _on_stop_preview_audio() -> void:
_preview_node.stop()
_preview_node.stream = null
ui_update_needed.emit()


func _on_preview_finished() -> void:
ui_update_needed.emit()
31 changes: 29 additions & 2 deletions addons/dialogic/Modules/Audio/event_sound.gd
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ var audio_bus := ""
var loop := false


var _preview_node: AudioStreamPlayer

################################################################################
## EXECUTE
################################################################################
Expand All @@ -41,6 +43,12 @@ func _init() -> void:
func _get_icon() -> Resource:
return load(self.get_script().get_path().get_base_dir().path_join('icon_sound.png'))


func _enter_visual_editor(_timeline_editor:DialogicEditor) -> void:
_preview_node = AudioStreamPlayer.new()
editor_node.add_child(_preview_node)
_preview_node.finished.connect(_on_preview_finished)

################################################################################
## SAVING/LOADING
################################################################################
Expand All @@ -65,11 +73,13 @@ func get_shortcode_parameters() -> Dictionary:
################################################################################

func build_event_editor() -> void:
add_header_edit('file_path', ValueType.FILE,
{'left_text' : 'Play',
add_header_edit('file_path', ValueType.FILE, {
'left_text' : 'Play',
'file_filter' : '*.mp3, *.ogg, *.wav; Supported Audio Files',
'placeholder' : "Select file",
'editor_icon' : ["AudioStreamPlayer", "EditorIcons"]})
add_header_button('', _on_play_preview_audio, '', ["Play", "EditorIcons"], '!file_path.is_empty() && !_preview_node.is_playing()')
add_header_button('', _on_stop_preview_audio, '', ["Stop", "EditorIcons"], '_preview_node.is_playing()')
add_body_edit('volume', ValueType.NUMBER, {'left_text':'Volume:', 'mode':2}, '!file_path.is_empty()')
add_body_edit('audio_bus', ValueType.SINGLELINE_TEXT, {'left_text':'Audio Bus:'}, '!file_path.is_empty()')

Expand All @@ -79,3 +89,20 @@ func get_bus_suggestions() -> Dictionary:
for i in range(AudioServer.bus_count):
bus_name_list[AudioServer.get_bus_name(i)] = {'value':AudioServer.get_bus_name(i)}
return bus_name_list


func _on_play_preview_audio() -> void:
if _preview_node:
_preview_node.stream = load(file_path)
_preview_node.play()
ui_update_needed.emit()


func _on_stop_preview_audio() -> void:
_preview_node.stop()
_preview_node.stream = null
ui_update_needed.emit()


func _on_preview_finished() -> void:
ui_update_needed.emit()
26 changes: 26 additions & 0 deletions addons/dialogic/Modules/Voice/event_voice.gd
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@ var volume: float = 0
var audio_bus := "Master"


var _preview_node: AudioStreamPlayer

################################################################################
## EXECUTE
################################################################################
Expand Down Expand Up @@ -45,6 +47,11 @@ func _init() -> void:
event_sorting_index = 5


func _enter_visual_editor(_timeline_editor:DialogicEditor) -> void:
_preview_node = AudioStreamPlayer.new()
editor_node.add_child(_preview_node)
_preview_node.finished.connect(_on_preview_finished)

################################################################################
## SAVING/LOADING
################################################################################
Expand Down Expand Up @@ -73,5 +80,24 @@ func build_event_editor() -> void:
'file_filter' : "*.mp3, *.ogg, *.wav",
'placeholder' : "Select file",
'editor_icon' : ["AudioStreamPlayer", "EditorIcons"]})
add_header_button('', _on_play_preview_audio, '', ["Play", "EditorIcons"], '!file_path.is_empty() && !_preview_node.is_playing()')
add_header_button('', _on_stop_preview_audio, '', ["Stop", "EditorIcons"], '_preview_node.is_playing()')
add_body_edit('volume', ValueType.NUMBER, {'left_text':'Volume:', 'mode':2}, '!file_path.is_empty()')
add_body_edit('audio_bus', ValueType.SINGLELINE_TEXT, {'left_text':'Audio Bus:'}, '!file_path.is_empty()')


func _on_play_preview_audio() -> void:
if _preview_node:
_preview_node.stream = load(file_path)
_preview_node.play()
ui_update_needed.emit()


func _on_stop_preview_audio() -> void:
_preview_node.stop()
_preview_node.stream = null
ui_update_needed.emit()


func _on_preview_finished() -> void:
ui_update_needed.emit()
Loading