From: Ian Jackson Date: Sat, 16 Apr 2022 11:39:58 +0000 (+0100) Subject: dice js: Actually do the animation X-Git-Tag: otter-1.1.0~526 X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=b68932e3355382ae5d4436580001b7b64178ce7b;p=otter.git dice js: Actually do the animation Signed-off-by: Ian Jackson --- diff --git a/templates/script.ts b/templates/script.ts index 2f14328c..c5b54c94 100644 --- a/templates/script.ts +++ b/templates/script.ts @@ -2293,7 +2293,22 @@ function die_request_animation(piece: PieceId, p: PieceInfo, function die_render_frame(piece: PieceId, p: PieceInfo, s: DieSpecialRendering, ts: DOMHighResTimeStamp) { s.anim_id = null; - console.log('DIE RENDER', piece, s); + let remprop = s.loaded_remprop - (ts - s.loaded_ts) / s.total_ms; + console.log('DIE RENDER', piece, s, remprop); + if (remprop <= 0) { + let to_remove: Element = s.cd_path; + for (;;) { + let previous = to_remove.previousElementSibling!; + // see dice/overlya-template-extractor + if (to_remove.tagName == 'text') break; + to_remove.remove(); + to_remove = previous; + } + } else { + let path_d = wasm_bindgen.die_cooldown_path(s.radius, remprop); + s.cd_path.setAttributeNS(null, "d", path_d); + die_request_animation(piece, p, s); + } } function die_rendering_stop(piece: PieceId, p: PieceInfo, s: DieSpecialRendering) {