UNPKG

@javelin/ecs

Version:

22 lines 610 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useTimer = void 0; const effect_1 = require("../../effect"); exports.useTimer = effect_1.createEffect(() => { let state = 0; let timer; return function useTimer(duration, invalidate = false) { if (invalidate) { state = 0; clearTimeout(timer); } if (state === 0) { state = 1; timer = setTimeout(() => { state = 2; }, duration); } return state === 2; }; }); //# sourceMappingURL=use_timer.js.map