zeldon-site/src/utils.js

38 lines
873 B
JavaScript
Raw Normal View History

2021-07-29 20:47:30 +00:00
export let last_update = Date.now();
export function calc_delta_time()
{
let now = Date.now();
let dt = (now - last_update) / 1e3;
dt = Math.min(dt, 0.016);
last_update = now;
return dt;
}
export function event_listener_array(whos, event_names, callback, options = null)
{
if (!Array.isArray(whos))
{
whos = [whos];
}
for (const name of event_names)
{
for (const who of whos)
{
who.addEventListener(name, callback, options);
}
}
}
export async function import_js_as_module(url)
{
return new Promise((resole, reject) =>
{
const body = document.getElementsByTagName('body')[0];
const script = document.createElement('script');
script.type = 'module';
script.src = url;
script.onload = resole;
body.appendChild(script);
});
}