@litecanvas/utils
Version:
Utilities to help build litecanvas games
2 lines (1 loc) • 960 B
JavaScript
(()=>{var x=Object.defineProperty;var T=(e,t)=>{for(var r in t)x(e,r,{get:t[r],enumerable:!0})};globalThis.utils=globalThis.utils||{};globalThis.utils.global=(e=!0)=>{for(let t in globalThis.utils)t!=="global"&&(e||globalThis[t]===void 0)&&(globalThis[t]=globalThis.utils[t])};var f={};T(f,{colcirc:()=>N,colrect:()=>F,colrectcirc:()=>g,intersection:()=>o,resolverect:()=>d});var o=(e,t,r,a,s,i,l,u)=>{let m=Math.max(e,s),v=Math.min(e+r,s+l)-m,n=Math.max(t,i),b=Math.min(t+a,i+u)-n;return[m,n,v,b]};var d=(e,t,r,a,s,i,l,u)=>{let[m,v,n,b]=o(e,t,r,a,s,i,l,u),c="",p=e,h=t;return n<b?e<s?(c="right",p=s-r):(c="left",p=s+l):t<i?(c="bottom",h=i-a):(c="top",h=i+u),{dir:c,x:p,y:h}};var F=(e,t,r,a,s,i,l,u)=>e<s+l&&e+r>s&&t<i+u&&t+a>i;var N=(e,t,r,a,s,i)=>(a-e)*(a-e)+(s-t)*(s-t)<=(r+i)*(r+i);var g=(e,t,r,a,s,i,l)=>{let u=s-Math.max(e,Math.min(s,e+r)),m=i-Math.max(t,Math.min(i,t+a));return u*u+m*m<=l*l};globalThis.utils=Object.assign(globalThis.utils||{},f);})();