14auto internal_m2n_audio_source_get_loop(entt::entity
id) ->
bool
18 return comp->is_looping();
26void internal_m2n_audio_source_set_loop(entt::entity
id,
bool loop)
34auto internal_m2n_audio_source_get_volume(entt::entity
id) ->
float
38 return comp->get_volume();
44void internal_m2n_audio_source_set_volume(entt::entity
id,
float volume)
48 comp->set_volume(volume);
52auto internal_m2n_audio_source_get_pitch(entt::entity
id) ->
float
56 return comp->get_pitch();
62void internal_m2n_audio_source_set_pitch(entt::entity
id,
float pitch)
66 comp->set_pitch(pitch);
70auto internal_m2n_audio_source_get_volume_rolloff(entt::entity
id) ->
float
74 return comp->get_volume_rolloff();
80void internal_m2n_audio_source_set_volume_rolloff(entt::entity
id,
float rolloff)
84 comp->set_volume_rolloff(rolloff);
88auto internal_m2n_audio_source_get_min_distance(entt::entity
id) ->
float
92 return comp->get_range().min;
98void internal_m2n_audio_source_set_min_distance(entt::entity
id,
float distance)
102 auto range = comp->get_range();
104 comp->set_range(
range);
108auto internal_m2n_audio_source_get_max_distance(entt::entity
id) ->
float
112 return comp->get_range().max;
118void internal_m2n_audio_source_set_max_distance(entt::entity
id,
float distance)
122 auto range = comp->get_range();
124 comp->set_range(
range);
128auto internal_m2n_audio_source_get_mute(entt::entity
id) ->
bool
132 return comp->is_muted();
138void internal_m2n_audio_source_set_mute(entt::entity
id,
bool mute)
142 comp->set_mute(mute);
146auto internal_m2n_audio_source_get_time(entt::entity
id) ->
float
150 return float(comp->get_playback_position().count());
156void internal_m2n_audio_source_set_time(entt::entity
id,
float seconds)
160 comp->set_playback_position(audio::duration_t(seconds));
164auto internal_m2n_audio_source_is_playing(entt::entity
id) ->
bool
168 return comp->is_playing();
174auto internal_m2n_audio_source_is_paused(entt::entity
id) ->
bool
178 return comp->is_paused();
184void internal_m2n_audio_source_play(entt::entity
id)
192void internal_m2n_audio_source_stop(entt::entity
id)
200void internal_m2n_audio_source_pause(entt::entity
id)
208void internal_m2n_audio_source_resume(entt::entity
id)
216auto internal_m2n_audio_source_get_audio_clip(entt::entity
id) -> hpp::uuid
220 return comp->get_clip().uid();
226void internal_m2n_audio_source_set_audio_clip(entt::entity
id, hpp::uuid uid)
231 auto& am = ctx.get_cached<asset_manager>();
233 auto asset = am.get_asset<audio_clip>(uid);
234 comp->set_clip(asset);
244 auto reg = dotnet::internal_call_registry(
"Unravel.Core.AudioSourceComponent");
245 reg.add_internal_call(
"internal_m2n_audio_source_get_loop", dotnet_internal_call(internal_m2n_audio_source_get_loop));
246 reg.add_internal_call(
"internal_m2n_audio_source_set_loop", dotnet_internal_call(internal_m2n_audio_source_set_loop));
247 reg.add_internal_call(
"internal_m2n_audio_source_get_volume",
248 dotnet_internal_call(internal_m2n_audio_source_get_volume));
249 reg.add_internal_call(
"internal_m2n_audio_source_set_volume",
250 dotnet_internal_call(internal_m2n_audio_source_set_volume));
251 reg.add_internal_call(
"internal_m2n_audio_source_get_pitch",
252 dotnet_internal_call(internal_m2n_audio_source_get_pitch));
253 reg.add_internal_call(
"internal_m2n_audio_source_set_pitch",
254 dotnet_internal_call(internal_m2n_audio_source_set_pitch));
255 reg.add_internal_call(
"internal_m2n_audio_source_get_volume_rolloff",
256 dotnet_internal_call(internal_m2n_audio_source_get_volume_rolloff));
257 reg.add_internal_call(
"internal_m2n_audio_source_set_volume_rolloff",
258 dotnet_internal_call(internal_m2n_audio_source_set_volume_rolloff));
259 reg.add_internal_call(
"internal_m2n_audio_source_get_min_distance",
260 dotnet_internal_call(internal_m2n_audio_source_get_min_distance));
261 reg.add_internal_call(
"internal_m2n_audio_source_set_min_distance",
262 dotnet_internal_call(internal_m2n_audio_source_set_min_distance));
263 reg.add_internal_call(
"internal_m2n_audio_source_get_max_distance",
264 dotnet_internal_call(internal_m2n_audio_source_get_max_distance));
265 reg.add_internal_call(
"internal_m2n_audio_source_set_max_distance",
266 dotnet_internal_call(internal_m2n_audio_source_set_max_distance));
267 reg.add_internal_call(
"internal_m2n_audio_source_get_mute", dotnet_internal_call(internal_m2n_audio_source_get_mute));
269 reg.add_internal_call(
"internal_m2n_audio_source_set_mute", dotnet_internal_call(internal_m2n_audio_source_set_mute));
271 reg.add_internal_call(
"internal_m2n_audio_source_is_playing",
272 dotnet_internal_call(internal_m2n_audio_source_is_playing));
273 reg.add_internal_call(
"internal_m2n_audio_source_is_paused",
274 dotnet_internal_call(internal_m2n_audio_source_is_paused));
275 reg.add_internal_call(
"internal_m2n_audio_source_play", dotnet_internal_call(internal_m2n_audio_source_play));
276 reg.add_internal_call(
"internal_m2n_audio_source_stop", dotnet_internal_call(internal_m2n_audio_source_stop));
278 reg.add_internal_call(
"internal_m2n_audio_source_pause", dotnet_internal_call(internal_m2n_audio_source_pause));
279 reg.add_internal_call(
"internal_m2n_audio_source_resume", dotnet_internal_call(internal_m2n_audio_source_resume));
280 reg.add_internal_call(
"internal_m2n_audio_source_get_audio_clip",
281 dotnet_internal_call(internal_m2n_audio_source_get_audio_clip));
282 reg.add_internal_call(
"internal_m2n_audio_source_set_audio_clip",
283 dotnet_internal_call(internal_m2n_audio_source_set_audio_clip));
#define APPLOG_TRACE(...)
void register_audio_source_component_script_bindings()
auto safe_get_component(entt::entity id) -> T *
std::iterator_traits< octet_iterator >::difference_type distance(octet_iterator first, octet_iterator last)
static auto context() -> rtti::context &