forked from sent/waves
8650 lines
1.3 MiB
8650 lines
1.3 MiB
"use strict"
|
||
function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,n){var r=_superPropBase(e,t)
|
||
if(r){var a=Object.getOwnPropertyDescriptor(r,t)
|
||
return a.get?a.get.call(arguments.length<3?e:n):a.value}},_get.apply(this,arguments)}function _superPropBase(e,t){for(;!Object.prototype.hasOwnProperty.call(e,t)&&(e=_getPrototypeOf(e),null!==e););return e}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function")
|
||
e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_setPrototypeOf(e,t)}function _createSuper(e){var t=_isNativeReflectConstruct()
|
||
return function(){var n,r=_getPrototypeOf(e)
|
||
if(t){var a=_getPrototypeOf(this).constructor
|
||
n=Reflect.construct(r,arguments,a)}else n=r.apply(this,arguments)
|
||
return _possibleConstructorReturn(this,n)}}function _possibleConstructorReturn(e,t){if(t&&("object"===_typeof(t)||"function"==typeof t))return t
|
||
if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined")
|
||
return _assertThisInitialized(e)}function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called")
|
||
return e}function _getPrototypeOf(e){return(_getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function _construct(e,t,n){return _construct=_isNativeReflectConstruct()?Reflect.construct.bind():function(e,t,n){var r=[null]
|
||
r.push.apply(r,t)
|
||
var a=Function.bind.apply(e,r),i=new a
|
||
return n&&_setPrototypeOf(i,n.prototype),i},_construct.apply(null,arguments)}function _isNativeReflectConstruct(){if("undefined"==typeof Reflect||!Reflect.construct)return!1
|
||
if(Reflect.construct.sham)return!1
|
||
if("function"==typeof Proxy)return!0
|
||
try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch(e){return!1}}function _setPrototypeOf(e,t){return(_setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e})(e,t)}function _toConsumableArray(e){return _arrayWithoutHoles(e)||_iterableToArray(e)||_unsupportedIterableToArray(e)||_nonIterableSpread()}function _nonIterableSpread(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArray(e){return"undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"]?Array.from(e):void 0}function _arrayWithoutHoles(e){return Array.isArray(e)?_arrayLikeToArray(e):void 0}function _defineProperty(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _slicedToArray(e,t){return _arrayWithHoles(e)||_iterableToArrayLimit(e,t)||_unsupportedIterableToArray(e,t)||_nonIterableRest()}function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function _iterableToArrayLimit(e,t){var n=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]
|
||
if(null!=n){var r,a,i=[],s=!0,o=!1
|
||
try{for(n=n.call(e);!(s=(r=n.next()).done)&&(i.push(r.value),!t||i.length!==t);s=!0);}catch(u){o=!0,a=u}finally{try{s||null==n["return"]||n["return"]()}finally{if(o)throw a}}return i}}function _arrayWithHoles(e){return Array.isArray(e)?e:void 0}function _regeneratorRuntime(){function e(e,t,n){return Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}),e[t]}function t(e,t,a,i){var s=t&&t.prototype instanceof r?t:r,o=Object.create(s.prototype),l=new h(i||[])
|
||
return o._invoke=function(e,t,r){var a="suspendedStart"
|
||
return function(i,s){if("executing"===a)throw Error("Generator is already running")
|
||
if("completed"===a){if("throw"===i)throw s
|
||
return f()}for(r.method=i,r.arg=s;;){var o=r.delegate
|
||
if(o){var l=u(o,r)
|
||
if(l){if(l===k)continue
|
||
return l}}if("next"===r.method)r.sent=r._sent=r.arg
|
||
else if("throw"===r.method){if("suspendedStart"===a)throw a="completed",r.arg
|
||
r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg)
|
||
a="executing"
|
||
var c=n(e,t,r)
|
||
if("normal"===c.type){if(a=r.done?"completed":"suspendedYield",c.arg===k)continue
|
||
return{value:c.arg,done:r.done}}"throw"===c.type&&(a="completed",r.method="throw",r.arg=c.arg)}}}(e,a,l),o}function n(e,t,n){try{return{type:"normal",arg:e.call(t,n)}}catch(r){return{type:"throw",arg:r}}}function r(){}function a(){}function i(){}function s(t){["next","throw","return"].forEach(function(n){e(t,n,function(e){return this._invoke(n,e)})})}function o(e,t){function r(a,i,s,o){var u=n(e[a],e,i)
|
||
if("throw"!==u.type){var l=u.arg,c=l.value
|
||
return c&&"object"==_typeof(c)&&v.call(c,"__await")?t.resolve(c.__await).then(function(e){r("next",e,s,o)},function(e){r("throw",e,s,o)}):t.resolve(c).then(function(e){l.value=e,s(l)},function(e){return r("throw",e,s,o)})}o(u.arg)}var a
|
||
this._invoke=function(e,n){function i(){return new t(function(t,a){r(e,n,t,a)})}return a=a?a.then(i,i):i()}}function u(e,t){var r=e.iterator[t.method]
|
||
if(void 0===r){if(t.delegate=null,"throw"===t.method){if(e.iterator["return"]&&(t.method="return",t.arg=void 0,u(e,t),"throw"===t.method))return k
|
||
t.method="throw",t.arg=new TypeError("The iterator does not provide a 'throw' method")}return k}var a=n(r,e.iterator,t.arg)
|
||
if("throw"===a.type)return t.method="throw",t.arg=a.arg,t.delegate=null,k
|
||
var i=a.arg
|
||
return i?i.done?(t[e.resultName]=i.value,t.next=e.nextLoc,"return"!==t.method&&(t.method="next",t.arg=void 0),t.delegate=null,k):i:(t.method="throw",t.arg=new TypeError("iterator result is not an object"),t.delegate=null,k)}function l(e){var t={tryLoc:e[0]}
|
||
1 in e&&(t.catchLoc=e[1]),2 in e&&(t.finallyLoc=e[2],t.afterLoc=e[3]),this.tryEntries.push(t)}function c(e){var t=e.completion||{}
|
||
t.type="normal",delete t.arg,e.completion=t}function h(e){this.tryEntries=[{tryLoc:"root"}],e.forEach(l,this),this.reset(!0)}function _(e){if(e){var t=e[y]
|
||
if(t)return t.call(e)
|
||
if("function"==typeof e.next)return e
|
||
if(!isNaN(e.length)){var n=-1,r=function a(){for(;++n<e.length;)if(v.call(e,n))return a.value=e[n],a.done=!1,a
|
||
return a.value=void 0,a.done=!0,a}
|
||
return r.next=r}}return{next:f}}function f(){return{value:void 0,done:!0}}_regeneratorRuntime=function(){return d}
|
||
var d={},p=Object.prototype,v=p.hasOwnProperty,m="function"==typeof Symbol?Symbol:{},y=m.iterator||"@@iterator",g=m.asyncIterator||"@@asyncIterator",C=m.toStringTag||"@@toStringTag"
|
||
try{e({},"")}catch(S){e=function(e,t,n){return e[t]=n}}d.wrap=t
|
||
var k={},I={}
|
||
e(I,y,function(){return this})
|
||
var T=Object.getPrototypeOf,G=T&&T(T(_([])))
|
||
G&&G!==p&&v.call(G,y)&&(I=G)
|
||
var b=i.prototype=r.prototype=Object.create(I)
|
||
return a.prototype=i,e(b,"constructor",i),e(i,"constructor",a),a.displayName=e(i,C,"GeneratorFunction"),d.isGeneratorFunction=function(e){var t="function"==typeof e&&e.constructor
|
||
return!!t&&(t===a||"GeneratorFunction"===(t.displayName||t.name))},d.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,i):(t.__proto__=i,e(t,C,"GeneratorFunction")),t.prototype=Object.create(b),t},d.awrap=function(e){return{__await:e}},s(o.prototype),e(o.prototype,g,function(){return this}),d.AsyncIterator=o,d.async=function(e,n,r,a,i){void 0===i&&(i=Promise)
|
||
var s=new o(t(e,n,r,a),i)
|
||
return d.isGeneratorFunction(n)?s:s.next().then(function(e){return e.done?e.value:s.next()})},s(b),e(b,C,"Generator"),e(b,y,function(){return this}),e(b,"toString",function(){return"[object Generator]"}),d.keys=function(e){var t=[]
|
||
for(var n in e)t.push(n)
|
||
return t.reverse(),function r(){for(;t.length;){var n=t.pop()
|
||
if(n in e)return r.value=n,r.done=!1,r}return r.done=!0,r}},d.values=_,h.prototype={constructor:h,reset:function(e){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(c),!e)for(var t in this)"t"===t.charAt(0)&&v.call(this,t)&&!isNaN(+t.slice(1))&&(this[t]=void 0)},stop:function(){this.done=!0
|
||
var e=this.tryEntries[0].completion
|
||
if("throw"===e.type)throw e.arg
|
||
return this.rval},dispatchException:function(e){function t(t,r){return i.type="throw",i.arg=e,n.next=t,r&&(n.method="next",n.arg=void 0),!!r}if(this.done)throw e
|
||
for(var n=this,r=this.tryEntries.length-1;r>=0;--r){var a=this.tryEntries[r],i=a.completion
|
||
if("root"===a.tryLoc)return t("end")
|
||
if(a.tryLoc<=this.prev){var s=v.call(a,"catchLoc"),o=v.call(a,"finallyLoc")
|
||
if(s&&o){if(this.prev<a.catchLoc)return t(a.catchLoc,!0)
|
||
if(this.prev<a.finallyLoc)return t(a.finallyLoc)}else if(s){if(this.prev<a.catchLoc)return t(a.catchLoc,!0)}else{if(!o)throw Error("try statement without catch or finally")
|
||
if(this.prev<a.finallyLoc)return t(a.finallyLoc)}}}},abrupt:function(e,t){for(var n=this.tryEntries.length-1;n>=0;--n){var r=this.tryEntries[n]
|
||
if(r.tryLoc<=this.prev&&v.call(r,"finallyLoc")&&this.prev<r.finallyLoc){var a=r
|
||
break}}a&&("break"===e||"continue"===e)&&a.tryLoc<=t&&t<=a.finallyLoc&&(a=null)
|
||
var i=a?a.completion:{}
|
||
return i.type=e,i.arg=t,a?(this.method="next",this.next=a.finallyLoc,k):this.complete(i)},complete:function(e,t){if("throw"===e.type)throw e.arg
|
||
return"break"===e.type||"continue"===e.type?this.next=e.arg:"return"===e.type?(this.rval=this.arg=e.arg,this.method="return",this.next="end"):"normal"===e.type&&t&&(this.next=t),k},finish:function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t]
|
||
if(n.finallyLoc===e)return this.complete(n.completion,n.afterLoc),c(n),k}},"catch":function(e){for(var t=this.tryEntries.length-1;t>=0;--t){var n=this.tryEntries[t]
|
||
if(n.tryLoc===e){var r=n.completion
|
||
if("throw"===r.type){var a=r.arg
|
||
c(n)}return a}}throw Error("illegal catch attempt")},delegateYield:function(e,t,n){return this.delegate={iterator:_(e),resultName:t,nextLoc:n},"next"===this.method&&(this.arg=void 0),k}},d}function asyncGeneratorStep(e,t,n,r,a,i,s){try{var o=e[i](s),u=o.value}catch(l){return void n(l)}o.done?t(u):Promise.resolve(u).then(r,a)}function _asyncToGenerator(e){return function(){var t=this,n=arguments
|
||
return new Promise(function(r,a){function i(e){asyncGeneratorStep(o,r,a,i,s,"next",e)}function s(e){asyncGeneratorStep(o,r,a,i,s,"throw",e)}var o=e.apply(t,n)
|
||
i(void 0)})}}function _createForOfIteratorHelper(e,t){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"]
|
||
if(!n){if(Array.isArray(e)||(n=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length){n&&(e=n)
|
||
var r=0,a=function(){}
|
||
return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,s=!0,o=!1
|
||
return{s:function(){n=n.call(e)},n:function(){var e=n.next()
|
||
return s=e.done,e},e:function(e){o=!0,i=e},f:function(){try{s||null==n["return"]||n["return"]()}finally{if(o)throw i}}}}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t)
|
||
var n=Object.prototype.toString.call(e).slice(8,-1)
|
||
return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?_arrayLikeToArray(e,t):void 0}}function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length)
|
||
for(var n=0,r=Array(t);t>n;n++)r[n]=e[n]
|
||
return r}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;n<t.length;n++){var r=t[n]
|
||
r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}function _createClass(e,t,n){return t&&_defineProperties(e.prototype,t),n&&_defineProperties(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function _typeof(e){"@babel/helpers - typeof"
|
||
return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}!function(e,t){"object"===("undefined"==typeof exports?"undefined":_typeof(exports))&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):(e=e||self,t(e.glMatrix={}))}(void 0,function(e){function t(e){ga=e}function n(e){return e*Sa}function r(e,t){return Math.abs(e-t)<=ya*Math.max(1,Math.abs(e),Math.abs(t))}function a(){var e=new ga(4)
|
||
return ga!=Float32Array&&(e[1]=0,e[2]=0),e[0]=1,e[3]=1,e}function i(e){var t=new ga(4)
|
||
return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}function s(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}function o(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e}function u(e,t,n,r){var a=new ga(4)
|
||
return a[0]=e,a[1]=t,a[2]=n,a[3]=r,a}function l(e,t,n,r,a){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e}function c(e,t){if(e===t){var n=t[1]
|
||
e[1]=t[2],e[2]=n}else e[0]=t[0],e[1]=t[2],e[2]=t[1],e[3]=t[3]
|
||
return e}function h(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=n*i-a*r
|
||
return s?(s=1/s,e[0]=i*s,e[1]=-r*s,e[2]=-a*s,e[3]=n*s,e):null}function _(e,t){var n=t[0]
|
||
return e[0]=t[3],e[1]=-t[1],e[2]=-t[2],e[3]=n,e}function f(e){return e[0]*e[3]-e[2]*e[1]}function d(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=n[0],u=n[1],l=n[2],c=n[3]
|
||
return e[0]=r*o+i*u,e[1]=a*o+s*u,e[2]=r*l+i*c,e[3]=a*l+s*c,e}function p(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=Math.sin(n),u=Math.cos(n)
|
||
return e[0]=r*u+i*o,e[1]=a*u+s*o,e[2]=r*-o+i*u,e[3]=a*-o+s*u,e}function v(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=n[0],u=n[1]
|
||
return e[0]=r*o,e[1]=a*o,e[2]=i*u,e[3]=s*u,e}function m(e,t){var n=Math.sin(t),r=Math.cos(t)
|
||
return e[0]=r,e[1]=n,e[2]=-n,e[3]=r,e}function y(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=t[1],e}function g(e){return"mat2("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"}function C(e){return Math.hypot(e[0],e[1],e[2],e[3])}function S(e,t,n,r){return e[2]=r[2]/r[0],n[0]=r[0],n[1]=r[1],n[3]=r[3]-e[2]*n[1],[e,t,n]}function k(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e}function I(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e}function T(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]}function G(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],s=t[0],o=t[1],u=t[2],l=t[3]
|
||
return Math.abs(n-s)<=ya*Math.max(1,Math.abs(n),Math.abs(s))&&Math.abs(r-o)<=ya*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(a-u)<=ya*Math.max(1,Math.abs(a),Math.abs(u))&&Math.abs(i-l)<=ya*Math.max(1,Math.abs(i),Math.abs(l))}function b(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e}function A(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e}function E(){var e=new ga(6)
|
||
return ga!=Float32Array&&(e[1]=0,e[2]=0,e[4]=0,e[5]=0),e[0]=1,e[3]=1,e}function R(e){var t=new ga(6)
|
||
return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t}function x(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e}function P(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e}function M(e,t,n,r,a,i){var s=new ga(6)
|
||
return s[0]=e,s[1]=t,s[2]=n,s[3]=r,s[4]=a,s[5]=i,s}function O(e,t,n,r,a,i,s){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e[4]=i,e[5]=s,e}function w(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=t[4],o=t[5],u=n*i-r*a
|
||
return u?(u=1/u,e[0]=i*u,e[1]=-r*u,e[2]=-a*u,e[3]=n*u,e[4]=(a*o-i*s)*u,e[5]=(r*s-n*o)*u,e):null}function D(e){return e[0]*e[3]-e[1]*e[2]}function L(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=n[0],c=n[1],h=n[2],_=n[3],f=n[4],d=n[5]
|
||
return e[0]=r*l+i*c,e[1]=a*l+s*c,e[2]=r*h+i*_,e[3]=a*h+s*_,e[4]=r*f+i*d+o,e[5]=a*f+s*d+u,e}function F(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=Math.sin(n),c=Math.cos(n)
|
||
return e[0]=r*c+i*l,e[1]=a*c+s*l,e[2]=r*-l+i*c,e[3]=a*-l+s*c,e[4]=o,e[5]=u,e}function B(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=n[0],c=n[1]
|
||
return e[0]=r*l,e[1]=a*l,e[2]=i*c,e[3]=s*c,e[4]=o,e[5]=u,e}function N(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=n[0],c=n[1]
|
||
return e[0]=r,e[1]=a,e[2]=i,e[3]=s,e[4]=r*l+i*c+o,e[5]=a*l+s*c+u,e}function H(e,t){var n=Math.sin(t),r=Math.cos(t)
|
||
return e[0]=r,e[1]=n,e[2]=-n,e[3]=r,e[4]=0,e[5]=0,e}function U(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=t[1],e[4]=0,e[5]=0,e}function W(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=1,e[4]=t[0],e[5]=t[1],e}function V(e){return"mat2d("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+")"}function j(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],1)}function Y(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e}function X(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e}function z(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e}function K(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e}function J(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]}function q(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],s=e[4],o=e[5],u=t[0],l=t[1],c=t[2],h=t[3],_=t[4],f=t[5]
|
||
return Math.abs(n-u)<=ya*Math.max(1,Math.abs(n),Math.abs(u))&&Math.abs(r-l)<=ya*Math.max(1,Math.abs(r),Math.abs(l))&&Math.abs(a-c)<=ya*Math.max(1,Math.abs(a),Math.abs(c))&&Math.abs(i-h)<=ya*Math.max(1,Math.abs(i),Math.abs(h))&&Math.abs(s-_)<=ya*Math.max(1,Math.abs(s),Math.abs(_))&&Math.abs(o-f)<=ya*Math.max(1,Math.abs(o),Math.abs(f))}function Q(){var e=new ga(9)
|
||
return ga!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e}function Z(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[4],e[4]=t[5],e[5]=t[6],e[6]=t[8],e[7]=t[9],e[8]=t[10],e}function $(e){var t=new ga(9)
|
||
return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t}function ee(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e}function te(e,t,n,r,a,i,s,o,u){var l=new ga(9)
|
||
return l[0]=e,l[1]=t,l[2]=n,l[3]=r,l[4]=a,l[5]=i,l[6]=s,l[7]=o,l[8]=u,l}function ne(e,t,n,r,a,i,s,o,u,l){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e[4]=i,e[5]=s,e[6]=o,e[7]=u,e[8]=l,e}function re(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e}function ae(e,t){if(e===t){var n=t[1],r=t[2],a=t[5]
|
||
e[1]=t[3],e[2]=t[6],e[3]=n,e[5]=t[7],e[6]=r,e[7]=a}else e[0]=t[0],e[1]=t[3],e[2]=t[6],e[3]=t[1],e[4]=t[4],e[5]=t[7],e[6]=t[2],e[7]=t[5],e[8]=t[8]
|
||
return e}function ie(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=t[4],o=t[5],u=t[6],l=t[7],c=t[8],h=c*s-o*l,_=-c*i+o*u,f=l*i-s*u,d=n*h+r*_+a*f
|
||
return d?(d=1/d,e[0]=h*d,e[1]=(-c*r+a*l)*d,e[2]=(o*r-a*s)*d,e[3]=_*d,e[4]=(c*n-a*u)*d,e[5]=(-o*n+a*i)*d,e[6]=f*d,e[7]=(-l*n+r*u)*d,e[8]=(s*n-r*i)*d,e):null}function se(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=t[4],o=t[5],u=t[6],l=t[7],c=t[8]
|
||
return e[0]=s*c-o*l,e[1]=a*l-r*c,e[2]=r*o-a*s,e[3]=o*u-i*c,e[4]=n*c-a*u,e[5]=a*i-n*o,e[6]=i*l-s*u,e[7]=r*u-n*l,e[8]=n*s-r*i,e}function oe(e){var t=e[0],n=e[1],r=e[2],a=e[3],i=e[4],s=e[5],o=e[6],u=e[7],l=e[8]
|
||
return t*(l*i-s*u)+n*(-l*a+s*o)+r*(u*a-i*o)}function ue(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=t[8],_=n[0],f=n[1],d=n[2],p=n[3],v=n[4],m=n[5],y=n[6],g=n[7],C=n[8]
|
||
return e[0]=_*r+f*s+d*l,e[1]=_*a+f*o+d*c,e[2]=_*i+f*u+d*h,e[3]=p*r+v*s+m*l,e[4]=p*a+v*o+m*c,e[5]=p*i+v*u+m*h,e[6]=y*r+g*s+C*l,e[7]=y*a+g*o+C*c,e[8]=y*i+g*u+C*h,e}function le(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=t[8],_=n[0],f=n[1]
|
||
return e[0]=r,e[1]=a,e[2]=i,e[3]=s,e[4]=o,e[5]=u,e[6]=_*r+f*s+l,e[7]=_*a+f*o+c,e[8]=_*i+f*u+h,e}function ce(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=t[8],_=Math.sin(n),f=Math.cos(n)
|
||
return e[0]=f*r+_*s,e[1]=f*a+_*o,e[2]=f*i+_*u,e[3]=f*s-_*r,e[4]=f*o-_*a,e[5]=f*u-_*i,e[6]=l,e[7]=c,e[8]=h,e}function he(e,t,n){var r=n[0],a=n[1]
|
||
return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=a*t[3],e[4]=a*t[4],e[5]=a*t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e}function _e(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=1,e[5]=0,e[6]=t[0],e[7]=t[1],e[8]=1,e}function fe(e,t){var n=Math.sin(t),r=Math.cos(t)
|
||
return e[0]=r,e[1]=n,e[2]=0,e[3]=-n,e[4]=r,e[5]=0,e[6]=0,e[7]=0,e[8]=1,e}function de(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=t[1],e[5]=0,e[6]=0,e[7]=0,e[8]=1,e}function pe(e,t){return e[0]=t[0],e[1]=t[1],e[2]=0,e[3]=t[2],e[4]=t[3],e[5]=0,e[6]=t[4],e[7]=t[5],e[8]=1,e}function ve(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=n+n,o=r+r,u=a+a,l=n*s,c=r*s,h=r*o,_=a*s,f=a*o,d=a*u,p=i*s,v=i*o,m=i*u
|
||
return e[0]=1-h-d,e[3]=c-m,e[6]=_+v,e[1]=c+m,e[4]=1-l-d,e[7]=f-p,e[2]=_-v,e[5]=f+p,e[8]=1-l-h,e}function me(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=t[4],o=t[5],u=t[6],l=t[7],c=t[8],h=t[9],_=t[10],f=t[11],d=t[12],p=t[13],v=t[14],m=t[15],y=n*o-r*s,g=n*u-a*s,C=n*l-i*s,S=r*u-a*o,k=r*l-i*o,I=a*l-i*u,T=c*p-h*d,G=c*v-_*d,b=c*m-f*d,A=h*v-_*p,E=h*m-f*p,R=_*m-f*v,x=y*R-g*E+C*A+S*b-k*G+I*T
|
||
return x?(x=1/x,e[0]=(o*R-u*E+l*A)*x,e[1]=(u*b-s*R-l*G)*x,e[2]=(s*E-o*b+l*T)*x,e[3]=(a*E-r*R-i*A)*x,e[4]=(n*R-a*b+i*G)*x,e[5]=(r*b-n*E-i*T)*x,e[6]=(p*I-v*k+m*S)*x,e[7]=(v*C-d*I-m*g)*x,e[8]=(d*k-p*C+m*y)*x,e):null}function ye(e,t,n){return e[0]=2/t,e[1]=0,e[2]=0,e[3]=0,e[4]=-2/n,e[5]=0,e[6]=-1,e[7]=1,e[8]=1,e}function ge(e){return"mat3("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+")"}function Ce(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8])}function Se(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e[8]=t[8]+n[8],e}function ke(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e[6]=t[6]-n[6],e[7]=t[7]-n[7],e[8]=t[8]-n[8],e}function Ie(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*n,e}function Te(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e[6]=t[6]+n[6]*r,e[7]=t[7]+n[7]*r,e[8]=t[8]+n[8]*r,e}function Ge(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]}function be(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],s=e[4],o=e[5],u=e[6],l=e[7],c=e[8],h=t[0],_=t[1],f=t[2],d=t[3],p=t[4],v=t[5],m=t[6],y=t[7],g=t[8]
|
||
return Math.abs(n-h)<=ya*Math.max(1,Math.abs(n),Math.abs(h))&&Math.abs(r-_)<=ya*Math.max(1,Math.abs(r),Math.abs(_))&&Math.abs(a-f)<=ya*Math.max(1,Math.abs(a),Math.abs(f))&&Math.abs(i-d)<=ya*Math.max(1,Math.abs(i),Math.abs(d))&&Math.abs(s-p)<=ya*Math.max(1,Math.abs(s),Math.abs(p))&&Math.abs(o-v)<=ya*Math.max(1,Math.abs(o),Math.abs(v))&&Math.abs(u-m)<=ya*Math.max(1,Math.abs(u),Math.abs(m))&&Math.abs(l-y)<=ya*Math.max(1,Math.abs(l),Math.abs(y))&&Math.abs(c-g)<=ya*Math.max(1,Math.abs(c),Math.abs(g))}function Ae(){var e=new ga(16)
|
||
return ga!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function Ee(e){var t=new ga(16)
|
||
return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function Re(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function xe(e,t,n,r,a,i,s,o,u,l,c,h,_,f,d,p){var v=new ga(16)
|
||
return v[0]=e,v[1]=t,v[2]=n,v[3]=r,v[4]=a,v[5]=i,v[6]=s,v[7]=o,v[8]=u,v[9]=l,v[10]=c,v[11]=h,v[12]=_,v[13]=f,v[14]=d,v[15]=p,v}function Pe(e,t,n,r,a,i,s,o,u,l,c,h,_,f,d,p,v){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e[4]=i,e[5]=s,e[6]=o,e[7]=u,e[8]=l,e[9]=c,e[10]=h,e[11]=_,e[12]=f,e[13]=d,e[14]=p,e[15]=v,e}function Me(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Oe(e,t){if(e===t){var n=t[1],r=t[2],a=t[3],i=t[6],s=t[7],o=t[11]
|
||
e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=n,e[6]=t[9],e[7]=t[13],e[8]=r,e[9]=i,e[11]=t[14],e[12]=a,e[13]=s,e[14]=o}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15]
|
||
return e}function we(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=t[4],o=t[5],u=t[6],l=t[7],c=t[8],h=t[9],_=t[10],f=t[11],d=t[12],p=t[13],v=t[14],m=t[15],y=n*o-r*s,g=n*u-a*s,C=n*l-i*s,S=r*u-a*o,k=r*l-i*o,I=a*l-i*u,T=c*p-h*d,G=c*v-_*d,b=c*m-f*d,A=h*v-_*p,E=h*m-f*p,R=_*m-f*v,x=y*R-g*E+C*A+S*b-k*G+I*T
|
||
return x?(x=1/x,e[0]=(o*R-u*E+l*A)*x,e[1]=(a*E-r*R-i*A)*x,e[2]=(p*I-v*k+m*S)*x,e[3]=(_*k-h*I-f*S)*x,e[4]=(u*b-s*R-l*G)*x,e[5]=(n*R-a*b+i*G)*x,e[6]=(v*C-d*I-m*g)*x,e[7]=(c*I-_*C+f*g)*x,e[8]=(s*E-o*b+l*T)*x,e[9]=(r*b-n*E-i*T)*x,e[10]=(d*k-p*C+m*y)*x,e[11]=(h*C-c*k-f*y)*x,e[12]=(o*G-s*A-u*T)*x,e[13]=(n*A-r*G+a*T)*x,e[14]=(p*g-d*S-v*y)*x,e[15]=(c*S-h*g+_*y)*x,e):null}function De(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=t[4],o=t[5],u=t[6],l=t[7],c=t[8],h=t[9],_=t[10],f=t[11],d=t[12],p=t[13],v=t[14],m=t[15]
|
||
return e[0]=o*(_*m-f*v)-h*(u*m-l*v)+p*(u*f-l*_),e[1]=-(r*(_*m-f*v)-h*(a*m-i*v)+p*(a*f-i*_)),e[2]=r*(u*m-l*v)-o*(a*m-i*v)+p*(a*l-i*u),e[3]=-(r*(u*f-l*_)-o*(a*f-i*_)+h*(a*l-i*u)),e[4]=-(s*(_*m-f*v)-c*(u*m-l*v)+d*(u*f-l*_)),e[5]=n*(_*m-f*v)-c*(a*m-i*v)+d*(a*f-i*_),e[6]=-(n*(u*m-l*v)-s*(a*m-i*v)+d*(a*l-i*u)),e[7]=n*(u*f-l*_)-s*(a*f-i*_)+c*(a*l-i*u),e[8]=s*(h*m-f*p)-c*(o*m-l*p)+d*(o*f-l*h),e[9]=-(n*(h*m-f*p)-c*(r*m-i*p)+d*(r*f-i*h)),e[10]=n*(o*m-l*p)-s*(r*m-i*p)+d*(r*l-i*o),e[11]=-(n*(o*f-l*h)-s*(r*f-i*h)+c*(r*l-i*o)),e[12]=-(s*(h*v-_*p)-c*(o*v-u*p)+d*(o*_-u*h)),e[13]=n*(h*v-_*p)-c*(r*v-a*p)+d*(r*_-a*h),e[14]=-(n*(o*v-u*p)-s*(r*v-a*p)+d*(r*u-a*o)),e[15]=n*(o*_-u*h)-s*(r*_-a*h)+c*(r*u-a*o),e}function Le(e){var t=e[0],n=e[1],r=e[2],a=e[3],i=e[4],s=e[5],o=e[6],u=e[7],l=e[8],c=e[9],h=e[10],_=e[11],f=e[12],d=e[13],p=e[14],v=e[15],m=t*s-n*i,y=t*o-r*i,g=t*u-a*i,C=n*o-r*s,S=n*u-a*s,k=r*u-a*o,I=l*d-c*f,T=l*p-h*f,G=l*v-_*f,b=c*p-h*d,A=c*v-_*d,E=h*v-_*p
|
||
return m*E-y*A+g*b+C*G-S*T+k*I}function Fe(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=t[8],_=t[9],f=t[10],d=t[11],p=t[12],v=t[13],m=t[14],y=t[15],g=n[0],C=n[1],S=n[2],k=n[3]
|
||
return e[0]=g*r+C*o+S*h+k*p,e[1]=g*a+C*u+S*_+k*v,e[2]=g*i+C*l+S*f+k*m,e[3]=g*s+C*c+S*d+k*y,g=n[4],C=n[5],S=n[6],k=n[7],e[4]=g*r+C*o+S*h+k*p,e[5]=g*a+C*u+S*_+k*v,e[6]=g*i+C*l+S*f+k*m,e[7]=g*s+C*c+S*d+k*y,g=n[8],C=n[9],S=n[10],k=n[11],e[8]=g*r+C*o+S*h+k*p,e[9]=g*a+C*u+S*_+k*v,e[10]=g*i+C*l+S*f+k*m,e[11]=g*s+C*c+S*d+k*y,g=n[12],C=n[13],S=n[14],k=n[15],e[12]=g*r+C*o+S*h+k*p,e[13]=g*a+C*u+S*_+k*v,e[14]=g*i+C*l+S*f+k*m,e[15]=g*s+C*c+S*d+k*y,e}function Be(e,t,n){var r,a,i,s,o,u,l,c,h,_,f,d,p=n[0],v=n[1],m=n[2]
|
||
return t===e?(e[12]=t[0]*p+t[4]*v+t[8]*m+t[12],e[13]=t[1]*p+t[5]*v+t[9]*m+t[13],e[14]=t[2]*p+t[6]*v+t[10]*m+t[14],e[15]=t[3]*p+t[7]*v+t[11]*m+t[15]):(r=t[0],a=t[1],i=t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=t[8],_=t[9],f=t[10],d=t[11],e[0]=r,e[1]=a,e[2]=i,e[3]=s,e[4]=o,e[5]=u,e[6]=l,e[7]=c,e[8]=h,e[9]=_,e[10]=f,e[11]=d,e[12]=r*p+o*v+h*m+t[12],e[13]=a*p+u*v+_*m+t[13],e[14]=i*p+l*v+f*m+t[14],e[15]=s*p+c*v+d*m+t[15]),e}function Ne(e,t,n){var r=n[0],a=n[1],i=n[2]
|
||
return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*a,e[5]=t[5]*a,e[6]=t[6]*a,e[7]=t[7]*a,e[8]=t[8]*i,e[9]=t[9]*i,e[10]=t[10]*i,e[11]=t[11]*i,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function He(e,t,n,r){var a,i,s,o,u,l,c,h,_,f,d,p,v,m,y,g,C,S,k,I,T,G,b,A,E=r[0],R=r[1],x=r[2],P=Math.hypot(E,R,x)
|
||
return ya>P?null:(P=1/P,E*=P,R*=P,x*=P,a=Math.sin(n),i=Math.cos(n),s=1-i,o=t[0],u=t[1],l=t[2],c=t[3],h=t[4],_=t[5],f=t[6],d=t[7],p=t[8],v=t[9],m=t[10],y=t[11],g=E*E*s+i,C=R*E*s+x*a,S=x*E*s-R*a,k=E*R*s-x*a,I=R*R*s+i,T=x*R*s+E*a,G=E*x*s+R*a,b=R*x*s-E*a,A=x*x*s+i,e[0]=o*g+h*C+p*S,e[1]=u*g+_*C+v*S,e[2]=l*g+f*C+m*S,e[3]=c*g+d*C+y*S,e[4]=o*k+h*I+p*T,e[5]=u*k+_*I+v*T,e[6]=l*k+f*I+m*T,e[7]=c*k+d*I+y*T,e[8]=o*G+h*b+p*A,e[9]=u*G+_*b+v*A,e[10]=l*G+f*b+m*A,e[11]=c*G+d*b+y*A,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}function Ue(e,t,n){var r=Math.sin(n),a=Math.cos(n),i=t[4],s=t[5],o=t[6],u=t[7],l=t[8],c=t[9],h=t[10],_=t[11]
|
||
return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=i*a+l*r,e[5]=s*a+c*r,e[6]=o*a+h*r,e[7]=u*a+_*r,e[8]=l*a-i*r,e[9]=c*a-s*r,e[10]=h*a-o*r,e[11]=_*a-u*r,e}function We(e,t,n){var r=Math.sin(n),a=Math.cos(n),i=t[0],s=t[1],o=t[2],u=t[3],l=t[8],c=t[9],h=t[10],_=t[11]
|
||
return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=i*a-l*r,e[1]=s*a-c*r,e[2]=o*a-h*r,e[3]=u*a-_*r,e[8]=i*r+l*a,e[9]=s*r+c*a,e[10]=o*r+h*a,e[11]=u*r+_*a,e}function Ve(e,t,n){var r=Math.sin(n),a=Math.cos(n),i=t[0],s=t[1],o=t[2],u=t[3],l=t[4],c=t[5],h=t[6],_=t[7]
|
||
return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=i*a+l*r,e[1]=s*a+c*r,e[2]=o*a+h*r,e[3]=u*a+_*r,e[4]=l*a-i*r,e[5]=c*a-s*r,e[6]=h*a-o*r,e[7]=_*a-u*r,e}function je(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}function Ye(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Xe(e,t,n){var r,a,i,s=n[0],o=n[1],u=n[2],l=Math.hypot(s,o,u)
|
||
return ya>l?null:(l=1/l,s*=l,o*=l,u*=l,r=Math.sin(t),a=Math.cos(t),i=1-a,e[0]=s*s*i+a,e[1]=o*s*i+u*r,e[2]=u*s*i-o*r,e[3]=0,e[4]=s*o*i-u*r,e[5]=o*o*i+a,e[6]=u*o*i+s*r,e[7]=0,e[8]=s*u*i+o*r,e[9]=o*u*i-s*r,e[10]=u*u*i+a,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}function ze(e,t){var n=Math.sin(t),r=Math.cos(t)
|
||
return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r,e[6]=n,e[7]=0,e[8]=0,e[9]=-n,e[10]=r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Ke(e,t){var n=Math.sin(t),r=Math.cos(t)
|
||
return e[0]=r,e[1]=0,e[2]=-n,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=n,e[9]=0,e[10]=r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Je(e,t){var n=Math.sin(t),r=Math.cos(t)
|
||
return e[0]=r,e[1]=n,e[2]=0,e[3]=0,e[4]=-n,e[5]=r,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function qe(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=r+r,u=a+a,l=i+i,c=r*o,h=r*u,_=r*l,f=a*u,d=a*l,p=i*l,v=s*o,m=s*u,y=s*l
|
||
return e[0]=1-(f+p),e[1]=h+y,e[2]=_-m,e[3]=0,e[4]=h-y,e[5]=1-(c+p),e[6]=d+v,e[7]=0,e[8]=_+m,e[9]=d-v,e[10]=1-(c+f),e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e}function Qe(e,t){var n=new ga(3),r=-t[0],a=-t[1],i=-t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=r*r+a*a+i*i+s*s
|
||
return h>0?(n[0]=2*(o*s+c*r+u*i-l*a)/h,n[1]=2*(u*s+c*a+l*r-o*i)/h,n[2]=2*(l*s+c*i+o*a-u*r)/h):(n[0]=2*(o*s+c*r+u*i-l*a),n[1]=2*(u*s+c*a+l*r-o*i),n[2]=2*(l*s+c*i+o*a-u*r)),qe(e,t,n),e}function Ze(e,t){return e[0]=t[12],e[1]=t[13],e[2]=t[14],e}function $e(e,t){var n=t[0],r=t[1],a=t[2],i=t[4],s=t[5],o=t[6],u=t[8],l=t[9],c=t[10]
|
||
return e[0]=Math.hypot(n,r,a),e[1]=Math.hypot(i,s,o),e[2]=Math.hypot(u,l,c),e}function et(e,t){var n=new ga(3)
|
||
$e(n,t)
|
||
var r=1/n[0],a=1/n[1],i=1/n[2],s=t[0]*r,o=t[1]*a,u=t[2]*i,l=t[4]*r,c=t[5]*a,h=t[6]*i,_=t[8]*r,f=t[9]*a,d=t[10]*i,p=s+c+d,v=0
|
||
return p>0?(v=2*Math.sqrt(p+1),e[3]=.25*v,e[0]=(h-f)/v,e[1]=(_-u)/v,e[2]=(o-l)/v):s>c&&s>d?(v=2*Math.sqrt(1+s-c-d),e[3]=(h-f)/v,e[0]=.25*v,e[1]=(o+l)/v,e[2]=(_+u)/v):c>d?(v=2*Math.sqrt(1+c-s-d),e[3]=(_-u)/v,e[0]=(o+l)/v,e[1]=.25*v,e[2]=(h+f)/v):(v=2*Math.sqrt(1+d-s-c),e[3]=(o-l)/v,e[0]=(_+u)/v,e[1]=(h+f)/v,e[2]=.25*v),e}function tt(e,t,n,r){var a=t[0],i=t[1],s=t[2],o=t[3],u=a+a,l=i+i,c=s+s,h=a*u,_=a*l,f=a*c,d=i*l,p=i*c,v=s*c,m=o*u,y=o*l,g=o*c,C=r[0],S=r[1],k=r[2]
|
||
return e[0]=(1-(d+v))*C,e[1]=(_+g)*C,e[2]=(f-y)*C,e[3]=0,e[4]=(_-g)*S,e[5]=(1-(h+v))*S,e[6]=(p+m)*S,e[7]=0,e[8]=(f+y)*k,e[9]=(p-m)*k,e[10]=(1-(h+d))*k,e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e}function nt(e,t,n,r,a){var i=t[0],s=t[1],o=t[2],u=t[3],l=i+i,c=s+s,h=o+o,_=i*l,f=i*c,d=i*h,p=s*c,v=s*h,m=o*h,y=u*l,g=u*c,C=u*h,S=r[0],k=r[1],I=r[2],T=a[0],G=a[1],b=a[2],A=(1-(p+m))*S,E=(f+C)*S,R=(d-g)*S,x=(f-C)*k,P=(1-(_+m))*k,M=(v+y)*k,O=(d+g)*I,w=(v-y)*I,D=(1-(_+p))*I
|
||
return e[0]=A,e[1]=E,e[2]=R,e[3]=0,e[4]=x,e[5]=P,e[6]=M,e[7]=0,e[8]=O,e[9]=w,e[10]=D,e[11]=0,e[12]=n[0]+T-(A*T+x*G+O*b),e[13]=n[1]+G-(E*T+P*G+w*b),e[14]=n[2]+b-(R*T+M*G+D*b),e[15]=1,e}function rt(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=n+n,o=r+r,u=a+a,l=n*s,c=r*s,h=r*o,_=a*s,f=a*o,d=a*u,p=i*s,v=i*o,m=i*u
|
||
return e[0]=1-h-d,e[1]=c+m,e[2]=_-v,e[3]=0,e[4]=c-m,e[5]=1-l-d,e[6]=f+p,e[7]=0,e[8]=_+v,e[9]=f-p,e[10]=1-l-h,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function at(e,t,n,r,a,i,s){var o=1/(n-t),u=1/(a-r),l=1/(i-s)
|
||
return e[0]=2*i*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=2*i*u,e[6]=0,e[7]=0,e[8]=(n+t)*o,e[9]=(a+r)*u,e[10]=(s+i)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=s*i*2*l,e[15]=0,e}function it(e,t,n,r,a){var i,s=1/Math.tan(t/2)
|
||
return e[0]=s/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=s,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,null!=a&&a!==1/0?(i=1/(r-a),e[10]=(a+r)*i,e[14]=2*a*r*i):(e[10]=-1,e[14]=-2*r),e}function st(e,t,n,r){var a=Math.tan(t.upDegrees*Math.PI/180),i=Math.tan(t.downDegrees*Math.PI/180),s=Math.tan(t.leftDegrees*Math.PI/180),o=Math.tan(t.rightDegrees*Math.PI/180),u=2/(s+o),l=2/(a+i)
|
||
return e[0]=u,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=l,e[6]=0,e[7]=0,e[8]=-((s-o)*u*.5),e[9]=(a-i)*l*.5,e[10]=r/(n-r),e[11]=-1,e[12]=0,e[13]=0,e[14]=r*n/(n-r),e[15]=0,e}function ot(e,t,n,r,a,i,s){var o=1/(t-n),u=1/(r-a),l=1/(i-s)
|
||
return e[0]=-2*o,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*u,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*l,e[11]=0,e[12]=(t+n)*o,e[13]=(a+r)*u,e[14]=(s+i)*l,e[15]=1,e}function ut(e,t,n,r){var a,i,s,o,u,l,c,h,_,f,d=t[0],p=t[1],v=t[2],m=r[0],y=r[1],g=r[2],C=n[0],S=n[1],k=n[2]
|
||
return Math.abs(d-C)<ya&&Math.abs(p-S)<ya&&Math.abs(v-k)<ya?Me(e):(c=d-C,h=p-S,_=v-k,f=1/Math.hypot(c,h,_),c*=f,h*=f,_*=f,a=y*_-g*h,i=g*c-m*_,s=m*h-y*c,f=Math.hypot(a,i,s),f?(f=1/f,a*=f,i*=f,s*=f):(a=0,i=0,s=0),o=h*s-_*i,u=_*a-c*s,l=c*i-h*a,f=Math.hypot(o,u,l),f?(f=1/f,o*=f,u*=f,l*=f):(o=0,u=0,l=0),e[0]=a,e[1]=o,e[2]=c,e[3]=0,e[4]=i,e[5]=u,e[6]=h,e[7]=0,e[8]=s,e[9]=l,e[10]=_,e[11]=0,e[12]=-(a*d+i*p+s*v),e[13]=-(o*d+u*p+l*v),e[14]=-(c*d+h*p+_*v),e[15]=1,e)}function lt(e,t,n,r){var a=t[0],i=t[1],s=t[2],o=r[0],u=r[1],l=r[2],c=a-n[0],h=i-n[1],_=s-n[2],f=c*c+h*h+_*_
|
||
f>0&&(f=1/Math.sqrt(f),c*=f,h*=f,_*=f)
|
||
var d=u*_-l*h,p=l*c-o*_,v=o*h-u*c
|
||
return f=d*d+p*p+v*v,f>0&&(f=1/Math.sqrt(f),d*=f,p*=f,v*=f),e[0]=d,e[1]=p,e[2]=v,e[3]=0,e[4]=h*v-_*p,e[5]=_*d-c*v,e[6]=c*p-h*d,e[7]=0,e[8]=c,e[9]=h,e[10]=_,e[11]=0,e[12]=a,e[13]=i,e[14]=s,e[15]=1,e}function ct(e){return"mat4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+", "+e[8]+", "+e[9]+", "+e[10]+", "+e[11]+", "+e[12]+", "+e[13]+", "+e[14]+", "+e[15]+")"}function ht(e){return Math.hypot(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15])}function _t(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e[8]=t[8]+n[8],e[9]=t[9]+n[9],e[10]=t[10]+n[10],e[11]=t[11]+n[11],e[12]=t[12]+n[12],e[13]=t[13]+n[13],e[14]=t[14]+n[14],e[15]=t[15]+n[15],e}function ft(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e[6]=t[6]-n[6],e[7]=t[7]-n[7],e[8]=t[8]-n[8],e[9]=t[9]-n[9],e[10]=t[10]-n[10],e[11]=t[11]-n[11],e[12]=t[12]-n[12],e[13]=t[13]-n[13],e[14]=t[14]-n[14],e[15]=t[15]-n[15],e}function dt(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*n,e[9]=t[9]*n,e[10]=t[10]*n,e[11]=t[11]*n,e[12]=t[12]*n,e[13]=t[13]*n,e[14]=t[14]*n,e[15]=t[15]*n,e}function pt(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e[6]=t[6]+n[6]*r,e[7]=t[7]+n[7]*r,e[8]=t[8]+n[8]*r,e[9]=t[9]+n[9]*r,e[10]=t[10]+n[10]*r,e[11]=t[11]+n[11]*r,e[12]=t[12]+n[12]*r,e[13]=t[13]+n[13]*r,e[14]=t[14]+n[14]*r,e[15]=t[15]+n[15]*r,e}function vt(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]}function mt(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],s=e[4],o=e[5],u=e[6],l=e[7],c=e[8],h=e[9],_=e[10],f=e[11],d=e[12],p=e[13],v=e[14],m=e[15],y=t[0],g=t[1],C=t[2],S=t[3],k=t[4],I=t[5],T=t[6],G=t[7],b=t[8],A=t[9],E=t[10],R=t[11],x=t[12],P=t[13],M=t[14],O=t[15]
|
||
return Math.abs(n-y)<=ya*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(r-g)<=ya*Math.max(1,Math.abs(r),Math.abs(g))&&Math.abs(a-C)<=ya*Math.max(1,Math.abs(a),Math.abs(C))&&Math.abs(i-S)<=ya*Math.max(1,Math.abs(i),Math.abs(S))&&Math.abs(s-k)<=ya*Math.max(1,Math.abs(s),Math.abs(k))&&Math.abs(o-I)<=ya*Math.max(1,Math.abs(o),Math.abs(I))&&Math.abs(u-T)<=ya*Math.max(1,Math.abs(u),Math.abs(T))&&Math.abs(l-G)<=ya*Math.max(1,Math.abs(l),Math.abs(G))&&Math.abs(c-b)<=ya*Math.max(1,Math.abs(c),Math.abs(b))&&Math.abs(h-A)<=ya*Math.max(1,Math.abs(h),Math.abs(A))&&Math.abs(_-E)<=ya*Math.max(1,Math.abs(_),Math.abs(E))&&Math.abs(f-R)<=ya*Math.max(1,Math.abs(f),Math.abs(R))&&Math.abs(d-x)<=ya*Math.max(1,Math.abs(d),Math.abs(x))&&Math.abs(p-P)<=ya*Math.max(1,Math.abs(p),Math.abs(P))&&Math.abs(v-M)<=ya*Math.max(1,Math.abs(v),Math.abs(M))&&Math.abs(m-O)<=ya*Math.max(1,Math.abs(m),Math.abs(O))}function yt(){var e=new ga(3)
|
||
return ga!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function gt(e){var t=new ga(3)
|
||
return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function Ct(e){var t=e[0],n=e[1],r=e[2]
|
||
return Math.hypot(t,n,r)}function St(e,t,n){var r=new ga(3)
|
||
return r[0]=e,r[1]=t,r[2]=n,r}function kt(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function It(e,t,n,r){return e[0]=t,e[1]=n,e[2]=r,e}function Tt(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e}function Gt(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e}function bt(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e}function At(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e[2]=t[2]/n[2],e}function Et(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e}function Rt(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e}function xt(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e}function Pt(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e}function Mt(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e}function Ot(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function wt(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e}function Dt(e,t){var n=t[0]-e[0],r=t[1]-e[1],a=t[2]-e[2]
|
||
return Math.hypot(n,r,a)}function Lt(e,t){var n=t[0]-e[0],r=t[1]-e[1],a=t[2]-e[2]
|
||
return n*n+r*r+a*a}function Ft(e){var t=e[0],n=e[1],r=e[2]
|
||
return t*t+n*n+r*r}function Bt(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e}function Nt(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e}function Ht(e,t){var n=t[0],r=t[1],a=t[2],i=n*n+r*r+a*a
|
||
return i>0&&(i=1/Math.sqrt(i)),e[0]=t[0]*i,e[1]=t[1]*i,e[2]=t[2]*i,e}function Ut(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Wt(e,t,n){var r=t[0],a=t[1],i=t[2],s=n[0],o=n[1],u=n[2]
|
||
return e[0]=a*u-i*o,e[1]=i*s-r*u,e[2]=r*o-a*s,e}function Vt(e,t,n,r){var a=t[0],i=t[1],s=t[2]
|
||
return e[0]=a+r*(n[0]-a),e[1]=i+r*(n[1]-i),e[2]=s+r*(n[2]-s),e}function jt(e,t,n,r,a,i){var s=i*i,o=s*(2*i-3)+1,u=s*(i-2)+i,l=s*(i-1),c=s*(3-2*i)
|
||
return e[0]=t[0]*o+n[0]*u+r[0]*l+a[0]*c,e[1]=t[1]*o+n[1]*u+r[1]*l+a[1]*c,e[2]=t[2]*o+n[2]*u+r[2]*l+a[2]*c,e}function Yt(e,t,n,r,a,i){var s=1-i,o=s*s,u=i*i,l=o*s,c=3*i*o,h=3*u*s,_=u*i
|
||
return e[0]=t[0]*l+n[0]*c+r[0]*h+a[0]*_,e[1]=t[1]*l+n[1]*c+r[1]*h+a[1]*_,e[2]=t[2]*l+n[2]*c+r[2]*h+a[2]*_,e}function Xt(e,t){t=t||1
|
||
var n=2*Ca()*Math.PI,r=2*Ca()-1,a=Math.sqrt(1-r*r)*t
|
||
return e[0]=Math.cos(n)*a,e[1]=Math.sin(n)*a,e[2]=r*t,e}function zt(e,t,n){var r=t[0],a=t[1],i=t[2],s=n[3]*r+n[7]*a+n[11]*i+n[15]
|
||
return s=s||1,e[0]=(n[0]*r+n[4]*a+n[8]*i+n[12])/s,e[1]=(n[1]*r+n[5]*a+n[9]*i+n[13])/s,e[2]=(n[2]*r+n[6]*a+n[10]*i+n[14])/s,e}function Kt(e,t,n){var r=t[0],a=t[1],i=t[2]
|
||
return e[0]=r*n[0]+a*n[3]+i*n[6],e[1]=r*n[1]+a*n[4]+i*n[7],e[2]=r*n[2]+a*n[5]+i*n[8],e}function Jt(e,t,n){var r=n[0],a=n[1],i=n[2],s=n[3],o=t[0],u=t[1],l=t[2],c=a*l-i*u,h=i*o-r*l,_=r*u-a*o,f=a*_-i*h,d=i*c-r*_,p=r*h-a*c,v=2*s
|
||
return c*=v,h*=v,_*=v,f*=2,d*=2,p*=2,e[0]=o+c+f,e[1]=u+h+d,e[2]=l+_+p,e}function qt(e,t,n,r){var a=[],i=[]
|
||
return a[0]=t[0]-n[0],a[1]=t[1]-n[1],a[2]=t[2]-n[2],i[0]=a[0],i[1]=a[1]*Math.cos(r)-a[2]*Math.sin(r),i[2]=a[1]*Math.sin(r)+a[2]*Math.cos(r),e[0]=i[0]+n[0],e[1]=i[1]+n[1],e[2]=i[2]+n[2],e}function Qt(e,t,n,r){var a=[],i=[]
|
||
return a[0]=t[0]-n[0],a[1]=t[1]-n[1],a[2]=t[2]-n[2],i[0]=a[2]*Math.sin(r)+a[0]*Math.cos(r),i[1]=a[1],i[2]=a[2]*Math.cos(r)-a[0]*Math.sin(r),e[0]=i[0]+n[0],e[1]=i[1]+n[1],e[2]=i[2]+n[2],e}function Zt(e,t,n,r){var a=[],i=[]
|
||
return a[0]=t[0]-n[0],a[1]=t[1]-n[1],a[2]=t[2]-n[2],i[0]=a[0]*Math.cos(r)-a[1]*Math.sin(r),i[1]=a[0]*Math.sin(r)+a[1]*Math.cos(r),i[2]=a[2],e[0]=i[0]+n[0],e[1]=i[1]+n[1],e[2]=i[2]+n[2],e}function $t(e,t){var n=e[0],r=e[1],a=e[2],i=t[0],s=t[1],o=t[2],u=Math.sqrt(n*n+r*r+a*a),l=Math.sqrt(i*i+s*s+o*o),c=u*l,h=c&&Ut(e,t)/c
|
||
return Math.acos(Math.min(Math.max(h,-1),1))}function en(e){return e[0]=0,e[1]=0,e[2]=0,e}function tn(e){return"vec3("+e[0]+", "+e[1]+", "+e[2]+")"}function nn(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]}function rn(e,t){var n=e[0],r=e[1],a=e[2],i=t[0],s=t[1],o=t[2]
|
||
return Math.abs(n-i)<=ya*Math.max(1,Math.abs(n),Math.abs(i))&&Math.abs(r-s)<=ya*Math.max(1,Math.abs(r),Math.abs(s))&&Math.abs(a-o)<=ya*Math.max(1,Math.abs(a),Math.abs(o))}function an(){var e=new ga(4)
|
||
return ga!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function sn(e){var t=new ga(4)
|
||
return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}function on(e,t,n,r){var a=new ga(4)
|
||
return a[0]=e,a[1]=t,a[2]=n,a[3]=r,a}function un(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}function ln(e,t,n,r,a){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e}function cn(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e}function hn(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e}function _n(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e[3]=t[3]*n[3],e}function fn(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e[2]=t[2]/n[2],e[3]=t[3]/n[3],e}function dn(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e[2]=Math.ceil(t[2]),e[3]=Math.ceil(t[3]),e}function pn(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e[2]=Math.floor(t[2]),e[3]=Math.floor(t[3]),e}function vn(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e[3]=Math.min(t[3],n[3]),e}function mn(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e[3]=Math.max(t[3],n[3]),e}function yn(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e[2]=Math.round(t[2]),e[3]=Math.round(t[3]),e}function gn(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e}function Cn(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e}function Sn(e,t){var n=t[0]-e[0],r=t[1]-e[1],a=t[2]-e[2],i=t[3]-e[3]
|
||
return Math.hypot(n,r,a,i)}function kn(e,t){var n=t[0]-e[0],r=t[1]-e[1],a=t[2]-e[2],i=t[3]-e[3]
|
||
return n*n+r*r+a*a+i*i}function In(e){var t=e[0],n=e[1],r=e[2],a=e[3]
|
||
return Math.hypot(t,n,r,a)}function Tn(e){var t=e[0],n=e[1],r=e[2],a=e[3]
|
||
return t*t+n*n+r*r+a*a}function Gn(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=-t[3],e}function bn(e,t){return e[0]=1/t[0],e[1]=1/t[1],e[2]=1/t[2],e[3]=1/t[3],e}function An(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=n*n+r*r+a*a+i*i
|
||
return s>0&&(s=1/Math.sqrt(s)),e[0]=n*s,e[1]=r*s,e[2]=a*s,e[3]=i*s,e}function En(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]+e[3]*t[3]}function Rn(e,t,n,r){var a=n[0]*r[1]-n[1]*r[0],i=n[0]*r[2]-n[2]*r[0],s=n[0]*r[3]-n[3]*r[0],o=n[1]*r[2]-n[2]*r[1],u=n[1]*r[3]-n[3]*r[1],l=n[2]*r[3]-n[3]*r[2],c=t[0],h=t[1],_=t[2],f=t[3]
|
||
return e[0]=h*l-_*u+f*o,e[1]=-(c*l)+_*s-f*i,e[2]=c*u-h*s+f*a,e[3]=-(c*o)+h*i-_*a,e}function xn(e,t,n,r){var a=t[0],i=t[1],s=t[2],o=t[3]
|
||
return e[0]=a+r*(n[0]-a),e[1]=i+r*(n[1]-i),e[2]=s+r*(n[2]-s),e[3]=o+r*(n[3]-o),e}function Pn(e,t){t=t||1
|
||
var n,r,a,i,s,o
|
||
do n=2*Ca()-1,r=2*Ca()-1,s=n*n+r*r
|
||
while(s>=1)
|
||
do a=2*Ca()-1,i=2*Ca()-1,o=a*a+i*i
|
||
while(o>=1)
|
||
var u=Math.sqrt((1-s)/o)
|
||
return e[0]=t*n,e[1]=t*r,e[2]=t*a*u,e[3]=t*i*u,e}function Mn(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3]
|
||
return e[0]=n[0]*r+n[4]*a+n[8]*i+n[12]*s,e[1]=n[1]*r+n[5]*a+n[9]*i+n[13]*s,e[2]=n[2]*r+n[6]*a+n[10]*i+n[14]*s,e[3]=n[3]*r+n[7]*a+n[11]*i+n[15]*s,e}function On(e,t,n){var r=t[0],a=t[1],i=t[2],s=n[0],o=n[1],u=n[2],l=n[3],c=l*r+o*i-u*a,h=l*a+u*r-s*i,_=l*i+s*a-o*r,f=-s*r-o*a-u*i
|
||
return e[0]=c*l+f*-s+h*-u-_*-o,e[1]=h*l+f*-o+_*-s-c*-u,e[2]=_*l+f*-u+c*-o-h*-s,e[3]=t[3],e}function wn(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=0,e}function Dn(e){return"vec4("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"}function Ln(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]}function Fn(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],s=t[0],o=t[1],u=t[2],l=t[3]
|
||
return Math.abs(n-s)<=ya*Math.max(1,Math.abs(n),Math.abs(s))&&Math.abs(r-o)<=ya*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(a-u)<=ya*Math.max(1,Math.abs(a),Math.abs(u))&&Math.abs(i-l)<=ya*Math.max(1,Math.abs(i),Math.abs(l))}function Bn(){var e=new ga(4)
|
||
return ga!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function Nn(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e}function Hn(e,t,n){n=.5*n
|
||
var r=Math.sin(n)
|
||
return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=Math.cos(n),e}function Un(e,t){var n=2*Math.acos(t[3]),r=Math.sin(n/2)
|
||
return r>ya?(e[0]=t[0]/r,e[1]=t[1]/r,e[2]=t[2]/r):(e[0]=1,e[1]=0,e[2]=0),n}function Wn(e,t){var n=si(e,t)
|
||
return Math.acos(2*n*n-1)}function Vn(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=n[0],u=n[1],l=n[2],c=n[3]
|
||
return e[0]=r*c+s*o+a*l-i*u,e[1]=a*c+s*u+i*o-r*l,e[2]=i*c+s*l+r*u-a*o,e[3]=s*c-r*o-a*u-i*l,e}function jn(e,t,n){n*=.5
|
||
var r=t[0],a=t[1],i=t[2],s=t[3],o=Math.sin(n),u=Math.cos(n)
|
||
return e[0]=r*u+s*o,e[1]=a*u+i*o,e[2]=i*u-a*o,e[3]=s*u-r*o,e}function Yn(e,t,n){n*=.5
|
||
var r=t[0],a=t[1],i=t[2],s=t[3],o=Math.sin(n),u=Math.cos(n)
|
||
return e[0]=r*u-i*o,e[1]=a*u+s*o,e[2]=i*u+r*o,e[3]=s*u-a*o,e}function Xn(e,t,n){n*=.5
|
||
var r=t[0],a=t[1],i=t[2],s=t[3],o=Math.sin(n),u=Math.cos(n)
|
||
return e[0]=r*u+a*o,e[1]=a*u-r*o,e[2]=i*u+s*o,e[3]=s*u-i*o,e}function zn(e,t){var n=t[0],r=t[1],a=t[2]
|
||
return e[0]=n,e[1]=r,e[2]=a,e[3]=Math.sqrt(Math.abs(1-n*n-r*r-a*a)),e}function Kn(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=Math.sqrt(n*n+r*r+a*a),o=Math.exp(i),u=s>0?o*Math.sin(s)/s:0
|
||
return e[0]=n*u,e[1]=r*u,e[2]=a*u,e[3]=o*Math.cos(s),e}function Jn(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=Math.sqrt(n*n+r*r+a*a),o=s>0?Math.atan2(s,i)/s:0
|
||
return e[0]=n*o,e[1]=r*o,e[2]=a*o,e[3]=.5*Math.log(n*n+r*r+a*a+i*i),e}function qn(e,t,n){return Jn(e,t),ii(e,e,n),Kn(e,e),e}function Qn(e,t,n,r){var a,i,s,o,u,l=t[0],c=t[1],h=t[2],_=t[3],f=n[0],d=n[1],p=n[2],v=n[3]
|
||
return i=l*f+c*d+h*p+_*v,0>i&&(i=-i,f=-f,d=-d,p=-p,v=-v),1-i>ya?(a=Math.acos(i),s=Math.sin(a),o=Math.sin((1-r)*a)/s,u=Math.sin(r*a)/s):(o=1-r,u=r),e[0]=o*l+u*f,e[1]=o*c+u*d,e[2]=o*h+u*p,e[3]=o*_+u*v,e}function Zn(e){var t=Ca(),n=Ca(),r=Ca(),a=Math.sqrt(1-t),i=Math.sqrt(t)
|
||
return e[0]=a*Math.sin(2*Math.PI*n),e[1]=a*Math.cos(2*Math.PI*n),e[2]=i*Math.sin(2*Math.PI*r),e[3]=i*Math.cos(2*Math.PI*r),e}function $n(e,t){var n=t[0],r=t[1],a=t[2],i=t[3],s=n*n+r*r+a*a+i*i,o=s?1/s:0
|
||
return e[0]=-n*o,e[1]=-r*o,e[2]=-a*o,e[3]=i*o,e}function er(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e}function tr(e,t){var n,r=t[0]+t[4]+t[8]
|
||
if(r>0)n=Math.sqrt(r+1),e[3]=.5*n,n=.5/n,e[0]=(t[5]-t[7])*n,e[1]=(t[6]-t[2])*n,e[2]=(t[1]-t[3])*n
|
||
else{var a=0
|
||
t[4]>t[0]&&(a=1),t[8]>t[3*a+a]&&(a=2)
|
||
var i=(a+1)%3,s=(a+2)%3
|
||
n=Math.sqrt(t[3*a+a]-t[3*i+i]-t[3*s+s]+1),e[a]=.5*n,n=.5/n,e[3]=(t[3*i+s]-t[3*s+i])*n,e[i]=(t[3*i+a]+t[3*a+i])*n,e[s]=(t[3*s+a]+t[3*a+s])*n}return e}function nr(e,t,n,r){var a=.5*Math.PI/180
|
||
t*=a,n*=a,r*=a
|
||
var i=Math.sin(t),s=Math.cos(t),o=Math.sin(n),u=Math.cos(n),l=Math.sin(r),c=Math.cos(r)
|
||
return e[0]=i*u*c-s*o*l,e[1]=s*o*c+i*u*l,e[2]=s*u*l-i*o*c,e[3]=s*u*c+i*o*l,e}function rr(e){return"quat("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+")"}function ar(){var e=new ga(8)
|
||
return ga!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[4]=0,e[5]=0,e[6]=0,e[7]=0),e[3]=1,e}function ir(e){var t=new ga(8)
|
||
return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t}function sr(e,t,n,r,a,i,s,o){var u=new ga(8)
|
||
return u[0]=e,u[1]=t,u[2]=n,u[3]=r,u[4]=a,u[5]=i,u[6]=s,u[7]=o,u}function or(e,t,n,r,a,i,s){var o=new ga(8)
|
||
o[0]=e,o[1]=t,o[2]=n,o[3]=r
|
||
var u=.5*a,l=.5*i,c=.5*s
|
||
return o[4]=u*r+l*n-c*t,o[5]=l*r+c*e-u*n,o[6]=c*r+u*t-l*e,o[7]=-u*e-l*t-c*n,o}function ur(e,t,n){var r=.5*n[0],a=.5*n[1],i=.5*n[2],s=t[0],o=t[1],u=t[2],l=t[3]
|
||
return e[0]=s,e[1]=o,e[2]=u,e[3]=l,e[4]=r*l+a*u-i*o,e[5]=a*l+i*s-r*u,e[6]=i*l+r*o-a*s,e[7]=-r*s-a*o-i*u,e}function lr(e,t){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=.5*t[0],e[5]=.5*t[1],e[6]=.5*t[2],e[7]=0,e}function cr(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=0,e[5]=0,e[6]=0,e[7]=0,e}function hr(e,t){var n=Bn()
|
||
et(n,t)
|
||
var r=new ga(3)
|
||
return Ze(r,t),ur(e,n,r),e}function _r(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e}function fr(e){return e[0]=0,e[1]=0,e[2]=0,e[3]=1,e[4]=0,e[5]=0,e[6]=0,e[7]=0,e}function dr(e,t,n,r,a,i,s,o,u){return e[0]=t,e[1]=n,e[2]=r,e[3]=a,e[4]=i,e[5]=s,e[6]=o,e[7]=u,e}function pr(e,t){return e[0]=t[4],e[1]=t[5],e[2]=t[6],e[3]=t[7],e}function vr(e,t){return e[4]=t[0],e[5]=t[1],e[6]=t[2],e[7]=t[3],e}function mr(e,t){var n=t[4],r=t[5],a=t[6],i=t[7],s=-t[0],o=-t[1],u=-t[2],l=t[3]
|
||
return e[0]=2*(n*l+i*s+r*u-a*o),e[1]=2*(r*l+i*o+a*s-n*u),e[2]=2*(a*l+i*u+n*o-r*s),e}function yr(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=.5*n[0],u=.5*n[1],l=.5*n[2],c=t[4],h=t[5],_=t[6],f=t[7]
|
||
return e[0]=r,e[1]=a,e[2]=i,e[3]=s,e[4]=s*o+a*l-i*u+c,e[5]=s*u+i*o-r*l+h,e[6]=s*l+r*u-a*o+_,e[7]=-r*o-a*u-i*l+f,e}function gr(e,t,n){var r=-t[0],a=-t[1],i=-t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=o*s+c*r+u*i-l*a,_=u*s+c*a+l*r-o*i,f=l*s+c*i+o*a-u*r,d=c*s-o*r-u*a-l*i
|
||
return jn(e,t,n),r=e[0],a=e[1],i=e[2],s=e[3],e[4]=h*s+d*r+_*i-f*a,e[5]=_*s+d*a+f*r-h*i,e[6]=f*s+d*i+h*a-_*r,e[7]=d*s-h*r-_*a-f*i,e}function Cr(e,t,n){var r=-t[0],a=-t[1],i=-t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=o*s+c*r+u*i-l*a,_=u*s+c*a+l*r-o*i,f=l*s+c*i+o*a-u*r,d=c*s-o*r-u*a-l*i
|
||
return Yn(e,t,n),r=e[0],a=e[1],i=e[2],s=e[3],e[4]=h*s+d*r+_*i-f*a,e[5]=_*s+d*a+f*r-h*i,e[6]=f*s+d*i+h*a-_*r,e[7]=d*s-h*r-_*a-f*i,e}function Sr(e,t,n){var r=-t[0],a=-t[1],i=-t[2],s=t[3],o=t[4],u=t[5],l=t[6],c=t[7],h=o*s+c*r+u*i-l*a,_=u*s+c*a+l*r-o*i,f=l*s+c*i+o*a-u*r,d=c*s-o*r-u*a-l*i
|
||
return Xn(e,t,n),r=e[0],a=e[1],i=e[2],s=e[3],e[4]=h*s+d*r+_*i-f*a,e[5]=_*s+d*a+f*r-h*i,e[6]=f*s+d*i+h*a-_*r,e[7]=d*s-h*r-_*a-f*i,e}function kr(e,t,n){var r=n[0],a=n[1],i=n[2],s=n[3],o=t[0],u=t[1],l=t[2],c=t[3]
|
||
return e[0]=o*s+c*r+u*i-l*a,e[1]=u*s+c*a+l*r-o*i,e[2]=l*s+c*i+o*a-u*r,e[3]=c*s-o*r-u*a-l*i,o=t[4],u=t[5],l=t[6],c=t[7],e[4]=o*s+c*r+u*i-l*a,e[5]=u*s+c*a+l*r-o*i,e[6]=l*s+c*i+o*a-u*r,e[7]=c*s-o*r-u*a-l*i,e}function Ir(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=n[0],u=n[1],l=n[2],c=n[3]
|
||
return e[0]=r*c+s*o+a*l-i*u,e[1]=a*c+s*u+i*o-r*l,e[2]=i*c+s*l+r*u-a*o,e[3]=s*c-r*o-a*u-i*l,o=n[4],u=n[5],l=n[6],c=n[7],e[4]=r*c+s*o+a*l-i*u,e[5]=a*c+s*u+i*o-r*l,e[6]=i*c+s*l+r*u-a*o,e[7]=s*c-r*o-a*u-i*l,e}function Tr(e,t,n,r){if(Math.abs(r)<ya)return _r(e,t)
|
||
var a=Math.hypot(n[0],n[1],n[2])
|
||
r=.5*r
|
||
var i=Math.sin(r),s=i*n[0]/a,o=i*n[1]/a,u=i*n[2]/a,l=Math.cos(r),c=t[0],h=t[1],_=t[2],f=t[3]
|
||
e[0]=c*l+f*s+h*u-_*o,e[1]=h*l+f*o+_*s-c*u,e[2]=_*l+f*u+c*o-h*s,e[3]=f*l-c*s-h*o-_*u
|
||
var d=t[4],p=t[5],v=t[6],m=t[7]
|
||
return e[4]=d*l+m*s+p*u-v*o,e[5]=p*l+m*o+v*s-d*u,e[6]=v*l+m*u+d*o-p*s,e[7]=m*l-d*s-p*o-v*u,e}function Gr(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e}function br(e,t,n){var r=t[0],a=t[1],i=t[2],s=t[3],o=n[4],u=n[5],l=n[6],c=n[7],h=t[4],_=t[5],f=t[6],d=t[7],p=n[0],v=n[1],m=n[2],y=n[3]
|
||
return e[0]=r*y+s*p+a*m-i*v,e[1]=a*y+s*v+i*p-r*m,e[2]=i*y+s*m+r*v-a*p,e[3]=s*y-r*p-a*v-i*m,e[4]=r*c+s*o+a*l-i*u+h*y+d*p+_*m-f*v,e[5]=a*c+s*u+i*o-r*l+_*y+d*v+f*p-h*m,e[6]=i*c+s*l+r*u-a*o+f*y+d*m+h*v-_*p,e[7]=s*c-r*o-a*u-i*l+d*y-h*p-_*v-f*m,e}function Ar(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e}function Er(e,t,n,r){var a=1-r
|
||
return ki(t,n)<0&&(r=-r),e[0]=t[0]*a+n[0]*r,e[1]=t[1]*a+n[1]*r,e[2]=t[2]*a+n[2]*r,e[3]=t[3]*a+n[3]*r,e[4]=t[4]*a+n[4]*r,e[5]=t[5]*a+n[5]*r,e[6]=t[6]*a+n[6]*r,e[7]=t[7]*a+n[7]*r,e}function Rr(e,t){var n=Gi(t)
|
||
return e[0]=-t[0]/n,e[1]=-t[1]/n,e[2]=-t[2]/n,e[3]=t[3]/n,e[4]=-t[4]/n,e[5]=-t[5]/n,e[6]=-t[6]/n,e[7]=t[7]/n,e}function xr(e,t){return e[0]=-t[0],e[1]=-t[1],e[2]=-t[2],e[3]=t[3],e[4]=-t[4],e[5]=-t[5],e[6]=-t[6],e[7]=t[7],e}function Pr(e,t){var n=Gi(t)
|
||
if(n>0){n=Math.sqrt(n)
|
||
var r=t[0]/n,a=t[1]/n,i=t[2]/n,s=t[3]/n,o=t[4],u=t[5],l=t[6],c=t[7],h=r*o+a*u+i*l+s*c
|
||
e[0]=r,e[1]=a,e[2]=i,e[3]=s,e[4]=(o-r*h)/n,e[5]=(u-a*h)/n,e[6]=(l-i*h)/n,e[7]=(c-s*h)/n}return e}function Mr(e){return"quat2("+e[0]+", "+e[1]+", "+e[2]+", "+e[3]+", "+e[4]+", "+e[5]+", "+e[6]+", "+e[7]+")"}function Or(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]}function wr(e,t){var n=e[0],r=e[1],a=e[2],i=e[3],s=e[4],o=e[5],u=e[6],l=e[7],c=t[0],h=t[1],_=t[2],f=t[3],d=t[4],p=t[5],v=t[6],m=t[7]
|
||
return Math.abs(n-c)<=ya*Math.max(1,Math.abs(n),Math.abs(c))&&Math.abs(r-h)<=ya*Math.max(1,Math.abs(r),Math.abs(h))&&Math.abs(a-_)<=ya*Math.max(1,Math.abs(a),Math.abs(_))&&Math.abs(i-f)<=ya*Math.max(1,Math.abs(i),Math.abs(f))&&Math.abs(s-d)<=ya*Math.max(1,Math.abs(s),Math.abs(d))&&Math.abs(o-p)<=ya*Math.max(1,Math.abs(o),Math.abs(p))&&Math.abs(u-v)<=ya*Math.max(1,Math.abs(u),Math.abs(v))&&Math.abs(l-m)<=ya*Math.max(1,Math.abs(l),Math.abs(m))}function Dr(){var e=new ga(2)
|
||
return ga!=Float32Array&&(e[0]=0,e[1]=0),e}function Lr(e){var t=new ga(2)
|
||
return t[0]=e[0],t[1]=e[1],t}function Fr(e,t){var n=new ga(2)
|
||
return n[0]=e,n[1]=t,n}function Br(e,t){return e[0]=t[0],e[1]=t[1],e}function Nr(e,t,n){return e[0]=t,e[1]=n,e}function Hr(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e}function Ur(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e}function Wr(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e}function Vr(e,t,n){return e[0]=t[0]/n[0],e[1]=t[1]/n[1],e}function jr(e,t){return e[0]=Math.ceil(t[0]),e[1]=Math.ceil(t[1]),e}function Yr(e,t){return e[0]=Math.floor(t[0]),e[1]=Math.floor(t[1]),e}function Xr(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e}function zr(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e}function Kr(e,t){return e[0]=Math.round(t[0]),e[1]=Math.round(t[1]),e}function Jr(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e}function qr(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e}function Qr(e,t){var n=t[0]-e[0],r=t[1]-e[1]
|
||
return Math.hypot(n,r)}function Zr(e,t){var n=t[0]-e[0],r=t[1]-e[1]
|
||
return n*n+r*r}function $r(e){var t=e[0],n=e[1]
|
||
return Math.hypot(t,n)}function ea(e){var t=e[0],n=e[1]
|
||
return t*t+n*n}function ta(e,t){return e[0]=-t[0],e[1]=-t[1],e}function na(e,t){return e[0]=1/t[0],e[1]=1/t[1],e}function ra(e,t){var n=t[0],r=t[1],a=n*n+r*r
|
||
return a>0&&(a=1/Math.sqrt(a)),e[0]=t[0]*a,e[1]=t[1]*a,e}function aa(e,t){return e[0]*t[0]+e[1]*t[1]}function ia(e,t,n){var r=t[0]*n[1]-t[1]*n[0]
|
||
return e[0]=e[1]=0,e[2]=r,e}function sa(e,t,n,r){var a=t[0],i=t[1]
|
||
return e[0]=a+r*(n[0]-a),e[1]=i+r*(n[1]-i),e}function oa(e,t){t=t||1
|
||
var n=2*Ca()*Math.PI
|
||
return e[0]=Math.cos(n)*t,e[1]=Math.sin(n)*t,e}function ua(e,t,n){var r=t[0],a=t[1]
|
||
return e[0]=n[0]*r+n[2]*a,e[1]=n[1]*r+n[3]*a,e}function la(e,t,n){var r=t[0],a=t[1]
|
||
return e[0]=n[0]*r+n[2]*a+n[4],e[1]=n[1]*r+n[3]*a+n[5],e}function ca(e,t,n){var r=t[0],a=t[1]
|
||
return e[0]=n[0]*r+n[3]*a+n[6],e[1]=n[1]*r+n[4]*a+n[7],e}function ha(e,t,n){var r=t[0],a=t[1]
|
||
return e[0]=n[0]*r+n[4]*a+n[12],e[1]=n[1]*r+n[5]*a+n[13],e}function _a(e,t,n,r){var a=t[0]-n[0],i=t[1]-n[1],s=Math.sin(r),o=Math.cos(r)
|
||
return e[0]=a*o-i*s+n[0],e[1]=a*s+i*o+n[1],e}function fa(e,t){var n=e[0],r=e[1],a=t[0],i=t[1],s=Math.sqrt(n*n+r*r)*Math.sqrt(a*a+i*i),o=s&&(n*a+r*i)/s
|
||
return Math.acos(Math.min(Math.max(o,-1),1))}function da(e){return e[0]=0,e[1]=0,e}function pa(e){return"vec2("+e[0]+", "+e[1]+")"}function va(e,t){return e[0]===t[0]&&e[1]===t[1]}function ma(e,t){var n=e[0],r=e[1],a=t[0],i=t[1]
|
||
return Math.abs(n-a)<=ya*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(r-i)<=ya*Math.max(1,Math.abs(r),Math.abs(i))}var ya=1e-6,ga="undefined"!=typeof Float32Array?Float32Array:Array,Ca=Math.random,Sa=Math.PI/180
|
||
Math.hypot||(Math.hypot=function(){for(var e=0,t=arguments.length;t--;)e+=arguments[t]*arguments[t]
|
||
return Math.sqrt(e)})
|
||
var ka=Object.freeze({__proto__:null,EPSILON:ya,get ARRAY_TYPE(){return ga},RANDOM:Ca,setMatrixArrayType:t,toRadian:n,equals:r}),Ia=d,Ta=I,Ga=Object.freeze({__proto__:null,create:a,clone:i,copy:s,identity:o,fromValues:u,set:l,transpose:c,invert:h,adjoint:_,determinant:f,multiply:d,rotate:p,scale:v,fromRotation:m,fromScaling:y,str:g,frob:C,LDU:S,add:k,subtract:I,exactEquals:T,equals:G,multiplyScalar:b,multiplyScalarAndAdd:A,mul:Ia,sub:Ta}),ba=L,Aa=X,Ea=Object.freeze({__proto__:null,create:E,clone:R,copy:x,identity:P,fromValues:M,set:O,invert:w,determinant:D,multiply:L,rotate:F,scale:B,translate:N,fromRotation:H,fromScaling:U,fromTranslation:W,str:V,frob:j,add:Y,subtract:X,multiplyScalar:z,multiplyScalarAndAdd:K,exactEquals:J,equals:q,mul:ba,sub:Aa}),Ra=ue,xa=ke,Pa=Object.freeze({__proto__:null,create:Q,fromMat4:Z,clone:$,copy:ee,fromValues:te,set:ne,identity:re,transpose:ae,invert:ie,adjoint:se,determinant:oe,multiply:ue,translate:le,rotate:ce,scale:he,fromTranslation:_e,fromRotation:fe,fromScaling:de,fromMat2d:pe,fromQuat:ve,normalFromMat4:me,projection:ye,str:ge,frob:Ce,add:Se,subtract:ke,multiplyScalar:Ie,multiplyScalarAndAdd:Te,exactEquals:Ge,equals:be,mul:Ra,sub:xa}),Ma=Fe,Oa=ft,wa=Object.freeze({__proto__:null,create:Ae,clone:Ee,copy:Re,fromValues:xe,set:Pe,identity:Me,transpose:Oe,invert:we,adjoint:De,determinant:Le,multiply:Fe,translate:Be,scale:Ne,rotate:He,rotateX:Ue,rotateY:We,rotateZ:Ve,fromTranslation:je,fromScaling:Ye,fromRotation:Xe,fromXRotation:ze,fromYRotation:Ke,fromZRotation:Je,fromRotationTranslation:qe,fromQuat2:Qe,getTranslation:Ze,getScaling:$e,getRotation:et,fromRotationTranslationScale:tt,fromRotationTranslationScaleOrigin:nt,fromQuat:rt,frustum:at,perspective:it,perspectiveFromFieldOfView:st,ortho:ot,lookAt:ut,targetTo:lt,str:ct,frob:ht,add:_t,subtract:ft,multiplyScalar:dt,multiplyScalarAndAdd:pt,exactEquals:vt,equals:mt,mul:Ma,sub:Oa}),Da=Gt,La=bt,Fa=At,Ba=Dt,Na=Lt,Ha=Ct,Ua=Ft,Wa=function(){var e=yt()
|
||
return function(t,n,r,a,i,s){var o,u
|
||
for(n||(n=3),r||(r=0),u=a?Math.min(a*n+r,t.length):t.length,o=r;u>o;o+=n)e[0]=t[o],e[1]=t[o+1],e[2]=t[o+2],i(e,e,s),t[o]=e[0],t[o+1]=e[1],t[o+2]=e[2]
|
||
return t}}(),Va=Object.freeze({__proto__:null,create:yt,clone:gt,length:Ct,fromValues:St,copy:kt,set:It,add:Tt,subtract:Gt,multiply:bt,divide:At,ceil:Et,floor:Rt,min:xt,max:Pt,round:Mt,scale:Ot,scaleAndAdd:wt,distance:Dt,squaredDistance:Lt,squaredLength:Ft,negate:Bt,inverse:Nt,normalize:Ht,dot:Ut,cross:Wt,lerp:Vt,hermite:jt,bezier:Yt,random:Xt,transformMat4:zt,transformMat3:Kt,transformQuat:Jt,rotateX:qt,rotateY:Qt,rotateZ:Zt,angle:$t,zero:en,str:tn,exactEquals:nn,equals:rn,sub:Da,mul:La,div:Fa,dist:Ba,sqrDist:Na,len:Ha,sqrLen:Ua,forEach:Wa}),ja=hn,Ya=_n,Xa=fn,za=Sn,Ka=kn,Ja=In,qa=Tn,Qa=function(){var e=an()
|
||
return function(t,n,r,a,i,s){var o,u
|
||
for(n||(n=4),r||(r=0),u=a?Math.min(a*n+r,t.length):t.length,o=r;u>o;o+=n)e[0]=t[o],e[1]=t[o+1],e[2]=t[o+2],e[3]=t[o+3],i(e,e,s),t[o]=e[0],t[o+1]=e[1],t[o+2]=e[2],t[o+3]=e[3]
|
||
return t}}(),Za=Object.freeze({__proto__:null,create:an,clone:sn,fromValues:on,copy:un,set:ln,add:cn,subtract:hn,multiply:_n,divide:fn,ceil:dn,floor:pn,min:vn,max:mn,round:yn,scale:gn,scaleAndAdd:Cn,distance:Sn,squaredDistance:kn,length:In,squaredLength:Tn,negate:Gn,inverse:bn,normalize:An,dot:En,cross:Rn,lerp:xn,random:Pn,transformMat4:Mn,transformQuat:On,zero:wn,str:Dn,exactEquals:Ln,equals:Fn,sub:ja,mul:Ya,div:Xa,dist:za,sqrDist:Ka,len:Ja,sqrLen:qa,forEach:Qa}),$a=sn,ei=on,ti=un,ni=ln,ri=cn,ai=Vn,ii=gn,si=En,oi=xn,ui=In,li=ui,ci=Tn,hi=ci,_i=An,fi=Ln,di=Fn,pi=function(){var e=yt(),t=St(1,0,0),n=St(0,1,0)
|
||
return function(r,a,i){var s=Ut(a,i)
|
||
return-.999999>s?(Wt(e,t,a),Ha(e)<1e-6&&Wt(e,n,a),Ht(e,e),Hn(r,e,Math.PI),r):s>.999999?(r[0]=0,r[1]=0,r[2]=0,r[3]=1,r):(Wt(e,a,i),r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=1+s,_i(r,r))}}(),vi=function(){var e=Bn(),t=Bn()
|
||
return function(n,r,a,i,s,o){return Qn(e,r,s,o),Qn(t,a,i,o),Qn(n,e,t,2*o*(1-o)),n}}(),mi=function(){var e=Q()
|
||
return function(t,n,r,a){return e[0]=r[0],e[3]=r[1],e[6]=r[2],e[1]=a[0],e[4]=a[1],e[7]=a[2],e[2]=-n[0],e[5]=-n[1],e[8]=-n[2],_i(t,tr(t,e))}}(),yi=Object.freeze({__proto__:null,create:Bn,identity:Nn,setAxisAngle:Hn,getAxisAngle:Un,getAngle:Wn,multiply:Vn,rotateX:jn,rotateY:Yn,rotateZ:Xn,calculateW:zn,exp:Kn,ln:Jn,pow:qn,slerp:Qn,random:Zn,invert:$n,conjugate:er,fromMat3:tr,fromEuler:nr,str:rr,clone:$a,fromValues:ei,copy:ti,set:ni,add:ri,mul:ai,scale:ii,dot:si,lerp:oi,length:ui,len:li,squaredLength:ci,sqrLen:hi,normalize:_i,exactEquals:fi,equals:di,rotationTo:pi,sqlerp:vi,setAxes:mi}),gi=ti,Ci=ti,Si=br,ki=si,Ii=ui,Ti=Ii,Gi=ci,bi=Gi,Ai=Object.freeze({__proto__:null,create:ar,clone:ir,fromValues:sr,fromRotationTranslationValues:or,fromRotationTranslation:ur,fromTranslation:lr,fromRotation:cr,fromMat4:hr,copy:_r,identity:fr,set:dr,getReal:gi,getDual:pr,setReal:Ci,setDual:vr,getTranslation:mr,translate:yr,rotateX:gr,rotateY:Cr,rotateZ:Sr,rotateByQuatAppend:kr,rotateByQuatPrepend:Ir,rotateAroundAxis:Tr,add:Gr,multiply:br,mul:Si,scale:Ar,dot:ki,lerp:Er,invert:Rr,conjugate:xr,length:Ii,len:Ti,squaredLength:Gi,sqrLen:bi,normalize:Pr,str:Mr,exactEquals:Or,equals:wr}),Ei=$r,Ri=Ur,xi=Wr,Pi=Vr,Mi=Qr,Oi=Zr,wi=ea,Di=function(){var e=Dr()
|
||
return function(t,n,r,a,i,s){var o,u
|
||
for(n||(n=2),r||(r=0),u=a?Math.min(a*n+r,t.length):t.length,o=r;u>o;o+=n)e[0]=t[o],e[1]=t[o+1],i(e,e,s),t[o]=e[0],t[o+1]=e[1]
|
||
return t}}(),Li=Object.freeze({__proto__:null,create:Dr,clone:Lr,fromValues:Fr,copy:Br,set:Nr,add:Hr,subtract:Ur,multiply:Wr,divide:Vr,ceil:jr,floor:Yr,min:Xr,max:zr,round:Kr,scale:Jr,scaleAndAdd:qr,distance:Qr,squaredDistance:Zr,length:$r,squaredLength:ea,negate:ta,inverse:na,normalize:ra,dot:aa,cross:ia,lerp:sa,random:oa,transformMat2:ua,transformMat2d:la,transformMat3:ca,transformMat4:ha,rotate:_a,angle:fa,zero:da,str:pa,exactEquals:va,equals:ma,len:Ei,sub:Ri,mul:xi,div:Pi,dist:Mi,sqrDist:Oi,sqrLen:wi,forEach:Di})
|
||
e.glMatrix=ka,e.mat2=Ga,e.mat2d=Ea,e.mat3=Pa,e.mat4=wa,e.quat=yi,e.quat2=Ai,e.vec2=Li,e.vec3=Va,e.vec4=Za,Object.defineProperty(e,"__esModule",{value:!0})})
|
||
var lineInt=function(e,t,n){n=n||0
|
||
var r,a,i,s,o,u,l,c=[0,0]
|
||
return r=e[1][1]-e[0][1],a=e[0][0]-e[1][0],i=r*e[0][0]+a*e[0][1],s=t[1][1]-t[0][1],o=t[0][0]-t[1][0],u=s*t[0][0]+o*t[0][1],l=r*o-s*a,scalar_eq(l,0,n)||(c[0]=(o*i-a*u)/l,c[1]=(r*u-s*i)/l),c},lineSegmentsIntersect=function(e,t,n,r){var a=t[0]-e[0],i=t[1]-e[1],s=r[0]-n[0],o=r[1]-n[1]
|
||
if(s*i-o*a===0)return!1
|
||
var u=(a*(n[1]-e[1])+i*(e[0]-n[0]))/(s*i-o*a),l=(s*(e[1]-n[1])+o*(n[0]-e[0]))/(o*a-s*i)
|
||
return u>=0&&1>=u&&l>=0&&1>=l},triangleArea=function(e,t,n){return(t[0]-e[0])*(n[1]-e[1])-(n[0]-e[0])*(t[1]-e[1])},isLeft=function(e,t,n){return triangleArea(e,t,n)>0},isLeftOn=function(e,t,n){return triangleArea(e,t,n)>=0},isRight=function(e,t,n){return triangleArea(e,t,n)<0},isRightOn=function(e,t,n){return triangleArea(e,t,n)<=0},collinear=function(e,t,n,r){if(r){var a=tmpPoint1,i=tmpPoint2
|
||
a[0]=t[0]-e[0],a[1]=t[1]-e[1],i[0]=n[0]-t[0],i[1]=n[1]-t[1]
|
||
var s=a[0]*i[0]+a[1]*i[1],o=Math.sqrt(a[0]*a[0]+a[1]*a[1]),u=Math.sqrt(i[0]*i[0]+i[1]*i[1]),l=Math.acos(s/(o*u))
|
||
return r>l}return 0===triangleArea(e,t,n)},sqdist=function(e,t){var n=t[0]-e[0],r=t[1]-e[1]
|
||
return n*n+r*r},polygonAt=function(e,t){var n=e.length
|
||
return e[0>t?t%n+n:t%n]},polygonClear=function(e){e.length=0},polygonAppend=function(e,t,n,r){for(var a=n;r>a;a++)e.push(t[a])},polygonMakeCCW=function(e){for(var t=0,n=e,r=1;r<e.length;++r)(n[r][1]<n[t][1]||n[r][1]===n[t][1]&&n[r][0]>n[t][0])&&(t=r)
|
||
return isLeft(polygonAt(e,t-1),polygonAt(e,t),polygonAt(e,t+1))?!1:(polygonReverse(e),!0)},polygonReverse=function(e){for(var t=[],n=e.length,r=0;r!==n;r++)t.push(e.pop())
|
||
for(var r=0;r!==n;r++)e[r]=t[r]},polygonIsReflex=function(e,t){return isRight(polygonAt(e,t-1),polygonAt(e,t),polygonAt(e,t+1))},polygonCanSee=function(e,t,n){var r,a,i=tmpLine1,s=tmpLine2
|
||
if(isLeftOn(polygonAt(e,t+1),polygonAt(e,t),polygonAt(e,n))&&isRightOn(polygonAt(e,t-1),polygonAt(e,t),polygonAt(e,n)))return!1
|
||
a=sqdist(polygonAt(e,t),polygonAt(e,n))
|
||
for(var o=0;o!==e.length;++o)if((o+1)%e.length!==t&&o!==t&&isLeftOn(polygonAt(e,t),polygonAt(e,n),polygonAt(e,o+1))&&isRightOn(polygonAt(e,t),polygonAt(e,n),polygonAt(e,o))&&(i[0]=polygonAt(e,t),i[1]=polygonAt(e,n),s[0]=polygonAt(e,o),s[1]=polygonAt(e,o+1),r=lineInt(i,s),sqdist(polygonAt(e,t),r)<a))return!1
|
||
return!0},polygonCanSee2=function(e,t,n){for(var r=0;r!==e.length;++r)if(r!==t&&r!==n&&(r+1)%e.length!==t&&(r+1)%e.length!==n&&lineSegmentsIntersect(polygonAt(e,t),polygonAt(e,n),polygonAt(e,r),polygonAt(e,r+1)))return!1
|
||
return!0},polygonCopy=function(e,t,n,r){var a=r||[]
|
||
if(polygonClear(a),n>t)for(var i=t;n>=i;i++)a.push(e[i])
|
||
else{for(var i=0;n>=i;i++)a.push(e[i])
|
||
for(var i=t;i<e.length;i++)a.push(e[i])}return a},polygonGetCutEdges=function e(t){for(var n=[],r=[],a=[],i=[],s=Number.MAX_VALUE,o=0;o<t.length;++o)if(polygonIsReflex(t,o))for(var u=0;u<t.length;++u)if(polygonCanSee(t,o,u)){r=e(polygonCopy(t,o,u,i)),a=e(polygonCopy(t,u,o,i))
|
||
for(var l=0;l<a.length;l++)r.push(a[l])
|
||
r.length<s&&(n=r,s=r.length,n.push([polygonAt(t,o),polygonAt(t,u)]))}return n},polygonDecomp=function(e){var t=polygonGetCutEdges(e)
|
||
return t.length>0?polygonSlice(e,t):[e]},polygonSlice=function t(e,n){if(0===n.length)return[e]
|
||
if(n instanceof Array&&n.length&&n[0]instanceof Array&&2===n[0].length&&n[0][0]instanceof Array){for(var r=[e],a=0;a<n.length;a++)for(var i=n[a],s=0;s<r.length;s++){var o=r[s],u=t(o,i)
|
||
if(u){r.splice(s,1),r.push(u[0],u[1])
|
||
break}}return r}var i=n,a=e.indexOf(i[0]),s=e.indexOf(i[1])
|
||
return-1!==a&&-1!==s?[polygonCopy(e,a,s),polygonCopy(e,s,a)]:!1},polygonIsSimple=function(e){var t,n=e
|
||
for(t=0;t<n.length-1;t++)for(var r=0;t-1>r;r++)if(lineSegmentsIntersect(n[t],n[t+1],n[r],n[r+1]))return!1
|
||
for(t=1;t<n.length-2;t++)if(lineSegmentsIntersect(n[0],n[n.length-1],n[t],n[t+1]))return!1
|
||
return!0},getIntersectionPoint=function(e,t,n,r,a){a=a||0
|
||
var i=t[1]-e[1],s=e[0]-t[0],o=i*e[0]+s*e[1],u=r[1]-n[1],l=n[0]-r[0],c=u*n[0]+l*n[1],h=i*l-u*s
|
||
return scalar_eq(h,0,a)?[0,0]:[(l*o-s*c)/h,(i*c-u*o)/h]},polygonQuickDecomp=function n(e,t,r,a,i,s,o){s=s||100,o=o||0,i=i||25,t=void 0!==t?t:[],r=r||[],a=a||[]
|
||
var u=[0,0],l=[0,0],c=[0,0],h=0,_=0,f=0,d=0,p=0,v=0,m=0,y=[],g=[],C=e,S=e
|
||
if(S.length<3)return t
|
||
if(o++,o>s)return console.warn("quickDecomp: max level ("+s+") reached."),t
|
||
for(var k=0;k<e.length;++k)if(polygonIsReflex(C,k)){r.push(C[k]),h=_=Number.MAX_VALUE
|
||
for(var I=0;I<e.length;++I)isLeft(polygonAt(C,k-1),polygonAt(C,k),polygonAt(C,I))&&isRightOn(polygonAt(C,k-1),polygonAt(C,k),polygonAt(C,I-1))&&(c=getIntersectionPoint(polygonAt(C,k-1),polygonAt(C,k),polygonAt(C,I),polygonAt(C,I-1)),isRight(polygonAt(C,k+1),polygonAt(C,k),c)&&(f=sqdist(C[k],c),_>f&&(_=f,l=c,v=I))),isLeft(polygonAt(C,k+1),polygonAt(C,k),polygonAt(C,I+1))&&isRightOn(polygonAt(C,k+1),polygonAt(C,k),polygonAt(C,I))&&(c=getIntersectionPoint(polygonAt(C,k+1),polygonAt(C,k),polygonAt(C,I),polygonAt(C,I+1)),isLeft(polygonAt(C,k-1),polygonAt(C,k),c)&&(f=sqdist(C[k],c),h>f&&(h=f,u=c,p=I)))
|
||
if(v===(p+1)%e.length)c[0]=(l[0]+u[0])/2,c[1]=(l[1]+u[1])/2,a.push(c),p>k?(polygonAppend(y,C,k,p+1),y.push(c),g.push(c),0!==v&&polygonAppend(g,C,v,C.length),polygonAppend(g,C,0,k+1)):(0!==k&&polygonAppend(y,C,k,C.length),polygonAppend(y,C,0,p+1),y.push(c),g.push(c),polygonAppend(g,C,v,k+1))
|
||
else{if(v>p&&(p+=e.length),d=Number.MAX_VALUE,v>p)return t
|
||
for(var I=v;p>=I;++I)isLeftOn(polygonAt(C,k-1),polygonAt(C,k),polygonAt(C,I))&&isRightOn(polygonAt(C,k+1),polygonAt(C,k),polygonAt(C,I))&&(f=sqdist(polygonAt(C,k),polygonAt(C,I)),d>f&&polygonCanSee2(C,k,I)&&(d=f,m=I%e.length))
|
||
m>k?(polygonAppend(y,C,k,m+1),0!==m&&polygonAppend(g,C,m,S.length),polygonAppend(g,C,0,k+1)):(0!==k&&polygonAppend(y,C,k,S.length),polygonAppend(y,C,0,m+1),polygonAppend(g,C,m,k+1))}return y.length<g.length?(n(y,t,r,a,i,s,o),n(g,t,r,a,i,s,o)):(n(g,t,r,a,i,s,o),n(y,t,r,a,i,s,o)),t}return t.push(e),t},polygonRemoveCollinearPoints=function(e,t){for(var n=0,r=e.length-1;e.length>3&&r>=0;--r)collinear(polygonAt(e,r-1),polygonAt(e,r),polygonAt(e,r+1),t)&&(e.splice(r%e.length,1),n++)
|
||
return n},polygonRemoveDuplicatePoints=function(e,t){for(var n=e.length-1;n>=1;--n)for(var r=e[n],a=n-1;a>=0;--a)points_eq(r,e[a],t)&&e.splice(n,1)},scalar_eq=function(e,t,n){return n=n||0,Math.abs(e-t)<=n},points_eq=function(e,t,n){return scalar_eq(e[0],t[0],n)&&scalar_eq(e[1],t[1],n)},tmpPoint1=[],tmpPoint2=[],tmpLine1=[],tmpLine2=[]
|
||
self.polyDecomp={decomp:polygonDecomp,quickDecomp:polygonQuickDecomp,isSimple:polygonIsSimple,removeCollinearPoints:polygonRemoveCollinearPoints,removeDuplicatePoints:polygonRemoveDuplicatePoints,makeCCW:polygonMakeCCW}
|
||
var isReady=!1,hasAppStarted=!1,buildMode="dev",C3=self.C3=function(){function e(){throw _classCallCheck(this,e),TypeError("static class can't be instantiated")}return _createClass(e,null,[{key:"SetReady",value:function(){isReady=!0}},{key:"IsReady",value:function(){return isReady}},{key:"SetAppStarted",value:function(){hasAppStarted=!0}},{key:"HasAppStarted",value:function(){return hasAppStarted}},{key:"SetBuildMode",value:function(e){buildMode=e}},{key:"GetBuildMode",value:function(){return buildMode}},{key:"IsReleaseBuild",value:function(){return"final"===buildMode}}]),e}()
|
||
C3.isDebug=!1,C3.isDebugDefend=!1,C3.hardwareConcurrency=navigator.hardwareConcurrency||2
|
||
var _C=self.C3
|
||
_C.QueryParser=function(){function e(t){_classCallCheck(this,e),this._queryString=t,this._parameters=new Map,this._Parse()}return _createClass(e,[{key:"_Parse",value:function(){var e=this._queryString;(e.startsWith("?")||e.startsWith("#"))&&(e=e.substr(1))
|
||
var t,n=e.split("&"),r=_createForOfIteratorHelper(n)
|
||
try{for(r.s();!(t=r.n()).done;){var a=t.value
|
||
this._ParseParameter(a)}}catch(i){r.e(i)}finally{r.f()}}},{key:"_ParseParameter",value:function(e){if(e){if(!e.includes("="))return void this._parameters.set(e,null)
|
||
var t=e.indexOf("="),n=decodeURIComponent(e.substring(0,t)),r=decodeURIComponent(e.substring(t+1))
|
||
this._parameters.set(n,r)}}},{key:"LogAll",value:function(){var e,t=_createForOfIteratorHelper(this._parameters)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
console.log("[QueryParser] Parameter '"+n[0]+"' = "+(null===n[1]?"null":"'"+n[1]+"'"))}}catch(r){t.e(r)}finally{t.f()}}},{key:"Has",value:function(e){return this._parameters.has(e)}},{key:"Get",value:function(e){var t=this._parameters.get(e)
|
||
return void 0===t?null:t}},{key:"ClearHash",value:function(){history.replaceState("",document.title,location.pathname+location.search)}},{key:"Reparse",value:function(e){this._queryString=e,this._parameters.clear(),this._Parse()}}]),e}(),_C.QueryString=new _C.QueryParser(location.search),_C.LocationHashString=new _C.QueryParser(location.hash),"dev"!==_C.QueryString.Get("mode")&&_C.SetBuildMode("final")
|
||
var runTest=function(e,t,n){if(t===!0){n()
|
||
testResults.set(e,!0)}else if(t&&t.length){n(t[0])
|
||
testResults.set(e,!0)}},_C2=self.C3,UNKNOWN="(unknown)",UA=navigator.userAgent,Flags={linux:/linux|openbsd|freebsd|netbsd/i.test(UA),chromeOS:/CrOS/.test(UA),windowsTizen:/trident|iemobile|msie|tizen/i.test(UA),genericMS:/trident|iemobile|msie|edge\//i.test(UA),opera:/OPR\//.test(UA),blackberry:/bb10/i.test(UA),edge:/edge\//i.test(UA),trident:/trident/i.test(UA),webkit:/webkit/i.test(UA),safari:/safari\//i.test(UA),chrome:/chrome\//i.test(UA),chromium:/chromium\//i.test(UA),crosswalk:/crosswalk|xwalk/i.test(UA),nwjs:/nwjs/i.test(UA),amazonwebapp:/amazonwebappplatform/i.test(UA),webview:/wv\)/.test(UA),android:/android/i.test(UA),nokia:/nokiabrowser\/[0-9.]+/i.test(UA)},Versions={windows:/windows\s+nt\s+\d+\.\d+/i.exec(UA),OSX:/mac\s+os\s+x\s+[0-9_]+/i.exec(UA),android:/android\s+[0-9.]+/i.exec(UA),opera:/OPR\/[0-9.]+/.exec(UA),tizen:/tizen\s+[0-9.]+/i.exec(UA),iphone:/iphone\s+os\s+[0-9_]+/i.exec(UA),ipad:/ipad[^)]*os\s+[0-9_]+/i.exec(UA),winPhone:/windows\s+phone\s+[0-9.]+/i.exec(UA),winPhoneOS:/windows\s+phone\s+os\s+[0-9.]+/i.exec(UA),chrome:/chrome\/[0-9.]+/i.exec(UA),chromium:/chromium\/[0-9.]+/i.exec(UA),nwjs:/nwjs\/[0-9.]+/i.exec(UA),firefox:/firefox\/[0-9.]+/i.exec(UA),ie:/msie\s+[0-9.]+/i.exec(UA),edge:/edge\/[0-9.]+/i.exec(UA),edgeChromium:/edg\/[0-9.]+/i.exec(UA),silk:/silk\/[0-9.]+/i.exec(UA)},os=UNKNOWN,os_version=UNKNOWN,os_arch=UNKNOWN,browser=UNKNOWN,browser_version=UNKNOWN,browser_arch=UNKNOWN,engine=UNKNOWN,context="browser",is_desktop=!1,is_desktop_app=!1,testResults=new Map
|
||
runTest("isWindows",Versions.windows,function(e){os="Windows"
|
||
var t=e.split(" ")[2]
|
||
if(t)switch(t){case"5.0":os_version="2000"
|
||
break
|
||
case"5.1":os_version="XP"
|
||
break
|
||
case"5.2":os_version="XP"
|
||
break
|
||
case"6.0":os_version="Vista"
|
||
break
|
||
case"6.1":os_version="7"
|
||
break
|
||
case"6.2":os_version="8"
|
||
break
|
||
case"6.3":os_version="8.1"
|
||
break
|
||
case"10.0":os_version="10"}}),runTest("isOSX",Versions.OSX,function(e){os="Mac OS X"
|
||
var t=e.split(" ")[3]
|
||
t&&(os_version=t.replace("_","."))}),runTest("isLinux",Flags.linux,function(){os="Linux"}),runTest("isChromeOS",Flags.chromeOS,function(){os="Chrome OS"}),runTest("isAndroid",!Flags.windowsTizen&&Versions.android,function(e){os="Android"
|
||
var t=e.split(" ")[1]
|
||
t&&(os_version=t)}),runTest("isTizen",Versions.tizen,function(e){os="Tizen"
|
||
var t=e.split(" ")[1]
|
||
t&&(os_version=t)}),runTest("isIPhone",!Flags.windowsTizen&&Versions.iphone,function(e){os="iOS"
|
||
var t=e.split(" ")[2]
|
||
t&&(os_version=t.replace("_","."))}),runTest("isIPad",!Flags.windowsTizen&&Versions.ipad,function(e){os="iOS"
|
||
var t=e.split(" ")[3]
|
||
t&&(os_version=t.replace("_","."))}),runTest("isWindowsPhone",Versions.winPhone,function(e){os="Windows Phone"
|
||
var t=e.split(" ")[2]
|
||
t&&(os_version=t)}),runTest("isWindowsPhoneOS",Versions.winPhoneOS,function(e){os="Windows Phone"
|
||
var t=e.split(" ")[3]
|
||
t&&(os_version=t)}),runTest("isBlackberry",Flags.blackberry,function(){os="Blackberry",os_version="10",browser="stock",engine="webkit"}),runTest("isChrome",!Flags.edge&&!Flags.opera&&Versions.chrome,function(e){browser="Chrome",engine="Chromium"
|
||
var t=e.split("/")[1]
|
||
t&&(browser_version=t)}),runTest("isOpera",Versions.opera,function(e){browser="Opera",engine="Chromium"
|
||
var t=e.split("/")[1]
|
||
t&&(browser_version=t)}),runTest("isChromium",Versions.chromium,function(e){browser="Chromium",engine="Chromium"
|
||
var t=e.split("/")[1]
|
||
t&&(browser_version=t)}),runTest("isFirefox",Versions.firefox,function(e){browser="Firefox",engine="Gecko"
|
||
var t=e.split("/")[1]
|
||
t&&(browser_version=t)}),runTest("isInternetExplorer",Versions.ie,function(e){browser="Internet Explorer",engine="Trident"
|
||
var t=e.split(" ")[1]
|
||
t&&(browser_version=t)}),runTest("isTrident","Internet Explorer"!==browser&&Flags.trident,function(){engine="Trident"
|
||
var e=/rv:[0-9.]+/i.exec(UA)
|
||
if(e&&e.length){browser="Internet Explorer"
|
||
var t=e[0].split(":")[1]
|
||
t&&(browser_version=t)}}),runTest("isEdge",Versions.edge,function(e){browser="Edge",engine="Edge"
|
||
var t=e.split("/")[1]
|
||
t&&(browser_version=t)}),runTest("isEdgeChromium",Versions.edgeChromium,function(e){browser="Edge",engine="Chromium"
|
||
var t=e.split("/")[1]
|
||
t&&(browser_version=t)}),runTest("isSafari",Flags.safari&&!Flags.nokia&&!Flags.chrome&&!Flags.chromium&&!Flags.genericIE&&!Flags.blackberry,function(){browser="Safari",engine="WebKit"
|
||
var e=/version\/[0-9.]+/i.exec(UA),t=/crios\/[0-9.]+/i.exec(UA),n=/fxios\/[0-9.]+/i.exec(UA)
|
||
if(e&&e.length){var r=e[0].split("/")[1]
|
||
r&&(browser_version=r)}if(t&&t.length){browser="Chrome for iOS"
|
||
var a=t[0].split("/")[1]
|
||
a&&(browser_version=a)}if(n&&n.length){browser="Firefox for iOS"
|
||
var i=n[0].split("/")[1]
|
||
i&&(browser_version=i)}}),runTest("isSilk",Versions.silk,function(e){browser="Silk"
|
||
var t=e.split("/")[1]
|
||
t&&(browser_version=t)}),runTest("isCrosswalk",Flags.crosswalk,function(){return context="crosswalk"}),runTest("isCordova",self.device&&(self.device.cordova||self.device.phonegap),function(){return context="cordova"}),runTest("isNWJS",Versions.nwjs,function(e){context="nwjs",browser="NW.js",engine="Chromium"
|
||
var t=e.split("/")[1]
|
||
t&&(browser_version=t)}),runTest("isAmazonWebApp",Flags.amazonwebapp,function(){return context="webapp"}),runTest("isHomeScreenWebApp","nwjs"!==context&&"undefined"!=typeof window&&(window.matchMedia&&window.matchMedia("(display-mode: standalone)").matches||navigator.standalone),function(){return context="webapp"}),runTest("isFalseSafari","Safari"===browser&&("Android"===os||"Tizen"===os||"Blackberry"===os),function(){return browser="stock"}),runTest("isAndroidWebview","Chrome"===browser&&"browser"===context&&Flags.webview,function(){return context="webview"}),runTest("isFirefoxOS","Firefox"===browser&&os===UNKNOWN,function(){return os="Firefox OS"}),runTest("isAndroidFallback",os===UNKNOWN&&!Flags.windowsTizen&&Flags.android,function(){return os="Android"}),runTest("isTridentFallback",os===UNKNOWN&&Flags.trident,function(){return engine="Trident"}),runTest("isWebkitFallback",os===UNKNOWN&&Flags.webkit,function(){return engine="WebKit"}),runTest("is64Bit",function(e){return e.test(UA)||e.test(navigator.platform)||"x64"===navigator.cpuClass}(/x86_64|x86-64|win64|x64;|x64\)|x64_|amd64|wow64|ia64|arm64|arch64|sparc64|ppc64|irix64/i),function(){return os_arch="64-bit"}),runTest("is32Bit",function(e){return e.test(UA)||e.test(navigator.platform)||"x86"===navigator.cpuClass}(/x86;|x86\)|i86|i386|i486|i586|i686|armv1|armv2|armv3|armv4|armv5|armv6|armv7/i),function(){return os_arch="32-bit"}),runTest("is64BitFallback",os_arch===UNKNOWN&&"Mac OS X"===os&&parseFloat(os_version)>=10.7,function(){return os_arch="64-bit"}),runTest("is32BitFallback",os_arch===UNKNOWN&&"Windows"===os||"Android"===os&&parseFloat(os_version)<5,function(){return os_arch="32-bit"}),runTest("is32BitBrowser","32-bit"===os_arch||/wow64/i.test(UA),function(){return browser_arch="32-bit"}),runTest("is64BitBrowser",/win64/i.test(UA),function(){return browser_arch="64-bit"}),runTest("isDesktop",function(){return"Windows"===os||"Mac OS X"===os||"Linux"===os||"Chrome OS"===os||"nwjs"===context}(),function(){return is_desktop=!0}),"Edge"===engine&&"undefined"!=typeof Windows&&void 0!==Windows.System&&(context="windows-store"),is_desktop_app="nwjs"===context
|
||
var is_ipad_os="Mac OS X"===os&&navigator.maxTouchPoints&&navigator.maxTouchPoints>2
|
||
is_ipad_os&&(os="iOS",os_version=browser_version,is_desktop=!1,is_desktop_app=!1),_C2.Platform={OS:os,OSVersion:os_version,OSArchitecture:os_arch,Browser:browser,BrowserVersion:browser_version,BrowserVersionNumber:parseFloat(browser_version),BrowserArchitecture:browser_arch,BrowserEngine:engine,Context:context,IsDesktop:is_desktop,IsMobile:!is_desktop,IsDesktopApp:is_desktop_app,IsChromeWebStore:!!(self.chrome&&self.chrome.runtime&&self.chrome.runtime.id),IsAppleOS:"Mac OS X"===os||"iOS"===os,IsIpadOS:is_ipad_os,IsLinux:"Linux"===os}
|
||
var asyncifyRequest=function(e){return new Promise(function(t,n){e.onsuccess=function(){return t(e.result)},e.onerror=function(){return n(e.error)}})},asyncifyTransaction=function(e){return new Promise(function(t,n){e.oncomplete=function(){return t()},e.onerror=function(){return n(e.error)},e.onabort=function(){return n(e.error)}})},openReadOnlyTransaction=function(e,t){return openTransaction(e,t)},openWriteTransaction=function(e,t){return openTransaction(e,t,!0)},openTransaction=function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function t(e,n){var r,a,i,s,o=arguments
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return r=o.length>2&&void 0!==o[2]?o[2]:!1,a=o.length>3&&void 0!==o[3]?o[3]:!0,t.next=4,lazyOpenDatabase(e)
|
||
case 4:return i=t.sent,t.prev=5,s=i.transaction([STORE_NAME],r?"readwrite":"readonly"),t.abrupt("return",n(s))
|
||
case 10:if(t.prev=10,t.t0=t["catch"](5),!a||"InvalidStateError"!==t.t0.name){t.next=17
|
||
break}return DATABASE_PROMISE_MAP["delete"](e),t.abrupt("return",openTransaction(e,n,r,!1))
|
||
case 17:throw t.t0
|
||
case 18:case"end":return t.stop()}},t,null,[[5,10]])}))
|
||
return function(t,n){return e.apply(this,arguments)}}(),lazyOpenDatabase=function(e){RequireString(e)
|
||
var t=DATABASE_PROMISE_MAP.get(e)
|
||
return t instanceof Promise||(t=openDatabase(e),DATABASE_PROMISE_MAP.set(e,t),t["catch"](function(t){return DATABASE_PROMISE_MAP["delete"](e)})),t},openDatabase=function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function t(e){var n
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return RequireString(e),n=indexedDB.open(e,VERSION),n.addEventListener("upgradeneeded",function(t){try{var n=t.target.result
|
||
n.createObjectStore(STORE_NAME)}catch(r){console.error("Failed to create objectstore for database ".concat(e),r)}}),t.abrupt("return",asyncifyRequest(n))
|
||
case 4:case"end":return t.stop()}},t)}))
|
||
return function(t){return e.apply(this,arguments)}}(),RequireString=function(e){if("string"!=typeof e)throw new TypeError("expected string")},getEntriesFromCursor=function(e,t){var n=e.objectStore(STORE_NAME).openCursor()
|
||
return new Promise(function(e){var r=[]
|
||
n.onsuccess=function(n){var a=n.target.result
|
||
if(a){switch(t){case"entries":r.push([a.key,a.value])
|
||
break
|
||
case"keys":r.push(a.key)
|
||
break
|
||
case"values":r.push(a.value)}a["continue"]()}else e(r)}})},VERSION=2,STORE_NAME="keyvaluepairs",DATABASE_PROMISE_MAP=new Map,SUPPORTS_GETALL="undefined"!=typeof IDBObjectStore&&"function"==typeof IDBObjectStore.prototype.getAll,SUPPORTS_GETALLKEYS="undefined"!=typeof IDBObjectStore&&"function"==typeof IDBObjectStore.prototype.getAllKeys,KVStorageContainer=function(){function e(t){_classCallCheck(this,e),RequireString(t),this.name=t}return _createClass(e,[{key:"ready",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,lazyOpenDatabase(this.name)
|
||
case 2:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"set",value:function(e,t){return RequireString(e),openWriteTransaction(this.name,function(){var n=_asyncToGenerator(_regeneratorRuntime().mark(function r(n){var a,i,s
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return a=n.objectStore(STORE_NAME).put(t,e),i=asyncifyRequest(a),s=asyncifyTransaction(n),r.next=5,Promise.all([s,i])
|
||
case 5:case"end":return r.stop()}},r)}))
|
||
return function(e){return n.apply(this,arguments)}}())}},{key:"get",value:function(e){return RequireString(e),openReadOnlyTransaction(this.name,function(){var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(t){var r,a,i,s,o,u,l
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=t.objectStore(STORE_NAME).get(e),a=asyncifyRequest(r),i=asyncifyTransaction(t),n.next=5,Promise.all([i,a])
|
||
case 5:return s=n.sent,o=_slicedToArray(s,2),u=o[0],l=o[1],n.abrupt("return",l)
|
||
case 10:case"end":return n.stop()}},n)}))
|
||
return function(e){return t.apply(this,arguments)}}())}},{key:"delete",value:function(e){return RequireString(e),openWriteTransaction(this.name,function(){var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(t){var r,a,i
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=t.objectStore(STORE_NAME)["delete"](e),a=asyncifyRequest(r),i=asyncifyTransaction(t),n.next=5,Promise.all([i,a])
|
||
case 5:case"end":return n.stop()}},n)}))
|
||
return function(e){return t.apply(this,arguments)}}())}},{key:"clear",value:function(){return openWriteTransaction(this.name,function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function t(e){var n,r,a
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=e.objectStore(STORE_NAME).clear(),r=asyncifyRequest(n),a=asyncifyTransaction(e),t.next=5,Promise.all([a,r])
|
||
case 5:case"end":return t.stop()}},t)}))
|
||
return function(t){return e.apply(this,arguments)}}())}},{key:"keys",value:function(){return openReadOnlyTransaction(this.name,function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function t(e){var n,r,a,i,s,o,u
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return SUPPORTS_GETALLKEYS?(r=e.objectStore(STORE_NAME).getAllKeys(),n=asyncifyRequest(r)):n=getEntriesFromCursor(e,"keys"),a=asyncifyTransaction(e),t.next=4,Promise.all([a,n])
|
||
case 4:return i=t.sent,s=_slicedToArray(i,2),o=s[0],u=s[1],t.abrupt("return",u)
|
||
case 9:case"end":return t.stop()}},t)}))
|
||
return function(t){return e.apply(this,arguments)}}())}},{key:"values",value:function(){return openReadOnlyTransaction(this.name,function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function t(e){var n,r,a,i,s,o,u
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return SUPPORTS_GETALL?(r=e.objectStore(STORE_NAME).getAll(),n=asyncifyRequest(r)):n=getEntriesFromCursor(e,"values"),a=asyncifyTransaction(e),t.next=4,Promise.all([a,n])
|
||
case 4:return i=t.sent,s=_slicedToArray(i,2),o=s[0],u=s[1],t.abrupt("return",u)
|
||
case 9:case"end":return t.stop()}},t)}))
|
||
return function(t){return e.apply(this,arguments)}}())}},{key:"entries",value:function(){return openReadOnlyTransaction(this.name,function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function t(e){var n,r,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return n=getEntriesFromCursor(e,"entries"),r=asyncifyTransaction(e),t.next=4,Promise.all([r,n])
|
||
case 4:return a=t.sent,i=_slicedToArray(a,2),s=i[0],o=i[1],t.abrupt("return",o)
|
||
case 9:case"end":return t.stop()}},t)}))
|
||
return function(t){return e.apply(this,arguments)}}())}}]),e}()
|
||
self.KVStorageContainer=KVStorageContainer
|
||
var NOT_IMPLEMENTED=function(e){throw Error('"'.concat(e,'" is not implemented'))},DISALLOW_CALLBACK=function(e){if("function"==typeof e)throw Error("localforage callback API is not implemented; please use the promise API instead")},StructuredClone=function(e){return"object"===_typeof(e)?new Promise(function(t){var n=new MessageChannel,r=n.port1,a=n.port2
|
||
a.onmessage=function(e){return t(e.data)},r.postMessage(e)}):Promise.resolve(e)},_KVStorageContainer=self.KVStorageContainer,CRITICAL_ERRORS=[/no available storage method found/i,/an attempt was made to break through the security policy of the user agent/i,/the user denied permission to access the database/i,/a mutation operation was attempted on a database that did not allow mutations/i,/idbfactory\.open\(\) called in an invalid security context/i],memoryStorage=new WeakMap,isInMemory=!1
|
||
"undefined"==typeof indexedDB&&(isInMemory=!0,console.warn("Unable to use local storage because indexedDB is not defined"))
|
||
var ForageAdaptor=function(){function e(t){_classCallCheck(this,e),this._inst=t,memoryStorage.set(this,new Map)}return _createClass(e,[{key:"_MaybeSwitchToMemoryFallback",value:function(e){if(!isInMemory){var t,n=_createForOfIteratorHelper(CRITICAL_ERRORS)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(e&&r.test(e.message)){console.error("Unable to use local storage, reverting to in-memory store: ",e,e.message),isInMemory=!0
|
||
break}}}catch(e){n.e(e)}finally{n.f()}}}},{key:"_getItemFallback",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t=memoryStorage.get(this).get(e),n.next=3,StructuredClone(t)
|
||
case 3:return r=n.sent,n.abrupt("return",void 0===r?null:r)
|
||
case 5:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_setItemFallback",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,StructuredClone(t)
|
||
case 2:t=n.sent,memoryStorage.get(this).set(e,t)
|
||
case 4:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_removeItemFallback",value:function(e){memoryStorage.get(this)["delete"](e)}},{key:"_clearFallback",value:function(){memoryStorage.get(this).clear()}},{key:"_keysFallback",value:function(){return Array.from(memoryStorage.get(this).keys())}},{key:"IsUsingFallback",value:function(){return isInMemory}},{key:"getItem",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(DISALLOW_CALLBACK(t),!isInMemory){n.next=5
|
||
break}return n.next=4,this._getItemFallback(e)
|
||
case 4:return n.abrupt("return",n.sent)
|
||
case 5:return n.prev=5,n.next=8,this._inst.get(e)
|
||
case 8:r=n.sent,n.next=22
|
||
break
|
||
case 11:if(n.prev=11,n.t0=n["catch"](5),this._MaybeSwitchToMemoryFallback(n.t0),!isInMemory){n.next=20
|
||
break}return n.next=17,this._getItemFallback(e)
|
||
case 17:return n.abrupt("return",n.sent)
|
||
case 20:return console.error("Error reading '".concat(e,"' from storage, returning null: "),n.t0),n.abrupt("return",null)
|
||
case 22:return n.abrupt("return",void 0===r?null:r)
|
||
case 23:case"end":return n.stop()}},n,this,[[5,11]])}))
|
||
return e}()},{key:"setItem",value:function(){function e(e,n,r){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r){return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(DISALLOW_CALLBACK(r),void 0===t&&(t=null),!isInMemory){n.next=6
|
||
break}return n.next=5,this._setItemFallback(e,t)
|
||
case 5:return n.abrupt("return")
|
||
case 6:return n.prev=6,n.next=9,this._inst.set(e,t)
|
||
case 9:n.next=20
|
||
break
|
||
case 11:if(n.prev=11,n.t0=n["catch"](6),this._MaybeSwitchToMemoryFallback(n.t0),!isInMemory){n.next=19
|
||
break}return n.next=17,this._setItemFallback(e,t)
|
||
case 17:n.next=20
|
||
break
|
||
case 19:throw n.t0
|
||
case 20:case"end":return n.stop()}},n,this,[[6,11]])}))
|
||
return e}()},{key:"removeItem",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(DISALLOW_CALLBACK(t),!isInMemory){n.next=4
|
||
break}return this._removeItemFallback(e),n.abrupt("return")
|
||
case 4:return n.prev=4,n.next=7,this._inst["delete"](e)
|
||
case 7:n.next=13
|
||
break
|
||
case 9:n.prev=9,n.t0=n["catch"](4),this._MaybeSwitchToMemoryFallback(n.t0),isInMemory?this._removeItemFallback(e):console.error("Error removing '".concat(e,"' from storage: "),n.t0)
|
||
case 13:case"end":return n.stop()}},n,this,[[4,9]])}))
|
||
return e}()},{key:"clear",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(DISALLOW_CALLBACK(e),!isInMemory){t.next=4
|
||
break}return this._clearFallback(),t.abrupt("return")
|
||
case 4:return t.prev=4,t.next=7,this._inst.clear()
|
||
case 7:t.next=13
|
||
break
|
||
case 9:t.prev=9,t.t0=t["catch"](4),this._MaybeSwitchToMemoryFallback(t.t0),isInMemory?this._clearFallback():console.error("Error clearing storage: ",t.t0)
|
||
case 13:case"end":return t.stop()}},n,this,[[4,9]])}))
|
||
return e}()},{key:"keys",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(DISALLOW_CALLBACK(e),!isInMemory){n.next=3
|
||
break}return n.abrupt("return",this._keysFallback())
|
||
case 3:return t=[],n.prev=4,n.next=7,this._inst.keys()
|
||
case 7:t=n.sent,n.next=18
|
||
break
|
||
case 10:if(n.prev=10,n.t0=n["catch"](4),this._MaybeSwitchToMemoryFallback(n.t0),!isInMemory){n.next=17
|
||
break}return n.abrupt("return",this._keysFallback())
|
||
case 17:console.error("Error getting storage keys: ",n.t0)
|
||
case 18:return n.abrupt("return",t)
|
||
case 19:case"end":return n.stop()}},n,this,[[4,10]])}))
|
||
return e}()},{key:"ready",value:function(e){return DISALLOW_CALLBACK(e),isInMemory?Promise.resolve(!0):this._inst.ready()}},{key:"createInstance",value:function(t){if("object"!==_typeof(t))throw new TypeError("invalid options object")
|
||
var n=t.name
|
||
if("string"!=typeof n)throw new TypeError("invalid store name")
|
||
var r=new _KVStorageContainer(n)
|
||
return new e(r)}},{key:"length",value:function(e){NOT_IMPLEMENTED("localforage.length()")}},{key:"key",value:function(e,t){NOT_IMPLEMENTED("localforage.key()")}},{key:"iterate",value:function(e,t){NOT_IMPLEMENTED("localforage.iterate()")}},{key:"setDriver",value:function(e){NOT_IMPLEMENTED("localforage.setDriver()")}},{key:"config",value:function(e){NOT_IMPLEMENTED("localforage.config()")}},{key:"defineDriver",value:function(e){NOT_IMPLEMENTED("localforage.defineDriver()")}},{key:"driver",value:function(){NOT_IMPLEMENTED("localforage.driver()")}},{key:"supports",value:function(e){NOT_IMPLEMENTED("localforage.supports()")}},{key:"dropInstance",value:function(){NOT_IMPLEMENTED("localforage.dropInstance()")}},{key:"disableMemoryMode",value:function(){isInMemory=!1}}]),e}()
|
||
self.localforage=new ForageAdaptor(new _KVStorageContainer("localforage"))
|
||
var _C3=self.C3
|
||
if(_C3.Supports={},_C3.Supports.WebAnimations=function(){try{if("Safari"===_C3.Platform.Browser)return!1
|
||
if("undefined"==typeof document)return!1
|
||
var e=document.createElement("div")
|
||
if(void 0===e.animate)return!1
|
||
var t=e.animate([{opacity:"0"},{opacity:"1"}],1e3)
|
||
return void 0!==t.reverse}catch(e){return!1}}(),_C3.Supports.DialogElement="undefined"!=typeof HTMLDialogElement,_C3.Supports.RequestIdleCallback=!!self.requestIdleCallback,_C3.Supports.ImageBitmap=!!self.createImageBitmap,_C3.Supports.ImageBitmapOptions=!1,_C3.Supports.ImageBitmap)try{self.createImageBitmap(new ImageData(32,32),{premultiplyAlpha:"none"}).then(function(e){_C3.Supports.ImageBitmapOptions=!0})["catch"](function(e){_C3.Supports.ImageBitmapOptions=!1})}catch(e){_C3.Supports.ImageBitmapOptions=!1}_C3.Supports.ClipboardReadText=!(!navigator.clipboard||!navigator.clipboard.readText||"Firefox"===_C3.Platform.Browser),_C3.Supports.PermissionsQuery=!(!navigator.permissions||!navigator.permissions.query),_C3.Supports.Proxies="undefined"!=typeof Proxy,_C3.Supports.DownloadAttribute=function(){if("undefined"==typeof document)return!1
|
||
var e=document.createElement("a")
|
||
return void 0!==e.download}(),_C3.Supports.CanvasToBlob=function(){return"undefined"!=typeof HTMLCanvasElement&&HTMLCanvasElement.prototype.toBlob}(),_C3.Supports.Fetch="function"==typeof fetch,_C3.Supports.PersistentStorage=!!(self.isSecureContext&&"Opera"!==_C3.Platform.Browser&&navigator.storage&&navigator.storage.persist),_C3.Supports.StorageQuotaEstimate=!!(self.isSecureContext&&navigator.storage&&navigator.storage.estimate),_C3.Supports.Fullscreen=function(){if("undefined"==typeof document)return!1
|
||
if("iOS"===_C3.Platform.OS)return!1
|
||
var e=document.documentElement
|
||
return!!(e.requestFullscreen||e.msRequestFullscreen||e.mozRequestFullScreen||e.webkitRequestFullscreen)}(),_C3.Supports.ImageDecoder=void 0!==self.ImageDecoder,_C3.Supports.NativeFileSystemAPI=!!self.showOpenFilePicker,_C3.Supports.NavigatorFontsQuery=!(!navigator.fonts||!navigator.fonts.query)
|
||
var _C4=self.C3
|
||
if(!String.prototype.trimStart){var startWhitespace=/^[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]*/
|
||
String.prototype.trimStart=function(){return this.replace(startWhitespace,"")}}if(!String.prototype.trimEnd){var endWhitespace=/[\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF]*$/
|
||
String.prototype.trimEnd=function(){return this.replace(endWhitespace,"")}}if(String.prototype.replaceAll||(String.prototype.replaceAll=function(e,t){return this.replace(RegExp(_C4.EscapeRegex(e),"g"),t)}),Array.prototype.values||(Array.prototype.values=_regeneratorRuntime().mark(function r(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(this),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=9
|
||
break}return n=t.value,r.next=7,n
|
||
case 7:r.next=3
|
||
break
|
||
case 9:r.next=14
|
||
break
|
||
case 11:r.prev=11,r.t0=r["catch"](1),e.e(r.t0)
|
||
case 14:return r.prev=14,e.f(),r.finish(14)
|
||
case 17:case"end":return r.stop()}},r,this,[[1,11,14,17]])})),!Array.prototype.flat){var arrayFlat=function i(e,t){return e.reduce(function(e,n){return t>0&&Array.isArray(n)?(Array.prototype.push.apply(e,i(n,t-1)),e):(e.push(n),e)},[])}
|
||
Array.prototype.flat=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:1
|
||
return arrayFlat(this,e)}}if(RegExp.escape||(RegExp.escape=function(e){return(e+"").replace(/[\\^$*+?.()|[\]{}]/g,"\\$&")}),navigator.storage&&!navigator.storage.estimate&&navigator.webkitTemporaryStorage&&navigator.webkitTemporaryStorage.queryUsageAndQuota&&(navigator.storage.estimate=function(){return new Promise(function(e,t){return navigator.webkitTemporaryStorage.queryUsageAndQuota(function(t,n){return e({usage:t,quota:n})},t)})}),"undefined"==typeof HTMLCollection||HTMLCollection.prototype[Symbol.iterator]||(HTMLCollection.prototype[Symbol.iterator]=function(){var e=this,t=0
|
||
return{next:function(){return t>=e.length?{done:!0}:{value:e.item(t++),done:!1}}}}),"undefined"==typeof NodeList||NodeList.prototype[Symbol.iterator]||(NodeList.prototype[Symbol.iterator]=function(){var e=this,t=0
|
||
return{next:function(){return t>=e.length?{done:!0}:{value:e.item(t++),done:!1}}}}),"undefined"==typeof DOMTokenList||DOMTokenList.prototype[Symbol.iterator]||(DOMTokenList.prototype[Symbol.iterator]=function(){var e=this,t=0
|
||
return{next:function(){return t>=e.length?{done:!0}:{value:e.item(t++),done:!1}}}}),"undefined"==typeof FileList||FileList.prototype[Symbol.iterator]||(FileList.prototype[Symbol.iterator]=function(){var e=this,t=0
|
||
return{next:function(){return t>=e.length?{done:!0}:{value:e.item(t++),done:!1}}}}),"undefined"==typeof TextEncoder&&(self.TextEncoder=function(){function e(){_classCallCheck(this,e),Object.defineProperty(this,"encoding",{value:"utf-8",writable:!1})}return _createClass(e,[{key:"encode",value:function(e){for(var t=e.length,n=-1,r=new Uint8Array(3*t),a=0,i=0,s=0;s!==t;){if(a=e.charCodeAt(s),s+=1,a>=55296&&56319>=a){if(s===t){r[n+=1]=239,r[n+=1]=191,r[n+=1]=189
|
||
break}if(i=e.charCodeAt(s),!(i>=56320&&57343>=i)){r[n+=1]=239,r[n+=1]=191,r[n+=1]=189
|
||
continue}if(a=1024*(a-55296)+i-56320+65536,s+=1,a>65535){r[n+=1]=240|a>>>18,r[n+=1]=128|a>>>12&63,r[n+=1]=128|a>>>6&63,r[n+=1]=128|63&a
|
||
continue}}127>=a?r[n+=1]=0|a:2047>=a?(r[n+=1]=192|a>>>6,r[n+=1]=128|63&a):(r[n+=1]=224|a>>>12,r[n+=1]=128|a>>>6&63,r[n+=1]=128|63&a)}return new Uint8Array(r.buffer.slice(0,n+1))}},{key:"toString",value:function(){return"[object TextEncoder]"}}]),e}(),TextEncoder[Symbol.toStringTag]="TextEncoder"),"undefined"==typeof TextDecoder){var persist=function(e){var t=e[Symbol.iterator]()
|
||
return _defineProperty({next:function(e){return t.next()}},Symbol.iterator,function(){return this})},readNext=function(e){var t=e.next()
|
||
if(t.done)throw Error("unexpected end of input")
|
||
if(0!=(192&t.value^128))throw Error("invalid byte")
|
||
return 63&t.value},_decoders=new Map
|
||
_decoders.set("utf-8",function(e,t){var n
|
||
if(e.buffer)n=new Uint8Array(e.buffer,e.byteOffset,e.byteLength)
|
||
else{if(!(n instanceof ArrayBuffer))throw Error("Invalid parameter")
|
||
n=new Uint8Array(e)}var r=persist(n),a=[]
|
||
try{var i,s=_createForOfIteratorHelper(r)
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value,u=void 0
|
||
if(127>o)u=127&o
|
||
else if(223>o)u=(31&o)<<6|readNext(r)
|
||
else if(239>o)u=(15&o)<<12|readNext(r)<<6|readNext(r)
|
||
else{if(!(247>o))throw Error("Invalid character")
|
||
u=(7&o)<<18|readNext(r)<<12|readNext(r)<<6|readNext(r)}a.push(String.fromCodePoint(u))}}catch(l){s.e(l)}finally{s.f()}}catch(c){if(t)throw c
|
||
a.push("<22>")}return a.join("")}),_decoders.set("utf8",_decoders.get("utf-8")),_decoders.set("utf-16le",function(e,t){throw Error("utf-16le decoder not implemented")}),self.TextDecoder=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"utf-8",n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}
|
||
_classCallCheck(this,e)
|
||
var r=_decoders.get(t)
|
||
if(!r)throw Error('TextDecoder polyfill does not support "'.concat(t,'"'))
|
||
Object.defineProperty(this,"fatal",{value:n.fatal===!0,writable:!1}),Object.defineProperty(this,"_decoder",{value:r,writable:!1}),Object.defineProperty(this,"encoding",{value:t,writable:!1})}return _createClass(e,[{key:"decode",value:function(e){return this._decoder(e,this.fatal)}},{key:"toString",value:function(){return"[object TextDecoder]"}}]),e}(),TextDecoder[Symbol.toStringTag]="TextDecoder"}void 0===self.isSecureContext&&(self.isSecureContext="https:"===location.protocol),void 0===self.globalThis&&(self.globalThis=self)
|
||
var assertFail=function(e){var t=_C5.GetCallStack(),n="Assertion failure: "+e+"\n\nStack trace:\n"+t
|
||
console.error(n)},_C5=self.C3
|
||
self.assert=function(e,t){e||assertFail(t)}
|
||
var _C6=self.C3
|
||
_C6.IsNumber=function(e){return"number"==typeof e},_C6.IsFiniteNumber=function(e){return _C6.IsNumber(e)&&isFinite(e)},_C6.RequireNumber=function(e){if(!_C6.IsNumber(e))throw new TypeError("expected number")},_C6.RequireOptionalNumber=function(e){_C6.IsNullOrUndefined(e)},_C6.RequireNumberInRange=function(e,t,n){if(!_C6.IsNumber(e)||isNaN(e)||t>e||e>n)throw new RangeError("number outside of range")},_C6.RequireAllNumber=function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
for(var r=0,a=t;r<a.length;r++){a[r]}},_C6.RequireFiniteNumber=function(e){if(!_C6.IsFiniteNumber(e))throw new TypeError("expected finite number")},_C6.RequireOptionalFiniteNumber=function(e){_C6.IsNullOrUndefined(e)},_C6.RequireAllFiniteNumber=function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
for(var r=0,a=t;r<a.length;r++){a[r]}},_C6.IsString=function(e){return"string"==typeof e},_C6.RequireString=function(e){if(!_C6.IsString(e))throw new TypeError("expected string")},_C6.RequireOptionalString=function(e){_C6.IsNullOrUndefined(e)},_C6.RequireAllString=function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
for(var r=0,a=t;r<a.length;r++){a[r]}},_C6.IsSimpleObject=function(e){if("object"!==_typeof(e)||null===e)return!1
|
||
var t=Object.getPrototypeOf(e)
|
||
return t?t.constructor===Object:null===t},_C6.RequireSimpleObject=function(e){if(!_C6.IsSimpleObject(e))throw new TypeError("expected simple object")},_C6.RequireOptionalSimpleObject=function(e){if(!_C6.IsNullOrUndefined(e)&&!_C6.IsSimpleObject(e))throw new TypeError("expected simple object")},_C6.IsObject=function(e){return"object"===_typeof(e)&&null!==e&&!Array.isArray(e)},_C6.RequireObject=function(e){if(!_C6.IsObject(e))throw new TypeError("expected object")},_C6.RequireOptionalObject=function(e){_C6.IsNullOrUndefined(e)},_C6.RequireAllObject=function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
for(var r=0,a=t;r<a.length;r++){a[r]}},_C6.IsFileLike=function(e){return _C6.IsInstanceOf(e,Blob)&&"string"==typeof e.name},_C6.RequireFileLike=function(e){if(!_C6.IsFileLike(e))throw new TypeError("expected file")},_C6.RequireOptionalFileLike=function(e){_C6.IsNullOrUndefined(e)},_C6.IsArray=function(e){return Array.isArray(e)},_C6.RequireArray=function(e){if(!_C6.IsArray(e))throw new TypeError("expected array")},_C6.RequireOptionalArray=function(e){_C6.IsNullOrUndefined(e)},_C6.RequireAllArray=function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
for(var r=0,a=t;r<a.length;r++){a[r]}},_C6.Is2DArray=function(e){return _C6.IsArray(e)?e.length?_C6.IsArray(e[0])?!0:!1:!0:!1},_C6.Require2DArray=function(e){if(!_C6.Is2DArray(e))throw new TypeError("expected 2d array")
|
||
var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(!_C6.IsArray(r))throw new TypeError("expected 2d array")}}catch(a){n.e(a)}finally{n.f()}},_C6.RequireOptional2DArray=function(e){_C6.IsNullOrUndefined(e)},_C6.IsFunction=function(e){return"function"==typeof e},_C6.RequireFunction=function(e,t){if(!_C6.IsFunction(e))throw new TypeError("expected function")
|
||
if(!_C6.IsNullOrUndefined(t)&&e!==t)throw new TypeError("expected same function reference")},_C6.RequireOptionalFunction=function(e){_C6.IsNullOrUndefined(e)},_C6.RequireAllFunction=function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
for(var r=0,a=t;r<a.length;r++){a[r]}},_C6.RequireAnyFunction=function(e){if(!_C6.IsFunction(e))throw new TypeError("expected function")
|
||
for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
if(!n.length)throw Error("missing comparison functions")
|
||
for(var a=0,i=n;a<i.length;a++){var s=i[a]
|
||
if(!_C6.IsNullOrUndefined(s)&&e===s)return}throw new TypeError("expected same function reference")},_C6.RequireOptionalAllFunction=function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
if(!_C6.IsNullOrUndefined(t))for(var r=0,a=t;r<a.length;r++){a[r]}},_C6.IsInstanceOf=function(e,t){return e instanceof t},_C6.IsInstanceOfAny=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
for(var a=0,i=n;a<i.length;a++){var s=i[a]
|
||
if(_C6.IsInstanceOf(e,s))return!0}return!1},_C6.RequireInstanceOf=function(e,t){if(!_C6.IsInstanceOf(e,t))throw new TypeError("unexpected type")},_C6.RequireOptionalInstanceOf=function(e,t){_C6.IsNullOrUndefined(e)},_C6.RequireAllInstanceOf=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
for(var a=0,i=n;a<i.length;a++){i[a]}},_C6.RequireAnyInstanceOf=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
if(!_C6.IsInstanceOfAny.apply(_C6,[e].concat(n)))throw new TypeError("unexpected type")},_C6.RequireAnyOptionalInstanceOf=function(e){if(!_C6.IsNullOrUndefined(e)){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
if(!_C6.IsInstanceOfAny.apply(_C6,[e].concat(n)))throw new TypeError("unexpected type")}},_C6.IsArrayOf=function(e,t){var n,r=_createForOfIteratorHelper(e)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(!_C6.IsInstanceOf(a,t))return!1}}catch(i){r.e(i)}finally{r.f()}return!0},_C6.IsArrayOfFiniteNumbers=function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(!_C6.IsFiniteNumber(r))return!1}}catch(a){n.e(a)}finally{n.f()}return!0},_C6.RequireArrayOf=function(e,t){var n,r=_createForOfIteratorHelper(e)
|
||
try{for(r.s();!(n=r.n()).done;){n.value}}catch(a){r.e(a)}finally{r.f()}},_C6.RequireOptionalArrayOf=function(e,t){if(!_C6.IsNullOrUndefined(e)){var n,r=_createForOfIteratorHelper(e)
|
||
try{for(r.s();!(n=r.n()).done;){n.value}}catch(a){r.e(a)}finally{r.f()}}},_C6.RequireArrayOfAny=function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){t.value}}catch(r){n.e(r)}finally{n.f()}},_C6.RequireOptionalArrayOfAny=function(e){if(!_C6.IsNullOrUndefined(e)){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){t.value}}catch(r){n.e(r)}finally{n.f()}}},_C6.IsDOMNode=function(e,t){return _C6.IsNullOrUndefined(e)||!_C6.IsString(e.nodeName)?!1:!t||_C6.equalsNoCase(e.nodeName,t)},_C6.RequireDOMNode=function(e,t){if(_C6.IsNullOrUndefined(e)||!_C6.IsString(e.nodeName))throw new TypeError("expected DOM node")
|
||
if(t&&!_C6.equalsNoCase(e.nodeName,t))throw new TypeError("expected DOM '".concat(t,"' node"))},_C6.RequireOptionalDOMNode=function(e,t){_C6.IsNullOrUndefined(e)},_C6.IsHTMLElement=function(e,t){return _C6.IsNullOrUndefined(e)||!_C6.IsString(e.tagName)?!1:!t||_C6.equalsNoCase(e.tagName,t)},_C6.RequireHTMLElement=function(e,t){if(_C6.IsNullOrUndefined(e)||!_C6.IsString(e.tagName))throw new TypeError("expected HTML element")
|
||
if(t&&!_C6.equalsNoCase(e.tagName,t))throw new TypeError("expected HTML '".concat(t,"' element"))},_C6.RequireOptionalHTMLElement=function(e,t){_C6.IsNullOrUndefined(e)},_C6.IsDrawable=function(e){return _C6.IsHTMLElement(e,"img")||_C6.IsHTMLElement(e,"canvas")||_C6.IsHTMLElement(e,"video")||"undefined"!=typeof OffscreenCanvas&&e instanceof OffscreenCanvas||"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap},_C6.RequireDrawable=function(e){if(!_C6.IsDrawable(e))throw new TypeError("expected drawable")},_C6.RequireOptionalDrawable=function(e){_C6.IsNullOrUndefined(e)},_C6.IsDrawableOrImageData=function(e){return e instanceof ImageData?!0:_C6.IsDrawable(e)},_C6.RequireDrawableOrImageData=function(e){if(!_C6.IsDrawableOrImageData(e))throw new TypeError("expected drawable or image data")},_C6.RequireOptionalDrawableOrImageData=function(e){if(!_C6.IsNullOrUndefined(e)&&!_C6.IsDrawableOrImageData(e))throw new TypeError("expected drawable or image data")},_C6.IsStringLike=function(e){return"string"==typeof e||e instanceof _C6.HtmlString||e instanceof _C6.BBString},_C6.RequireStringLike=function(e){if(!_C6.IsStringLike(e))throw new TypeError("expected string-like")},_C6.RequireOptionalStringLike=function(e){_C6.IsNullOrUndefined(e)},_C6.RequireAllStringLike=function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
for(var r=0,a=t;r<a.length;r++){a[r]}},_C6.RequireOverride=function(){throw Error("must be overridden")},_C6.NotYetImplemented=function(){throw Error("not yet implemented")},_C6.IsDefined=function(e){var t=e
|
||
if(void 0===t)return!1
|
||
for(var n=arguments.length,r=Array(n>1?n-1:0),a=1;n>a;a++)r[a-1]=arguments[a]
|
||
for(var i=0,s=r;i<s.length;i++){var o=s[i]
|
||
if(void 0===t[o])return!1
|
||
t=t[o]}return!0},_C6.IsNullOrUndefined=function(e){return void 0===e||null===e},_C6.AreArrayElementsOfSameType=function(e){var t,n=e[0].constructor,r=_createForOfIteratorHelper(e)
|
||
try{for(r.s();!(t=r.n()).done;){var a=t.value
|
||
if(a.constructor!==n)return!1}}catch(i){r.e(i)}finally{r.f()}return n},_C6.AreArrayElementsOfType=function(e,t){var n,r=_createForOfIteratorHelper(e)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(!(a instanceof t))return!1}}catch(i){r.e(i)}finally{r.f()}return!0}
|
||
var TypedArray=Object.getPrototypeOf(Uint8Array)
|
||
_C6.IsTypedArray=function(e){return _C6.IsInstanceOf(e,TypedArray)},_C6.RequireTypedArray=function(e){},_C6.WeakRequireTypedArray=function(e){_C6.WeakRequireInstanceOf(e,TypedArray)},_C6.WeakRequireAnyInstanceOf=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
if(!_C6.WeakIsAnyInstanceOf.apply(_C6,[e].concat(n)))throw new TypeError("unexpected type")},_C6.WeakIsAnyInstanceOf=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
for(var a=0,i=n;a<i.length;a++){var s=i[a]
|
||
if(_C6.WeakIsInstanceOf(e,s))return!0}return!1},_C6.WeakRequireInstanceOf=function(e,t){if(!_C6.WeakIsInstanceOf(e,t))throw new TypeError("unexpected type")},_C6.WeakIsInstanceOf=function(e,t){for(;e=Object.getPrototypeOf(e);)if(e.constructor.name===t.name)return!0
|
||
return!1}
|
||
var isValidTypeChange=function(e,t){var n=_C7.getType(e),r=_C7.getType(t)
|
||
return"null"===n||"null"===r?!0:"undefined"===n||"undefined"===r?!1:n===r},logDefendedObjectWarning=function(e){console.warn("[Defence] "+e+" @",_C7.GetCallStack())},CheckDefendedObjectsUsedCorrectly=function(){if(checkRafId=-1,ctorObjectToProxy.size>0||ctorProxyToObject.size>0){var e=new Set(_toConsumableArray(ctorObjectToProxy.keys()).map(function(e){return _C7.getName(e)})),t=_toConsumableArray(e).join(",")
|
||
console.warn("An object derived from DefendedBase was not protected with debugDefend(). This will disable some checks. See the coding guidelines! Possible affected class names: ".concat(t)),ctorObjectToProxy.clear(),ctorProxyToObject.clear()}},getObjectPropertySet=function(e){var t=new Set
|
||
for(var n in e)t.add(n)
|
||
return t},VerifyObjectPropertiesConsistent=function(e,t){var n=getObjectPropertySet(t),r=typeProperties.get(e)
|
||
if(r){var a,i=[],s=_createForOfIteratorHelper(r.values())
|
||
try{for(s.s();!(a=s.n()).done;){var o=a.value
|
||
n.has(o)?n["delete"](o):i.push(o)}}catch(u){s.e(u)}finally{s.f()}_C7.appendArray(i,_toConsumableArray(n)),i.length&&console.warn("[Defence] '".concat(_C7.getName(e),"' constructor creates inconsistent properties: ").concat(i.join(", ")))}else typeProperties.set(e,n)},_C7=self.C3
|
||
_C7.GetCallStack=function(){return Error().stack},_C7.Debugger=function(){},_C7.cast=function(e,t){return e&&e instanceof t?e:null},_C7.getName=function(e){return void 0===e?"undefined":null===e?"null":"boolean"==typeof e?"<boolean>":_C7.IsNumber(e)?"<number>":_C7.IsString(e)?"<string>":_C7.IsArray(e)?"<array>":"symbol"===_typeof(e)?"<"+e+">":_C7.IsFunction(e)?e.name&&"Function"!==e.name?e.name:"<anonymous function>":"object"===_typeof(e)?e.constructor&&e.constructor.name&&"Object"!==e.constructor.name?e.constructor.name:"<anonymous object>":"<unknown>"},_C7.getType=function(e){return null===e?"null":Array.isArray(e)?"array":_typeof(e)},_C7.range=_regeneratorRuntime().mark(function s(e,t){var n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(isFinite(Math.abs(e-t))){a.next=2
|
||
break}throw Error("Invalid parameters")
|
||
case 2:if(!(e>t)){a.next=12
|
||
break}n=e-1
|
||
case 4:if(!(n>=t)){a.next=10
|
||
break}return a.next=7,n
|
||
case 7:n--,a.next=4
|
||
break
|
||
case 10:a.next=19
|
||
break
|
||
case 12:r=e
|
||
case 13:if(!(t>r)){a.next=19
|
||
break}return a.next=16,r
|
||
case 16:r++,a.next=13
|
||
break
|
||
case 19:case"end":return a.stop()}},s)})
|
||
var ctorObjectToProxy=new Map,ctorProxyToObject=new Map,proxyToObject=new WeakMap,releasedObjects=new WeakMap
|
||
_C7.DefendHandler={}
|
||
var VALID_GET_MISSING_KEYS=new Set(["then","splice"])
|
||
_C7.DefendHandler.get=function(e,t){return t in e||"symbol"===_typeof(t)||VALID_GET_MISSING_KEYS.has(t)||logDefendedObjectWarning("Accessed missing property '".concat(t,"' from defended object '").concat(_C7.getName(e),"', returning undefined")),releasedObjects.has(e)&&"symbol"!==_typeof(t)&&!VALID_GET_MISSING_KEYS.has(t)&&logDefendedObjectWarning("Accessed property '".concat(t,"' on a released object '").concat(_C7.getName(e),"'\nObject was originally released at: ").concat(releasedObjects.get(e),")\nCall stack at access: ")),e[t]},_C7.DefendHandler.set=function(e,t,n){return t in e||ctorObjectToProxy.has(e)||logDefendedObjectWarning("Set non-existent property '".concat(t,"' to '").concat(n,"' on defended object '").concat(_C7.getName(e),"'")),isValidTypeChange(e[t],n)||ctorObjectToProxy.has(e)||logDefendedObjectWarning("Set '".concat(_C7.getType(e[t]),"' property '").concat(t,"' to type '").concat(_C7.getType(n),"' on defended object '").concat(_C7.getName(e),"'")),releasedObjects.has(e)&&logDefendedObjectWarning("Set property '".concat(t,"' on a released object '").concat(_C7.getName(e),"'\nObject was originally released at: ").concat(releasedObjects.get(e),")\nCall stack at access: ")),e[t]=n,!0},_C7.DefendHandler.deleteProperty=function(e,t){throw new ReferenceError("Cannot delete property '".concat(t,"' from defended object '").concat(_C7.getName(e),"'"))},_C7.DefendHandler.defineProperty=function(e,t,n){throw new ReferenceError("Cannot define property '".concat(t,"' on defended object '").concat(_C7.getName(e),"'"))},_C7.DefendHandler.enumerate=function(e){throw new ReferenceError("Cannot enumerate defended object '".concat(_C7.getName(e),"'"))}
|
||
var checkRafId=-1
|
||
_C7.DefendedBase=_createClass(function o(){if(_classCallCheck(this,o),_C7.isDebugDefend&&_C7.Supports.Proxies){var e=this instanceof o?this.constructor:void 0,t=Object.create(e.prototype),n=new Proxy(t,_C7.DefendHandler)
|
||
return ctorObjectToProxy.set(t,n),ctorProxyToObject.set(n,t),proxyToObject.set(n,t),-1===checkRafId&&(checkRafId=requestAnimationFrame(CheckDefendedObjectsUsedCorrectly)),n}}),_C7.debugDefend=function(e){if(_C7.isDebugDefend&&_C7.Supports.Proxies&&e instanceof _C7.DefendedBase){if(!ctorProxyToObject.has(e))return e
|
||
var t=ctorProxyToObject.get(e)
|
||
return ctorProxyToObject["delete"](e),ctorObjectToProxy["delete"](t),e}return _C7.isDebug?Object.seal(e):e},_C7.New=function(e){var t
|
||
try{for(var n=arguments.length,r=Array(n>1?n-1:0),a=1;n>a;a++)r[a-1]=arguments[a]
|
||
t=_construct(e,r)}catch(i){throw ctorProxyToObject.clear(),ctorObjectToProxy.clear(),i}return _C7.isDebugDefend&&VerifyObjectPropertiesConsistent(e,t),_C7.debugDefend(t)},_C7.Release=function(e){var t=proxyToObject.get(e)
|
||
t&&releasedObjects.set(t,_C7.GetCallStack())},_C7.WasReleased=function(e){var t=proxyToObject.get(e)
|
||
return t?!!releasedObjects.get(t):!1}
|
||
var typeProperties=new Map
|
||
_C7.PerfMark=function(){function e(t){_classCallCheck(this,e),this._name="",t&&this.start(t)}return _createClass(e,[{key:"start",value:function(e){this._name=e,performance.mark(this._name+"-Start")}},{key:"end",value:function(){performance.mark(this._name+"-End"),performance.measure(this._name,this._name+"-Start",this._name+"-End")}},{key:"next",value:function(e){this.end(),this._name=e,performance.mark(this._name+"-Start")}}]),e}()
|
||
var isNegativeZero=function(e){return 0===e&&0>1/e},_C8=self.C3,TWO_PI=2*Math.PI,D_TO_R=Math.PI/180,R_TO_D=180/Math.PI
|
||
_C8.wrap=function(e,t,n){if(e=Math.floor(e),t=Math.floor(t),n=Math.floor(n),t>e){var r=n-(t-e)%(n-t)
|
||
return r===n?0:r}return t+(e-t)%(n-t)},_C8.mapToRange=function(e,t,n,r,a){return(e-t)*(a-r)/(n-t)+r},_C8.normalize=function(e,t,n){return(e-t)/(n-t)},_C8.clamp=function(e,t,n){return t>e?t:e>n?n:e},_C8.clampAngle=function(e){return e%=TWO_PI,0>e&&(e+=TWO_PI),e},_C8.toRadians=function(e){return e*D_TO_R},_C8.toDegrees=function(e){return e*R_TO_D},_C8.distanceTo=function(e,t,n,r){return Math.hypot(n-e,r-t)},_C8.distanceSquared=function(e,t,n,r){var a=n-e,i=r-t
|
||
return a*a+i*i},_C8.angleTo=function(e,t,n,r){return Math.atan2(r-t,n-e)},_C8.angleDiff=function(e,t){if(e===t)return 0
|
||
var n=Math.sin(e),r=Math.cos(e),a=Math.sin(t),i=Math.cos(t),s=n*a+r*i
|
||
return s>=1?0:-1>=s?Math.PI:Math.acos(s)},_C8.angleRotate=function(e,t,n){var r=Math.sin(e),a=Math.cos(e),i=Math.sin(t),s=Math.cos(t)
|
||
return Math.acos(r*i+a*s)>n?a*i-r*s>0?_C8.clampAngle(e+n):_C8.clampAngle(e-n):_C8.clampAngle(t)},_C8.angleClockwise=function(e,t){var n=Math.sin(e),r=Math.cos(e),a=Math.sin(t),i=Math.cos(t)
|
||
return 0>=r*a-n*i},_C8.angleLerp=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=_C8.angleDiff(e,t),i=TWO_PI*r
|
||
return _C8.angleClockwise(t,e)?_C8.clampAngle(e+(a+i)*n):_C8.clampAngle(e-(a+i)*n)},_C8.angleLerpClockwise=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=_C8.angleDiff(e,t),i=TWO_PI*r
|
||
return _C8.angleClockwise(t,e)?_C8.clampAngle(e+(a+i)*n):_C8.clampAngle((TWO_PI-a+i)*n)},_C8.angleLerpAntiClockwise=function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=_C8.angleDiff(e,t),i=TWO_PI*r
|
||
return _C8.angleClockwise(t,e)?_C8.clampAngle((-TWO_PI+a-i)*n):_C8.clampAngle(e-(a+i)*n)},_C8.lerp=function(e,t,n){return e+n*(t-e)},_C8.unlerp=function(e,t,n){return e===t?0:(n-e)/(t-e)},_C8.relerp=function(e,t,n,r,a){return _C8.lerp(r,a,_C8.unlerp(e,t,n))},_C8.qarp=function(e,t,n,r){return _C8.lerp(_C8.lerp(e,t,r),_C8.lerp(t,n,r),r)},_C8.cubic=function(e,t,n,r,a){return _C8.lerp(_C8.qarp(e,t,n,a),_C8.qarp(t,n,r,a),a)},_C8.cosp=function(e,t,n){return(e+t+(e-t)*Math.cos(n*Math.PI))/2},_C8.isPOT=function(e){return e>0&&0===(e-1&e)},_C8.nextHighestPowerOfTwo=function(e){--e
|
||
for(var t=1;32>t;t<<=1)e|=e>>t
|
||
return e+1},_C8.roundToNearestFraction=function(e,t){return Math.round(e*t)/t},_C8.floorToNearestFraction=function(e,t){return Math.floor(e*t)/t},_C8.round6dp=function(e){return Math.round(1e6*e)/1e6},_C8.toFixed=function(e,t){for(var n=e.toFixed(t),r=n.length-1;r>=0&&"0"===n.charAt(r);--r);return r>=0&&"."===n.charAt(r)&&--r,0>r?n:n.substr(0,r+1)},_C8.PackRGB=function(e,t,n){return _C8.clamp(e,0,255)|_C8.clamp(t,0,255)<<8|_C8.clamp(n,0,255)<<16}
|
||
var ALPHAEX_SHIFT=1024,ALPHAEX_MAX=1023,RGBEX_SHIFT=16384,RGBEX_MAX=8191,RGBEX_MIN=-8192
|
||
_C8.PackRGBAEx=function(e,t,n,r){return e=_C8.clamp(Math.floor(1024*e),RGBEX_MIN,RGBEX_MAX),t=_C8.clamp(Math.floor(1024*t),RGBEX_MIN,RGBEX_MAX),n=_C8.clamp(Math.floor(1024*n),RGBEX_MIN,RGBEX_MAX),r=_C8.clamp(Math.floor(r*ALPHAEX_MAX),0,ALPHAEX_MAX),0>e&&(e+=RGBEX_SHIFT),0>t&&(t+=RGBEX_SHIFT),0>n&&(n+=RGBEX_SHIFT),-(e*RGBEX_SHIFT*RGBEX_SHIFT*ALPHAEX_SHIFT+t*RGBEX_SHIFT*ALPHAEX_SHIFT+n*ALPHAEX_SHIFT+r)},_C8.PackRGBEx=function(e,t,n){return _C8.PackRGBAEx(e,t,n,1)},_C8.GetRValue=function(e){if(e>=0)return(255&e)/255
|
||
var t=Math.floor(-e/(RGBEX_SHIFT*RGBEX_SHIFT*ALPHAEX_SHIFT))
|
||
return t>RGBEX_MAX&&(t-=RGBEX_SHIFT),t/1024},_C8.GetGValue=function(e){if(e>=0)return((65280&e)>>8)/255
|
||
var t=Math.floor(-e%(RGBEX_SHIFT*RGBEX_SHIFT*ALPHAEX_SHIFT)/(RGBEX_SHIFT*ALPHAEX_SHIFT))
|
||
return t>RGBEX_MAX&&(t-=RGBEX_SHIFT),t/1024},_C8.GetBValue=function(e){if(e>=0)return((16711680&e)>>16)/255
|
||
var t=Math.floor(-e%(RGBEX_SHIFT*ALPHAEX_SHIFT)/ALPHAEX_SHIFT)
|
||
return t>RGBEX_MAX&&(t-=RGBEX_SHIFT),t/1024},_C8.GetAValue=function(e){if(isNegativeZero(e))return 0
|
||
if(e>=0)return 1
|
||
var t=Math.floor(-e%ALPHAEX_SHIFT)
|
||
return t/ALPHAEX_MAX},_C8.greatestCommonDivisor=function(e,t){for(e=Math.floor(e),t=Math.floor(t);0!==t;){var n=t
|
||
t=e%t,e=n}return e}
|
||
var COMMON_ASPECT_RATIOS=[[3,2],[4,3],[5,4],[5,3],[6,5],[14,9],[16,9],[16,10],[21,9]]
|
||
_C8.getAspectRatio=function(e,t){if(e=Math.floor(e),t=Math.floor(t),e===t)return[1,1]
|
||
var n,r=_createForOfIteratorHelper(COMMON_ASPECT_RATIOS)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value,i=e/a[0]*a[1]
|
||
if(Math.abs(t-i)<1)return a.slice(0)
|
||
if(i=e/a[1]*a[0],Math.abs(t-i)<1)return[a[1],a[0]]}}catch(s){r.e(s)}finally{r.f()}var o=_C8.greatestCommonDivisor(e,t)
|
||
return[e/o,t/o]},_C8.segmentsIntersect=function(e,t,n,r,a,i,s,o){var u=Math.min(e,n),l=Math.max(e,n),c=Math.min(a,s),h=Math.max(a,s)
|
||
if(c>l||u>h)return!1
|
||
var _=Math.min(t,r),f=Math.max(t,r),d=Math.min(i,o),p=Math.max(i,o)
|
||
if(d>f||_>p)return!1
|
||
var v=a-e+s-n,m=i-t+o-r,y=n-e,g=r-t,C=s-a,S=o-i,k=Math.abs(g*C-S*y),I=C*m-S*v
|
||
if(Math.abs(I)>k)return!1
|
||
var T=y*m-g*v
|
||
return Math.abs(T)<=k},_C8.segmentsIntersectPreCalc=function(e,t,n,r,a,i,s,o,u,l,c,h){var _=Math.min(u,c),f=Math.max(u,c)
|
||
if(_>i||a>f)return!1
|
||
var d=Math.min(l,h),p=Math.max(l,h)
|
||
if(d>o||s>p)return!1
|
||
var v=u-e+c-n,m=l-t+h-r,y=n-e,g=r-t,C=c-u,S=h-l,k=Math.abs(g*C-S*y),I=C*m-S*v
|
||
if(Math.abs(I)>k)return!1
|
||
var T=y*m-g*v
|
||
return Math.abs(T)<=k},_C8.segmentIntersectsQuad=function(e,t,n,r,a){var i=Math.min(e,n),s=Math.max(e,n),o=Math.min(t,r),u=Math.max(t,r),l=a.getTlx(),c=a.getTly(),h=a.getTrx(),_=a.getTry(),f=a.getBrx(),d=a.getBry(),p=a.getBlx(),v=a.getBly()
|
||
return _C8.segmentsIntersectPreCalc(e,t,n,r,i,s,o,u,l,c,h,_)||_C8.segmentsIntersectPreCalc(e,t,n,r,i,s,o,u,h,_,f,d)||_C8.segmentsIntersectPreCalc(e,t,n,r,i,s,o,u,f,d,p,v)||_C8.segmentsIntersectPreCalc(e,t,n,r,i,s,o,u,p,v,l,c)},_C8.segmentIntersectsAnyN=function(e,t,n,r,a){for(var i=Math.min(e,n),s=Math.max(e,n),o=Math.min(t,r),u=Math.max(t,r),l=0,c=a.length-4;c>=l;l+=2)if(_C8.segmentsIntersectPreCalc(e,t,n,r,i,s,o,u,a[l],a[l+1],a[l+2],a[l+3]))return!0
|
||
return _C8.segmentsIntersectPreCalc(e,t,n,r,i,s,o,u,a[l],a[l+1],a[0],a[1])}
|
||
var NO_HIT=2,PADDING=1e-6
|
||
_C8.rayIntersect=function(e,t,n,r,a,i,s,o){var u=n-e,l=r-t,c=s-a,h=o-i,_=u*h-l*c
|
||
if(0===_)return NO_HIT
|
||
var f=((t-r)*(s-e)+u*(o-t))/_
|
||
return f>0&&1+PADDING>f?(h*(s-e)+(a-s)*(o-t))/_:NO_HIT},_C8.rayIntersectExtended=function(e,t,n,r,a,i,s,o,u){var l=(s-a)*u,c=(o-i)*u
|
||
return _C8.rayIntersect(e,t,n,r,a-l,i-c,s+l,o+c)},_C8.isPointInTriangleInclusive=function(e,t,n,r,a,i,s,o){var u=a-n,l=i-r,c=s-n,h=o-r,_=e-n,f=t-r,d=u*u+l*l,p=u*c+l*h,v=u*_+l*f,m=c*c+h*h,y=c*_+h*f,g=1/(d*m-p*p),C=(m*v-p*y)*g,S=(d*y-p*v)*g
|
||
return C>=0&&S>=0&&1>=C+S},_C8.triangleCartesianToBarycentric=function(e,t,n,r,a,i,s,o){var u=a-n,l=i-r,c=s-n,h=o-r,_=e-n,f=t-r,d=u*u+l*l,p=u*c+l*h,v=c*c+h*h,m=_*u+f*l,y=_*c+f*h,g=d*v-p*p,C=(v*m-p*y)/g,S=(d*y-p*m)/g,k=1-C-S
|
||
return[k,C,S]},_C8.triangleBarycentricToCartesian=function(e,t,n,r,a,i,s,o,u){return[e*r+t*i+n*o,e*a+t*s+n*u]}
|
||
var _C9=self.C3,mainDocument=null,baseHref=""
|
||
if("undefined"!=typeof document){mainDocument=document
|
||
var baseElem=document.querySelector("base")
|
||
baseHref=baseElem&&baseElem.hasAttribute("href")?baseElem.getAttribute("href"):"",baseHref&&(baseHref.startsWith("/")&&(baseHref=baseHref.substr(1)),baseHref.endsWith("/")||(baseHref+="/"))}_C9.GetBaseHref=function(){return baseHref},_C9.GetBaseURL=function(){if(!mainDocument)return""
|
||
var e=mainDocument.location
|
||
return _C9.GetPathFromURL(e.origin+e.pathname)+baseHref},_C9.GetPathFromURL=function(e){if(!e.length)return e
|
||
if(e.endsWith("/")||e.endsWith("\\"))return e
|
||
var t=Math.max(e.lastIndexOf("/"),e.lastIndexOf("\\"))
|
||
return-1===t?"":e.substr(0,t+1)},_C9.GetFilenameFromURL=function(e){if(!e.length)return e
|
||
if(e.endsWith("/")||e.endsWith("\\"))return""
|
||
var t=Math.max(e.lastIndexOf("/"),e.lastIndexOf("\\"))
|
||
return-1===t?e:e.substr(t+1)},_C9.DataTransferHasFiles=function(e){if(e.types)for(var t=0;t<e.types.length;t++)if("Files"===e.types[t]||"application/x-c3-file"===e.types[t])return!0
|
||
return!1},_C9.DataTransferFilterFiles=function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=Array.from(e.files).filter(function(e){return 0!==e.size}).filter(function(e){return t(e)}).map(function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function t(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,_C9.CloneFile(e)
|
||
case 3:return t.abrupt("return",t.sent)
|
||
case 6:return t.prev=6,t.t0=t["catch"](0),t.abrupt("return",null)
|
||
case 9:case"end":return t.stop()}},t,null,[[0,6]])}))
|
||
return function(t){return e.apply(this,arguments)}}()),n.next=3,Promise.all(r)
|
||
case 3:return a=n.sent,n.abrupt("return",a.filter(function(e){return e}))
|
||
case 5:case"end":return n.stop()}},n)}))
|
||
return e}(),_C9.IsFileAnImage=function(e){if(e.type)return-1!==e.type.search(/image\/.*/)
|
||
var t=_C9.MimeType.GetForFileExtension(_C9.GetFileExtension(e.name)).GetString()
|
||
return-1!==t.search(/image\/.*/)},_C9.IsFileAnSVG=function(e){return"image/svg+xml"===e.type},_C9.IsFileAMultiImageContainer=function(e){return e.type?_C9.MimeType.Get(e.type).IsAnimatedImage():_C9.MimeType.GetForFileExtension(_C9.GetFileExtension(e.name)).IsAnimatedImage()},_C9.GetFileExtension=function(e){var t=e.lastIndexOf(".")
|
||
return 1>t?"":e.substr(t)},_C9.GetFileNamePart=function(e){var t=e.lastIndexOf(".")
|
||
return 1>t?e:e.substr(0,t)},_C9.NormalizeFileSeparator=function(e){return e.replace(/\\/g,"/")},_C9.ParseFilePath=function(e){e=_C9.NormalizeFileSeparator(e)
|
||
var t=/^\w:\//.exec(e)
|
||
t?(t=t[0],e=e.slice(3),"/"!==e[0]&&(e="/"+e)):t="",e=e.replace(/\/{2,}/g,"/"),e.length>1&&"/"===e.slice(-1)&&(e=e.slice(0,-1))
|
||
var n,r=e.lastIndexOf("/")+1,a="",i=e,s=""
|
||
r>0&&(a=e.slice(0,r),i=e.slice(r)),n=i
|
||
var o=i.lastIndexOf(".")
|
||
o>0&&(s=i.slice(o),n=i.slice(0,-s.length))
|
||
var u=t+a+i
|
||
return{dir:a,base:i,name:n,root:t,ext:s,full:u}},_C9.Wait=function(e,t){return new Promise(function(n,r){self.setTimeout(n,e,t)})},_C9.swallowException=function(e){try{e()}catch(t){_C9.isDebug&&console.warn("Swallowed exception: ",t)}},_C9.noop=function(){},_C9.equalsNoCase=function(e,t){return"string"!=typeof e||"string"!=typeof t?!1:e===t?!0:(e=e.normalize(),t=t.normalize(),e.length!==t.length?!1:e.toLowerCase()===t.toLowerCase())},_C9.equalsCase=function(e,t){return"string"!=typeof e||"string"!=typeof t?!1:e===t?!0:e.normalize()===t.normalize()},_C9.typedArraySet16=function(e,t,n){e[n++]=t[0],e[n++]=t[1],e[n++]=t[2],e[n++]=t[3],e[n++]=t[4],e[n++]=t[5],e[n++]=t[6],e[n++]=t[7],e[n++]=t[8],e[n++]=t[9],e[n++]=t[10],e[n++]=t[11],e[n++]=t[12],e[n++]=t[13],e[n++]=t[14],e[n]=t[15]},_C9.truncateArray=function(e,t){e.length=t},_C9.clearArray=function(e){e&&0!==e.length&&_C9.truncateArray(e,0)},_C9.clear2DArray=function(e){if(e){for(var t=0;t<e.length;t++){var n=e[t]
|
||
_C9.truncateArray(n,0)}_C9.truncateArray(e,0)}},_C9.extendArray=function(e,t,n){t=0|t
|
||
var r=e.length
|
||
if(!(r>=t))for(var a=r;t>a;++a)e.push(n)},_C9.resizeArray=function(e,t,n){t=0|t
|
||
var r=e.length
|
||
r>t?_C9.truncateArray(e,t):t>r&&_C9.extendArray(e,t,n)},_C9.shallowAssignArray=function(e,t){_C9.clearArray(e),_C9.appendArray(e,t)},_C9.appendArray=function(e,t){if(t.length<1e4)e.push.apply(e,_toConsumableArray(t))
|
||
else for(var n=0,r=t.length;r>n;++n)e.push(t[n])},_C9.arrayRemove=function(e,t){if(t=Math.floor(t),!(0>t||t>=e.length)){for(var n=e.length-1,r=t;n>r;++r)e[r]=e[r+1]
|
||
_C9.truncateArray(e,n)}},_C9.arrayFindRemove=function(e,t){var n=e.indexOf(t)
|
||
n>=0&&e.splice(n,1)},_C9.arraysEqual=function(e,t){var n=e.length
|
||
if(t.length!==n)return!1
|
||
for(var r=0;n>r;++r)if(e[r]!==t[r])return!1
|
||
return!0},_C9.arrayFilterOut=function(e,t){for(var n=[],r=0,a=0,i=e.length;i>a;++a){var s=e[a]
|
||
t(s)?n.push(s):(e[r]=s,++r)}return _C9.truncateArray(e,r),n},_C9.arrayRemoveAllInSet=function(e,t){for(var n=e.length,r=0,a=0,i=e.length;i>a;++a){var s=e[a]
|
||
t.has(s)||(e[r++]=s)}return _C9.truncateArray(e,r),n-r},_C9.isArrayIndexInBounds=function(e,t){return e!==Math.floor(e)?!1:e>=0&&e<t.length},_C9.validateArrayIndex=function(e,t){if(!_C9.isArrayIndexInBounds(e,t))throw new RangeError("array index out of bounds")},_C9.cloneArray=function(e){return e.slice()},_C9.deepCloneArray=function(e,t){var n,r=[],a=_createForOfIteratorHelper(e)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
if(_C9.IsObject(i)){var s=t(i)
|
||
if(!s)throw Error("missing clone")
|
||
if(s.constructor!==i.constructor)throw Error("object is not a clone")
|
||
r.push(s)}else _C9.IsArray(i)?r.push(_C9.deepCloneArray(i,t)):r.push(i)}}catch(o){a.e(o)}finally{a.f()}return r},_C9.clone2DArray=function(e){var t,n=[],r=_createForOfIteratorHelper(e)
|
||
try{for(r.s();!(t=r.n()).done;){var a=t.value
|
||
n.push(a.slice())}}catch(i){r.e(i)}finally{r.f()}return n},_C9.mergeSets=function(e,t){return new Set([].concat(_toConsumableArray(e),_toConsumableArray(t)))},_C9.mergeSetsInPlace=function(e,t){var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
e.add(a)}}catch(i){r.e(i)}finally{r.f()}return e},_C9.first=function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
return r}}catch(a){n.e(a)}finally{n.f()}return null},_C9.xor=function(e,t){return!e!=!t},_C9.compare=function(e,t,n){switch(t){case 0:return e===n
|
||
case 1:return e!==n
|
||
case 2:return n>e
|
||
case 3:return n>=e
|
||
case 4:return e>n
|
||
case 5:return e>=n
|
||
default:return!1}},_C9.hasAnyOwnProperty=function(e){for(var t in e)if(e.hasOwnProperty(t))return!0
|
||
return!1},_C9.PromiseAllWithProgress=function(e,t){return e.length?new Promise(function(n,r){for(var a=[],i=0,s=!1,o=function(o,u){a.push(void 0),e[o].then(function(r){s||(a[o]=r,++i,i===e.length?n(a):t(i,e.length))})["catch"](function(e){s=!0,r(e)})},u=0,l=e.length;l>u;++u)o(u,l)}):Promise.resolve([])}
|
||
var memoryCallbacks=[]
|
||
_C9.AddLibraryMemoryCallback=function(e){memoryCallbacks.push(e)},_C9.GetEstimatedLibraryMemoryUsage=function(){var e,t=0,n=_createForOfIteratorHelper(memoryCallbacks)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value,a=r()
|
||
t+=a}}catch(i){n.e(i)}finally{n.f()}return Math.floor(t)}
|
||
var nextTaskId=1,activeTaskIds=new Map,taskMessageChannel=new MessageChannel
|
||
taskMessageChannel.port2.onmessage=function(e){var t=e.data,n=activeTaskIds.get(t)
|
||
activeTaskIds["delete"](t),n&&n(e.timeStamp)},_C9.RequestUnlimitedAnimationFrame=function(e){var t=nextTaskId++
|
||
return activeTaskIds.set(t,e),taskMessageChannel.port1.postMessage(t),t},_C9.CancelUnlimitedAnimationFrame=function(e){activeTaskIds["delete"](e)},_C9.PostTask=_C9.RequestUnlimitedAnimationFrame,_C9.WaitForNextTask=function(){return new Promise(function(e){return _C9.PostTask(e)})}
|
||
var activeRPAFids=new Set
|
||
_C9.RequestPostAnimationFrame=function(e){var t=self.requestAnimationFrame(function(){var n=_asyncToGenerator(_regeneratorRuntime().mark(function r(n){return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,_C9.WaitForNextTask()
|
||
case 2:if(activeRPAFids.has(t)){r.next=4
|
||
break}return r.abrupt("return")
|
||
case 4:activeRPAFids["delete"](t),e(n)
|
||
case 6:case"end":return r.stop()}},r)}))
|
||
return function(e){return n.apply(this,arguments)}}())
|
||
return activeRPAFids.add(t),t},_C9.CancelPostAnimationFrame=function(e){activeRPAFids.has(e)&&(self.cancelAnimationFrame(e),activeRPAFids["delete"](e))}
|
||
var _C10=self.C3
|
||
_C10.IsAbsoluteURL=function(e){return/^(?:[a-z]+:)?\/\//.test(e)||"data:"===e.substr(0,5)||"blob:"===e.substr(0,5)},_C10.IsRelativeURL=function(e){return!_C10.IsAbsoluteURL(e)},_C10.ThrowIfNotOk=function(e){if(!e.ok)throw Error("fetch '".concat(e.url,"' response returned ").concat(e.status," ").concat(e.statusText))},_C10.FetchOk=function(e,t){return fetch(e,t).then(function(e){return _C10.ThrowIfNotOk(e),e})},_C10.FetchText=function(e){return _C10.FetchOk(e).then(function(e){return e.text()})},_C10.FetchJson=function(e){return _C10.FetchOk(e).then(function(e){return e.json()})},_C10.FetchBlob=function(e){return _C10.FetchOk(e).then(function(e){return e.blob()})},_C10.FetchArrayBuffer=function(e){return _C10.FetchOk(e).then(function(e){return e.arrayBuffer()})},_C10.FetchImage=function(e){return new Promise(function(t,n){var r=new Image
|
||
r.onload=function(){return t(r)},r.onerror=function(e){return n(e)},r.src=e})},_C10.BlobToArrayBuffer=function(e){return"function"==typeof e.arrayBuffer?e.arrayBuffer():new Promise(function(t,n){var r=new FileReader
|
||
r.onload=function(){return t(r.result)},r.onerror=function(){return n(r.error)},r.readAsArrayBuffer(e)})},_C10.BlobToString=function(e){return"function"==typeof e.text?e.text():new Promise(function(t,n){var r=new FileReader
|
||
r.onload=function(){return t(r.result)},r.onerror=function(){return n(r.error)},r.readAsText(e)})},_C10.BlobToJson=function(e){return _C10.BlobToString(e).then(function(e){return JSON.parse(e)})},_C10.BlobToImage=function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return r=URL.createObjectURL(e),n.prev=1,n.next=4,_C10.FetchImage(r)
|
||
case 4:if(a=n.sent,URL.revokeObjectURL(r),r="",!t||"function"!=typeof a.decode){n.next=10
|
||
break}return n.next=10,a.decode()
|
||
case 10:return n.abrupt("return",a)
|
||
case 11:return n.prev=11,r&&URL.revokeObjectURL(r),n.finish(11)
|
||
case 14:case"end":return n.stop()}},n,null,[[1,,11,14]])}))
|
||
return e}(),_C10.CreateCanvas=function(e,t){if("undefined"!=typeof document&&"function"==typeof document.createElement){var n=document.createElement("canvas")
|
||
return n.width=e,n.height=t,n}return new OffscreenCanvas(e,t)},_C10.CanvasToBlob=function(e,t,n){return"number"!=typeof n&&(n=1),t=t||"image/png",n=_C10.clamp(n,0,1),e.toBlob?new Promise(function(r){return e.toBlob(r,t,n)}):e.convertToBlob?e.convertToBlob({type:t,quality:n}):_C10.Asyncify(function(){return _C10.CanvasToBlobSync(e,t,n)})},_C10.CanvasToBlobSync=function(e,t,n){return"number"!=typeof n&&(n=1),t=t||"image/png",n=_C10.clamp(n,0,1),_C10.DataURIToBinaryBlobSync(e.toDataURL(t,n))},_C10.DataURIToBinaryBlobSync=function(e){var t=_C10.ParseDataURI(e)
|
||
return _C10.BinaryStringToBlob(t.data,t.mime_type)},_C10.ParseDataURI=function(e){if("data:"!==e.substr(0,5))throw new URIError("expected data: uri")
|
||
var t=e.indexOf(",")
|
||
if(0>t)throw new URIError("expected comma in data: uri")
|
||
var n,r=e.substring(5,t),a=e.substring(t+1),i=r.split(";"),s=i[0]||"",o=i[1],u=i[2]
|
||
return n="base64"===o||"base64"===u?atob(a):decodeURIComponent(a),{mime_type:s,data:n}},_C10.BinaryStringToBlob=function(e,t){var n,r,a=e.length,i=a>>2,s=new Uint8Array(a),o=new Uint32Array(s.buffer,0,i)
|
||
for(n=0,r=0;i>n;++n)o[n]=e.charCodeAt(r++)|e.charCodeAt(r++)<<8|e.charCodeAt(r++)<<16|e.charCodeAt(r++)<<24
|
||
for(var u=3&a;u--;)s[r]=e.charCodeAt(r),++r
|
||
return t?new Blob([s],{type:t}):new Blob([s])},_C10.DrawableToBlob=function(e,t,n){var r=_C10.CreateCanvas(e.width,e.height),a=r.getContext("2d")
|
||
return a.drawImage(e,0,0),_C10.CanvasToBlob(r,t,n)},_C10.ImageDataToBlobSync=function(e,t,n){var r=_C10.CreateCanvas(e.width,e.height),a=r.getContext("2d")
|
||
return a.putImageData(e,0,0),_C10.CanvasToBlobSync(r,t,n)},_C10.ImageDataToBlob=function(e,t,n){if(_C10.Supports.ImageBitmapOptions)return createImageBitmap(e,{premultiplyAlpha:"none"}).then(function(e){return _C10.DrawableToBlob(e,t,n)})
|
||
if(_C10.Supports.ImageBitmap)return createImageBitmap(e).then(function(e){return _C10.DrawableToBlob(e,t,n)})
|
||
var r=_C10.CreateCanvas(e.width,e.height),a=r.getContext("2d")
|
||
return a.putImageData(e,0,0),_C10.CanvasToBlob(r,t,n)},_C10.CopySet=function(e,t){e.clear()
|
||
var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
e.add(a)}}catch(i){r.e(i)}finally{r.f()}},_C10.MapToObject=function(e){var t,n=Object.create(null),r=_createForOfIteratorHelper(e.entries())
|
||
try{for(r.s();!(t=r.n()).done;){var a=_slicedToArray(t.value,2),i=a[0],s=a[1]
|
||
n[i]=s}}catch(o){r.e(o)}finally{r.f()}return n},_C10.ObjectToMap=function(e,t){t.clear()
|
||
for(var n=0,r=Object.entries(e);n<r.length;n++){var a=_slicedToArray(r[n],2),i=a[0],s=a[1]
|
||
t.set(i,s)}},_C10.ToSuperJSON=function u(e){if("object"===_typeof(e)&&null!==e){if(e instanceof Set)return{_c3type_:"set",data:_toConsumableArray(e).map(function(e){return u(e)})}
|
||
if(e instanceof Map)return{_c3type_:"map",data:_toConsumableArray(e).map(function(e){return[e[0],u(e[1])]})}
|
||
for(var t=Object.create(null),n=0,r=Object.entries(e);n<r.length;n++){var a=_slicedToArray(r[n],2),i=a[0],s=a[1]
|
||
t[i]=u(s)}return t}return e},_C10.FromSuperJSON=function l(e){if("object"===_typeof(e)&null!==e){if("set"===e._c3type_)return new Set(e.data.map(function(e){return l(e)}))
|
||
if("map"===e._c3type_)return new Map(e.data.map(function(e){return[e[0],l(e[1])]}))
|
||
for(var t=Object.create(null),n=0,r=Object.entries(e);n<r.length;n++){var a=_slicedToArray(r[n],2),i=a[0],s=a[1]
|
||
t[i]=l(s)}return t}return e},_C10.CSSToCamelCase=function(e){var t,n="",r=!1,a=_createForOfIteratorHelper(e)
|
||
try{for(a.s();!(t=a.n()).done;){var i=t.value
|
||
"-"===i?r=!0:r?(n+=i.toUpperCase(),r=!1):n+=i}}catch(s){a.e(s)}finally{a.f()}return n},_C10.IsIterator=function(e){return"object"===_typeof(e)&&"function"==typeof e.next},_C10.MakeFilledArray=function(e,t){var n=[]
|
||
if("function"==typeof t)for(var r=0;e>r;++r)n.push(t())
|
||
else for(var a=0;e>a;++a)n.push(t)
|
||
return n}
|
||
var padTwoDigits=function(e){return 0===e.length?"00":1===e.length?"0"+e:e},hueToRGB=function(e,t,n){return 0>n&&(n+=1),n>1&&(n-=1),1/6>n?e+6*(t-e)*n:.5>n?t:2/3>n?e+(t-e)*(2/3-n)*6:e},_C11=self.C3,HSL_TEST=/([0-9.]+),([0-9.]+)%?,([0-9.]+)%?/i,HSLA_TEST=/([0-9.]+),([0-9.]+)%?,([0-9.]+)%?,([0-9.])/i
|
||
_C11.Color=function(){function e(t,n,r,a){_classCallCheck(this,e),this._r=NaN,this._g=NaN,this._b=NaN,this._a=NaN,this._r=0,this._g=0,this._b=0,this._a=0,t instanceof _C11.Color?this.set(t):this.setRgba(t||0,n||0,r||0,a||0)}return _createClass(e,[{key:"setRgb",value:function(e,t,n){return this._r=+e,this._g=+t,this._b=+n,this.clamp(),this}},{key:"setRgba",value:function(e,t,n,r){return this._r=+e,this._g=+t,this._b=+n,this._a=+r,this.clamp(),this}},{key:"set",value:function(e){return this._r=e._r,this._g=e._g,this._b=e._b,this._a=e._a,this}},{key:"copy",value:function(e){return this.set(e)}},{key:"add",value:function(e){this._r+=e._r,this._g+=e._g,this._b+=e._b,this._a+=e._a,this.clamp()}},{key:"addRgb",value:function(e,t,n){var r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0
|
||
this._r+=+e,this._g+=+t,this._b+=+n,this._a+=+r,this.clamp()}},{key:"diff",value:function(e){this.setR(Math.max(this._r,e._r)-Math.min(this._r,e._r)),this.setG(Math.max(this._g,e._g)-Math.min(this._g,e._g)),this.setB(Math.max(this._b,e._b)-Math.min(this._b,e._b)),this.setA(Math.max(this._a,e._a)-Math.min(this._a,e._a)),this.clamp()}},{key:"copyRgb",value:function(e){this._r=e._r,this._g=e._g,this._b=e._b}},{key:"setR",value:function(e){this._r=_C11.clamp(+e,0,1)}},{key:"getR",value:function(){return this._r}},{key:"setG",value:function(e){this._g=_C11.clamp(+e,0,1)}},{key:"getG",value:function(){return this._g}},{key:"setB",value:function(e){this._b=_C11.clamp(+e,0,1)}},{key:"getB",value:function(){return this._b}},{key:"setA",value:function(e){this._a=_C11.clamp(+e,0,1)}},{key:"getA",value:function(){return this._a}},{key:"clone",value:function(){return _C11.New(_C11.Color,this._r,this._g,this._b,this._a)}},{key:"toArray",value:function(){return[this._r,this._g,this._b,this._a]}},{key:"toTypedArray",value:function(){return new Float64Array(this.toArray())}},{key:"writeToTypedArray",value:function(e,t){e[t++]=this._r,e[t++]=this._g,e[t++]=this._b,e[t]=this._a}},{key:"equals",value:function(e){return this._r===e._r&&this._g===e._g&&this._b===e._b&&this._a===e._a}},{key:"equalsIgnoringAlpha",value:function(e){return this._r===e._r&&this._g===e._g&&this._b===e._b}},{key:"equalsRgb",value:function(e,t,n){return this._r===e&&this._g===t&&this._b===n}},{key:"equalsRgba",value:function(e,t,n,r){return this._r===e&&this._g===t&&this._b===n&&this._a===r}},{key:"multiply",value:function(e){this._r*=e._r,this._g*=e._g,this._b*=e._b,this._a*=e._a}},{key:"multiplyAlpha",value:function(e){this._r*=e,this._g*=e,this._b*=e,this._a*=e}},{key:"premultiply",value:function(){return this._r*=this._a,this._g*=this._a,this._b*=this._a,this}},{key:"unpremultiply",value:function(){return this._r/=this._a,this._g/=this._a,this._b/=this._a,this}},{key:"clamp",value:function(){return this._r=_C11.clamp(this._r,0,1),this._g=_C11.clamp(this._g,0,1),this._b=_C11.clamp(this._b,0,1),this._a=_C11.clamp(this._a,0,1),this}},{key:"setFromRgbValue",value:function(e){this._r=_C11.GetRValue(e),this._g=_C11.GetGValue(e),this._b=_C11.GetBValue(e),this._a=_C11.GetAValue(e)}},{key:"getCssRgb",value:function(e,t,n){var r=_C11.IsFiniteNumber(e)?e:this.getR(),a=_C11.IsFiniteNumber(t)?t:this.getG(),i=_C11.IsFiniteNumber(n)?n:this.getB()
|
||
return"rgb(".concat(100*r,"%, ").concat(100*a,"%, ").concat(100*i,"%)")}},{key:"getCssRgba",value:function(e,t,n,r){var a=_C11.IsFiniteNumber(e)?e:this.getR(),i=_C11.IsFiniteNumber(t)?t:this.getG(),s=_C11.IsFiniteNumber(n)?n:this.getB(),o=_C11.IsFiniteNumber(r)?r:this.getA()
|
||
return"rgba(".concat(100*a,"%, ").concat(100*i,"%, ").concat(100*s,"%, ").concat(o,")")}},{key:"toHexString",value:function(){var e=Math.round(255*this.getR()),t=Math.round(255*this.getG()),n=Math.round(255*this.getB())
|
||
return"#"+padTwoDigits(e.toString(16))+padTwoDigits(t.toString(16))+padTwoDigits(n.toString(16))}},{key:"parseHexString",value:function(e){if("string"!=typeof e)return!1
|
||
e=e.trim(),"#"===e.charAt(0)&&(e=e.substr(1))
|
||
var t,n,r
|
||
if(3===e.length)t=parseInt(e[0],16)/15,n=parseInt(e[1],16)/15,r=parseInt(e[2],16)/15
|
||
else{if(6!==e.length)return!1
|
||
t=parseInt(e.substr(0,2),16)/255,n=parseInt(e.substr(2,2),16)/255,r=parseInt(e.substr(4,2),16)/255}return isFinite(t)&&this.setR(t),isFinite(n)&&this.setG(n),isFinite(r)&&this.setB(r),this.setA(1),!0}},{key:"toCommaSeparatedRgb",value:function(){var e=Math.round(255*this.getR()),t=Math.round(255*this.getG()),n=Math.round(255*this.getB())
|
||
return"".concat(e,", ").concat(t,", ").concat(n)}},{key:"toRgbArray",value:function(){var e=Math.round(255*this.getR()),t=Math.round(255*this.getG()),n=Math.round(255*this.getB())
|
||
return[e,t,n]}},{key:"parseCommaSeparatedRgb",value:function(e){if("string"!=typeof e)return!1
|
||
e=e.replace(/^rgb\(|\)|%/,"")
|
||
var t=e.split(",")
|
||
if(t.length<3)return!1
|
||
var n=parseInt(t[0].trim(),10)/255,r=parseInt(t[1].trim(),10)/255,a=parseInt(t[2].trim(),10)/255
|
||
return isFinite(n)&&this.setR(n),isFinite(r)&&this.setG(r),isFinite(a)&&this.setB(a),this.setA(1),!0}},{key:"parseCommaSeparatedPercentageRgb",value:function(e){if("string"!=typeof e)return!1
|
||
e=e.replace(/^rgb\(|\)|%/,"")
|
||
var t=e.split(",")
|
||
if(t.length<3)return!1
|
||
var n=parseInt(t[0].trim(),10)/100,r=parseInt(t[1].trim(),10)/100,a=parseInt(t[2].trim(),10)/100
|
||
return isFinite(n)&&this.setR(n),isFinite(r)&&this.setG(r),isFinite(a)&&this.setB(a),this.setA(1),!0}},{key:"parseCommaSeparatedRgba",value:function(e){if("string"!=typeof e)return!1
|
||
e=e.replace(/^rgba\(|\)|%/,"")
|
||
var t=e.split(",")
|
||
if(t.length<4)return!1
|
||
var n=parseInt(t[0].trim(),10)/255,r=parseInt(t[1].trim(),10)/255,a=parseInt(t[2].trim(),10)/255,i=parseFloat(t[3].trim())
|
||
return isFinite(n)&&this.setR(n),isFinite(r)&&this.setG(r),isFinite(a)&&this.setB(a),isFinite(i)&&this.setA(i),!0}},{key:"parseCommaSeparatedPercentageRgba",value:function(e){if("string"!=typeof e)return!1
|
||
e=e.replace(/^rgba\(|\)|%/,"")
|
||
var t=e.split(",")
|
||
if(t.length<4)return!1
|
||
var n=parseInt(t[0].trim(),10)/100,r=parseInt(t[1].trim(),10)/100,a=parseInt(t[2].trim(),10)/100,i=parseFloat(t[3].trim())
|
||
return isFinite(n)&&this.setR(n),isFinite(r)&&this.setG(r),isFinite(a)&&this.setB(a),isFinite(i)&&this.setA(i),!0}},{key:"parseString",value:function(e){if("string"!=typeof e)return!1
|
||
if(e=e.replace(/\s+/,""),e.includes(",")){if(e.startsWith("rgb("))return e.includes("%")?this.parseCommaSeparatedPercentageRgb(e):this.parseCommaSeparatedRgb(e)
|
||
if(e.startsWith("rgba("))return e.includes("%")?this.parseCommaSeparatedPercentageRgba(e):this.parseCommaSeparatedRgba(e)
|
||
if(e.startsWith("hsl(")||e.startsWith("hsla("))return this.parseHSLString(e)
|
||
var t=e.split(",")
|
||
return e.includes("%")?3===t.length?this.parseCommaSeparatedPercentageRgb(e):4===t.length?this.parseCommaSeparatedPercentageRgba(e):!1:3===t.length?this.parseCommaSeparatedRgb(e):4===t.length?this.parseCommaSeparatedRgba(e):!1}return this.parseHexString(e)}},{key:"toJSON",value:function(){return[this._r,this._g,this._b,this._a]}},{key:"setFromHSLA",value:function(e,t,n,r){var a,i,s
|
||
if(e%=360,t=_C11.clamp(t,0,100),n=_C11.clamp(n,0,100),r=_C11.clamp(r,0,1),e/=360,t/=100,n/=100,0===t)a=i=s=n
|
||
else{var o=.5>n?n*(1+t):n+t-n*t,u=2*n-o
|
||
a=hueToRGB(u,o,e+1/3),i=hueToRGB(u,o,e),s=hueToRGB(u,o,e-1/3)}return this.setR(a),this.setG(i),this.setB(s),this.setA(r),this}},{key:"parseHSLString",value:function(e){var t=e.replace(/ |hsl|hsla|\(|\)|;/gi,""),n=HSL_TEST.exec(t),r=HSLA_TEST.exec(t)
|
||
return n&&4===n.length?(this.setFromHSLA(+n[1],+n[2],+n[3],1),!0):r&&5===r.length?(this.setFromHSLA(+n[1],+n[2],+n[3],+n[4]),!0):!1}},{key:"toHSLAString",value:function(){var e=this._r,t=this._g,n=this._b,r=this._a,a=_C11.Color.GetHue(e,t,n),i=_C11.Color.GetSaturation(e,t,n),s=_C11.Color.GetLuminosity(e,t,n)
|
||
return"hsla(".concat(a,", ").concat(i,"%, ").concat(s,"%, ").concat(r,")")}},{key:"toHSLAArray",value:function(){var e=this._r,t=this._g,n=this._b
|
||
return[_C11.Color.GetHue(e,t,n),_C11.Color.GetSaturation(e,t,n),_C11.Color.GetLuminosity(e,t,n),this._a]}},{key:"setFromJSON",value:function(e){Array.isArray(e)&&(e.length<3||(this._r=e[0],this._g=e[1],this._b=e[2],e.length>=4?this._a=e[3]:this._a=1))}},{key:"r",get:function(){return this.getR()},set:function(e){this.setR(e)}},{key:"g",get:function(){return this.getG()},set:function(e){this.setG(e)}},{key:"b",get:function(){return this.getB()},set:function(e){this.setB(e)}},{key:"a",get:function(){return this.getA()},set:function(e){this.setA(e)}},{key:"setAtIndex",value:function(e,t){switch(e){case 0:this.setR(t)
|
||
break
|
||
case 1:this.setG(t)
|
||
break
|
||
case 2:this.setB(t)
|
||
break
|
||
case 3:this.setA(t)
|
||
break
|
||
default:throw new RangeError("invalid color index")}}},{key:"getAtIndex",value:function(e){switch(e){case 0:return this.getR()
|
||
case 1:return this.getG()
|
||
case 2:return this.getB()
|
||
case 3:return this.getA()
|
||
default:throw new RangeError("invalid color index")}}}],[{key:"DiffChannel",value:function(e,t){return _C11.clamp(Math.max(e,t)-Math.min(e,t),0,1)}},{key:"Diff",value:function(e,t){var n=new _C11.Color
|
||
return n.setR(Math.max(e._r,t._r)-Math.min(e._r,t._r)),n.setG(Math.max(e._g,t._g)-Math.min(e._g,t._g)),n.setB(Math.max(e._b,t._b)-Math.min(e._b,t._b)),n.setA(Math.max(e._a,t._a)-Math.min(e._a,t._a)),n}},{key:"DiffNoAlpha",value:function(e,t){var n=new _C11.Color(0,0,0,1)
|
||
return n.setR(Math.max(e._r,t._r)-Math.min(e._r,t._r)),n.setG(Math.max(e._g,t._g)-Math.min(e._g,t._g)),n.setB(Math.max(e._b,t._b)-Math.min(e._b,t._b)),n}},{key:"GetHue",value:function(e,t,n){var r=Math.max(e,t,n),a=Math.min(e,t,n)
|
||
if(r===a)return 0
|
||
var i=0
|
||
switch(r){case e:i=(t-n)/(r-a)+(n>t?6:0)
|
||
break
|
||
case t:i=(n-e)/(r-a)+2
|
||
break
|
||
case n:i=(e-t)/(r-a)+4}return Math.round(i/6*360)}},{key:"GetSaturation",value:function(e,t,n){var r=Math.max(e,t,n),a=Math.min(e,t,n)
|
||
if(r===a)return 0
|
||
var i=(r+a)/2,s=r-a,o=i>.5?s/(2-r-a):s/(r+a)
|
||
return Math.round(100*o)}},{key:"GetLuminosity",value:function(e,t,n){var r=Math.max(e,t,n),a=Math.min(e,t,n),i=(r+a)/2
|
||
return r?Math.round(100*i):0}}]),e}(),_C11.Color.White=Object.freeze(_C11.New(_C11.Color,1,1,1,1)),_C11.Color.Black=Object.freeze(_C11.New(_C11.Color,0,0,0,1)),_C11.Color.TransparentBlack=Object.freeze(_C11.New(_C11.Color,0,0,0,0))
|
||
var _C12=self.C3
|
||
_C12.Vector2=function(){function e(t,n){_classCallCheck(this,e),this._x=0,this._y=0,t instanceof _C12.Vector2?this.copy(t):this.set(t||0,n||0)}return _createClass(e,[{key:"set",value:function(e,t){this._x=+e,this._y=+t}},{key:"copy",value:function(e){this._x=e._x,this._y=e._y}},{key:"equals",value:function(e){return this._x===e._x&&this._y===e._y}},{key:"setX",value:function(e){this._x=+e}},{key:"getX",value:function(){return this._x}},{key:"setY",value:function(e){this._y=+e}},{key:"getY",value:function(){return this._y}},{key:"toArray",value:function(){return[this._x,this._y]}},{key:"toTypedArray",value:function(){return new Float64Array(this.toArray())}},{key:"writeToTypedArray",value:function(e,t){e[t++]=this._x,e[t]=this._y}},{key:"offset",value:function(e,t){this._x+=+e,this._y+=+t}},{key:"scale",value:function(e,t){this._x*=e,this._y*=t}},{key:"divide",value:function(e,t){this._x/=e,this._y/=t}},{key:"round",value:function(){this._x=Math.round(this._x),this._y=Math.round(this._y)}},{key:"floor",value:function(){this._x=Math.floor(this._x),this._y=Math.floor(this._y)}},{key:"ceil",value:function(){this._x=Math.ceil(this._x),this._y=Math.ceil(this._y)}},{key:"angle",value:function(){return _C12.angleTo(0,0,this._x,this._y)}},{key:"lengthSquared",value:function(){return this._x*this._x+this._y*this._y}},{key:"length",value:function(){return Math.sqrt(this.lengthSquared())}},{key:"rotatePrecalc",value:function(e,t){var n=this._x*t-this._y*e
|
||
this._y=this._y*t+this._x*e,this._x=n}},{key:"rotate",value:function(e){0!==e&&this.rotatePrecalc(Math.sin(e),Math.cos(e))}},{key:"rotateAbout",value:function(e,t,n){0===e||t===this._x&&n===this._y||(this._x-=t,this._y-=n,this.rotatePrecalc(Math.sin(e),Math.cos(e)),this._x+=+t,this._y+=+n)}},{key:"move",value:function(e,t){0!==t&&(this._x+=Math.cos(e)*t,this._y+=Math.sin(e)*t)}},{key:"normalize",value:function(){var e=this.length()
|
||
0!==e&&1!==e&&(this._x/=e,this._y/=e)}},{key:"clamp",value:function(e,t){this._x=_C12.clamp(this._x,e,t),this._y=_C12.clamp(this._y,e,t)}}]),e}()
|
||
var _C13=self.C3
|
||
_C13.Rect=function(){function e(t,n,r,a){_classCallCheck(this,e),this._left=NaN,this._top=NaN,this._right=NaN,this._bottom=NaN,this._left=0,this._top=0,this._right=0,this._bottom=0,t instanceof _C13.Rect?this.copy(t):this.set(t||0,n||0,r||0,a||0)}return _createClass(e,[{key:"set",value:function(e,t,n,r){this._left=+e,this._top=+t,this._right=+n,this._bottom=+r}},{key:"setWH",value:function(e,t,n,r){e=+e,t=+t,this._left=e,this._top=t,this._right=e+ +n,this._bottom=t+ +r}},{key:"copy",value:function(e){this._left=+e._left,this._top=+e._top,this._right=+e._right,this._bottom=+e._bottom}},{key:"clone",value:function(){return new _C13.Rect(this._left,this._top,this._right,this._bottom)}},{key:"equals",value:function(e){return this._left===e._left&&this._top===e._top&&this._right===e._right&&this._bottom===e._bottom}},{key:"setLeft",value:function(e){this._left=+e}},{key:"getLeft",value:function(){return this._left}},{key:"setTop",value:function(e){this._top=+e}},{key:"getTop",value:function(){return this._top}},{key:"setRight",value:function(e){this._right=+e}},{key:"getRight",value:function(){return this._right}},{key:"setBottom",value:function(e){this._bottom=+e}},{key:"getBottom",value:function(){return this._bottom}},{key:"toArray",value:function(){return[this._left,this._top,this._right,this._bottom]}},{key:"toTypedArray",value:function(){return new Float64Array(this.toArray())}},{key:"toDOMRect",value:function(){return new DOMRect(this._left,this._top,this.width(),this.height())}},{key:"writeToTypedArray",value:function(e,t){e[t++]=this._left,e[t++]=this._top,e[t++]=this._right,e[t]=this._bottom}},{key:"writeAsQuadToTypedArray",value:function(e,t){e[t++]=this._left,e[t++]=this._top,e[t++]=this._right,e[t++]=this._top,e[t++]=this._right,e[t++]=this._bottom,e[t++]=this._left,e[t]=this._bottom}},{key:"width",value:function(){return this._right-this._left}},{key:"height",value:function(){return this._bottom-this._top}},{key:"midX",value:function(){return(this._left+this._right)/2}},{key:"midY",value:function(){return(this._top+this._bottom)/2}},{key:"offset",value:function(e,t){e=+e,t=+t,this._left+=e,this._top+=t,this._right+=e,this._bottom+=t}},{key:"offsetLeft",value:function(e){this._left+=+e}},{key:"offsetTop",value:function(e){this._top+=+e}},{key:"offsetRight",value:function(e){this._right+=+e}},{key:"offsetBottom",value:function(e){this._bottom+=+e}},{key:"toSquare",value:function(e){if("x"!==e)throw Error("invalid axis, only 'x' supported")
|
||
this._top<this._bottom?this._left<this._right?this._bottom=this._top+this.width():this._bottom=this._top-this.width():this._left<this._right?this._bottom=this._top-this.width():this._bottom=this._top+this.width()}},{key:"inflate",value:function(e,t){e=+e,t=+t,this._left-=e,this._top-=t,this._right+=e,this._bottom+=t}},{key:"deflate",value:function(e,t){e=+e,t=+t,this._left+=e,this._top+=t,this._right-=e,this._bottom-=t}},{key:"multiply",value:function(e,t){this._left*=e,this._top*=t,this._right*=e,this._bottom*=t}},{key:"divide",value:function(e,t){this._left/=e,this._top/=t,this._right/=e,this._bottom/=t}},{key:"mirrorAround",value:function(e){this._left=+e-this._left,this._right=+e-this._right}},{key:"flipAround",value:function(e){this._top=+e-this._top,this._bottom=+e-this._bottom}},{key:"swapLeftRight",value:function(){var e=this._left
|
||
this._left=this._right,this._right=e}},{key:"swapTopBottom",value:function(){var e=this._top
|
||
this._top=this._bottom,this._bottom=e}},{key:"shuntY",value:function(e){var t=this._top
|
||
this._top=+e-this._bottom,this._bottom=+e-t}},{key:"round",value:function(){this._left=Math.round(this._left),this._top=Math.round(this._top),this._right=Math.round(this._right),this._bottom=Math.round(this._bottom)}},{key:"roundInner",value:function(){this._left=Math.ceil(this._left),this._top=Math.ceil(this._top),this._right=Math.floor(this._right),this._bottom=Math.floor(this._bottom)}},{key:"roundOuter",value:function(){this._left=Math.floor(this._left),this._top=Math.floor(this._top),this._right=Math.ceil(this._right),this._bottom=Math.ceil(this._bottom)}},{key:"floor",value:function(){this._left=Math.floor(this._left),this._top=Math.floor(this._top),this._right=Math.floor(this._right),this._bottom=Math.floor(this._bottom)}},{key:"ceil",value:function(){this._left=Math.ceil(this._left),this._top=Math.ceil(this._top),this._right=Math.ceil(this._right),this._bottom=Math.ceil(this._bottom)}},{key:"clamp",value:function(e,t,n,r){this._left<e&&(this._left=+e),this._top<t&&(this._top=+t),this._right>n&&(this._right=+n),this._bottom>r&&(this._bottom=+r)}},{key:"clampFlipped",value:function(e,t,n,r){this._left<e&&(this._left=+e),this._top>t&&(this._top=+t),this._right>n&&(this._right=+n),this._bottom<r&&(this._bottom=+r)}},{key:"normalize",value:function(){this._left>this._right&&this.swapLeftRight(),this._top>this._bottom&&this.swapTopBottom()}},{key:"intersectsRect",value:function(e){return!(e._right<this._left||e._bottom<this._top||e._left>this._right||e._top>this._bottom)}},{key:"intersectsRectOffset",value:function(e,t,n){return!(e._right+t<this._left||e._bottom+n<this._top||e._left+t>this._right||e._top+n>this._bottom)}},{key:"containsPoint",value:function(e,t){return e>=this._left&&e<=this._right&&t>=this._top&&t<=this._bottom}},{key:"containsRect",value:function(e){return e._left>=this._left&&e._top>=this._top&&e._right<=this._right&&e._bottom<=this._bottom}},{key:"expandToContain",value:function(e){e._left<this._left&&(this._left=+e._left),e._top<this._top&&(this._top=+e._top),e._right>this._right&&(this._right=+e._right),e._bottom>this._bottom&&(this._bottom=+e._bottom)}},{key:"lerpInto",value:function(e){this._left=_C13.lerp(e._left,e._right,this._left),this._top=_C13.lerp(e._top,e._bottom,this._top),this._right=_C13.lerp(e._left,e._right,this._right),this._bottom=_C13.lerp(e._top,e._bottom,this._bottom)}}],[{key:"Merge",value:function(e,t){var n=new _C13.Rect
|
||
return n.setLeft(Math.min(e._left,t._left)),n.setTop(Math.min(e._top,t._top)),n.setRight(Math.max(e._right,t._right)),n.setBottom(Math.max(e._bottom,t._bottom)),n}},{key:"FromObject",value:function(e){return new _C13.Rect(e.left,e.top,e.right,e.bottom)}}]),e}()
|
||
var _C14=self.C3
|
||
_C14.Quad=function(){function e(t,n,r,a,i,s,o,u){_classCallCheck(this,e),this._tlx=NaN,this._tly=NaN,this._trx=NaN,this._try=NaN,this._brx=NaN,this._bry=NaN,this._blx=NaN,this._bly=NaN,this._tlx=0,this._tly=0,this._trx=0,this._try=0,this._brx=0,this._bry=0,this._blx=0,this._bly=0,t instanceof _C14.Quad?this.copy(t):this.set(t||0,n||0,r||0,a||0,i||0,s||0,o||0,u||0)}return _createClass(e,[{key:"set",value:function(e,t,n,r,a,i,s,o){this._tlx=+e,this._tly=+t,this._trx=+n,this._try=+r,this._brx=+a,this._bry=+i,this._blx=+s,this._bly=+o}},{key:"setRect",value:function(e,t,n,r){this.set(e,t,n,t,n,r,e,r)}},{key:"copy",value:function(e){this._tlx=e._tlx,this._tly=e._tly,this._trx=e._trx,this._try=e._try,this._brx=e._brx,this._bry=e._bry,this._blx=e._blx,this._bly=e._bly}},{key:"equals",value:function(e){return this._tlx===e._tlx&&this._tly===e._tly&&this._trx===e._trx&&this._try===e._try&&this._brx===e._brx&&this._bry===e._bry&&this._blx===e._blx&&this._bly===e._bly}},{key:"setTlx",value:function(e){this._tlx=+e}},{key:"getTlx",value:function(){return this._tlx}},{key:"setTly",value:function(e){this._tly=+e}},{key:"getTly",value:function(){return this._tly}},{key:"setTrx",value:function(e){this._trx=+e}},{key:"getTrx",value:function(){return this._trx}},{key:"setTry",value:function(e){this._try=+e}},{key:"getTry",value:function(){return this._try}},{key:"setBrx",value:function(e){this._brx=+e}},{key:"getBrx",value:function(){return this._brx}},{key:"setBry",value:function(e){this._bry=+e}},{key:"getBry",value:function(){return this._bry}},{key:"setBlx",value:function(e){this._blx=+e}},{key:"getBlx",value:function(){return this._blx}},{key:"setBly",value:function(e){this._bly=+e}},{key:"getBly",value:function(){return this._bly}},{key:"toDOMQuad",value:function(){return new DOMQuad(new DOMPoint(this._tlx,this._tly),new DOMPoint(this._trx,this._try),new DOMPoint(this._brx,this._bry),new DOMPoint(this._blx,this._bly))}},{key:"toArray",value:function(){return[this._tlx,this._tly,this._trx,this._try,this._brx,this._bry,this._blx,this._bly]}},{key:"toTypedArray",value:function(){return new Float64Array(this.toArray())}},{key:"writeToTypedArray",value:function(e,t){e[t++]=this._tlx,e[t++]=this._tly,e[t++]=this._trx,e[t++]=this._try,e[t++]=this._brx,e[t++]=this._bry,e[t++]=this._blx,e[t]=this._bly}},{key:"writeToTypedArray3D",value:function(e,t,n){e[t++]=this._tlx,e[t++]=this._tly,e[t++]=n,e[t++]=this._trx,e[t++]=this._try,e[t++]=n,e[t++]=this._brx,e[t++]=this._bry,e[t++]=n,e[t++]=this._blx,e[t++]=this._bly,e[t]=n}},{key:"offset",value:function(e,t){e=+e,t=+t,this._tlx+=e,this._tly+=t,this._trx+=e,this._try+=t,this._brx+=e,this._bry+=t,this._blx+=e,this._bly+=t}},{key:"round",value:function(){this._tlx=Math.round(this._tlx),this._tly=Math.round(this._tly),this._trx=Math.round(this._trx),this._try=Math.round(this._try),this._brx=Math.round(this._brx),this._bry=Math.round(this._bry),this._blx=Math.round(this._blx),this._bly=Math.round(this._bly)}},{key:"floor",value:function(){this._tlx=Math.floor(this._tlx),this._tly=Math.floor(this._tly),this._trx=Math.floor(this._trx),this._try=Math.floor(this._try),this._brx=Math.floor(this._brx),this._bry=Math.floor(this._bry),this._blx=Math.floor(this._blx),this._bly=Math.floor(this._bly)}},{key:"ceil",value:function(){this._tlx=Math.ceil(this._tlx),this._tly=Math.ceil(this._tly),this._trx=Math.ceil(this._trx),this._try=Math.ceil(this._try),this._brx=Math.ceil(this._brx),this._bry=Math.ceil(this._bry),this._blx=Math.ceil(this._blx),this._bly=Math.ceil(this._bly)}},{key:"setFromRect",value:function(e){this._tlx=e._left,this._tly=e._top,this._trx=e._right,this._try=e._top,this._brx=e._right,this._bry=e._bottom,this._blx=e._left,this._bly=e._bottom}},{key:"setFromRotatedRect",value:function(e,t){0===t?this.setFromRect(e):this.setFromRotatedRectPrecalc(e,Math.sin(t),Math.cos(t))}},{key:"setFromRotatedRectPrecalc",value:function(e,t,n){var r=e._left*t,a=e._top*t,i=e._right*t,s=e._bottom*t,o=e._left*n,u=e._top*n,l=e._right*n,c=e._bottom*n
|
||
this._tlx=o-a,this._tly=u+r,this._trx=l-a,this._try=u+i,this._brx=l-s,this._bry=c+i,this._blx=o-s,this._bly=c+r}},{key:"getBoundingBox",value:function(e){e.set(Math.min(this._tlx,this._trx,this._brx,this._blx),Math.min(this._tly,this._try,this._bry,this._bly),Math.max(this._tlx,this._trx,this._brx,this._blx),Math.max(this._tly,this._try,this._bry,this._bly))}},{key:"containsPoint",value:function(e,t){var n=this._trx-this._tlx,r=this._try-this._tly,a=this._brx-this._tlx,i=this._bry-this._tly,s=e-this._tlx,o=t-this._tly,u=n*n+r*r,l=n*a+r*i,c=n*s+r*o,h=a*a+i*i,_=a*s+i*o,f=1/(u*h-l*l),d=(h*c-l*_)*f,p=(u*_-l*c)*f
|
||
return d>=0&&p>0&&1>d+p?!0:(n=this._blx-this._tlx,r=this._bly-this._tly,u=n*n+r*r,l=n*a+r*i,c=n*s+r*o,f=1/(u*h-l*l),d=(h*c-l*_)*f,p=(u*_-l*c)*f,d>=0&&p>0&&1>d+p)}},{key:"midX",value:function(){return(this._tlx+this._trx+this._brx+this._blx)/4}},{key:"midY",value:function(){return(this._tly+this._try+this._bry+this._bly)/4}},{key:"intersectsSegment",value:function(e,t,n,r){return this.containsPoint(e,t)||this.containsPoint(n,r)?!0:_C14.segmentIntersectsQuad(e,t,n,r,this)}},{key:"intersectsQuad",value:function(e){var t=e.midX(),n=e.midY()
|
||
if(this.containsPoint(t,n))return!0
|
||
if(t=this.midX(),n=this.midY(),e.containsPoint(t,n))return!0
|
||
var r=this._tlx,a=this._tly,i=this._trx,s=this._try,o=this._brx,u=this._bry,l=this._blx,c=this._bly
|
||
return _C14.segmentIntersectsQuad(r,a,i,s,e)||_C14.segmentIntersectsQuad(i,s,o,u,e)||_C14.segmentIntersectsQuad(o,u,l,c,e)||_C14.segmentIntersectsQuad(l,c,r,a,e)}},{key:"mirror",value:function(){this._swap(0,2),this._swap(1,3),this._swap(6,4),this._swap(7,5)}},{key:"flip",value:function(){this._swap(0,6),this._swap(1,7),this._swap(2,4),this._swap(3,5)}},{key:"diag",value:function(){this._swap(2,6),this._swap(3,7)}},{key:"_swap",value:function(e,t){var n=this._getAtIndex(e)
|
||
this._setAtIndex(e,this._getAtIndex(t)),this._setAtIndex(t,n)}},{key:"_getAtIndex",value:function(e){switch(e){case 0:return this._tlx
|
||
case 1:return this._tly
|
||
case 2:return this._trx
|
||
case 3:return this._try
|
||
case 4:return this._brx
|
||
case 5:return this._bry
|
||
case 6:return this._blx
|
||
case 7:return this._bly
|
||
default:throw new RangeError("invalid quad point index")}}},{key:"_setAtIndex",value:function(e,t){switch(t=+t,e){case 0:this._tlx=t
|
||
break
|
||
case 1:this._tly=t
|
||
break
|
||
case 2:this._trx=t
|
||
break
|
||
case 3:this._try=t
|
||
break
|
||
case 4:this._brx=t
|
||
break
|
||
case 5:this._bry=t
|
||
break
|
||
case 6:this._blx=t
|
||
break
|
||
case 7:this._bly=t
|
||
break
|
||
default:throw new RangeError("invalid quad point index")}}}]),e}()
|
||
var _C15=self.C3,assert=self.assert,DEFAULT_POLY_POINTS=[0,0,1,0,1,1,0,1],tempQuad=_C15.New(_C15.Quad)
|
||
_C15.CollisionPoly=function(e){function t(e){var r,a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!0
|
||
return _classCallCheck(this,t),r=n.call(this),e||(e=DEFAULT_POLY_POINTS),r._ptsArr=Float64Array.from(e),r._bbox=new _C15.Rect,r._isBboxChanged=!0,r._enabled=a,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){}},{key:"pointsArr",value:function(){return this._ptsArr}},{key:"pointCount",value:function(){return this._ptsArr.length/2}},{key:"setPoints",value:function(e){this._ptsArr.length===e.length?this._ptsArr.set(e):this._ptsArr=Float64Array.from(e),this._isBboxChanged=!0}},{key:"setDefaultPoints",value:function(){this.setPoints(DEFAULT_POLY_POINTS)}},{key:"copy",value:function(e){this.setPoints(e._ptsArr)}},{key:"setBboxChanged",value:function(){this._isBboxChanged=!0}},{key:"_updateBbox",value:function(){if(this._isBboxChanged){for(var e=this._ptsArr,t=e[0],n=e[1],r=t,a=n,i=0,s=e.length;s>i;i+=2){var o=e[i],u=e[i+1]
|
||
t>o&&(t=o),o>r&&(r=o),n>u&&(n=u),u>a&&(a=u)}this._bbox.set(t,n,r,a),this._isBboxChanged=!1}}},{key:"setFromRect",value:function(e,t,n){var r=this._ptsArr
|
||
8!==r.length&&(r=new Float64Array(8),this._ptsArr=r),r[0]=e.getLeft()-t,r[1]=e.getTop()-n,r[2]=e.getRight()-t,r[3]=e.getTop()-n,r[4]=e.getRight()-t,r[5]=e.getBottom()-n,r[6]=e.getLeft()-t,r[7]=e.getBottom()-n,this._bbox.copy(e),(0!==t||0!==n)&&this._bbox.offset(-t,-n),this._isBboxChanged=!1}},{key:"setFromQuad",value:function(e,t,n){tempQuad.copy(e),tempQuad.offset(t,n),this.setPoints(tempQuad.toArray()),this._isBboxChanged=!0}},{key:"transform",value:function(e,t,n){var r=0,a=1
|
||
0!==n&&(r=Math.sin(n),a=Math.cos(n)),this.transformPrecalc(e,t,r,a)}},{key:"transformPrecalc",value:function(e,t,n,r){for(var a=this._ptsArr,i=0,s=a.length;s>i;i+=2){var o=i+1,u=a[i]*e,l=a[o]*t
|
||
a[i]=u*r-l*n,a[o]=l*r+u*n}this._isBboxChanged=!0}},{key:"offset",value:function(e,t){for(var n=this._ptsArr,r=0,a=n.length;a>r;r+=2)n[r]+=e,n[r+1]+=t}},{key:"containsPoint",value:function(e,t){var n=this._ptsArr
|
||
if(e===n[0]&&t===n[1])return!0
|
||
this._updateBbox()
|
||
var r=this._bbox,a=r.getLeft()-110,i=r.getTop()-101,s=r.getRight()+131,o=r.getBottom()+120,u=0,l=0,c=0,h=0,_=0,f=0,d=0,p=0
|
||
e>a?(u=a,c=e):(u=e,c=a),t>i?(l=i,h=t):(l=t,h=i),e>s?(_=s,d=e):(_=e,d=s),t>o?(f=o,p=t):(f=t,p=o)
|
||
for(var v=0,m=0,y=0,g=n.length;g>y;y+=2){var C=(y+2)%g,S=n[y],k=n[y+1],I=n[C],T=n[C+1]
|
||
_C15.segmentsIntersectPreCalc(a,i,e,t,u,c,l,h,S,k,I,T)&&++v,_C15.segmentsIntersectPreCalc(s,o,e,t,_,d,f,p,S,k,I,T)&&++m}return v%2===1||m%2===1}},{key:"intersectsPoly",value:function(e,t,n){var r=e._ptsArr,a=this._ptsArr
|
||
if(this.containsPoint(r[0]+t,r[1]+n))return!0
|
||
if(e.containsPoint(a[0]-t,a[1]-n))return!0
|
||
for(var i=0,s=a.length;s>i;i+=2){var o=(i+2)%s,u=a[i],l=a[i+1],c=a[o],h=a[o+1],_=0,f=0,d=0,p=0
|
||
c>u?(_=u,d=c):(_=c,d=u),h>l?(f=l,p=h):(f=h,p=l)
|
||
for(var v=0,m=r.length;m>v;v+=2){var y=(v+2)%m,g=r[v]+t,C=r[v+1]+n,S=r[y]+t,k=r[y+1]+n
|
||
if(_C15.segmentsIntersectPreCalc(u,l,c,h,_,d,f,p,g,C,S,k))return!0}}return!1}},{key:"intersectsSegment",value:function(e,t,n,r,a,i){if(this.containsPoint(n-e,r-t))return!0
|
||
if(this.containsPoint(a-e,i-t))return!0
|
||
var s=0,o=0,u=0,l=0
|
||
a>n?(s=n,u=a):(s=a,u=n),i>r?(o=r,l=i):(o=i,l=r)
|
||
for(var c=this._ptsArr,h=0,_=c.length;_>h;h+=2){var f=(h+2)%_,d=c[h]+e,p=c[h+1]+t,v=c[f]+e,m=c[f+1]+t
|
||
if(_C15.segmentsIntersectPreCalc(n,r,a,i,s,u,o,l,d,p,v,m))return!0}return!1}},{key:"mirror",value:function(e){for(var t=this._ptsArr,n=0,r=t.length;r>n;n+=2)t[n]=2*e-t[n]
|
||
this._isBboxChanged=!0}},{key:"flip",value:function(e){for(var t=this._ptsArr,n=0,r=t.length;r>n;n+=2){var a=n+1
|
||
t[a]=2*e-t[a]}this._isBboxChanged=!0}},{key:"diag",value:function(){for(var e=this._ptsArr,t=0,n=e.length;n>t;t+=2){var r=t+1,a=e[t]
|
||
e[t]=e[r],e[r]=a}this._isBboxChanged=!0}},{key:"GetMidX",value:function(){for(var e=this._ptsArr,t=0,n=0,r=e.length;r>n;n+=2)t+=e[n]
|
||
return t/this.pointCount()}},{key:"GetMidY",value:function(){for(var e=this._ptsArr,t=0,n=0,r=e.length;r>n;n+=2)t+=e[n+1]
|
||
return t/this.pointCount()}},{key:"GetPointsArray",value:function(){return this._ptsArr}},{key:"GetPointCount",value:function(){return this.pointCount()}},{key:"IsEnabled",value:function(){return this._enabled}}]),t}(_C15.DefendedBase)
|
||
var _C16=self.C3
|
||
_C16.PairMap=function(e){function t(e){var r
|
||
if(_classCallCheck(this,t),r=n.call(this),r._firstMap=new Map,e){var a,i=_createForOfIteratorHelper(e)
|
||
try{for(i.s();!(a=i.n()).done;){var s=_slicedToArray(a.value,3),o=s[0],u=s[1],l=s[2]
|
||
r.Set(o,u,l)}}catch(c){i.e(c)}finally{i.f()}}return r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.Clear(),this._firstMap=null}},{key:"Clear",value:function(){var e,t=this._firstMap,n=_createForOfIteratorHelper(t.values())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
r.clear()}}catch(a){n.e(a)}finally{n.f()}t.clear()}},{key:"Set",value:function(e,t,n){var r=this._firstMap,a=r.get(e)
|
||
a||(a=new Map,r.set(e,a)),a.set(t,n)}},{key:"Get",value:function(e,t){var n=this._firstMap.get(e)
|
||
return n?n.get(t):n}},{key:"Has",value:function(e,t){var n=this._firstMap.get(e)
|
||
return n?n.has(t):!1}},{key:"Delete",value:function(e,t){var n=this._firstMap,r=n.get(e)
|
||
if(!r)return!1
|
||
var a=r["delete"](t)
|
||
return a&&0===r.size&&n["delete"](e),a}},{key:"DeleteEither",value:function(e){var t=this._firstMap,n=t.get(e)
|
||
n&&(n.clear(),t["delete"](e))
|
||
var r,a=_createForOfIteratorHelper(t.entries())
|
||
try{for(a.s();!(r=a.n()).done;){var i=_slicedToArray(r.value,2),s=i[0],o=i[1]
|
||
o["delete"](e)&&0===o.size&&t["delete"](s)}}catch(u){a.e(u)}finally{a.f()}}},{key:"GetSize",value:function(){var e,t=0,n=_createForOfIteratorHelper(this._firstMap.values())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
t+=r.size}}catch(a){n.e(a)}finally{n.f()}return t}},{key:"values",value:_regeneratorRuntime().mark(function r(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(this._firstMap.values()),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=8
|
||
break}return n=t.value,r.delegateYield(n.values(),"t0",6)
|
||
case 6:r.next=3
|
||
break
|
||
case 8:r.next=13
|
||
break
|
||
case 10:r.prev=10,r.t1=r["catch"](1),e.e(r.t1)
|
||
case 13:return r.prev=13,e.f(),r.finish(13)
|
||
case 16:case"end":return r.stop()}},r,this,[[1,10,13,16]])})},{key:"keyPairs",value:_regeneratorRuntime().mark(function a(){var e,t,n,r,i,s,o,u
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:e=_createForOfIteratorHelper(this._firstMap.entries()),a.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){a.next=24
|
||
break}n=_slicedToArray(t.value,2),r=n[0],i=n[1],s=_createForOfIteratorHelper(i.keys()),a.prev=6,s.s()
|
||
case 8:if((o=s.n()).done){a.next=14
|
||
break}return u=o.value,a.next=12,[r,u]
|
||
case 12:a.next=8
|
||
break
|
||
case 14:a.next=19
|
||
break
|
||
case 16:a.prev=16,a.t0=a["catch"](6),s.e(a.t0)
|
||
case 19:return a.prev=19,s.f(),a.finish(19)
|
||
case 22:a.next=3
|
||
break
|
||
case 24:a.next=29
|
||
break
|
||
case 26:a.prev=26,a.t1=a["catch"](1),e.e(a.t1)
|
||
case 29:return a.prev=29,e.f(),a.finish(29)
|
||
case 32:case"end":return a.stop()}},a,this,[[1,26,29,32],[6,16,19,22]])})},{key:"entries",value:_regeneratorRuntime().mark(function i(){var e,t,n,r,a,s,o,u,l,c
|
||
return _regeneratorRuntime().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:e=_createForOfIteratorHelper(this._firstMap.entries()),i.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){i.next=24
|
||
break}n=_slicedToArray(t.value,2),r=n[0],a=n[1],s=_createForOfIteratorHelper(a.entries()),i.prev=6,s.s()
|
||
case 8:if((o=s.n()).done){i.next=14
|
||
break}return u=_slicedToArray(o.value,2),l=u[0],c=u[1],i.next=12,[r,l,c]
|
||
case 12:i.next=8
|
||
break
|
||
case 14:i.next=19
|
||
break
|
||
case 16:i.prev=16,i.t0=i["catch"](6),s.e(i.t0)
|
||
case 19:return i.prev=19,s.f(),i.finish(19)
|
||
case 22:i.next=3
|
||
break
|
||
case 24:i.next=29
|
||
break
|
||
case 26:i.prev=26,i.t1=i["catch"](1),e.e(i.t1)
|
||
case 29:return i.prev=29,e.f(),i.finish(29)
|
||
case 32:case"end":return i.stop()}},i,this,[[1,26,29,32],[6,16,19,22]])})}]),t}(_C16.DefendedBase)
|
||
var _C17=self.C3
|
||
_C17.ArraySet=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),e._set=new Set,e._arr=[],e._needToRebuildArray=!1,e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.Clear()}},{key:"Clear",value:function(){this._set.clear(),_C17.clearArray(this._arr),this._needToRebuildArray=!1}},{key:"Add",value:function(e){this._set.has(e)||(this._set.add(e),this._needToRebuildArray||this._arr.push(e))}},{key:"Has",value:function(e){return this._set.has(e)}},{key:"Delete",value:function(e){this._set["delete"](e)&&(this._needToRebuildArray=!0)}},{key:"GetSize",value:function(){return this._set.size}},{key:"IsEmpty",value:function(){return 0===this._set.size}},{key:"GetArray",value:function(){return this._needToRebuildArray&&(this._RebuildArray(),this._needToRebuildArray=!1),this._arr}},{key:"_RebuildArray",value:function(){var e=this._arr
|
||
_C17.clearArray(e)
|
||
var t,n=_createForOfIteratorHelper(this._set)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
e.push(r)}}catch(a){n.e(a)}finally{n.f()}}}]),t}(_C17.DefendedBase)
|
||
var _C18=self.C3,EASE_MAP=new Map,PREDEFINED_EASE_MAP=new Map,CUSTOM_EASE_EDITOR_MAP=new Map,CUSTOM_EASE_RUNTIME_MAP=new Map,PRIVATE_EASE_MAP=new Map,ALIAS_MAP=new Map
|
||
ALIAS_MAP.set("linear","noease"),ALIAS_MAP.set("default","noease"),self.Ease=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"InheritEase",value:function(){return"default"}},{key:"DefaultEase",value:function(){return"noease"}},{key:"GetEditorEaseNames",value:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
this._CreateEaseMap(),CUSTOM_EASE_EDITOR_MAP.has(e)||CUSTOM_EASE_EDITOR_MAP.set(e,new Map)
|
||
var a=CUSTOM_EASE_EDITOR_MAP.get(e)
|
||
return _toConsumableArray(PREDEFINED_EASE_MAP.keys()).concat(_toConsumableArray(a.keys())).filter(function(e){return!n.includes(e)})}},{key:"GetRuntimeEaseNames",value:function(){return this._CreateEaseMap(),_toConsumableArray(PREDEFINED_EASE_MAP.keys()).concat(_toConsumableArray(CUSTOM_EASE_RUNTIME_MAP.keys()))}},{key:"IsNamePredefined",value:function(e){return this._CreateEaseMap(),_toConsumableArray(PREDEFINED_EASE_MAP.keys()).includes(e)}},{key:"_GetEase",value:function(t){var n=ALIAS_MAP.get(t)
|
||
return n?EASE_MAP.get(n):e.IsNamePredefined(t)?EASE_MAP.get(t):PRIVATE_EASE_MAP.has(t)?PRIVATE_EASE_MAP.get(t):void 0}},{key:"GetEditorEase",value:function(t,n){this._CreateEaseMap()
|
||
var r=e._GetEase(t)
|
||
return r?r:CUSTOM_EASE_EDITOR_MAP.get(n).get(t)}},{key:"GetRuntimeEase",value:function(t){this._CreateEaseMap()
|
||
var n=e._GetEase(t)
|
||
return n?n:CUSTOM_EASE_RUNTIME_MAP.get(t)}},{key:"GetEaseFromIndex",value:function(e){this._CreateEaseMap()
|
||
var t=this.GetRuntimeEaseNames()
|
||
return t[e]}},{key:"GetIndexForEase",value:function(e,t){this._CreateEaseMap()
|
||
var n=this.GetEditorEaseNames(t)
|
||
return n.indexOf(e)}},{key:"_CreateEaseMap",value:function(){0===EASE_MAP.size&&(this._AddPredifinedEase("default",function(){}),this._AddPredifinedEase("noease",this.NoEase),this._AddPredifinedEase("easeinsine",this.EaseInSine),this._AddPredifinedEase("easeoutsine",this.EaseOutSine),this._AddPredifinedEase("easeinoutsine",this.EaseInOutSine),this._AddPredifinedEase("easeinelastic",this.EaseInElastic),this._AddPredifinedEase("easeoutelastic",this.EaseOutElastic),this._AddPredifinedEase("easeinoutelastic",this.EaseInOutElastic),this._AddPredifinedEase("easeinback",this.EaseInBack),this._AddPredifinedEase("easeoutback",this.EaseOutBack),this._AddPredifinedEase("easeinoutback",this.EaseInOutBack),this._AddPredifinedEase("easeinbounce",this.EaseInBounce),this._AddPredifinedEase("easeoutbounce",this.EaseOutBounce),this._AddPredifinedEase("easeinoutbounce",this.EaseInOutBounce),this._AddPredifinedEase("easeincubic",this.EaseInCubic),this._AddPredifinedEase("easeoutcubic",this.EaseOutCubic),this._AddPredifinedEase("easeinoutcubic",this.EaseInOutCubic),this._AddPredifinedEase("easeinquad",this.EaseInQuad),this._AddPredifinedEase("easeoutquad",this.EaseOutQuad),this._AddPredifinedEase("easeinoutquad",this.EaseInOutQuad),this._AddPredifinedEase("easeinquart",this.EaseInQuart),this._AddPredifinedEase("easeoutquart",this.EaseOutQuart),this._AddPredifinedEase("easeinoutquart",this.EaseInOutQuart),this._AddPredifinedEase("easeinquint",this.EaseInQuint),this._AddPredifinedEase("easeoutquint",this.EaseOutQuint),this._AddPredifinedEase("easeinoutquint",this.EaseInOutQuint),this._AddPredifinedEase("easeincirc",this.EaseInCirc),this._AddPredifinedEase("easeoutcirc",this.EaseOutCirc),this._AddPredifinedEase("easeinoutcirc",this.EaseInOutCirc),this._AddPredifinedEase("easeinexpo",this.EaseInExpo),this._AddPredifinedEase("easeoutexpo",this.EaseOutExpo),this._AddPredifinedEase("easeinoutexpo",this.EaseInOutExpo),this._AddPrivateCustomEase("cubicbezier",this.EaseCubicBezier),this._AddPrivateCustomEase("spline",this.EaseSpline))}},{key:"_AddPredifinedEase",value:function(t,n){e._AddEase(t,n,"predefined")}},{key:"_AddPrivateCustomEase",value:function(t,n){e._AddEase(t,n,"private")}},{key:"AddCustomEase",value:function(t,n,r){this._CreateEaseMap(),e._AddEase(t,n,"custom",r)}},{key:"RemoveCustomEase",value:function(e,t){if(!this.IsNamePredefined(e)&&!_toConsumableArray(PRIVATE_EASE_MAP.keys()).includes(e)){var n=CUSTOM_EASE_EDITOR_MAP.get(t)
|
||
n&&n["delete"](e)}}},{key:"_AddEase",value:function(e,t,n,r){switch(n){case"predefined":EASE_MAP.set(e,t),PREDEFINED_EASE_MAP.set(e,t)
|
||
break
|
||
case"custom":if(r){CUSTOM_EASE_EDITOR_MAP.has(r)||CUSTOM_EASE_EDITOR_MAP.set(r,new Map)
|
||
var a=CUSTOM_EASE_EDITOR_MAP.get(r)
|
||
a.set(e,t)}else CUSTOM_EASE_RUNTIME_MAP.set(e,t)
|
||
break
|
||
case"private":EASE_MAP.set(e,t),PRIVATE_EASE_MAP.set(e,t)
|
||
break
|
||
default:throw Error("unexpected ease mode")}}},{key:"NoEase",value:function(e,t,n,r){return n*e/r+t}},{key:"EaseInQuad",value:function(e,t,n,r){return n*(e/=r)*e+t}},{key:"EaseOutQuad",value:function(e,t,n,r){return-n*(e/=r)*(e-2)+t}},{key:"EaseInOutQuad",value:function(e,t,n,r){return(e/=r/2)<1?n/2*e*e+t:-n/2*(--e*(e-2)-1)+t}},{key:"EaseInCubic",value:function(e,t,n,r){return n*(e/=r)*e*e+t}},{key:"EaseOutCubic",value:function(e,t,n,r){return n*((e=e/r-1)*e*e+1)+t}},{key:"EaseInOutCubic",value:function(e,t,n,r){return(e/=r/2)<1?n/2*e*e*e+t:n/2*((e-=2)*e*e+2)+t}},{key:"EaseInQuart",value:function(e,t,n,r){return n*(e/=r)*e*e*e+t}},{key:"EaseOutQuart",value:function(e,t,n,r){return-n*((e=e/r-1)*e*e*e-1)+t}},{key:"EaseInOutQuart",value:function(e,t,n,r){return(e/=r/2)<1?n/2*e*e*e*e+t:-n/2*((e-=2)*e*e*e-2)+t}},{key:"EaseInQuint",value:function(e,t,n,r){return n*(e/=r)*e*e*e*e+t}},{key:"EaseOutQuint",value:function(e,t,n,r){return n*((e=e/r-1)*e*e*e*e+1)+t}},{key:"EaseInOutQuint",value:function(e,t,n,r){return(e/=r/2)<1?n/2*e*e*e*e*e+t:n/2*((e-=2)*e*e*e*e+2)+t}},{key:"EaseInSine",value:function(e,t,n,r){return-n*Math.cos(e/r*(Math.PI/2))+n+t}},{key:"EaseOutSine",value:function(e,t,n,r){return n*Math.sin(e/r*(Math.PI/2))+t}},{key:"EaseInOutSine",value:function(e,t,n,r){return-n/2*(Math.cos(Math.PI*e/r)-1)+t}},{key:"EaseInExpo",value:function(e,t,n,r){return 0===e?t:n*Math.pow(2,10*(e/r-1))+t}},{key:"EaseOutExpo",value:function(e,t,n,r){return e===r?t+n:n*(-Math.pow(2,-10*e/r)+1)+t}},{key:"EaseInOutExpo",value:function(e,t,n,r){return 0===e?t:e===r?t+n:(e/=r/2)<1?n/2*Math.pow(2,10*(e-1))+t:n/2*(-Math.pow(2,-10*--e)+2)+t}},{key:"EaseInCirc",value:function(e,t,n,r){return-n*(Math.sqrt(1-(e/=r)*e)-1)+t}},{key:"EaseOutCirc",value:function(e,t,n,r){return n*Math.sqrt(1-(e=e/r-1)*e)+t}},{key:"EaseInOutCirc",value:function(e,t,n,r){return(e/=r/2)<1?-n/2*(Math.sqrt(1-e*e)-1)+t:n/2*(Math.sqrt(1-(e-=2)*e)+1)+t}},{key:"EaseInElastic",value:function(e,t,n,r){var a=1.70158,i=0,s=n
|
||
return 0===e?t:1===(e/=r)?t+n:(i||(i=.3*r),s<Math.abs(n)?(s=n,a=i/4):a=i/(2*Math.PI)*Math.asin(n/s),-(s*Math.pow(2,10*(e-=1))*Math.sin((e*r-a)*(2*Math.PI)/i))+t)}},{key:"EaseOutElastic",value:function(e,t,n,r){var a=1.70158,i=0,s=n
|
||
return 0===e?t:1===(e/=r)?t+n:(i||(i=.3*r),s<Math.abs(n)?(s=n,a=i/4):a=i/(2*Math.PI)*Math.asin(n/s),s*Math.pow(2,-10*e)*Math.sin((e*r-a)*(2*Math.PI)/i)+n+t)}},{key:"EaseInOutElastic",value:function(e,t,n,r){var a=1.70158,i=0,s=n
|
||
return 0===e?t:2===(e/=r/2)?t+n:(i||(i=r*(.3*1.5)),s<Math.abs(n)?(s=n,a=i/4):a=i/(2*Math.PI)*Math.asin(n/s),1>e?-.5*(s*Math.pow(2,10*(e-=1))*Math.sin((e*r-a)*(2*Math.PI)/i))+t:s*Math.pow(2,-10*(e-=1))*Math.sin((e*r-a)*(2*Math.PI)/i)*.5+n+t)}},{key:"EaseInBack",value:function(e,t,n,r,a){return void 0===a&&(a=1.70158),n*(e/=r)*e*((a+1)*e-a)+t}},{key:"EaseOutBack",value:function(e,t,n,r,a){return void 0===a&&(a=1.70158),n*((e=e/r-1)*e*((a+1)*e+a)+1)+t}},{key:"EaseInOutBack",value:function(e,t,n,r,a){return void 0===a&&(a=1.70158),(e/=r/2)<1?n/2*(e*e*(((a*=1.525)+1)*e-a))+t:n/2*((e-=2)*e*(((a*=1.525)+1)*e+a)+2)+t}},{key:"EaseInBounce",value:function(t,n,r,a){return r-e.EaseOutBounce(a-t,0,r,a)+n}},{key:"EaseOutBounce",value:function(e,t,n,r){return(e/=r)<1/2.75?n*(7.5625*e*e)+t:2/2.75>e?n*(7.5625*(e-=1.5/2.75)*e+.75)+t:2.5/2.75>e?n*(7.5625*(e-=2.25/2.75)*e+.9375)+t:n*(7.5625*(e-=2.625/2.75)*e+.984375)+t}},{key:"EaseInOutBounce",value:function(t,n,r,a){return a/2>t?.5*e.EaseInBounce(2*t,0,r,a)+n:.5*e.EaseOutBounce(2*t-a,0,r,a)+.5*r+n}},{key:"EaseCubicBezier",value:function(e,t,n,r,a){var i=t,s=3*e*(n-t),o=3*Math.pow(e,2)*(t+r-2*n),u=Math.pow(e,3)*(a-t+3*n-3*r)
|
||
return i+s+o+u}},{key:"EaseSpline",value:function(e,t,n,r,i,s,o,u,l,h){if(r===i&&s===o)return e
|
||
var _=get_t_for_x(e,t,r,s,u,h),f=a(n,i,o,l),d=b(n,i,o,l),p=c(n,i,o,l)
|
||
return calc_bezier(_,f,d,p)}},{key:"GetBezierSamples",value:function(e,t,n,r){for(var i=[],s=a(e,t,n,r),o=b(e,t,n,r),u=c(e,t,n,r),l=0;SAMPLE_COUNT>l;++l){var h=calc_bezier(l*SAMPLE_STEP,s,o,u)
|
||
i.push(h)}return i}}]),e}()
|
||
var SAMPLE_COUNT=11,SAMPLE_STEP=1/(SAMPLE_COUNT-1),NEWTON_RAPHSON_ITERATIONS=4,NEWTON_RAPHSON_MIN_SLOPE=.02,SUBDIVISION_PRECISION=1e-7,SUBDIVISION_MAX_ITERATIONS=10,a=function(e,t,n,r){return r-3*n+3*t-e},b=function(e,t,n,r){return 3*n-6*t+3*e},c=function(e,t,n,r){return 3*(t-e)},calc_bezier=function(e,t,n,r){return((t*e+n)*e+r)*e},get_slope=function(e,t,n,r){return 3*t*e*e+2*n*e+r},get_t_for_x=function(e,t,n,r,i,s){if(1==e)return 1
|
||
var o=0,u=1,l=s[u],h=SAMPLE_COUNT-1
|
||
for(s[SAMPLE_COUNT-1];u!=h&&e>=l;)u++,l=s[u],o+=SAMPLE_STEP
|
||
u--,l=s[u]
|
||
var _=(e-l)/(s[u+1]-l),f=o+_*SAMPLE_STEP,d=a(t,n,r,i),p=b(t,n,r,i),v=c(t,n,r,i),m=get_slope(f,d,p,v)
|
||
if(0===m)return f
|
||
if(m>=NEWTON_RAPHSON_MIN_SLOPE){for(var y=0;NEWTON_RAPHSON_ITERATIONS>y;++y){var g=calc_bezier(f,d,p,v)-e,C=get_slope(f,d,p,v)
|
||
f-=g/C}return f}var S,k,I=o,T=o+SAMPLE_STEP,G=0
|
||
do{f=I+(T-I)/2
|
||
var A=calc_bezier(f,d,p,v)-e
|
||
A>0?T=f:I=f,S=Math.abs(A)>SUBDIVISION_PRECISION,k=++G<SUBDIVISION_MAX_ITERATIONS}while(S&&k)
|
||
return f},RequireStringOrNumber=function(e){!_C19.IsString(e)},_C19=self.C3
|
||
_C19.ProbabilityTable=function(){function e(){_classCallCheck(this,e),this._items=[],this._totalWeight=0}return _createClass(e,[{key:"Release",value:function(){this.Clear(),this._items=null}},{key:"Clear",value:function(){_C19.clear2DArray(this._items),this._totalWeight=0}},{key:"GetTotalWeight",value:function(){return this._totalWeight}},{key:"Sample",value:function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Math.random()*this.GetTotalWeight(),n=0,r=_createForOfIteratorHelper(this._items)
|
||
try{for(r.s();!(e=r.n()).done;){var a=_slicedToArray(e.value,2),i=a[0],s=a[1]
|
||
if(n+=i,n>t)return s}}catch(o){r.e(o)}finally{r.f()}return 0}},{key:"AddItem",value:function(e,t){RequireStringOrNumber(t),this._totalWeight+=e,this._items.push([e,t])}},{key:"RemoveItem",value:function(e,t){RequireStringOrNumber(t)
|
||
for(var n=0===e,r=0;r<this._items.length;r++){var a=this._items[r],i=n||a[0]===e,s=a[1]===t
|
||
if(i&&s){this._items.splice(r,1),this._totalWeight-=a[0]
|
||
break}}}},{key:"asJSON",value:function(){return JSON.stringify(this._items)}}],[{key:"fromJSON",value:function(e){var t,n=new _C19.ProbabilityTable,r=JSON.parse(e),a=_createForOfIteratorHelper(r)
|
||
try{for(a.s();!(t=a.n()).done;){var i=t.value,s=i[0],o=i[1]
|
||
n.AddItem(s,o)}}catch(u){a.e(u)}finally{a.f()}return n}}]),e}()
|
||
var _C20=self.C3
|
||
_C20.Event=function(){function e(t,n){_classCallCheck(this,e),this.type=t,this.cancelable=!!n,this.defaultPrevented=!1,this.propagationStopped=!1,this.isAsync=!1}return _createClass(e,[{key:"preventDefault",value:function(){if(!this.cancelable)throw Error("event '".concat(this.type,"' is not cancelable"))
|
||
this.defaultPrevented=!0}},{key:"stopPropagation",value:function(){if(!this.cancelable)throw Error("event '".concat(this.type,"' cannot be stopped"))
|
||
if(this.isAsync)throw Error("cannot stop async event '".concat(this.type,"' propagation"))
|
||
this.propagationStopped=!0}}]),e}()
|
||
var _C21=self.C3,_assert=self.assert
|
||
_C21.Event.Handler=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._type=e,r._captureListeners=[],r._captureListenersSet=new Set,r._listeners=[],r._listenersSet=new Set,r._fireDepth=0,r._queueAddListeners=[],r._queueRemoveCaptureListeners=[],r._queueRemoveListeners=[],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._fireDepth>0||(_C21.clearArray(this._captureListeners),this._captureListenersSet.clear(),_C21.clearArray(this._listeners),this._listenersSet.clear(),_C21.clearArray(this._queueAddListeners),_C21.clearArray(this._queueRemoveCaptureListeners),_C21.clearArray(this._queueRemoveListeners),_C21.Release(this))}},{key:"_AddListener",value:function(e,t){if(this._IsFiring())return void this._queueAddListeners.push([e,t])
|
||
if(t){if(this._captureListenersSet.has(e))return
|
||
this._captureListeners.push(e),this._captureListenersSet.add(e)}else{if(this._listenersSet.has(e))return
|
||
this._listeners.push(e),this._listenersSet.add(e)}}},{key:"_RemoveListener",value:function(e,t){return this._IsFiring()?void(t?this._queueRemoveCaptureListeners.push(e):this._queueRemoveListeners.push(e)):void(t?this._captureListenersSet.has(e)&&(this._captureListenersSet["delete"](e),_C21.arrayFindRemove(this._captureListeners,e)):this._listenersSet.has(e)&&(this._listenersSet["delete"](e),_C21.arrayFindRemove(this._listeners,e)))}},{key:"_IsEmpty",value:function(){return!this._captureListeners.length&&!this._listeners.length}},{key:"_IsFiring",value:function(){return this._fireDepth>0}},{key:"_ProcessQueuedListeners",value:function(){var e,t=_createForOfIteratorHelper(this._queueAddListeners)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
this._AddListener.apply(this,_toConsumableArray(n))}}catch(r){t.e(r)}finally{t.f()}_C21.clearArray(this._queueAddListeners)
|
||
var a,i=_createForOfIteratorHelper(this._queueRemoveListeners)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
this._listenersSet["delete"](s)}}catch(r){i.e(r)}finally{i.f()}var o,u=_createForOfIteratorHelper(this._queueRemoveCaptureListeners)
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value
|
||
this._captureListenersSet["delete"](l)}}catch(r){u.e(r)}finally{u.f()}var c=new Set(this._queueRemoveListeners),h=new Set(this._queueRemoveCaptureListeners)
|
||
_C21.arrayRemoveAllInSet(this._listeners,c),_C21.arrayRemoveAllInSet(this._captureListeners,h),_C21.clearArray(this._queueRemoveCaptureListeners),_C21.clearArray(this._queueRemoveListeners)}},{key:"_FireCancellable",value:function(e){this._IncreaseFireDepth()
|
||
for(var t=!1,n=0,r=this._captureListeners.length;r>n;++n)if(this._captureListeners[n](e),e.propagationStopped){t=!0
|
||
break}if(!t)for(var a=0,i=this._listeners.length;i>a&&(this._listeners[a](e),!e.propagationStopped);++a);return this._DecreaseFireDepth(),!e.defaultPrevented}},{key:"_FireNonCancellable",value:function(e){this._IncreaseFireDepth()
|
||
for(var t=0,n=this._captureListeners.length;n>t;++t)this._captureListeners[t](e)
|
||
for(var r=0,a=this._listeners.length;a>r;++r)this._listeners[r](e)
|
||
return this._DecreaseFireDepth(),!0}},{key:"_IncreaseFireDepth",value:function(){this._fireDepth++}},{key:"_DecreaseFireDepth",value:function(){this._fireDepth--,0===this._fireDepth&&(this._queueAddListeners.length||this._queueRemoveCaptureListeners.length||this._queueRemoveListeners.length)&&this._ProcessQueuedListeners()}},{key:"SetDelayRemoveEventsEnabled",value:function(e){e?this._IncreaseFireDepth():this._DecreaseFireDepth()}},{key:"_FireAsync",value:function(e){for(var t=this,n=[],r=function(r,a){var i=t._captureListeners[r]
|
||
n.push(_C21.Asyncify(function(){return i(e)}))},a=0,i=this._captureListeners.length;i>a;++a)r(a,i)
|
||
for(var s=function(r,a){var i=t._listeners[r]
|
||
n.push(_C21.Asyncify(function(){return i(e)}))},o=0,u=this._listeners.length;u>o;++o)s(o,u)
|
||
return Promise.all(n).then(function(){return!e.defaultPrevented})}},{key:"_FireAndWait_AsyncOptional",value:function(e){var t=[]
|
||
this._IncreaseFireDepth()
|
||
for(var n=0,r=this._captureListeners.length;r>n;++n){var a=this._captureListeners[n](e)
|
||
a instanceof Promise&&t.push(a)}for(var i=0,s=this._listeners.length;s>i;++i){var o=this._listeners[i](e)
|
||
o instanceof Promise&&t.push(o)}return this._DecreaseFireDepth(),t.length?Promise.all(t).then(function(){return!e.defaultPrevented}):!e.defaultPrevented}},{key:"_FireAndWaitAsync",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this._FireAndWait_AsyncOptional(e)
|
||
case 2:return t.abrupt("return",t.sent)
|
||
case 3:case"end":return t.stop()}},n,this)}))
|
||
return e}()},{key:"_FireAndWaitAsyncSequential",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:this._IncreaseFireDepth(),t=0,r=this._captureListeners.length
|
||
case 2:if(!(r>t)){n.next=10
|
||
break}if(a=this._captureListeners[t](e),!(a instanceof Promise)){n.next=7
|
||
break}return n.next=7,a
|
||
case 7:++t,n.next=2
|
||
break
|
||
case 10:i=0,s=this._listeners.length
|
||
case 11:if(!(s>i)){n.next=19
|
||
break}if(o=this._listeners[i](e),!(o instanceof Promise)){n.next=16
|
||
break}return n.next=16,o
|
||
case 16:++i,n.next=11
|
||
break
|
||
case 19:return this._DecreaseFireDepth(),n.abrupt("return",!e.defaultPrevented)
|
||
case 21:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_FireAsGenerator",value:_regeneratorRuntime().mark(function r(e){var t,n,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:this._IncreaseFireDepth(),t=0,n=this._captureListeners.length
|
||
case 2:if(!(n>t)){r.next=9
|
||
break}if(a=this._captureListeners[t](e),!_C21.IsIterator(a)){r.next=6
|
||
break}return r.delegateYield(a,"t0",6)
|
||
case 6:++t,r.next=2
|
||
break
|
||
case 9:i=0,s=this._listeners.length
|
||
case 10:if(!(s>i)){r.next=17
|
||
break}if(o=this._listeners[i](e),!_C21.IsIterator(o)){r.next=14
|
||
break}return r.delegateYield(o,"t1",14)
|
||
case 14:++i,r.next=10
|
||
break
|
||
case 17:this._DecreaseFireDepth()
|
||
case 18:case"end":return r.stop()}},r,this)})}]),t}(_C21.DefendedBase)
|
||
var _C22=self.C3
|
||
_C22.Event.Dispatcher=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),e._eventHandlers=new Map,e._dispatcherWasReleased=!1,e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){if(this._dispatcherWasReleased)throw Error("already released")
|
||
this.ClearEvents(),this._dispatcherWasReleased=!0,_C22.Release(this)}},{key:"WasReleased",value:function(){return this._dispatcherWasReleased}},{key:"ClearEvents",value:function(){var e,t=_createForOfIteratorHelper(this._eventHandlers.values())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}this._eventHandlers.clear()}},{key:"_GetHandlerByType",value:function(e,t){var n=this._eventHandlers.get(e)
|
||
return n?n:t?(n=_C22.New(_C22.Event.Handler,e),this._eventHandlers.set(e,n),n):null}},{key:"HasAnyHandlerFor",value:function(e){return this._eventHandlers.has(e)}},{key:"addEventListener",value:function(e,t,n){var r=this._GetHandlerByType(e,!0)
|
||
r._AddListener(t,!!n)}},{key:"removeEventListener",value:function(e,t,n){var r=this._GetHandlerByType(e,!1)
|
||
r&&(r._RemoveListener(t,!!n),r._IsEmpty()&&this._eventHandlers["delete"](e))}},{key:"dispatchEvent",value:function(e){var t=this._GetHandlerByType(e.type,!1)
|
||
return t?e.cancelable?t._FireCancellable(e):t._FireNonCancellable(e):!0}},{key:"dispatchEventAsync",value:function(e){var t=this._GetHandlerByType(e.type,!1)
|
||
return t?(e.isAsync=!0,t._FireAsync(e)):Promise.resolve(!0)}},{key:"dispatchEventAndClearAsync",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(t=this._GetHandlerByType(e.type,!1)){n.next=3
|
||
break}return n.abrupt("return",!0)
|
||
case 3:return this._eventHandlers["delete"](e.type),e.isAsync=!0,n.next=7,t._FireAsync(e)
|
||
case 7:return r=n.sent,t.Release(),n.abrupt("return",r)
|
||
case 10:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"dispatchEventAndWaitAsync",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(t=this._GetHandlerByType(e.type,!1)){n.next=3
|
||
break}return n.abrupt("return",!0)
|
||
case 3:return n.next=5,t._FireAndWaitAsync(e)
|
||
case 5:return n.abrupt("return",n.sent)
|
||
case 6:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"dispatchEventAndWait_AsyncOptional",value:function(e){var t=this._GetHandlerByType(e.type,!1)
|
||
return t?t._FireAndWait_AsyncOptional(e):!0}},{key:"dispatchEventAndWaitAsyncSequential",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(t=this._GetHandlerByType(e.type,!1)){n.next=3
|
||
break}return n.abrupt("return",!0)
|
||
case 3:return n.next=5,t._FireAndWaitAsyncSequential(e)
|
||
case 5:return n.abrupt("return",n.sent)
|
||
case 6:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"dispatchGeneratorEvent",value:function(e){var t=this._GetHandlerByType(e.type,!1)
|
||
if(!t)return null
|
||
if(e.cancelable)throw Error("not supported")
|
||
return t._FireAsGenerator(e)}},{key:"SetDelayRemoveEventsEnabled",value:function(e){var t,n=_createForOfIteratorHelper(this._eventHandlers.values())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.SetDelayRemoveEventsEnabled(e)}}catch(a){n.e(a)}finally{n.f()}}}]),t}(_C22.DefendedBase)
|
||
var SetNewCallback=function(e){callbackId=SUPPORTS_RIC&&0===highThroughputMode?requestIdleCallback(DoAsyncifiedWork,{timeout:IDLECALLBACK_TIMEOUT}):setTimeout(DoAsyncifiedWork,highThroughputMode>0?1:e)},DoAsyncifiedWork=function(e){if(callbackId=-1,workQueue.length){var t=performance.now(),n=t,r=0,a=0
|
||
do DoNextAsyncifiedJob(workQueue.shift()),n=performance.now(),++r,a=(n-t)/r*1.1
|
||
while(workQueue.length&&(SUPPORTS_RIC&&0===highThroughputMode&&void 0!==e?a<e.timeRemaining():SETTIMEOUT_WORK_DURATION>n-t+a))
|
||
if(-1===callbackId&&workQueue.length){var i=n-t,s=Math.max(SETTIMEOUT_INTERVAL-i,4)
|
||
SetNewCallback(s)}}},DoNextAsyncifiedJob=function(e){var t
|
||
try{t=e.func()}catch(n){return void e.reject(n)}e.resolve(t)},_C23=self.C3,SETTIMEOUT_WORK_DURATION=12,SETTIMEOUT_INTERVAL=16,IDLECALLBACK_TIMEOUT=35,SUPPORTS_RIC="undefined"!=typeof requestIdleCallback,workQueue=[],callbackId=-1,highThroughputMode=0,asyncifyDisabled=_C23.QueryString.Has("disable-asyncify")
|
||
asyncifyDisabled&&console.warn("[Asyncify] Asyncify has been disabled due to disable-asyncify in the query string. Some work will now be done synchronously."),_C23.Asyncify=function(e){var t=null
|
||
return _C23.isDebug&&(t=_C23.GetCallStack()),new Promise(function(n,r){return workQueue.push({func:e,resolve:n,reject:r,stack:t}),asyncifyDisabled?void DoNextAsyncifiedJob(workQueue.pop()):void(-1===callbackId&&SetNewCallback(SETTIMEOUT_INTERVAL))})},_C23.Asyncify.SetHighThroughputMode=function(e){if(e)++highThroughputMode
|
||
else if(--highThroughputMode,0>highThroughputMode)throw Error("already turned off high throughput mode")}
|
||
var ClearTimeCache=function(){cachedNowTime=-1},CheckActiveIdleTimeouts=function h(){timerId=-1,nextDeadline=-1
|
||
var e,t=Date.now(),n=_createForOfIteratorHelper(activeIdleTimeouts)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
if(r._CheckTimeout(t)){var a=r._GetDeadline();(-1===nextDeadline||nextDeadline>a)&&(nextDeadline=a)}else activeIdleTimeouts["delete"](r)}}catch(i){n.e(i)}finally{n.f()}if(-1!==nextDeadline){var s=Math.max(nextDeadline-t+IDLE_CHECK_TIMER_OVERSHOOT,IDLE_CHECK_MIN_INTERVAL)
|
||
timerId=self.setTimeout(h,s)}},_C24=self.C3,IDLE_CHECK_MIN_INTERVAL=1e3,IDLE_CHECK_TIMER_OVERSHOOT=100,cachedNowTime=-1
|
||
_C24.FastGetDateNow=function(){return-1===cachedNowTime&&(cachedNowTime=Date.now(),self.setTimeout(ClearTimeCache,16)),cachedNowTime}
|
||
var timerId=-1,nextDeadline=-1,activeIdleTimeouts=new Set
|
||
_C24.IdleTimeout=function(){function e(t,n){_classCallCheck(this,e),this._callback=t,this._timeout=1e3*n,this._deadline=0,this._isActive=!1}return _createClass(e,[{key:"Reset",value:function(){var e=_C24.FastGetDateNow()
|
||
this._deadline=e+this._timeout,this._isActive||(activeIdleTimeouts.add(this),this._isActive=!0),-1===timerId?(nextDeadline=this._deadline,timerId=self.setTimeout(CheckActiveIdleTimeouts,this._timeout+IDLE_CHECK_TIMER_OVERSHOOT)):this._deadline<nextDeadline&&nextDeadline>e+IDLE_CHECK_MIN_INTERVAL&&(self.clearTimeout(timerId),nextDeadline=this._deadline,timerId=self.setTimeout(CheckActiveIdleTimeouts,this._timeout+IDLE_CHECK_TIMER_OVERSHOOT))}},{key:"_CheckTimeout",value:function(e){return e>=this._deadline?this._callback()?(this._deadline=e+this._timeout,!0):(this._isActive=!1,!1):!0}},{key:"_GetDeadline",value:function(){return this._deadline}},{key:"Cancel",value:function(){this._isActive&&(activeIdleTimeouts["delete"](this),this._isActive=!1,0===activeIdleTimeouts.size&&-1!==timerId&&(self.clearTimeout(timerId),timerId=-1,nextDeadline=-1))}},{key:"Release",value:function(){this.Cancel(),this._callback=null}}]),e}()
|
||
var _C25=self.C3
|
||
_C25.Disposable=function(){function e(t){_classCallCheck(this,e),this._disposed=!1,this._disposeAction=t}return _createClass(e,[{key:"Dispose",value:function(){this._disposed||(this._disposed=!0,this._disposeAction&&(this._disposeAction(),this._disposeAction=null))}},{key:"IsDisposed",value:function(){return this._disposed}},{key:"Release",value:function(){this.Dispose()}}],[{key:"Release",value:function(t){return new e(function(){return t.Release()})}},{key:"From",value:function(e,t,n,r,a){if(void 0===r||null===r)r=!1
|
||
else if("boolean"!=typeof r&&"object"!==_typeof(r))throw new TypeError("invalid event listener options")
|
||
if(a&&(n=n.bind(a)),t.includes(" ")){t=t.split(" ")
|
||
var i,s=new _C25.CompositeDisposable,o=_createForOfIteratorHelper(t)
|
||
try{var u=function(){var t=i.value
|
||
e.addEventListener(t,n,r),s.Add(_C25.New(_C25.Disposable,function(){return e.removeEventListener(t,n,r)}))}
|
||
for(o.s();!(i=o.n()).done;)u()}catch(l){o.e(l)}finally{o.f()}return s}return e.addEventListener(t,n,r),_C25.New(_C25.Disposable,function(){return e.removeEventListener(t,n,r)})}}]),e}(),_C25.StubDisposable=function(e){function t(){return _classCallCheck(this,t),n.apply(this,arguments)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"SetAction",value:function(e){this._disposeAction=e}}]),t}(_C25.Disposable),_C25.CompositeDisposable=function(e){function t(){var e
|
||
_classCallCheck(this,t),e=n.call(this),e._disposables=new Set
|
||
for(var r=arguments.length,a=Array(r),i=0;r>i;i++)a[i]=arguments[i]
|
||
for(var s=0,o=a;s<o.length;s++){var u=o[s]
|
||
e.Add(u)}return e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Add",value:function(){if(this._disposed)throw Error("already disposed")
|
||
for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
for(var r=0,a=t;r<a.length;r++){var i=a[r]
|
||
this._disposables.add(i)}}},{key:"Remove",value:function(e){if(this._disposed)throw Error("already disposed")
|
||
this._disposables["delete"](e)}},{key:"RemoveAll",value:function(){if(this._disposed)throw Error("already disposed")
|
||
if(this._disposables){var e,t=_createForOfIteratorHelper(this._disposables)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Dispose()}}catch(r){t.e(r)}finally{t.f()}this._disposables.clear()}}},{key:"IsDisposed",value:function(){return this._disposed}},{key:"Dispose",value:function(){if(this._disposed)throw Error("already disposed")
|
||
this._disposed=!0
|
||
var e,t=_createForOfIteratorHelper(this._disposables)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Dispose()}}catch(r){t.e(r)}finally{t.f()}this._disposables.clear(),this._disposables=null}},{key:"Release",value:function(){this.Dispose()}}]),t}(_C25.Disposable)
|
||
var _C26=self.C3
|
||
_C26.KahanSum=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),e._c=0,e._y=0,e._t=0,e._sum=0,e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Add",value:function(e){e=+e,this._y=e-this._c,this._t=this._sum+this._y,this._c=this._t-this._sum-this._y,this._sum=this._t}},{key:"Subtract",value:function(e){this._sum-=+e}},{key:"Get",value:function(){return this._sum}},{key:"Reset",value:function(){this._c=0,this._y=0,this._t=0,this._sum=0}},{key:"Set",value:function(e){this._c=0,this._y=0,this._t=0,this._sum=+e}},{key:"Release",value:function(){}}]),t}(_C26.DefendedBase)
|
||
var _C27=self.C3,js_cols={},RED=!0,BLACK=!1
|
||
js_cols.RBnode=function(e){this.tree=e,this.right=this.tree.sentinel,this.left=this.tree.sentinel,this.parent=null,this.color=!1,this.key=null},js_cols.RedBlackSet=function(e){this.size=0,this.sentinel=new js_cols.RBnode(this),this.sentinel.color=BLACK,this.root=this.sentinel,this.root.parent=this.sentinel,this.compare=e||this.default_compare},js_cols.RedBlackSet.prototype.default_compare=function(e,t){return t>e?-1:e>t?1:0},js_cols.RedBlackSet.prototype.clone=function(){var e=new js_cols.RedBlackSet(this.compare)
|
||
return e.insertAll(this),e},js_cols.RedBlackSet.prototype.clear=function(){this.size=0,this.sentinel=new js_cols.RBnode(this),this.sentinel.color=BLACK,this.root=this.sentinel,this.root.parent=this.sentinel},js_cols.RedBlackSet.prototype.leftRotate=function(e){var t=e.right
|
||
e.right=t.left,t.left!=this.sentinel&&(t.left.parent=e),t.parent=e.parent,e.parent==this.sentinel?this.root=t:e==e.parent.left?e.parent.left=t:e.parent.right=t,t.left=e,e.parent=t},js_cols.RedBlackSet.prototype.rightRotate=function(e){var t=e.left
|
||
e.left=t.right,t.right!=this.sentinel&&(t.right.parent=e),t.parent=e.parent,e.parent==this.sentinel?this.root=t:e==e.parent.right?e.parent.right=t:e.parent.left=t,t.right=e,e.parent=t},js_cols.RedBlackSet.prototype.insert=function(e){if(this.contains(e)){var t=this.get_(e)
|
||
t.key=e}else{var n=new js_cols.RBnode(this)
|
||
n.key=e
|
||
for(var r=this.sentinel,a=this.root;a!=this.sentinel;)r=a,a=this.compare(n.key,a.key)<0?a.left:a.right
|
||
n.parent=r,r==this.sentinel?this.root=n:this.compare(n.key,r.key)<0?r.left=n:r.right=n,n.left=this.sentinel,n.right=this.sentinel,n.color=RED,this.insertFixup(n),this.size++}},js_cols.RedBlackSet.prototype.insertFixup=function(e){for(;e!=this.sentinel&&e!=this.root&&e.parent.color==RED;)if(e.parent==e.parent.parent.left){var t=e.parent.parent.right
|
||
t.color==RED?(e.parent.color=BLACK,t.color=BLACK,e.parent.parent.color=RED,e=e.parent.parent):(e==e.parent.right&&(e=e.parent,this.leftRotate(e)),e.parent.color=BLACK,e.parent.parent.color=RED,e.parent.parent!=this.sentinel&&this.rightRotate(e.parent.parent))}else{var t=e.parent.parent.left
|
||
t.color==RED?(e.parent.color=BLACK,t.color=BLACK,e.parent.parent.color=RED,e=e.parent.parent):(e==e.parent.left&&(e=e.parent,this.rightRotate(e)),e.parent.color=BLACK,e.parent.parent.color=RED,e.parent.parent!=this.sentinel&&this.leftRotate(e.parent.parent))}this.root.color=BLACK},js_cols.RedBlackSet.prototype.delete_=function(e){var t,n
|
||
t=e.left==this.sentinel||e.right==this.sentinel?e:this.successor_(e),n=t.left!=this.sentinel?t.left:t.right,n.parent=t.parent,t.parent==this.sentinel?this.root=n:t==t.parent.left?t.parent.left=n:t.parent.right=n,t!=e&&(e.key=t.key),t.color==BLACK&&this.deleteFixup(n),this.size--},js_cols.RedBlackSet.prototype.deleteFixup=function(e){for(;e!=this.root&&e.color==BLACK;)if(e==e.parent.left){var t=e.parent.right
|
||
t.color==RED&&(t.color=BLACK,e.parent.color=RED,this.leftRotate(e.parent),t=e.parent.right),t.left.color==BLACK&&t.right.color==BLACK?(t.color=RED,e=e.parent):(t.right.color==BLACK&&(t.left.color=BLACK,t.color=RED,this.rightRotate(t),t=e.parent.right),t.color=e.parent.color,e.parent.color=BLACK,t.right.color=BLACK,this.leftRotate(e.parent),e=this.root)}else{var t=e.parent.left
|
||
t.color==RED&&(t.color=BLACK,e.parent.color=RED,this.rightRotate(e.parent),t=e.parent.left),t.right.color==BLACK&&t.left.color==BLACK?(t.color=RED,e=e.parent):(t.left.color==BLACK&&(t.right.color=BLACK,t.color=RED,this.leftRotate(t),t=e.parent.left),t.color=e.parent.color,e.parent.color=BLACK,t.left.color=BLACK,this.rightRotate(e.parent),e=this.root)}e.color=BLACK},js_cols.RedBlackSet.prototype.remove=function(e){var t=this.get_(e)
|
||
if(t!=this.sentinel){var n=t.key
|
||
return this.delete_(t),n}return null},js_cols.RedBlackSet.prototype.removeSwapped=function(e,t){this.remove(t)},js_cols.RedBlackSet.prototype.min=function(e){for(;e.left!=this.sentinel;)e=e.left
|
||
return e},js_cols.RedBlackSet.prototype.max=function(e){for(;e.right!=this.sentinel;)e=e.right
|
||
return e},js_cols.RedBlackSet.prototype.successor_=function(e){if(e.right!=this.sentinel)return this.min(e.right)
|
||
for(var t=e.parent;t!=this.sentinel&&e==t.right;)e=t,t=t.parent
|
||
return t},js_cols.RedBlackSet.prototype.predeccessor_=function(e){if(e.left!=this.sentinel)return this.max(e.left)
|
||
for(var t=e.parent;t!=this.sentinel&&e==t.left;)e=t,t=t.parent
|
||
return t},js_cols.RedBlackSet.prototype.successor=function(e){if(this.size>0){var t=this.get_(e)
|
||
if(t==this.sentinel)return null
|
||
if(t.right!=this.sentinel)return this.min(t.right).key
|
||
for(var n=t.parent;n!=this.sentinel&&t==n.right;)t=n,n=n.parent
|
||
return n!=this.sentinel?n.key:null}return null},js_cols.RedBlackSet.prototype.predecessor=function(e){if(this.size>0){var t=this.get_(e)
|
||
if(t==this.sentinel)return null
|
||
if(t.left!=this.sentinel)return this.max(t.left).key
|
||
for(var n=t.parent;n!=this.sentinel&&t==n.left;)t=n,n=n.parent
|
||
return n!=this.sentinel?n.key:null}return null},js_cols.RedBlackSet.prototype.getMin=function(){return this.min(this.root).key},js_cols.RedBlackSet.prototype.getMax=function(){return this.max(this.root).key},js_cols.RedBlackSet.prototype.get_=function(e){for(var t=this.root;t!=this.sentinel&&0!=this.compare(t.key,e);)t=this.compare(e,t.key)<0?t.left:t.right
|
||
return t},js_cols.RedBlackSet.prototype.contains=function(e){return null!=this.get_(e).key},js_cols.RedBlackSet.prototype.getValues=function(){var e=[]
|
||
return this.forEach(function(t){e.push(t)}),e},js_cols.RedBlackSet.prototype.insertAll=function(e){if("array"==js_cols.typeOf(e))for(var t=0;t<e.length;t++)this.insert(e[t])
|
||
else if("function"==js_cols.typeOf(e.forEach))e.forEach(this.insert,this)
|
||
else if("function"==js_cols.typeOf(e.getValues))for(var n=e.getValues(),t=0;t<n.length;t++)this.insert(n[t])
|
||
else if("object"==js_cols.typeOf(e))for(var r in e)this.insert(e[r])},js_cols.RedBlackSet.prototype.removeAll=function(e){if("array"==js_cols.typeOf(e))for(var t=0;t<e.length;t++)this.remove(e[t])
|
||
else if("function"==js_cols.typeOf(e.forEach))e.forEach(this.removeSwapped,this)
|
||
else if("function"==js_cols.typeOf(e.getValues))for(var n=e.getValues(),t=0;t<n.length;t++)this.remove(n[t])
|
||
else if("object"==js_cols.typeOf(e))for(var r in e)this.remove(e[r])},js_cols.RedBlackSet.prototype.containsAll=function(e){if("array"==js_cols.typeOf(e)){for(var t=0;t<e.length;t++)if(!this.contains(e[t]))return!1
|
||
return!0}if("function"==js_cols.typeOf(e.forEach))return e.every(this.contains,this)
|
||
if("function"==js_cols.typeOf(e.getValues)){for(var n=e.getValues(),t=0;t<n.length;t++)if(!this.contains(n[t]))return!1
|
||
return!0}if("object"==js_cols.typeOf(e)){for(var r in e)if(!this.contains(e[r]))return!1
|
||
return!0}},js_cols.RedBlackSet.prototype.range=function(e,t){var n=[]
|
||
return this.traverseFromTo(function(e){n.push(e)},e,t),n},js_cols.RedBlackSet.prototype.traverse=function(e,t){if(!this.isEmpty())for(var n=this.min(this.root);n!=this.sentinel;){if(e.call(t,n.key,this))return
|
||
n=this.successor_(n)}},js_cols.RedBlackSet.prototype.traverseFrom=function(e,t,n){if(!this.isEmpty())for(var r=this.get_(t);r!=this.sentinel;){if(e.call(n,r.key,this))return
|
||
r=this.successor_(r)}},js_cols.RedBlackSet.prototype.traverseTo=function(e,t,n){if(!this.isEmpty())for(var r=this.min(this.root),a=this.get_(t);r!=a;){if(e.call(n,r.key,this))return
|
||
r=this.successor_(r)}},js_cols.RedBlackSet.prototype.traverseFromTo=function(e,t,n,r){if(!this.isEmpty())for(var a=this.get_(t),i=this.get_(n);a!=i;){if(e.call(r,a.key,this))return
|
||
a=this.successor_(a)}},js_cols.RedBlackSet.prototype.traverseBackwards=function(e,t){if(!this.isEmpty())for(var n=this.max(this.root);n!=this.sentinel;){if(e.call(t,n.key,this))return
|
||
n=this.predeccessor_(n)}},js_cols.RedBlackSet.prototype.forEach=function(e,t){if(!this.isEmpty())for(var n=this.min(this.root);n!=this.sentinel;n=this.successor_(n))e.call(t,n.key,n.key,this)},js_cols.RedBlackSet.prototype.some=function(e,t){if(this.isEmpty())return!1
|
||
for(var n=this.min(this.root);n!=this.sentinel;n=this.successor_(n))if(e.call(t,n.key,n.key,this))return!0
|
||
return!1},js_cols.RedBlackSet.prototype.every=function(e,t){if(this.isEmpty())return!1
|
||
for(var n=this.min(this.root);n!=this.sentinel;n=this.successor_(n))if(!e.call(t,n.key,n.key,this))return!1
|
||
return!0},js_cols.RedBlackSet.prototype.map=function(e,t){var n=[]
|
||
if(this.isEmpty())return n
|
||
for(var r=this.min(this.root);r!=this.sentinel;r=this.successor_(r))n.push(e.call(t,r.key,r.key,this))
|
||
return n},js_cols.RedBlackSet.prototype.filter=function(e,t){var n=[]
|
||
if(this.isEmpty())return n
|
||
for(var r=this.min(this.root);r!=this.sentinel;r=this.successor_(r))e.call(t,r.key,r.key,this)&&n.push(r.key)
|
||
return n},js_cols.RedBlackSet.prototype.getCount=function(){return this.size},js_cols.RedBlackSet.prototype.isEmpty=function(){return 0==this.size},js_cols.RedBlackSet.prototype.isSubsetOf=function(e){var t=js_cols.getCount(e)
|
||
if(this.getCount()>t)return!1
|
||
var n=0
|
||
if(this.isEmpty())return!0
|
||
for(var r=this.min(this.root);r!=this.sentinel;r=this.successor_(r))js_cols.contains.call(e,e,r.key)&&n++
|
||
return n==this.getCount()},js_cols.RedBlackSet.prototype.intersection=function(e){var t=new js_cols.RedBlackSet(this.compare)
|
||
if(this.isEmpty())return t
|
||
for(var n=this.min(this.root);n!=this.sentinel;n=this.successor_(n))e.contains.call(e,n.key,n.key,this)&&t.insert(n.key)
|
||
return t},_C27.RedBlackSet=function(e,t){function n(e){var t
|
||
return _classCallCheck(this,n),t=r.call(this),t._rbSet=new js_cols.RedBlackSet(e),t._enableQueue=!1,t._queueInsert=new Set,t._queueRemove=new Set,t}_inherits(n,e)
|
||
var r=_createSuper(n)
|
||
return _createClass(n,[{key:"Add",value:function(e){this._enableQueue?this._rbSet.contains(e)?this._queueRemove["delete"](e):this._queueInsert.add(e):this._rbSet.insert(e)}},{key:"Remove",value:function(e){this._enableQueue?this._rbSet.contains(e)?this._queueRemove.add(e):this._queueInsert["delete"](e):this._rbSet.remove(e)}},{key:"Has",value:function(e){return this._enableQueue?this._queueInsert.has(e)?!0:!this._queueRemove.has(e)&&this._rbSet.contains(e):this._rbSet.contains(e)}},{key:"Clear",value:function(){this._rbSet.clear(),this._queueInsert.clear(),this._queueRemove.clear()}},{key:"toArray",value:function(){if(this._enableQueue)throw Error("cannot be used in queueing mode")
|
||
return this._rbSet.getValues()}},{key:"GetSize",value:function(){return this._rbSet.getCount()+this._queueInsert.size-this._queueRemove.size}},{key:"IsEmpty",value:function(){return 0===this.GetSize()}},{key:"Front",value:function(){if(this.IsEmpty())throw Error("empty set")
|
||
if(this._enableQueue)throw Error("cannot be used in queueing mode")
|
||
var e=this._rbSet,t=e.min(e.root)
|
||
return t.key}},{key:"Shift",value:function(){if(this.IsEmpty())throw Error("empty set")
|
||
if(this._enableQueue)throw Error("cannot be used in queueing mode")
|
||
var e=this.Front()
|
||
return this.Remove(e),e}},{key:"SetQueueingEnabled",value:function(e){if(e=!!e,this._enableQueue!==e&&(this._enableQueue=e,!e)){var t,n=_createForOfIteratorHelper(this._queueRemove)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
this._rbSet.remove(r)}}catch(a){n.e(a)}finally{n.f()}this._queueRemove.clear()
|
||
var i,s=_createForOfIteratorHelper(this._queueInsert)
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
this._rbSet.insert(o)}}catch(a){s.e(a)}finally{s.f()}this._queueInsert.clear()}}},{key:"ForEach",value:function(e){this._rbSet.forEach(e)}},{key:"values",value:_regeneratorRuntime().mark(function a(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this.IsEmpty()){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:e=this._rbSet,t=e.min(e.root)
|
||
case 4:if(t==e.sentinel){n.next=10
|
||
break}return n.next=7,t.key
|
||
case 7:t=e.successor_(t),n.next=4
|
||
break
|
||
case 10:case"end":return n.stop()}},a,this)})},{key:t,value:function(){return this.values()}}]),n}(_C27.DefendedBase,Symbol.iterator)
|
||
var _C28=self.C3
|
||
_C28.PromiseThrottle=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:_C28.hardwareConcurrency
|
||
_classCallCheck(this,e),this._maxParallel=t,this._queue=[],this._activeCount=0}return _createClass(e,[{key:"Add",value:function(e){var t=this
|
||
return new Promise(function(n,r){t._queue.push({func:e,resolve:n,reject:r}),t._MaybeStartNext()})}},{key:"_FindInQueue",value:function(e){for(var t=0,n=this._queue.length;n>t;++t)if(this._queue[t].func===e)return t
|
||
return-1}},{key:"RemoveAndResolve",value:function(e,t){var n=this._FindInQueue(e)
|
||
if(-1===n)throw Error("cannot find promise to resolve")
|
||
this._queue[n].resolve(t),this._queue.splice(n,1)}},{key:"RemoveAndReject",value:function(e,t){var n=this._FindInQueue(e)
|
||
if(-1===n)throw Error("cannot find promise to reject")
|
||
this._queue[n].reject(t),this._queue.splice(n,1)}},{key:"_MaybeStartNext",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this._queue.length){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:if(!(this._activeCount>=this._maxParallel)){n.next=4
|
||
break}return n.abrupt("return")
|
||
case 4:return this._activeCount++,e=this._queue.shift(),n.prev=6,n.next=9,e.func()
|
||
case 9:t=n.sent,e.resolve(t),n.next=16
|
||
break
|
||
case 13:n.prev=13,n.t0=n["catch"](6),e.reject(n.t0)
|
||
case 16:this._activeCount--,this._MaybeStartNext()
|
||
case 18:case"end":return n.stop()}},n,this,[[6,13]])}))
|
||
return e}()}],[{key:"Batch",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r,a,i,s
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:for(r=[],a=!1,i=function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var i
|
||
return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!(i=t.pop())){e.next=17
|
||
break}if(!a){e.next=3
|
||
break}return e.abrupt("return")
|
||
case 3:return e.prev=3,e.t0=r,e.next=7,i()
|
||
case 7:e.t1=e.sent,e.t0.push.call(e.t0,e.t1),e.next=15
|
||
break
|
||
case 11:throw e.prev=11,e.t2=e["catch"](3),a=!0,e.t2
|
||
case 15:e.next=0
|
||
break
|
||
case 17:case"end":return e.stop()}},n,null,[[3,11]])}))
|
||
return function(t){return e.apply(this,arguments)}}(),s=[];e--;)s.push(i())
|
||
return n.next=7,Promise.all(s)
|
||
case 7:return n.abrupt("return",r)
|
||
case 8:case"end":return n.stop()}},n)}))
|
||
return e}()}]),e}()
|
||
var _C29=self.C3
|
||
_C29.RateLimiter=function(){function e(t,n,r){var a=this
|
||
_classCallCheck(this,e),this._callback=t,this._interval=n,this._intervalOnBattery=r||2*n,this._timerId=-1,this._lastCallTime=-(1/0),this._timerCallFunc=function(){return a._OnTimer()},this._ignoreReset=!1,this._canRunImmediate=!1,this._callbackArguments=null}return _createClass(e,[{key:"SetCanRunImmediate",value:function(e){this._canRunImmediate=!!e}},{key:"_GetInterval",value:function(){return void 0!==_C29.Battery&&_C29.Battery.IsOnBatteryPower()?this._intervalOnBattery:this._interval}},{key:"Call",value:function(){if(-1===this._timerId){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
this._callbackArguments=t
|
||
var r=_C29.FastGetDateNow(),a=r-this._lastCallTime,i=this._GetInterval()
|
||
a>=i&&this._canRunImmediate?(this._lastCallTime=r,this._RunCallback()):this._timerId=self.setTimeout(this._timerCallFunc,Math.max(i-a,4))}}},{key:"_RunCallback",value:function(){this._ignoreReset=!0
|
||
var e=this._callbackArguments
|
||
this._callbackArguments=null,e?this._callback.apply(this,_toConsumableArray(e)):this._callback(),this._ignoreReset=!1}},{key:"Reset",value:function(){this._ignoreReset||(this._CancelTimer(),this._callbackArguments=null,this._lastCallTime=_C29.FastGetDateNow())}},{key:"_OnTimer",value:function(){this._timerId=-1,this._lastCallTime=_C29.FastGetDateNow(),this._RunCallback()}},{key:"_CancelTimer",value:function(){-1!==this._timerId&&(self.clearTimeout(this._timerId),this._timerId=-1)}},{key:"Release",value:function(){this._CancelTimer(),this._callback=null,this._callbackArguments=null,this._timerCallFunc=null}}]),e}()
|
||
var _C30=self.C3
|
||
_C30.SVGRasterManager=function(){function e(){_classCallCheck(this,e),this._images=new Map,this._allowNpotSurfaces=!1,this._getBaseSizeCallback=null,this._rasterAtSizeCallback=null,this._releaseResultCallback=null,this._redrawCallback=null}return _createClass(e,[{key:"SetNpotSurfaceAllowed",value:function(e){this._allowNpotSurfaces=!!e}},{key:"IsNpotSurfaceAllowed",value:function(){return this._allowNpotSurfaces}},{key:"SetGetBaseSizeCallback",value:function(e){this._getBaseSizeCallback=e}},{key:"GetBaseSize",value:function(e){if(!this._getBaseSizeCallback)throw Error("no get base size callback set")
|
||
return this._getBaseSizeCallback(e)}},{key:"SetRasterAtSizeCallback",value:function(e){this._rasterAtSizeCallback=e}},{key:"RasterAtSize",value:function(e,t,n,r,a,i){if(!this._rasterAtSizeCallback)throw Error("no raster at size callback set")
|
||
return this._rasterAtSizeCallback(e,t,n,r,a,i)}},{key:"SetReleaseResultCallback",value:function(e){this._releaseResultCallback=e}},{key:"ReleaseResult",value:function(e){if(!this._releaseResultCallback)throw Error("no release result callback set")
|
||
this._releaseResultCallback(e)}},{key:"SetRedrawCallback",value:function(e){this._redrawCallback=e}},{key:"Redraw",value:function(){if(!this._redrawCallback)throw Error("no redraw callback set")
|
||
this._redrawCallback()}},{key:"AddImage",value:function(e){var t=this._images.get(e)
|
||
return t||(t=_C30.New(_C30.SVGRasterImage,this,e),this._images.set(e,t)),t.IncReference(),t}},{key:"_RemoveImage",value:function(e){this._images["delete"](e.GetDataSource())}}]),e}()
|
||
var _C31=self.C3,MAX_SURFACE_SIZE=2048
|
||
_C31.SVGRasterImage=function(){function e(t,n){var r=this
|
||
_classCallCheck(this,e),this._manager=t,this._dataSource=n,this._refCount=0,this._baseWidth=0,this._baseHeight=0,this._getBaseSizePromise=this._manager.GetBaseSize(n).then(function(e){r._baseWidth=e[0],r._baseHeight=e[1],r._manager.Redraw()})["catch"](function(e){console.error("[SVG] Error loading SVG: ",e),r._hadError=!0,r._manager.Redraw()}),this._rasterSurfaceWidth=0,this._rasterSurfaceHeight=0,this._rasterImageWidth=0,this._rasterImageHeight=0,this._isRasterizing=!1,this._rasterizedResult=null,this._forceRaster=!1,this._hadError=!1}return _createClass(e,[{key:"Release",value:function(){if(this._refCount<=0)throw Error("already released")
|
||
this._refCount--,0===this._refCount&&this._Release()}},{key:"_Release",value:function(){this._rasterizedResult&&(this._manager.ReleaseResult(this._rasterizedResult),this._rasterizedResult=null),this._manager._RemoveImage(this),this._manager=null}},{key:"GetDataSource",value:function(){return this._dataSource}},{key:"IncReference",value:function(){this._refCount++}},{key:"HasReferences",value:function(){return this._refCount>0}},{key:"GetRasterizedResult",value:function(){return this._rasterizedResult}},{key:"ForceRasterAgain",value:function(){this._forceRaster=!0}},{key:"StartRasterForSize",value:function(){function e(e,n,r){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r){var a,i,s,o,u,l,c
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(0!==t&&0!==r&&!this._hadError){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:if(!this._isRasterizing){n.next=4
|
||
break}return n.abrupt("return")
|
||
case 4:if(a=_C31.nextHighestPowerOfTwo(Math.ceil(t)),i=_C31.nextHighestPowerOfTwo(Math.ceil(r)),s=Math.max(a,i),s>MAX_SURFACE_SIZE&&(o=MAX_SURFACE_SIZE/s,t*=o,r*=o,a=Math.min(Math.ceil(a*o),MAX_SURFACE_SIZE),i=Math.min(Math.ceil(i*o),MAX_SURFACE_SIZE)),a>t&&i>r&&(u=t/r,l=a/i,l>u?(t=i*u,r=i):(t=a,r=a/u)),this._manager.IsNpotSurfaceAllowed()&&(a=Math.ceil(t),i=Math.ceil(r)),!(a<=this._rasterSurfaceWidth&&i<=this._rasterSurfaceHeight)||this._forceRaster){n.next=12
|
||
break}return n.abrupt("return")
|
||
case 12:return this._isRasterizing=!0,this._rasterSurfaceWidth=a,this._rasterSurfaceHeight=i,n.next=17,this._manager.RasterAtSize(this._dataSource,e,this._rasterSurfaceWidth,this._rasterSurfaceHeight,t,r)
|
||
case 17:c=n.sent,this._rasterizedResult&&this._manager.ReleaseResult(this._rasterizedResult),this._rasterizedResult=c,this._rasterImageWidth=t,this._rasterImageHeight=r,this._isRasterizing=!1,this._forceRaster=!1,this._manager.Redraw()
|
||
case 25:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"WhenBaseSizeReady",value:function(){return this._getBaseSizePromise}},{key:"GetBaseWidth",value:function(){return this._baseWidth}},{key:"GetBaseHeight",value:function(){return this._baseHeight}},{key:"GetRasterWidth",value:function(){return this._rasterImageWidth}},{key:"GetRasterHeight",value:function(){return this._rasterImageHeight}},{key:"HadError",value:function(){return this._hadError}}]),e}()
|
||
var lookupHtmlEntity=function(e){return HTML_ENTITY_MAP.get(e)},_C32=self.C3
|
||
_C32.UTF8_BOM="\ufeff"
|
||
var NUMERIC_CHARS=new Set(_toConsumableArray("0123456789"))
|
||
_C32.IsNumericChar=function(e){return NUMERIC_CHARS.has(e)}
|
||
var WHITESPACE_CHARS=new Set(_toConsumableArray(" \n\r
\u2028\u2029 "))
|
||
_C32.IsWhitespaceChar=function(e){return WHITESPACE_CHARS.has(e)},_C32.FilterWhitespace=function(e){return _toConsumableArray(e).filter(function(e){return!_C32.IsWhitespaceChar(e)}).join("")},_C32.IsStringAllWhitespace=function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(!_C32.IsWhitespaceChar(r))return!1}}catch(a){n.e(a)}finally{n.f()}return!0},_C32.IsUnprintableChar=function(e){return 1===e.length&&e.charCodeAt(0)<32},_C32.FilterUnprintableChars=function(e){return _toConsumableArray(e).filter(function(e){return!_C32.IsUnprintableChar(e)}).join("")}
|
||
var NUMERIC_STRING_CHARS=new Set(_toConsumableArray("0123456789.+-e"))
|
||
_C32.IsStringNumber=function(e){if(e=e.trim(),!e.length)return!1
|
||
var t=e.charAt(0)
|
||
if("-"!==t&&!NUMERIC_CHARS.has(t))return!1
|
||
var n,r=_createForOfIteratorHelper(e)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(!NUMERIC_STRING_CHARS.has(a))return!1}}catch(i){r.e(i)}finally{r.f()}return!0},_C32.RemoveTrailingDigits=function(e){for(var t=e.length;t>0;){var n=e.charAt(t-1)
|
||
if(!_C32.IsNumericChar(n))break;--t}return e.substr(0,t)},_C32.IncrementNumberAtEndOf=function(e){var t=_C32.RemoveTrailingDigits(e),n=e.substr(t.length)
|
||
return n=n?""+(parseInt(n,10)+1):"2",t+n}
|
||
var HTML_ENTITY_MAP=new Map([["&","&"],["<","<"],[">",">"],['"',"""],["'","'"]]),HTML_ENTITY_REGEX=/[&<>"']/g
|
||
_C32.EscapeHTML=function(e){return e.replace(HTML_ENTITY_REGEX,lookupHtmlEntity)},_C32.EscapeJS=function(e){var t=_C32.ReplaceAll(e,"\\","\\\\")
|
||
return t=_C32.ReplaceAll(t,'"','\\"'),t=_C32.ReplaceAll(t," ","\\t"),t=_C32.ReplaceAll(t,"\r",""),_C32.ReplaceAll(t,"\n","\\n")},_C32.EscapeXML=function(e){var t=_C32.ReplaceAll(e,"&","&")
|
||
return t=_C32.ReplaceAll(t,"<","<"),t=_C32.ReplaceAll(t,">",">"),_C32.ReplaceAll(t,'"',""")}
|
||
var ESCAPE_REGEX=/[-[\]{}()*+?.,\\^$|#\s]/g
|
||
_C32.EscapeRegex=function(e){return e.replace(ESCAPE_REGEX,"\\$&")},_C32.FindAll=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:!1
|
||
if(!t)return[]
|
||
n||(e=e.toLowerCase(),t=t.toLowerCase())
|
||
for(var r=t.length,a=0,i=0,s=[];(i=e.indexOf(t,a))>-1;)s.push(i),a=i+r
|
||
return s},_C32.ReplaceAll=function(e,t,n){return e.replaceAll(t,function(){return n})},_C32.ReplaceAllCaseInsensitive=function(e,t,n){return e.replace(RegExp(_C32.EscapeRegex(t),"gi"),function(){return n})},_C32.SetElementContent=function(e,t){"string"==typeof t?e.textContent=t:t.isPlainText()?e.textContent=""+t:(e.innerHTML=t.toHTML(),t instanceof _C32.BBString&&t.attachLinkHandlers(e))},_C32.StringLikeEquals=function(e,t){return e instanceof _C32.HtmlString||e instanceof _C32.BBString?e.equals(t):t instanceof _C32.HtmlString||t instanceof _C32.BBString?t.equals(e):e===t},_C32.StringSubstitute=function(e){for(var t=e,n=arguments.length,r=Array(n>1?n-1:0),a=1;n>a;a++)r[a-1]=arguments[a]
|
||
for(var i=0,s=r.length;s>i;++i){var o="{".concat(i,"}")
|
||
if(!e.includes(o))throw Error("missing placeholder '".concat(o,"' in string substitution"))
|
||
t=t.replace(o,""+r[i])}return t},_C32.StringSubstituteAllowMissing=function(e){for(var t=e,n=-1,r=-1,a=arguments.length,i=Array(a>1?a-1:0),s=1;a>s;s++)i[s-1]=arguments[s]
|
||
for(var o=0,u=i.length;u>o;++o){var l="{".concat(o,"}")
|
||
e.includes(l)?(r=o,t=t.replace(l,""+i[o])):-1===n&&(n=o)}if(n>=0&&r>=0&&r>n)throw Error("missing placeholder '".concat(n,"' in string substitution"))
|
||
return t},_C32.StringSubstituteMap=function(e,t){for(var n=e,r=0,a=Object.entries(t);r<a.length;r++){var i=_slicedToArray(a[r],2),s=i[0],o=i[1]
|
||
n=n.replaceAll(s,""+o)}return n},_C32.SortAZCaseInsensitive=function(e,t){var n=e.toLowerCase(),r=t.toLowerCase()
|
||
return n>r?1:r>n?-1:0}
|
||
var KILOBYTE=1024,MEGABYTE=1024*KILOBYTE,GIGABYTE=1024*MEGABYTE,TERABYTE=1024*GIGABYTE
|
||
_C32.FormatDataSize=function(e,t){var n="common."+(t?"dataRates":"dataSizes")+".",r=self.langSub
|
||
if(KILOBYTE>e)return r(n+"bytes",e)
|
||
if(MEGABYTE>e){var a=e/KILOBYTE
|
||
return a=10>a?Math.round(10*a)/10:Math.round(a),r(n+"kilobytes",a)}if(GIGABYTE>e){var i=e/MEGABYTE
|
||
return i=10>i?Math.round(10*i)/10:Math.round(i),r(n+"megabytes",i)}if(TERABYTE>e){var s=e/GIGABYTE
|
||
return s=10>s?Math.round(10*s)/10:Math.round(s),r(n+"gigabytes",s)}var o=e/TERABYTE
|
||
return o=10>o?Math.round(10*o)/10:Math.round(o),r(n+"terabytes",o)}
|
||
var DEFAULT_FORMATTIME_OPTS={approximate:!1,days:!0,hours:!0,minutes:!0,seconds:!0}
|
||
_C32.FormatTime=function(e,t){t=Object.assign({},DEFAULT_FORMATTIME_OPTS,t),_C32.Lang.PushContext("common.time")
|
||
var n=[],r=self.lang,a=self.langPluralSub
|
||
if(t.days){var i=Math.floor(e/86400)
|
||
i>0&&(e-=24*i*3600,n.push(a(".days",null,i)))}if(t.hours){var s=Math.floor(e/3600);(s>0||n.length)&&(e-=3600*s,n.push(a(".hours",null,s)))}if(t.minutes){var o=Math.floor(e/60);(o>0||n.length||!t.seconds)&&(e-=60*o,n.push(a(".minutes",null,o)))}if(t.seconds){var u=Math.floor(e%60)
|
||
n.push(a(".seconds",null,u))}var l=(t.approximate?r(".approx-prefix"):"")+n.join(r(".separator"))
|
||
return _C32.Lang.PopContext(),l},_C32.ZeroPad=function(e,t){var n=0>e?"-":""
|
||
e=Math.abs(e)
|
||
for(var r=""+e,a=t-r.length,i=0;a>i;++i)n+="0"
|
||
return n+r},_C32.StringToTitleCase=function(e){return e.toLowerCase().replace(/\b\w/g,function(e){return e.toUpperCase()})},_C32.CompareVersionStrings=function(e,t){var n=e.split(".").map(function(e){return e.trim()}),r=t.split(".").map(function(e){return e.trim()})
|
||
_C32.resizeArray(n,4,"0"),_C32.resizeArray(r,4,"0"),n=n.map(function(e){return parseInt(e,10)}),r=r.map(function(e){return parseInt(e,10)})
|
||
for(var a=0;4>a;++a){var i=n[a]-r[a]
|
||
if(0!==i)return 0>i?-1:1}return 0},_C32.CreateGUID=function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){var t=Math.floor(16*Math.random()),n="x"===e?t:3&t|8
|
||
return n.toString(16)})},_C32.StringHammingDistance=function(e,t){if(e.length!==t.length)throw Error("strings must be same length")
|
||
for(var n=0,r=0,a=e.length;a>r;++r)e.charAt(r)!==t.charAt(r)&&++n
|
||
return n},_C32.StringLevenshteinDistance=function(e,t){if(0===e.length)return t.length
|
||
if(0===t.length)return e.length
|
||
var n,r,a,i,s,o
|
||
for(e.length>t.length&&(n=e,e=t,t=n),o=Array(e.length+1),r=0;r<=e.length;r++)o[r]=r
|
||
for(r=1;r<=t.length;r++){for(i=r,a=1;a<=e.length;a++)s=t[r-1]===e[a-1]?o[a-1]:Math.min(o[a-1]+1,Math.min(i+1,o[a]+1)),o[a-1]=i,i=s
|
||
o[e.length]=i}return o[e.length]}
|
||
var bbToHtmlReplacerFunc=function(e,t,n){var r=BB_CODE_MAP.get(n)
|
||
if(!r)return"class"===n?t?"</span>":'<span class="bbclass'.concat(classIndex++,'">'):e
|
||
if("string"==typeof r){if("a"!==r||t)return"<"+t+r+">"
|
||
var a=parseInt(n.substring(1),10)-1
|
||
if(0>a||a>=linkActions.length)throw Error("invalid bbcode link substitution")
|
||
var i=linkActions[a]
|
||
if("string"==typeof i)return'<a href="'.concat(linkActions[a],'">')
|
||
if("function"==typeof i)return'<a class="bblink'.concat(a,'">')
|
||
throw new TypeError("invalid bbcode link action")}if(Array.isArray(r)){var s=r[0],o=r[1]
|
||
return t?"</"+s+">":"<".concat(s,' class="').concat(o,'">')}},_C33=self.C3,_assert2=self.assert,BB_CODE_MAP=new Map([["b","strong"],["i","em"],["s","s"],["u","u"],["sub","sub"],["sup","sup"],["small","small"],["mark","mark"],["a1","a"],["a2","a"],["a3","a"],["a4","a"],["a5","a"],["a6","a"],["a7","a"],["a8","a"],["a9","a"],["bad",["span","bbCodeBad"]],["good",["span","bbCodeGood"]],["info",["span","bbCodeInfo"]],["h1",["span","bbCodeH1"]],["h2",["span","bbCodeH2"]],["h3",["span","bbCodeH3"]],["h4",["span","bbCodeH4"]],["item",["span","bbCodeItem"]]]),BBREGEX=/\[(\/?)([a-zA-Z0-9]+)\]/g,CUSTOM_BBREGEX=/\[(\/?)([^\[]*?)\]/g,linkActions=null,classIndex=0,LINEBREAK_REGEX=/\n/g
|
||
_C33.BBString=function(){function e(t,n){if(_classCallCheck(this,e),this._bbstr=n&&n.noEscape?t:_C33.EscapeHTML(t),this._htmlstr="",this._convertLineBreaks=!1,this._linkActions=[],n&&(this._convertLineBreaks=!!n.convertLineBreaks,n.links)){if(n.links.length>9)throw Error("too many links")
|
||
this._linkActions=n.links}this._hasAnyBBtags=this._bbstr.includes("["),this._needsLineBreakConversion=this._convertLineBreaks&&this._bbstr.includes("\n"),this._isPlain=!this._hasAnyBBtags&&!this._needsLineBreakConversion&&!this._bbstr.includes("&"),this._hasParsedFragments=!1,this._fragments=[]}return _createClass(e,[{key:"toString",value:function(){return this._bbstr}},{key:"valueOf",value:function(){return this._bbstr}},{key:"isPlainText",value:function(){return this._isPlain}},{key:"toPlainText",value:function(){return this._hasAnyBBtags?this._bbstr.replace(BBREGEX,""):this._bbstr}},{key:"toHTML",value:function(){if(this._isPlain)return this._bbstr
|
||
if(!this._htmlstr&&this._bbstr){var e=this._bbstr
|
||
this._hasAnyBBtags&&(classIndex=0,linkActions=this._linkActions,e=e.replace(BBREGEX,bbToHtmlReplacerFunc),linkActions=null),this._needsLineBreakConversion&&(e=e.replace(LINEBREAK_REGEX,"<br>")),this._htmlstr=e}return this._htmlstr}},{key:"attachLinkHandlers",value:function(e){if(this._linkActions.length)for(var t=0,n=this._linkActions.length;n>t;++t){var r=this._linkActions[t]
|
||
if("function"==typeof r){var a=e.querySelector(".bblink"+t)
|
||
if(!a)throw Error("unable to attach BBString link handler")
|
||
a.onclick=r}}}},{key:"equals",value:function(e){return e instanceof _C33.HtmlString?this.toHTML()===e.toHTML():e instanceof _C33.BBString?this._bbstr===e._bbstr:this._bbstr===e}},{key:"toFragmentList",value:function(){if(this._hasParsedFragments)return this._fragments
|
||
var e=this._bbstr,t=[]
|
||
CUSTOM_BBREGEX.lastIndex=0
|
||
for(var n=0,r=null;null!==(r=CUSTOM_BBREGEX.exec(e));){var a=r.index
|
||
if(!(a>0&&"\\"===e.charAt(a-1))){var i=r[0],s=r[1],o=r[2],u=e.substring(n,a)
|
||
if(n=a+i.length,u&&this._fragments.push({text:u,styles:t.slice(0)}),o)if(s){for(var l=o.toLowerCase(),c=t.length-1;c>=0;--c)if(t[c].tag===l){t.splice(c,1)
|
||
break}}else{var h=o,_=null,f=o.indexOf("=");-1!==f?(h=o.substring(0,f).toLowerCase(),_=o.substring(f+1)):h=h.toLowerCase(),t.push({tag:h,param:_})}}}n<e.length&&this._fragments.push({text:e.substring(n),styles:t.slice(0)})
|
||
var d,p=_createForOfIteratorHelper(this._fragments)
|
||
try{for(p.s();!(d=p.n()).done;){var v=d.value
|
||
v.text=this._ProcessBBCodeEscapeSequences(v.text)}}catch(m){p.e(m)}finally{p.f()}return this._hasParsedFragments=!0,this._fragments}},{key:"_ProcessBBCodeEscapeSequences",value:function(e){return e=_C33.ReplaceAll(e,"\\[","["),_C33.ReplaceAll(e,"\\\\","\\")}}],[{key:"StripTags",value:function(e){return _C33.New(_C33.BBString,e,{noEscape:!0}).toPlainText()}},{key:"StripAnyTags",value:function(e){return e.replace(CUSTOM_BBREGEX,"")}}]),e}()
|
||
var _C34=self.C3
|
||
_C34.WordWrap=function(){function e(){_classCallCheck(this,e),this._lines=[]}return _createClass(e,[{key:"GetLines",value:function(){return this._lines}},{key:"GetLineCount",value:function(){return this._lines.length}},{key:"_MeasureLine",value:function(e,t){var n,r=0,a=0,i=_createForOfIteratorHelper(e)
|
||
try{for(i.s();!(n=i.n()).done;){var s=n.value
|
||
if(-1===s.width){var o=t(s.text,s.styles)
|
||
s.width=o.width,s.height=o.height}r+=s.width,a=Math.max(a,s.height)}}catch(u){i.e(u)}finally{i.f()}return{width:r,height:a}}},{key:"_AddLine",value:function(e,t,n){this._lines.push({fragments:e,width:t,height:n})}},{key:"WordWrap",value:function(e,t,n,r,a){if("string"==typeof e&&(e=[{text:e,styles:[]}]),_C34.clearArray(this._lines),!(!e.length||1===e.length&&!e[0].text.length||2>n)){if(1===e.length){var i=e[0],s=i.text,o=i.styles
|
||
if(s.length<=100&&!s.includes("\n")){var u=t(s,o),l=u.width,c=u.height
|
||
if(l+=a,n>=l)return void this._AddLine([{text:s,styles:o,width:l,height:c}],l,c)}}var h
|
||
if("word"===r)h=this._TokeniseWords(e)
|
||
else{h=[]
|
||
var _,f=_createForOfIteratorHelper(e)
|
||
try{var d=function(){var e=_.value
|
||
_C34.appendArray(h,_toConsumableArray(e.text).map(function(t){return[{text:t,styles:e.styles}]}))}
|
||
for(f.s();!(_=f.n()).done;)d()}catch(p){f.e(p)}finally{f.f()}}this._WrapText(h,t,n,a)}}},{key:"_TokeniseWords",value:function(e){var t,n=[],r=[],a=!1,i=_createForOfIteratorHelper(e)
|
||
try{for(i.s();!(t=i.n()).done;){var s,o=t.value,u=o.text,l=o.styles,c=_createForOfIteratorHelper(u)
|
||
try{for(c.s();!(s=c.n()).done;){var h=s.value
|
||
if("\n"===h)r.length>0&&n.push(r),n.push([{text:"\n",styles:l}]),r=[]
|
||
else if(0===r.length)r.push({text:h,styles:l}),a=_C34.IsWhitespaceChar(h)
|
||
else{var _=_C34.IsWhitespaceChar(h)
|
||
if(_===a){var f=r[r.length-1]
|
||
f.styles===l?f.text+=h:r.push({text:h,styles:l})}else n.push(r),r=[],r.push({text:h,styles:l}),a=_}}}catch(d){c.e(d)}finally{c.f()}}}catch(d){i.e(d)}finally{i.f()}return r.length>0&&n.push(r),n}},{key:"_CopyLine",value:function(e){return e.map(function(e){return{text:e.text,styles:e.styles,width:e.width,height:e.height}})}},{key:"_AddWordToLine",value:function(e,t){var n=e.length?e[e.length-1]:null,r=0
|
||
n&&t[0].styles===n.styles&&(n.text+=t[0].text,n.width=-1,n.height=-1,r=1)
|
||
for(var a=t.length;a>r;++r){var i=t[r]
|
||
e.push({text:i.text,styles:i.styles,width:-1,height:-1})}}},{key:"_WrapText",value:function(e,t,n,r){var a,i=[],s=0,o=0,u=_createForOfIteratorHelper(e)
|
||
try{for(u.s();!(a=u.n()).done;){var l=a.value
|
||
if(1!==l.length||"\n"!==l[0].text){var c=this._CopyLine(i)
|
||
this._AddWordToLine(c,l)
|
||
var h=this._MeasureLine(c,t),_=h.width,f=h.height
|
||
if(_>=n)if(i.length>0&&this._AddLine(i,s,o),i=[],_C34.IsStringAllWhitespace(l[0].text))s=0,o=0
|
||
else{this._AddWordToLine(i,l)
|
||
var d=this._MeasureLine(i,t)
|
||
s=d.width,o=d.height}else i=c,s=_,o=f}else 0===o&&(o=t(" ",l[0].styles).height),this._AddLine(i,s,o),i=[],s=0,o=0}}catch(p){u.e(p)}finally{u.f()}i.length>0&&this._AddLine(i,s,o),this._TrimLinesTrailingWhitespace(t,r)}},{key:"_TrimLinesTrailingWhitespace",value:function(e,t){var n,r=_createForOfIteratorHelper(this._lines)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value,i=a.fragments
|
||
if(i.length){var s=i[i.length-1],o=s.text,u=o.trimEnd()
|
||
if(u){if(u.length<o.length){var l=e(u,s.styles).width,c=s.width-l
|
||
s.width=l,s.text=u,a.width-=c}}else a.width-=s.width,i.pop()
|
||
0!==t&&i.length>0&&(s=i[i.length-1],s.width+=t,a.width+=t)}}}catch(h){r.e(h)}finally{r.f()}}},{key:"Clear",value:function(){_C34.clearArray(this._lines)}},{key:"GetMaxLineWidth",value:function(){return this._lines.reduce(function(e,t){return Math.max(e,t.width)},0)}},{key:"GetTotalLineHeight",value:function(){return this._lines.reduce(function(e,t){return e+t.height},0)}}]),e}(),self.C3.Gfx={}
|
||
var _C35=self.C3,PERSPECTIVE_NEAR_Z=1,PERSPECTIVE_FAR_Z=1e4,fTempo=[0,0,0,0,0,0,0,0],glMatrix=self.glMatrix,vec3=glMatrix.vec3,mat4=glMatrix.mat4,tmpVec3=vec3.fromValues(0,0,0)
|
||
_C35.Gfx.RendererBase=function(){function e(){_classCallCheck(this,e),this._width=0,this._height=0,this._cam=vec3.fromValues(0,0,100),this._look=vec3.fromValues(0,0,0),this._up=vec3.fromValues(0,1,0),this._worldScale=vec3.fromValues(1,1,1),this._matP=mat4.create(),this._matMV=mat4.create(),this._lastMV=mat4.create(),this._allShaderPrograms=[],this._shaderProgramsByName=new Map,this._spTextureFill=null,this._stateGroups=new Map,this._currentStateGroup=null,this._blendModeTable=[],this._namedBlendModeMap=new Map,this._frameNumber=0,this._enableMipmaps=!0}return _createClass(e,[{key:"FillIndexBufferData",value:function(e){for(var t=0,n=e.length,r=0;n>t;)e[t++]=r,e[t++]=r+1,e[t++]=r+2,e[t++]=r,e[t++]=r+2,e[t++]=r+3,r+=4}},{key:"Project",value:function(e,t,n,r,a){for(var i=this._matMV,s=this._matP,o=0,u=fTempo.length;u>o;++o)fTempo[o]=0
|
||
fTempo[0]=i[0]*e+i[4]*t+i[12],fTempo[1]=i[1]*e+i[5]*t+i[13],fTempo[2]=i[2]*e+i[6]*t+i[14],fTempo[3]=i[3]*e+i[7]*t+i[15],fTempo[4]=s[0]*fTempo[0]+s[4]*fTempo[1]+s[8]*fTempo[2]+s[12]*fTempo[3],fTempo[5]=s[1]*fTempo[0]+s[5]*fTempo[1]+s[9]*fTempo[2]+s[13]*fTempo[3],fTempo[6]=s[2]*fTempo[0]+s[6]*fTempo[1]+s[10]*fTempo[2]+s[14]*fTempo[3],fTempo[7]=-fTempo[2],0!==fTempo[7]&&(fTempo[7]=1/fTempo[7],fTempo[4]*=fTempo[7],fTempo[5]*=fTempo[7],fTempo[6]*=fTempo[7],a[0]=(.5*fTempo[4]+.5)*n,a[1]=(.5*fTempo[5]+.5)*r)}},{key:"GetWidth",value:function(){return this._width}},{key:"GetHeight",value:function(){return this._height}},{key:"GetNearZ",value:function(){return PERSPECTIVE_NEAR_Z}},{key:"GetFarZ",value:function(){return PERSPECTIVE_FAR_Z}},{key:"SetCameraXYZ",value:function(e,t,n){this._cam[0]=e*this._worldScale[0],this._cam[1]=t*this._worldScale[1],this._cam[2]=n}},{key:"SetLookXYZ",value:function(e,t,n){this._look[0]=e*this._worldScale[0],this._look[1]=t*this._worldScale[1],this._look[2]=n}},{key:"ResetModelView",value:function(e){mat4.lookAt(this._matMV,this._cam,this._look,e||this._up),mat4.scale(this._matMV,this._matMV,this._worldScale)}},{key:"Translate",value:function(e,t){(0!==e||0!==t)&&(tmpVec3[0]=e,tmpVec3[1]=t,tmpVec3[2]=0,mat4.translate(this._matMV,this._matMV,tmpVec3))}},{key:"Scale",value:function(e,t){(1!==e||1!==t)&&(tmpVec3[0]=e,tmpVec3[1]=t,tmpVec3[2]=1,mat4.scale(this._matMV,this._matMV,tmpVec3))}},{key:"RotateZ",value:function(e){0!==e&&mat4.rotateZ(this._matMV,this._matMV,e)}},{key:"_AddShaderProgram",value:function(e){this._allShaderPrograms.push(e),this._shaderProgramsByName.set(e.GetName(),e)}},{key:"_RemoveShaderProgram",value:function(e){var t=this._allShaderPrograms.indexOf(e);-1!==t&&this._allShaderPrograms.splice(t,1),this._shaderProgramsByName["delete"](e.GetName())}},{key:"_ClearAllShaderPrograms",value:function(){_C35.clearArray(this._allShaderPrograms),this._shaderProgramsByName.clear()}},{key:"GetShaderProgramByName",value:function(e){return this._shaderProgramsByName.get(e)||null}},{key:"GetTextureFillShaderProgram",value:function(){return this._spTextureFill}},{key:"_SetCurrentStateGroup",value:function(e){this._currentStateGroup=e}},{key:"GetCurrentStateGroup",value:function(){return this._currentStateGroup}},{key:"AcquireStateGroup",value:function(e,t,n,r){var a=_C35.Gfx.StateGroup.MakeKey(e,t,n,r),i=this._stateGroups.get(a)
|
||
return i||(i=_C35.New(_C35.Gfx.StateGroup,this,e,t,n,r),this._stateGroups.set(a,i)),i.AddRef(),i}},{key:"ReleaseStateGroup",value:function(e){e.DecRef(),0===e._GetRefCount()&&(this._currentStateGroup===e&&(this._currentStateGroup=null),this._stateGroups["delete"](e.GetKey()),e.Release())}},{key:"_InitBlendModeData",value:function(e){_C35.clearArray(this._blendModeTable),this._namedBlendModeMap.clear()
|
||
var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=r[0],i=r[1],s=r[2]
|
||
this._blendModeTable.push([i,s]),this._namedBlendModeMap.set(a,{srcBlend:i,destBlend:s})}}catch(o){n.e(o)}finally{n.f()}}},{key:"_GetBlendByIndex",value:function(e){return this._blendModeTable[e]}},{key:"GetSrcBlendByIndex",value:function(e){return this._GetBlendByIndex(e)[0]}},{key:"GetDestBlendByIndex",value:function(e){return this._GetBlendByIndex(e)[1]}},{key:"GetNamedBlend",value:function(e){var t=this._namedBlendModeMap.get(e)
|
||
if(void 0===t)throw Error("invalid blend name")
|
||
return t}},{key:"Finish",value:function(){this.EndBatch(),this._frameNumber++}},{key:"GetFrameNumber",value:function(){return this._frameNumber}},{key:"IncrementFrameNumber",value:function(){this._frameNumber++}},{key:"SetMipmapsEnabled",value:function(e){this._enableMipmaps=!!e}},{key:"AreMipmapsEnabled",value:function(){return this._enableMipmaps}}]),e}()
|
||
var _C36=self.C3
|
||
_C36.Gfx.StateGroup=function(){function e(t,n,r,a,i){_classCallCheck(this,e),this._renderer=t,this._refCount=0,this._shaderProgram=null,this._shaderProgramName="",this._blendMode=r,this._color=_C36.New(_C36.Color),this._color.set(a),this._zElevation=i,"string"==typeof n?this._shaderProgramName=n:(this._shaderProgram=n,this._shaderProgramName=this._shaderProgram.GetName())}return _createClass(e,[{key:"Release",value:function(){if(this._refCount>0)throw Error("releasing state group still in use")
|
||
this._renderer=null,this._shaderProgram=null,this._shaderProgramName=""}},{key:"Apply",value:function(){var e=this._renderer
|
||
e.SetProgram(this._shaderProgram),e.SetBlendMode(this._blendMode),e.SetColor(this._color),e.SetCurrentZ(this._zElevation),e._SetCurrentStateGroup(this)}},{key:"GetKey",value:function(){return _C36.Gfx.StateGroup.MakeKey(this._shaderProgramName,this._blendMode,this._color,this._zElevation)}},{key:"AddRef",value:function(){++this._refCount}},{key:"DecRef",value:function(){--this._refCount}},{key:"_GetRefCount",value:function(){return this._refCount}},{key:"OnContextLost",value:function(){this._shaderProgram=null}},{key:"OnContextRestored",value:function(e){if(this._shaderProgram=e.GetShaderProgramByName(this._shaderProgramName),!this._shaderProgram)throw Error("failed to restore shader program")}}],[{key:"MakeKey",value:function(e,t,n,r){var a="string"==typeof e?e:e.GetName()
|
||
return a+","+t+","+n.getR()+","+n.getG()+","+n.getB()+","+n.getA()+","+r}}]),e}()
|
||
var interpolateQuad=function(e,t,n){var r=n.getTlx(),a=n.getTly(),i=n.getTrx()-r,s=n.getTry()-a,o=n.getBlx()-r,u=n.getBly()-a,l=i*e,c=s*e,h=o*t,_=u*t
|
||
return[r+l+h,a+c+_]},_C37=self.C3,tempQuadPos=_C37.New(_C37.Quad),tempQuadTex=_C37.New(_C37.Quad),MeshPoint=function(){function e(t){_classCallCheck(this,e),this._mesh=t,this._x=NaN,this._y=NaN,this._u=NaN,this._v=NaN,this._x=0,this._y=0,this._u=0,this._v=0}return _createClass(e,[{key:"_Init",value:function(e,t,n,r){this._x=e,this._y=t,this._u=n,this._v=r}},{key:"GetX",value:function(){return this._x}},{key:"SetX",value:function(e){this._x!==e&&(this._x=e,this._mesh._SetPointsChanged())}},{key:"GetY",value:function(){return this._y}},{key:"SetY",value:function(e){this._y!==e&&(this._y=e,this._mesh._SetPointsChanged())}},{key:"GetU",value:function(){return this._u}},{key:"SetU",value:function(e){this._u=e}},{key:"GetV",value:function(){return this._v}},{key:"SetV",value:function(e){this._v=e}},{key:"_Interpolate_TexRect",value:function(e,t,n){var r=interpolateQuad(e._x,e._y,t),a=_slicedToArray(r,2)
|
||
this._x=a[0],this._y=a[1],this._u=_C37.lerp(n.getLeft(),n.getRight(),e._u),this._v=_C37.lerp(n.getTop(),n.getBottom(),e._v)}},{key:"_Interpolate_TexQuad",value:function(e,t,n){var r=interpolateQuad(e._x,e._y,t),a=_slicedToArray(r,2)
|
||
this._x=a[0],this._y=a[1]
|
||
var i=interpolateQuad(e._u,e._v,n),s=_slicedToArray(i,2)
|
||
this._u=s[0],this._v=s[1]}}]),e}()
|
||
_C37.Gfx.Mesh=function(){function e(t,n){if(_classCallCheck(this,e),2>t||2>n)throw Error("invalid mesh size")
|
||
this._hsize=t,this._vsize=n,this._pts=[],this._minX=0,this._minY=0,this._maxX=1,this._maxY=1,this._pointsChanged=!1
|
||
for(var r=t-1,a=n-1,i=0;n>i;++i){for(var s=[],o=0;t>o;++o){var u=_C37.New(MeshPoint,this),l=o/r,c=i/a
|
||
u._Init(l,c,l,c),s.push(u)}this._pts.push(s)}}return _createClass(e,[{key:"Release",value:function(){_C37.clearArray(this._pts)}},{key:"GetHSize",value:function(){return this._hsize}},{key:"GetVSize",value:function(){return this._vsize}},{key:"_SetPointsChanged",value:function(){this._pointsChanged=!0}},{key:"_MaybeComputeBounds",value:function(){if(this._pointsChanged){var e,t=1/0,n=1/0,r=-(1/0),a=-(1/0),i=_createForOfIteratorHelper(this._pts)
|
||
try{for(i.s();!(e=i.n()).done;){var s,o=e.value,u=_createForOfIteratorHelper(o)
|
||
try{for(u.s();!(s=u.n()).done;){var l=s.value,c=l.GetX(),h=l.GetY()
|
||
t=Math.min(t,c),n=Math.min(n,h),r=Math.max(r,c),a=Math.max(a,h)}}catch(_){u.e(_)}finally{u.f()}}}catch(_){i.e(_)}finally{i.f()}this._minX=t,this._minY=n,this._maxX=r,this._maxY=a,this._pointsChanged=!1}}},{key:"GetMinX",value:function(){return this._MaybeComputeBounds(),this._minX}},{key:"GetMinY",value:function(){return this._MaybeComputeBounds(),this._minY}},{key:"GetMaxX",value:function(){return this._MaybeComputeBounds(),this._maxX}},{key:"GetMaxY",value:function(){return this._MaybeComputeBounds(),this._maxY}},{key:"GetMeshPointAt",value:function(e,t){return e=Math.floor(e),t=Math.floor(t),0>e||e>=this._hsize||0>t||t>=this._vsize?null:this._pts[t][e]}},{key:"CalculateTransformedMesh",value:function(e,t,n){var r=n instanceof _C37.Rect
|
||
if(e.GetHSize()!==this.GetHSize()||e.GetVSize()!==this.GetVSize())throw Error("source mesh wrong size")
|
||
for(var a=e._pts,i=this._pts,s=0,o=i.length;o>s;++s)for(var u=a[s],l=i[s],c=0,h=l.length;h>c;++c){var _=u[c],f=l[c]
|
||
r?f._Interpolate_TexRect(_,t,n):f._Interpolate_TexQuad(_,t,n)}}},{key:"Draw",value:function(e){for(var t=this._pts,n=t[0],r=1,a=t.length;a>r;++r){for(var i=t[r],s=n[0],o=i[0],u=1,l=i.length;l>u;++u){var c=n[u],h=i[u]
|
||
tempQuadPos.set(s.GetX(),s.GetY(),c.GetX(),c.GetY(),h.GetX(),h.GetY(),o.GetX(),o.GetY()),tempQuadTex.set(s.GetU(),s.GetV(),c.GetU(),c.GetV(),h.GetU(),h.GetV(),o.GetU(),o.GetV()),e.Quad4(tempQuadPos,tempQuadTex),s=c,o=h}n=i}}},{key:"Outline",value:function(e){for(var t=this._pts,n=t[0],r=1,a=t.length;a>r;++r){for(var i=t[r],s=n[0],o=i[0],u=1,l=i.length;l>u;++u){var c=n[u],h=i[u],_=s.GetX(),f=s.GetY(),d=c.GetX(),p=c.GetY(),v=h.GetX(),m=h.GetY(),y=o.GetX(),g=o.GetY()
|
||
e.Line(_,f,d,p),e.Line(_,f,v,m),e.Line(_,f,y,g),u===l-1&&e.Line(d,p,v,m),r===a-1&&e.Line(y,g,v,m),s=c,o=h}n=i}}},{key:"InsertPolyMeshVertices",value:function(e){for(var t=.001,n=0,r=.99999999,a=e.pointsArr(),i=[],s=this.GetHSize()-1,o=this.GetVSize()-1,u=1/s,l=1/o,c=s-1,h=o-1,_=a[0],f=a[1],d=_C37.clamp(Math.floor(_*s),0,c),p=_C37.clamp(Math.floor(f*o),0,h),v=!0,m=0,y=0,g=0,C=-1,S=0,k=1,I=2,T=3,G=4,b=C,A=function(){_=_C37.clamp(_C37.lerp(_,m,g),0,1),f=_C37.clamp(_C37.lerp(f,y,g),0,1),i.push(_,f)},E=0,R=a.length;R>E;E+=2){_=a[E],f=a[E+1],i.push(_,f),d=_C37.clamp(Math.floor(_*s),0,c),p=_C37.clamp(Math.floor(f*o),0,h)
|
||
var x=(E+2)%R
|
||
for(m=a[x],y=a[x+1],b=C;;){if(i.length>1e6)throw Error("Too many mesh poly points")
|
||
var P=d*u,M=p*l,O=(d+1)*u,w=(p+1)*l
|
||
if(v=_C37.isPointInTriangleInclusive(_,f,P,M,O,M,O,w),b!==S&&(g=_C37.rayIntersectExtended(_,f,m,y,P,M,O,w,-t),g>=n&&r>=g))A(),v=!v,b=S
|
||
else if(p>0&&b!==I&&(g=_C37.rayIntersectExtended(_,f,m,y,P,M,O,M,t),g>=n&&r>=g))A(),p--,v=!1,b=G
|
||
else if(c>d&&b!==T&&(g=_C37.rayIntersectExtended(_,f,m,y,O,M,O,w,t),g>=n&&r>=g))A(),d++,v=!1,b=k
|
||
else if(d>0&&b!==k&&(g=_C37.rayIntersectExtended(_,f,m,y,P,M,P,w,t),g>=n&&r>=g))A(),d--,v=!0,b=T
|
||
else{if(!(h>p&&b!==G&&(g=_C37.rayIntersectExtended(_,f,m,y,P,w,O,w,t),g>=n&&r>=g)))break
|
||
A(),p++,v=!0,b=I}}}return _C37.New(_C37.CollisionPoly,i)}},{key:"TransformCollisionPoly",value:function(e,t){var n=this._TransformPolyPoints(e)
|
||
this._SimplifyPoly(n),t.setPoints(n)}},{key:"_TransformPolyPoints",value:function(e){for(var t=[],n=e.pointsArr(),r=0,a=n.length;a>r;r+=2){var i=n[r],s=n[r+1],o=this.TransformPoint(i,s),u=_slicedToArray(o,2),l=u[0],c=u[1]
|
||
t.push(l,c)}return t}},{key:"TransformPoint",value:function(e,t){var n=this.GetHSize()-1,r=this.GetVSize()-1,a=1/n,i=1/r,s=_C37.clamp(Math.floor(e*n),0,n-1),o=_C37.clamp(Math.floor(t*r),0,r-1),u=s*a,l=o*i,c=(s+1)*a,h=(o+1)*i,_=this.GetMeshPointAt(s,o),f=this.GetMeshPointAt(s+1,o+1),d=_C37.isPointInTriangleInclusive(e,t,u,l,c,l,c,h),p=d?u+a:u,v=d?l:l+i,m=this.GetMeshPointAt(s+(d?1:0),o+(d?0:1)),y=_C37.triangleCartesianToBarycentric(e,t,u,l,p,v,c,h),g=_slicedToArray(y,3),C=g[0],S=g[1],k=g[2]
|
||
return _C37.triangleBarycentricToCartesian(C,S,k,_.GetX(),_.GetY(),m.GetX(),m.GetY(),f.GetX(),f.GetY())}},{key:"_SimplifyPoly",value:function(e){for(var t=[],n=1e-7,r=e[0],a=e[1],i=r-e[e.length-2],s=a-e[e.length-1],o=0,u=e.length;u>o;o+=2){var l=(o+2)%u,c=e[l],h=e[l+1],_=c-r,f=h-a,d=Math.abs(_)<n&&Math.abs(i)<n&&Math.sign(f)===Math.sign(s),p=Math.abs(f)<n&&Math.abs(s)<n&&Math.sign(_)===Math.sign(i);(!d&&!p&&Math.abs(_/i-f/s)>n||0==_&&0===f)&&t.push(r,a),r=c,a=h,i=_,s=f}t.length<e.length&&_C37.shallowAssignArray(e,t)}}]),e}()
|
||
var GetFormatSpecifiers=function(e,t){var n,r,a,i
|
||
switch(e){case"rgba8":n=t.RGBA8,r=t.RGBA,a=t.RGBA,i=t.UNSIGNED_BYTE
|
||
break
|
||
case"rgb8":n=t.RGB8,r=t.RGB,a=t.RGB,i=t.UNSIGNED_BYTE
|
||
break
|
||
case"rgba4":n=t.RGBA4,r=t.RGBA,a=t.RGBA,i=t.UNSIGNED_SHORT_4_4_4_4
|
||
break
|
||
case"rgb5_a1":n=t.RGB5_A1,r=t.RGBA,a=t.RGBA,i=t.UNSIGNED_SHORT_5_5_5_1
|
||
break
|
||
case"rgb565":n=t.RGB565,r=t.RGB,a=t.RGB,i=t.UNSIGNED_SHORT_5_6_5
|
||
break
|
||
default:throw Error("invalid pixel format")}return{sizedinternalformat:n,internalformat:r,format:a,type:i}},_C38=self.C3,VALID_PIXEL_FORMATS=new Set(["rgba8","rgb8","rgba4","rgb5_a1","rgb565"]),VALID_SAMPLINGS=new Set(["nearest","bilinear","trilinear"]),VALID_MIPMAP_QUALITIES=new Set(["default","low","high"]),VALID_WRAP_MODES=new Set(["clamp-to-edge","repeat","mirror-repeat"]),CREATEFROM_DEFAULT_OPTIONS={wrapX:"clamp-to-edge",wrapY:"clamp-to-edge",sampling:"trilinear",pixelFormat:"rgba8",mipMap:!0,mipMapQuality:"default",premultiplyAlpha:!0,isSvg:!1,width:-1,height:-1},UPDATE_DEFAULT_OPTIONS={premultiplyAlpha:!0,flipY:!1},_allTextures=new Set
|
||
_C38.Gfx.WebGLRendererTexture=function(){function e(t){_classCallCheck(this,e),this._renderer=t,this._texture=null,this._width=0,this._height=0,this._isStatic=!0,this._wrapX="clamp-to-edge",this._wrapY="clamp-to-edge",this._sampling="trilinear",this._pixelFormat="rgba8",this._isMipMapped=!1,this._mipMapQuality="default",this._refCount=0}return _createClass(e,[{key:"_CreateStatic",value:function(e,t){if(!("undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement||"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap||"undefined"!=typeof OffscreenCanvas&&e instanceof OffscreenCanvas||e instanceof ImageData||e instanceof ArrayBuffer||null===e))throw Error("invalid texture source")
|
||
if(t=Object.assign({},CREATEFROM_DEFAULT_OPTIONS,t),this._texture)throw Error("already created texture")
|
||
if(this._wrapX=t.wrapX,this._wrapY=t.wrapY,this._sampling=t.sampling,this._pixelFormat=t.pixelFormat,this._isMipMapped=!!t.mipMap&&this._renderer.AreMipmapsEnabled(),this._mipMapQuality=t.mipMapQuality,!VALID_WRAP_MODES.has(this._wrapX)||!VALID_WRAP_MODES.has(this._wrapY))throw Error("invalid wrap mode")
|
||
if(!VALID_SAMPLINGS.has(this._sampling))throw Error("invalid sampling")
|
||
if(!VALID_PIXEL_FORMATS.has(this._pixelFormat))throw Error("invalid pixel format")
|
||
if(!VALID_MIPMAP_QUALITIES.has(this._mipMapQuality))throw Error("invalid mipmap quality")
|
||
if(this._isStatic=!0,e instanceof ArrayBuffer||null===e||t.isSvg){if(this._width=t.width,this._height=t.height,e instanceof ArrayBuffer&&e.byteLength!==this._width*this._height*4)throw Error("ArrayBuffer wrong size")}else this._width=e.width,this._height=e.height
|
||
if(this._width<=0||this._height<=0)throw Error("invalid texture data size")
|
||
if(t.isSvg){var n=_C38.CreateCanvas(this._width,this._height),r=n.getContext("2d")
|
||
r.drawImage(e,0,0,this._width,this._height),e=n}var a=_C38.isPOT(this._width)&&_C38.isPOT(this._height),i=this._renderer.GetMaxTextureSize()
|
||
if(this._width>i||this._height>i)throw Error("texture data exceeds maximum texture size")
|
||
var s=this._renderer.GetContext(),o=this._renderer.GetWebGLVersionNumber()
|
||
this._texture=s.createTexture(),s.bindTexture(s.TEXTURE_2D,this._texture),s.pixelStorei(s.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha)
|
||
var u=GetFormatSpecifiers(this._pixelFormat,s)
|
||
if(this._renderer.SupportsNPOTTextures()||a||!this._IsTiled())if(o>=2){var l
|
||
l=this._isMipMapped?Math.floor(Math.log2(Math.max(this._width,this._height))+1):1,s.texStorage2D(s.TEXTURE_2D,l,u.sizedinternalformat,this._width,this._height),e instanceof ArrayBuffer?s.texSubImage2D(s.TEXTURE_2D,0,0,0,this._width,this._height,u.format,u.type,new Uint8Array(e)):null!==e&&s.texSubImage2D(s.TEXTURE_2D,0,0,0,u.format,u.type,e)}else e instanceof ArrayBuffer?s.texImage2D(s.TEXTURE_2D,0,u.internalformat,this._width,this._height,0,u.format,u.type,new Uint8Array(e)):null===e?s.texImage2D(s.TEXTURE_2D,0,u.internalformat,this._width,this._height,0,u.format,u.type,null):s.texImage2D(s.TEXTURE_2D,0,u.internalformat,u.format,u.type,e)
|
||
else{if(null===e)throw Error("cannot pass null data when creating a NPOT tiled texture without NPOT support")
|
||
if(e instanceof ArrayBuffer&&(e=new ImageData(new Uint8ClampedArray(e),this._width,this._height)),e instanceof ImageData){var c=_C38.CreateCanvas(this._width,this._height),h=c.getContext("2d")
|
||
h.putImageData(e,0,0),e=c}var _=_C38.CreateCanvas(_C38.nextHighestPowerOfTwo(this._width),_C38.nextHighestPowerOfTwo(this._height)),f=_.getContext("2d")
|
||
f.imageSmoothingEnabled="nearest"!==this._sampling,f.drawImage(e,0,0,this._width,this._height,0,0,_.width,_.height),s.texImage2D(s.TEXTURE_2D,0,u.internalformat,u.format,u.type,_)}null!==e&&this._SetTextureParameters(s),s.bindTexture(s.TEXTURE_2D,null),this._renderer._ResetLastTexture(),this._refCount=1,_allTextures.add(this)}},{key:"_CreateDynamic",value:function(e,t,n){if(n=Object.assign({},CREATEFROM_DEFAULT_OPTIONS,n),this._texture)throw Error("already created texture")
|
||
if(this._wrapX=n.wrapX,this._wrapY=n.wrapY,this._sampling=n.sampling,this._pixelFormat=n.pixelFormat,this._isMipMapped=!!n.mipMap&&this._renderer.AreMipmapsEnabled(),this._mipMapQuality=n.mipMapQuality,!VALID_WRAP_MODES.has(this._wrapX)||!VALID_WRAP_MODES.has(this._wrapY))throw Error("invalid wrap mode")
|
||
if(!VALID_SAMPLINGS.has(this._sampling))throw Error("invalid sampling")
|
||
if(!VALID_PIXEL_FORMATS.has(this._pixelFormat))throw Error("invalid pixel format")
|
||
if(!VALID_MIPMAP_QUALITIES.has(this._mipMapQuality))throw Error("invalid mipmap quality")
|
||
this._isStatic=!1,this._width=Math.floor(e),this._height=Math.floor(t)
|
||
var r=_C38.isPOT(this._width)&&_C38.isPOT(this._height),a=this._renderer.GetMaxTextureSize()
|
||
if(this._width<=0||this._height<=0)throw Error("invalid texture size")
|
||
if(this._width>a||this._height>a)throw Error("texture exceeds maximum texture size")
|
||
if(!this._renderer.SupportsNPOTTextures()&&this._IsTiled()&&!r)throw Error("non-power-of-two tiled textures not supported")
|
||
var i=this._renderer.GetContext(),s=this._renderer.GetWebGLVersionNumber()
|
||
this._texture=i.createTexture(),i.bindTexture(i.TEXTURE_2D,this._texture),i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,n.premultiplyAlpha)
|
||
var o=GetFormatSpecifiers(this._pixelFormat,i),u=s>=2?o.sizedinternalformat:o.internalformat
|
||
i.texImage2D(i.TEXTURE_2D,0,u,this._width,this._height,0,o.format,o.type,null),this._SetTextureParameters(i),i.bindTexture(i.TEXTURE_2D,null),this._renderer._ResetLastTexture(),this._refCount=1,_allTextures.add(this)}},{key:"_GetMipMapHint",value:function(e){if("default"===this._mipMapQuality)return this._isStatic?e.NICEST:e.FASTEST
|
||
if("low"===this._mipMapQuality)return e.FASTEST
|
||
if("high"===this._mipMapQuality)return e.NICEST
|
||
throw Error("invalid mipmap quality")}},{key:"_IsTiled",value:function(){return"clamp-to-edge"!==this._wrapX||"clamp-to-edge"!==this._wrapY}},{key:"_GetTextureWrapMode",value:function(e,t){if("clamp-to-edge"===t)return e.CLAMP_TO_EDGE
|
||
if("repeat"===t)return e.REPEAT
|
||
if("mirror-repeat"===t)return e.MIRRORED_REPEAT
|
||
throw Error("invalid wrap mode")}},{key:"_SetTextureParameters",value:function(e){var t=_C38.isPOT(this._width)&&_C38.isPOT(this._height)
|
||
if(e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,this._GetTextureWrapMode(e,this._wrapX)),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,this._GetTextureWrapMode(e,this._wrapY)),"nearest"===this._sampling)e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.NEAREST),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.NEAREST),this._isMipMapped=!1
|
||
else if(e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),(t||this._renderer.SupportsNPOTTextures())&&this._isMipMapped){e.hint(e.GENERATE_MIPMAP_HINT,this._GetMipMapHint(e)),e.generateMipmap(e.TEXTURE_2D)
|
||
var n="trilinear"===this._sampling&&!this._renderer.HasMajorPerformanceCaveat()
|
||
e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,n?e.LINEAR_MIPMAP_LINEAR:e.LINEAR_MIPMAP_NEAREST)}else e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),this._isMipMapped=!1}},{key:"_Update",value:function(e,t){if(!("undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement||"undefined"!=typeof HTMLVideoElement&&e instanceof HTMLVideoElement||"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement||"undefined"!=typeof ImageBitmap&&e instanceof ImageBitmap||"undefined"!=typeof OffscreenCanvas&&e instanceof OffscreenCanvas||e instanceof ImageData))throw Error("invalid texture source")
|
||
if(!this._texture||this._refCount<=0)throw Error("texture not created")
|
||
if(this._isStatic)throw Error("cannot update static texture")
|
||
t=Object.assign({},UPDATE_DEFAULT_OPTIONS,t)
|
||
var n=e.width||e.videoWidth,r=e.height||e.videoHeight,a=this._renderer.GetWebGLVersionNumber(),i=this._renderer.GetContext()
|
||
i.bindTexture(i.TEXTURE_2D,this._texture),i.pixelStorei(i.UNPACK_PREMULTIPLY_ALPHA_WEBGL,t.premultiplyAlpha),i.pixelStorei(i.UNPACK_FLIP_Y_WEBGL,!!t.flipY)
|
||
var s=GetFormatSpecifiers(this._pixelFormat,i),o=a>=2?s.sizedinternalformat:s.internalformat
|
||
try{if(this._width===n&&this._height===r){var u=_C38.isPOT(this._width)&&_C38.isPOT(this._height)
|
||
i.texSubImage2D(i.TEXTURE_2D,0,0,0,s.format,s.type,e),(u||this._renderer.SupportsNPOTTextures())&&this._isMipMapped&&(i.hint(i.GENERATE_MIPMAP_HINT,this._GetMipMapHint(i)),i.generateMipmap(i.TEXTURE_2D))}else{this._width=n,this._height=r
|
||
var l=_C38.isPOT(this._width)&&_C38.isPOT(this._height)
|
||
if(!this._renderer.SupportsNPOTTextures()&&this._IsTiled()&&!l)throw Error("non-power-of-two tiled textures not supported")
|
||
i.texImage2D(i.TEXTURE_2D,0,o,s.format,s.type,e),(l||this._renderer.SupportsNPOTTextures())&&this._isMipMapped&&(i.hint(i.GENERATE_MIPMAP_HINT,this._GetMipMapHint(i)),i.generateMipmap(i.TEXTURE_2D))}}catch(c){console.error("Error updating WebGL texture: ",c)}i.bindTexture(i.TEXTURE_2D,null),this._renderer._ResetLastTexture()}},{key:"_Delete",value:function(){if(this._refCount>0)throw Error("texture still has references")
|
||
if(!this._texture)throw Error("already deleted texture")
|
||
_allTextures["delete"](this)
|
||
var e=this._renderer.GetContext()
|
||
e.deleteTexture(this._texture),this._texture=null}},{key:"IsValid",value:function(){return!!this._texture}},{key:"_GetTexture",value:function(){return this._texture}},{key:"GetRenderer",value:function(){return this._renderer}},{key:"AddReference",value:function(){this._refCount++}},{key:"SubtractReference",value:function(){if(this._refCount<=0)throw Error("no more references")
|
||
this._refCount--}},{key:"GetReferenceCount",value:function(){return this._refCount}},{key:"GetWidth",value:function(){return this._width}},{key:"GetHeight",value:function(){return this._height}},{key:"IsStatic",value:function(){return this._isStatic}},{key:"GetEstimatedMemoryUsage",value:function(){var e=this._width*this._height
|
||
switch(this._pixelFormat){case"rgba8":e*=4
|
||
break
|
||
case"rgb8":e*=3
|
||
break
|
||
case"rgba4":case"rgb5_a1":case"rgb565":e*=2}return this._isMipMapped&&(e+=Math.floor(e/3)),e}}],[{key:"OnContextLost",value:function(){_allTextures.clear()}},{key:"allTextures",value:function(){return _allTextures.values()}}]),e}()
|
||
var _C39=self.C3,_assert3=self.assert,_VALID_SAMPLINGS=new Set(["nearest","bilinear","trilinear"]),DEFAULT_RENDERTARGET_OPTIONS={sampling:"trilinear",alpha:!0,readback:!0,isDefaultSize:!0,multisampling:0},_allRenderTargets=new Set
|
||
_C39.Gfx.WebGLRenderTarget=function(){function e(t){_classCallCheck(this,e),this._renderer=t,this._frameBuffer=null,this._texture=null,this._renderBuffer=null,this._width=0,this._height=0,this._isDefaultSize=!0,this._sampling="trilinear",this._alpha=!0,this._readback=!0,this._multisampling=0}return _createClass(e,[{key:"_Create",value:function(e,t,n){n=Object.assign({},DEFAULT_RENDERTARGET_OPTIONS,n)
|
||
var r=this._renderer.GetWebGLVersionNumber()
|
||
if(this._texture||this._renderBuffer)throw Error("already created render target")
|
||
if(this._sampling=n.sampling,this._alpha=!!n.alpha,this._readback=!!n.readback,this._isDefaultSize=!!n.isDefaultSize,this._multisampling=n.multisampling,!_VALID_SAMPLINGS.has(this._sampling))throw Error("invalid sampling")
|
||
if(this._multisampling>0&&(2>r||this._readback))throw Error("invalid use of multisampling")
|
||
if(2>r&&(this._readback=!0),this._width=e,this._height=t,this._width<=0||this._height<=0)throw Error("invalid render target size")
|
||
var a=this._renderer.GetContext()
|
||
if(this._frameBuffer=a.createFramebuffer(),a.bindFramebuffer(a.FRAMEBUFFER,this._frameBuffer),this._readback){this._texture=this._renderer.CreateDynamicTexture(this._width,this._height,{sampling:this._sampling,pixelFormat:this._alpha?"rgba8":"rgb8",mipMap:!1})
|
||
var i=this._texture._GetTexture()
|
||
a.framebufferTexture2D(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.TEXTURE_2D,i,0)}else{this._renderBuffer=a.createRenderbuffer(),a.bindRenderbuffer(a.RENDERBUFFER,this._renderBuffer)
|
||
var s=this._alpha?a.RGBA8:a.RGB8
|
||
if(this._multisampling>0){var o=a.getInternalformatParameter(a.RENDERBUFFER,s,a.SAMPLES)
|
||
if(o&&o[0]){var u=o[0]
|
||
this._multisampling>u&&(this._multisampling=u)}else this._multisampling=0}0===this._multisampling?a.renderbufferStorage(a.RENDERBUFFER,s,this._width,this._height):a.renderbufferStorageMultisample(a.RENDERBUFFER,this._multisampling,s,this._width,this._height),a.framebufferRenderbuffer(a.FRAMEBUFFER,a.COLOR_ATTACHMENT0,a.RENDERBUFFER,this._renderBuffer),a.bindRenderbuffer(a.RENDERBUFFER,null)}a.bindFramebuffer(a.FRAMEBUFFER,null),_allRenderTargets.add(this)}},{key:"_Resize",value:function(e,t){if(this._width!==e||this._height!==t){this._width=e,this._height=t
|
||
var n=this._renderer.GetContext()
|
||
n.bindFramebuffer(n.FRAMEBUFFER,this._frameBuffer),this._texture?this._texture._Update(new ImageData(this._width,this._height)):(n.bindRenderbuffer(n.RENDERBUFFER,this._renderBuffer),n.renderbufferStorage(n.RENDERBUFFER,this._alpha?n.RGBA8:n.RGB8,this._width,this._height),n.bindRenderbuffer(n.RENDERBUFFER,null)),n.bindFramebuffer(n.FRAMEBUFFER,null)}}},{key:"_Delete",value:function(){if(!this._texture&&!this._renderBuffer)throw Error("already deleted render target")
|
||
_allRenderTargets["delete"](this)
|
||
var e=this._renderer.GetContext()
|
||
e.bindFramebuffer(e.FRAMEBUFFER,this._frameBuffer),this._texture?(e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,null,0),this._renderer.DeleteTexture(this._texture),this._texture=null):this._renderBuffer&&(e.framebufferRenderbuffer(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.RENDERBUFFER,null),e.deleteRenderbuffer(this._renderBuffer),this._renderBuffer=null),e.bindFramebuffer(e.FRAMEBUFFER,null),this._renderer.GetWebGLVersionNumber()>=2&&(e.bindFramebuffer(e.READ_FRAMEBUFFER,null),e.bindFramebuffer(e.DRAW_FRAMEBUFFER,null)),e.deleteFramebuffer(this._frameBuffer),this._renderer.GetBatchState().currentFramebuffer=null,this._frameBuffer=null}},{key:"_GetFramebuffer",value:function(){return this._frameBuffer}},{key:"GetWebGLRenderer",value:function(){return this._renderer}},{key:"GetTexture",value:function(){return this._texture}},{key:"IsLinearSampling",value:function(){return"nearest"!==this._sampling}},{key:"HasAlpha",value:function(){return this._alpha}},{key:"IsReadback",value:function(){return this._readback}},{key:"GetWidth",value:function(){return this._width}},{key:"GetHeight",value:function(){return this._height}},{key:"IsDefaultSize",value:function(){return this._isDefaultSize}},{key:"GetMultisampling",value:function(){return this._multisampling}},{key:"GetOptions",value:function(){var e={sampling:this._sampling,alpha:this._alpha,readback:this._readback}
|
||
return this._isDefaultSize||(e.width=this._width,e.height=this._height),e}},{key:"IsCompatibleWithOptions",value:function(e){return e=Object.assign({},DEFAULT_RENDERTARGET_OPTIONS,e),"nearest"!==e.sampling!==this.IsLinearSampling()?!1:!!e.alpha!==this.HasAlpha()?!1:this._renderer.GetWebGLVersionNumber()>=2&&!!e.readback!==this.IsReadback()?!1:"number"==typeof e.width||"number"==typeof e.height?!this.IsDefaultSize()&&this.GetWidth()===e.width&&this.GetHeight()===e.height:this.IsDefaultSize()}},{key:"_GetWebGLTexture",value:function(){return this._texture?this._texture._GetTexture():null}},{key:"GetEstimatedMemoryUsage",value:function(){return this._texture?this._texture.GetEstimatedMemoryUsage():this._width*this._height*(this._alpha?4:3)}}],[{key:"DebugReadPixelsToBlob",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,e.ReadBackRenderTargetToImageData(t,!0)
|
||
case 2:return r=n.sent,n.next=5,_C39.ImageDataToBlob(r)
|
||
case 5:return n.abrupt("return",n.sent)
|
||
case 6:case"end":return n.stop()}},n)}))
|
||
return e}()},{key:"OnContextLost",value:function(){_allRenderTargets.clear()}},{key:"allRenderTargets",value:function(){return _allRenderTargets.values()}},{key:"ResizeAll",value:function(e,t){var n,r=_createForOfIteratorHelper(_allRenderTargets)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
a.IsDefaultSize()&&a._Resize(e,t)}}catch(i){r.e(i)}finally{r.f()}}}]),e}()
|
||
var _C40=self.C3,_glMatrix=self.glMatrix,_vec=_glMatrix.vec3,_mat=_glMatrix.mat4,RESERVED_UNIFORM_NAMES=new Set(["aPos","aTex","aPoints","matP","matMV","samplerFront","samplerBack","destStart","destEnd","srcStart","srcEnd","srcOriginStart","srcOriginEnd","pixelSize","seconds","layerScale","layerAngle","layoutStart","layoutEnd","color","color2_","pointTexStart","pointTexEnd","zElevation","tileSize","tileSpacing","outlineThickness"])
|
||
_C40.Gfx.WebGLShaderProgram=function(){function e(t,n,r,a){_classCallCheck(this,e)
|
||
var i=t.GetContext(),s=t.GetBatchState()
|
||
t.EndBatch(),i.useProgram(n),this._gl=i,this._renderer=t,this._name=a,this._shaderProgram=n,this._isDeviceTransform="<default-device-transform>"===a
|
||
var o=i.getAttribLocation(n,"aPos"),u=i.getAttribLocation(n,"aTex"),l=i.getAttribLocation(n,"aPoints");-1!==o&&(i.bindBuffer(i.ARRAY_BUFFER,t._vertexBuffer),i.vertexAttribPointer(o,t.GetNumVertexComponents(),i.FLOAT,!1,0,0),i.enableVertexAttribArray(o)),-1!==u&&(i.bindBuffer(i.ARRAY_BUFFER,t._texcoordBuffer),i.vertexAttribPointer(u,2,i.FLOAT,!1,0,0),i.enableVertexAttribArray(u)),-1!==l&&(i.bindBuffer(i.ARRAY_BUFFER,t._pointBuffer),i.vertexAttribPointer(l,4,i.FLOAT,!1,0,0),i.enableVertexAttribArray(l)),i.bindBuffer(i.ARRAY_BUFFER,null),this._uMatP=new _C40.Gfx.WebGLShaderUniform(this,"matP","mat4"),this._uMatMV=new _C40.Gfx.WebGLShaderUniform(this,"matMV","mat4"),this._uColor=new _C40.Gfx.WebGLShaderUniform(this,"color","vec4"),this._uSamplerFront=new _C40.Gfx.WebGLShaderUniform(this,"samplerFront","sampler"),this._uPointTexStart=new _C40.Gfx.WebGLShaderUniform(this,"pointTexStart","vec2"),this._uPointTexEnd=new _C40.Gfx.WebGLShaderUniform(this,"pointTexEnd","vec2"),this._uZElevation=new _C40.Gfx.WebGLShaderUniform(this,"zElevation","float"),this._uTileSize=new _C40.Gfx.WebGLShaderUniform(this,"tileSize","vec2"),this._uTileSpacing=new _C40.Gfx.WebGLShaderUniform(this,"tileSpacing","vec2"),this._uColor2=new _C40.Gfx.WebGLShaderUniform(this,"color2_","vec4"),this._uOutlineThickness=new _C40.Gfx.WebGLShaderUniform(this,"outlineThickness","float"),this._uSamplerBack=new _C40.Gfx.WebGLShaderUniform(this,"samplerBack","sampler"),this._uDestStart=new _C40.Gfx.WebGLShaderUniform(this,"destStart","vec2"),this._uDestEnd=new _C40.Gfx.WebGLShaderUniform(this,"destEnd","vec2"),this._uSrcStart=new _C40.Gfx.WebGLShaderUniform(this,"srcStart","vec2"),this._uSrcEnd=new _C40.Gfx.WebGLShaderUniform(this,"srcEnd","vec2"),this._uSrcOriginStart=new _C40.Gfx.WebGLShaderUniform(this,"srcOriginStart","vec2"),this._uSrcOriginEnd=new _C40.Gfx.WebGLShaderUniform(this,"srcOriginEnd","vec2"),this._uPixelSize=new _C40.Gfx.WebGLShaderUniform(this,"pixelSize","vec2"),this._uSeconds=new _C40.Gfx.WebGLShaderUniform(this,"seconds","float"),this._uLayerScale=new _C40.Gfx.WebGLShaderUniform(this,"layerScale","float"),this._uLayerAngle=new _C40.Gfx.WebGLShaderUniform(this,"layerAngle","float"),this._uLayoutStart=new _C40.Gfx.WebGLShaderUniform(this,"layoutStart","vec2"),this._uLayoutEnd=new _C40.Gfx.WebGLShaderUniform(this,"layoutEnd","vec2"),this._hasAnyOptionalUniforms=!!(this._uPixelSize.IsUsed()||this._uSeconds.IsUsed()||this._uSamplerBack.IsUsed()||this._uDestStart.IsUsed()||this._uDestEnd.IsUsed()||this._uSrcStart.IsUsed()||this._uSrcEnd.IsUsed()||this._uSrcOriginStart.IsUsed()||this._uSrcOriginEnd.IsUsed()||this._uLayerScale.IsUsed()||this._uLayerAngle.IsUsed()||this._uLayoutStart.IsUsed()||this._uLayoutEnd.IsUsed()),this._extendBoxHorizontal=r.extendBoxHorizontal||0,this._extendBoxVertical=r.extendBoxVertical||0,this._crossSampling=!!r.crossSampling,this._mustPreDraw=!!r.mustPreDraw,this._preservesOpaqueness=!!r.preservesOpaqueness,this._animated=!!r.animated
|
||
var c=r.parameters||[]
|
||
this._uCustomParameters=[],this._usesDest=this._uDestStart.IsUsed()||this._uDestEnd.IsUsed(),this._usesAnySrcRectOrPixelSize=this._uPixelSize.IsUsed()||this._uSrcStart.IsUsed()||this._uSrcEnd.IsUsed()||this._uSrcOriginStart.IsUsed()||this._uSrcOriginEnd.IsUsed(),this._needsPostDrawOrExtendBox=this._crossSampling||this._usesDest||0!==this._extendBoxHorizontal||0!==this._extendBoxVertical,this._hasCurrentMatP=!1,this._hasCurrentMatMV=!1,this._uColor.Init4f(1,1,1,1),this._uColor2.Init4f(1,1,1,1),this._uSamplerFront.Init1i(0),this._uSamplerBack.Init1i(1),this._uPointTexStart.Init2f(0,0),this._uPointTexEnd.Init2f(1,1),this._uZElevation.Init1f(0),this._uTileSize.Init2f(0,0),this._uTileSpacing.Init2f(0,0),this._uDestStart.Init2f(0,0),this._uDestEnd.Init2f(1,1),this._uSrcStart.Init2f(0,0),this._uSrcEnd.Init2f(0,0),this._uSrcOriginStart.Init2f(0,0),this._uSrcOriginEnd.Init2f(0,0),this._uPixelSize.Init2f(0,0),this._uLayerScale.Init1f(1),this._uLayerAngle.Init1f(0),this._uSeconds.Init1f(0),this._uLayoutStart.Init2f(0,0),this._uLayoutEnd.Init2f(0,0),this._uOutlineThickness.Init1f(1)
|
||
var h,_=_createForOfIteratorHelper(c)
|
||
try{for(_.s();!(h=_.n()).done;){var f=h.value,d=f[0],p=f[2],v=new _C40.Gfx.WebGLShaderUniform(this,d,p)
|
||
"color"===p?v.Init3f(0,0,0):v.Init1f(0),this._uCustomParameters.push(v)}}catch(m){_.e(m)}finally{_.f()}this._isDeviceTransform?this._UpdateDeviceTransformUniforms(s.currentMatP):(this.UpdateMatP(s.currentMatP,!0),this.UpdateMatMV(s.currentMV,!0))
|
||
var y=s.currentShader
|
||
i.useProgram(y?y._shaderProgram:null)}return _createClass(e,[{key:"Release",value:function(){this._gl.deleteProgram(this._shaderProgram),this._shaderProgram=null,this._renderer._RemoveShaderProgram(this),this._gl=null,this._renderer=null}},{key:"GetName",value:function(){return this._name}},{key:"GetWebGLContext",value:function(){return this._gl}},{key:"GetShaderProgram",value:function(){return this._shaderProgram}},{key:"UsesDest",value:function(){return this._usesDest}},{key:"UsesCrossSampling",value:function(){return this._crossSampling}},{key:"MustPreDraw",value:function(){return this._mustPreDraw}},{key:"PreservesOpaqueness",value:function(){return this._preservesOpaqueness}},{key:"ExtendsBox",value:function(){return 0!==this._extendBoxHorizontal||0!==this._extendBoxVertical}},{key:"GetBoxExtendHorizontal",value:function(){return this._extendBoxHorizontal}},{key:"GetBoxExtendVertical",value:function(){return this._extendBoxVertical}},{key:"UsesAnySrcRectOrPixelSize",value:function(){return this._usesAnySrcRectOrPixelSize}},{key:"NeedsPostDrawOrExtendsBox",value:function(){return this._needsPostDrawOrExtendBox}},{key:"GetParameterCount",value:function(){return this._uCustomParameters.length}},{key:"GetParameterType",value:function(e){return this._uCustomParameters[e].GetType()}},{key:"AreCustomParametersAlreadySetInBatch",value:function(e){for(var t=0,n=e.length;n>t;++t)if(!this._uCustomParameters[t].IsSetToCustomInBatch(e[t]))return!1
|
||
return!0}},{key:"SetCustomParametersInBatch",value:function(e){for(var t=0,n=e.length;n>t;++t)this._uCustomParameters[t].SetBatchValueCustom(e[t])}},{key:"AreOptionalUniformsAlreadySetInBatch",value:function(e,t,n,r,a,i,s,o,u){return this._uSamplerBack.IsUsed()?!1:this._uPixelSize.IsUsed()&&!this._uPixelSize.IsSetTo2InBatch(a,i)?!1:this._uDestStart.IsUsed()&&!this._uDestStart.IsSetTo2InBatch(e.getLeft(),e.getTop())?!1:this._uDestEnd.IsUsed()&&!this._uDestEnd.IsSetTo2InBatch(e.getRight(),e.getBottom())?!1:this._uLayerScale.IsUsed()&&!this._uLayerScale.IsSetTo1InBatch(s)?!1:this._uLayerAngle.IsUsed()&&!this._uLayerAngle.IsSetTo1InBatch(o)?!1:this._uSrcStart.IsUsed()&&!this._uSrcStart.IsSetTo2InBatch(t.getLeft(),t.getTop())?!1:this._uSrcEnd.IsUsed()&&!this._uSrcEnd.IsSetTo2InBatch(t.getRight(),t.getBottom())?!1:this._uSrcOriginStart.IsUsed()&&!this._uSrcOriginStart.IsSetTo2InBatch(n.getLeft(),n.getTop())?!1:this._uSrcOriginEnd.IsUsed()&&!this._uSrcOriginEnd.IsSetTo2InBatch(n.getRight(),n.getBottom())?!1:this._uLayoutStart.IsUsed()&&!this._uLayoutStart.IsSetTo2InBatch(r.getLeft(),r.getTop())?!1:this._uLayoutEnd.IsUsed()&&!this._uLayoutEnd.IsSetTo2InBatch(r.getTop(),r.getBottom())?!1:this._uSeconds.IsUsed()&&!this._uSeconds.IsSetTo1InBatch(u)?!1:!0}},{key:"SetOptionalUniformsInBatch",value:function(e,t,n,r,a,i,s,o,u){this._uSamplerBack.IsUsed()||(this._uPixelSize.IsUsed()&&this._uPixelSize.SetBatch2(a,i),this._uDestStart.IsUsed()&&this._uDestStart.SetBatch2(e.getLeft(),e.getTop()),this._uDestEnd.IsUsed()&&this._uDestEnd.SetBatch2(e.getRight(),e.getBottom()),this._uLayerScale.IsUsed()&&this._uLayerScale.SetBatch1(s),this._uLayerAngle.IsUsed()&&this._uLayerAngle.SetBatch1(o),this._uSrcStart.IsUsed()&&this._uSrcStart.SetBatch2(t.getLeft(),t.getTop()),this._uSrcEnd.IsUsed()&&this._uSrcEnd.SetBatch2(t.getRight(),t.getBottom()),this._uSrcOriginStart.IsUsed()&&this._uSrcOriginStart.SetBatch2(n.getLeft(),n.getTop()),this._uSrcOriginEnd.IsUsed()&&this._uSrcOriginEnd.SetBatch2(n.getRight(),n.getBottom()),this._uLayoutStart.IsUsed()&&this._uLayoutStart.SetBatch2(r.getLeft(),r.getTop()),this._uLayoutEnd.IsUsed()&&this._uLayoutEnd.SetBatch2(r.getTop(),r.getBottom()),this._uSeconds.IsUsed()&&this._uSeconds.SetBatch1(u))}},{key:"IsAnimated",value:function(){return this._animated}},{key:"UpdateMatP",value:function(e,t){(!this._hasCurrentMatP||t)&&(this._isDeviceTransform||(this._uMatP.IsUsed()&&this._uMatP.UpdateMatrix4fv(e),this._hasCurrentMatP=!0))}},{key:"SetMatPStale",value:function(){this._hasCurrentMatP=!1}},{key:"UpdateMatMV",value:function(e,t){(!this._hasCurrentMatMV||t)&&(this._isDeviceTransform||(this._uMatMV.IsUsed()&&this._uMatMV.UpdateMatrix4fv(e),this._hasCurrentMatMV=!0))}},{key:"SetMatMVStale",value:function(){this._hasCurrentMatMV=!1}},{key:"_UpdateDeviceTransformUniforms",value:function(e){if(!this._isDeviceTransform)throw Error("not device transform shader")
|
||
this._uMatP.UpdateMatrix4fv(e)
|
||
var t=this._renderer,n=t.GetWidth()/2,r=t.GetHeight()/2,a=t._worldScale,i=_vec.fromValues(n*a[0],r*a[1],100*self.devicePixelRatio),s=_vec.fromValues(n*a[0],r*a[1],0),o=_mat.create()
|
||
_mat.lookAt(o,i,s,t._up),_mat.scale(o,o,a),this._uMatMV.UpdateMatrix4fv(o)}},{key:"UpdateColor",value:function(e){this._uColor.IsUsed()&&this._uColor.Update4f(e[0],e[1],e[2],e[3])}}],[{key:"Compile",value:function(){function e(e,n,r,a){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r,a){var i,s,o,u,l,c,h,_,f
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(i=e.GetContext(),s=i.createShader(i.FRAGMENT_SHADER),i.shaderSource(s,t),i.compileShader(s),o=i.createShader(i.VERTEX_SHADER),i.shaderSource(o,r),i.compileShader(o),u=i.createProgram(),i.attachShader(u,s),i.attachShader(u,o),i.bindAttribLocation(u,0,"aPos"),i.bindAttribLocation(u,1,"aTex"),i.bindAttribLocation(u,2,"aPoints"),i.linkProgram(u),l=e._GetParallelShaderCompileExtension(),!l){n.next=20
|
||
break}return n.next=18,e._WaitForObjectReady(function(){return i.getProgramParameter(u,l.COMPLETION_STATUS_KHR)})
|
||
case 18:n.next=22
|
||
break
|
||
case 20:return n.next=22,_C40.Wait(5)
|
||
case 22:if(i.getShaderParameter(s,i.COMPILE_STATUS)){n.next=28
|
||
break}throw c=i.getShaderInfoLog(s),i.deleteShader(s),i.deleteShader(o),i.deleteProgram(u),Error("Error compiling fragment shader: "+c)
|
||
case 28:if(i.getShaderParameter(o,i.COMPILE_STATUS)){n.next=34
|
||
break}throw h=i.getShaderInfoLog(o),i.deleteShader(s),i.deleteShader(o),i.deleteProgram(u),Error("Error compiling vertex shader: "+h)
|
||
case 34:if(i.getProgramParameter(u,i.LINK_STATUS)){n.next=40
|
||
break}throw _=i.getProgramInfoLog(u),i.deleteShader(s),i.deleteShader(o),i.deleteProgram(u),Error("Error linking shader program: "+_)
|
||
case 40:return f=_C40.FilterUnprintableChars(i.getProgramInfoLog(u)||"").trim(),f&&!_C40.IsStringAllWhitespace(f)&&console.info("[WebGL] Shader program '".concat(a,"' compilation log: "),f),i.deleteShader(s),i.deleteShader(o),n.abrupt("return",u)
|
||
case 45:case"end":return n.stop()}},n)}))
|
||
return e}()},{key:"Create",value:function(){function e(e,n,r,a){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r,a){var i
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,_C40.Gfx.WebGLShaderProgram.Compile(e,t.src,r,a)
|
||
case 2:return i=n.sent,n.abrupt("return",new _C40.Gfx.WebGLShaderProgram(e,i,t,a))
|
||
case 4:case"end":return n.stop()}},n)}))
|
||
return e}()},{key:"GetReservedUniformNames",value:function(){return RESERVED_UNIFORM_NAMES}},{key:"GetDefaultVertexShaderSource",value:function(e,t){var n=t?"highmedp":"mediump"
|
||
return["#ifdef GL_FRAGMENT_PRECISION_HIGH\n#define highmedp highp\n#else\n#define highmedp mediump\n#endif","attribute highp ".concat(e?"vec3":"vec2"," aPos;"),"attribute ".concat(n," vec2 aTex;"),"varying ".concat(n," vec2 vTex;"),"uniform highp mat4 matP;\nuniform highp mat4 matMV;\nvoid main(void) {"," gl_Position = matP * matMV * vec4(aPos, ".concat(e?"":"0.0,"," 1.0);")," vTex = aTex;\n}"].join("\n")}},{key:"GetTextureFillFragmentShaderSource",value:function(){return"varying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform lowp sampler2D samplerFront;\nvoid main(void) {\n gl_FragColor = texture2D(samplerFront, vTex) * color;\n}"}},{key:"GetTilemapFragmentShaderSource",value:function(){return"#ifdef GL_FRAGMENT_PRECISION_HIGH\n#define highmedp highp\n#else\n#define highmedp mediump\n#endif\nvarying highmedp vec2 vTex;\nuniform lowp vec4 color;\nuniform lowp sampler2D samplerFront;\nuniform highmedp vec2 srcStart;\nuniform highmedp vec2 pixelSize;\nuniform highmedp vec2 tileSize;\nuniform highmedp vec2 tileSpacing;\nvoid main(void) {\n highmedp vec2 tile = floor(vTex);\n highmedp vec2 tex = fract(vTex);\n highmedp vec2 tileOrigin = srcStart + tile * (tileSize + tileSpacing);\n highmedp vec2 lowerBound = tileOrigin + pixelSize / 2.0;\n highmedp vec2 upperBound = tileOrigin + tileSize - pixelSize / 2.0;\n gl_FragColor = texture2D(samplerFront, clamp(tex, lowerBound, upperBound), -16.0) * color;\n}"}},{key:"GetPointVertexShaderSource",value:function(){return"attribute vec4 aPoints;\nvarying float pointOpacity;\nuniform float zElevation;\nuniform mat4 matP;\nuniform mat4 matMV;\nvoid main(void) {\n gl_Position = matP * matMV * vec4(aPoints.xy, zElevation, 1.0);\n gl_PointSize = aPoints.z;\n pointOpacity = aPoints.w;\n}"}},{key:"GetPointFragmentShaderSource",value:function(){return"uniform lowp sampler2D samplerFront;\nvarying lowp float pointOpacity;\nuniform mediump vec2 pointTexStart;\nuniform mediump vec2 pointTexEnd;\nuniform lowp vec4 color;\nvoid main(void) {\n gl_FragColor = texture2D(samplerFront, mix(pointTexStart, pointTexEnd, gl_PointCoord)) * color * pointOpacity;\n}"}},{key:"GetColorFillFragmentShaderSource",value:function(){return"uniform lowp vec4 color;\nvoid main(void) {\n gl_FragColor = color;\n}"}},{key:"GetLinearGradientFillFragmentShaderSource",value:function(){return"precision lowp float;\nvarying mediump vec2 vTex;\nuniform vec4 color;\nuniform vec4 color2_;\nvec3 fromLinear(vec3 linearRGB)\n{\n bvec3 cutoff = lessThan(linearRGB, vec3(0.0031308));\n vec3 higher = vec3(1.055) * pow(abs(linearRGB), vec3(1.0/2.4)) - vec3(0.055);\n vec3 lower = linearRGB * vec3(12.92);\n return mix(higher, lower, vec3(cutoff));\n}\nvec3 toLinear(vec3 sRGB)\n{\n bvec3 cutoff = lessThan(sRGB, vec3(0.04045));\n vec3 higher = pow(abs((sRGB + vec3(0.055))/vec3(1.055)), vec3(2.4));\n vec3 lower = sRGB/vec3(12.92);\n return mix(higher, lower, vec3(cutoff));\n}\nvoid main(void) {\n vec3 linearGrad = mix(toLinear(color.rgb), toLinear(color2_.rgb), vTex.x);\n float a = mix(color.a, color2_.a, vTex.x);\n gl_FragColor = vec4(fromLinear(linearGrad) * a, a);\n}"}},{key:"GetSmoothLineFillFragmentShaderSource",value:function(){return"varying mediump vec2 vTex;\nuniform lowp vec4 color;\nvoid main(void) {\n lowp float f = 1.0 - abs(vTex.y - 0.5) * 2.0;\n gl_FragColor = color * f;\n}"}},{key:"GetHardEllipseFillFragmentShaderSource",value:function(){return"varying mediump vec2 vTex;\nuniform lowp vec4 color;\nvoid main(void) {\n mediump vec2 diff = vTex - vec2(0.5, 0.5);\n mediump vec2 diffSq = diff * diff;\n mediump float f = step(diffSq.x + diffSq.y, 0.25);\n gl_FragColor = color * f;\n}"}},{key:"GetHardEllipseOutlineFragmentShaderSource",value:function(){return"varying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform mediump vec2 pixelSize;\nuniform mediump float outlineThickness;\nvoid main(void) {\n mediump vec2 diff = vTex - vec2(0.5, 0.5);\n mediump vec2 diffSq = diff * diff;\n mediump float distSq = diffSq.x + diffSq.y;\n mediump vec2 norm = normalize(diff);\n mediump vec2 halfNorm = norm * 0.5;\n mediump float innerF = step(distSq, 0.25);\n mediump vec2 innerEdge = halfNorm - pixelSize * norm * outlineThickness;\n mediump vec2 innerEdgeSq = innerEdge * innerEdge;\n mediump float outerF = step(innerEdgeSq.x + innerEdgeSq.y, distSq);\n gl_FragColor = color * innerF * outerF;\n}"}},{key:"GetSmoothEllipseFillFragmentShaderSource",value:function(){return"varying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform mediump vec2 pixelSize;\nvoid main(void) {\n mediump vec2 diff = vTex - vec2(0.5, 0.5);\n mediump vec2 diffSq = diff * diff;\n mediump vec2 norm = normalize(diff);\n mediump vec2 halfNorm = norm * 0.5;\n mediump vec2 halfNormSq = halfNorm * halfNorm;\n mediump vec2 innerEdge = halfNorm - pixelSize * norm;\n mediump vec2 innerEdgeSq = innerEdge * innerEdge;\n mediump float f = smoothstep(halfNormSq.x + halfNormSq.y, innerEdgeSq.x + innerEdgeSq.y, diffSq.x + diffSq.y);\n gl_FragColor = color * f;\n}"}},{key:"GetSmoothEllipseOutlineFragmentShaderSource",value:function(){return"varying mediump vec2 vTex;\nuniform lowp vec4 color;\nuniform mediump vec2 pixelSize;\nuniform mediump float outlineThickness;\nvoid main(void) {\n mediump vec2 diff = vTex - vec2(0.5, 0.5);\n mediump vec2 diffSq = diff * diff;\n mediump float distSq = diffSq.x + diffSq.y;\n mediump vec2 norm = normalize(diff);\n mediump vec2 halfNorm = norm * 0.5;\n mediump vec2 halfNormSq = halfNorm * halfNorm;\n mediump vec2 pxNorm = pixelSize * norm;\n mediump vec2 innerEdge1 = halfNorm - pxNorm;\n mediump vec2 innerEdge1Sq = innerEdge1 * innerEdge1;\n mediump float innerF = smoothstep(halfNormSq.x + halfNormSq.y, innerEdge1Sq.x + innerEdge1Sq.y, distSq);\n mediump vec2 innerEdge2 = halfNorm - pxNorm * outlineThickness;\n mediump vec2 innerEdge2Sq = innerEdge2 * innerEdge2;\n mediump vec2 innerEdge3 = halfNorm - pxNorm * (outlineThickness + 1.0);\n mediump vec2 innerEdge3Sq = innerEdge3 * innerEdge3;\n mediump float outerF = smoothstep(innerEdge3Sq.x + innerEdge3Sq.y, innerEdge2Sq.x + innerEdge2Sq.y, distSq);\n gl_FragColor = color * innerF * outerF;\n}"}}]),e}()
|
||
var areMat4sEqual=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]},_C41=self.C3,TYPE_SIZES=new Map([["float",1],["percent",1],["sampler",1],["vec2",2],["vec3",3],["color",3],["vec4",4],["mat4",16]])
|
||
_C41.Gfx.WebGLShaderUniform=function(){function e(t,n,r){if(_classCallCheck(this,e),!TYPE_SIZES.has(r))throw Error("invalid uniform type")
|
||
this._owner=t,this._gl=this._owner.GetWebGLContext(),this._name=n,this._type=r,this._isColorType="color"===this._type,this._location=this._gl.getUniformLocation(this._owner.GetShaderProgram(),n),this._isUsed=!!this._location
|
||
var a=TYPE_SIZES.get(r)
|
||
this._lastValue=new Float32Array(a),this._lastBatchValue=new Float32Array(a)}return _createClass(e,[{key:"Release",value:function(){this._owner=null,this._gl=null,this._location=null}},{key:"IsUsed",value:function(){return this._isUsed}},{key:"GetType",value:function(){return this._type}},{key:"IsColorType",value:function(){return this._isColorType}},{key:"Init1f",value:function(e){this.IsUsed()&&(this._lastValue[0]=e,this._lastBatchValue.set(this._lastValue),this._gl.uniform1f(this._location,e))}},{key:"Init1i",value:function(e){this.IsUsed()&&(this._lastValue[0]=e,this._lastBatchValue.set(this._lastValue),this._gl.uniform1i(this._location,e))}},{key:"Init2f",value:function(e,t){this.IsUsed()&&(this._lastValue[0]=e,this._lastValue[1]=t,this._lastBatchValue.set(this._lastValue),this._gl.uniform2f(this._location,e,t))}},{key:"Init3f",value:function(e,t,n){this.IsUsed()&&(this._lastValue[0]=e,this._lastValue[1]=t,this._lastValue[2]=n,this._lastBatchValue.set(this._lastValue),this._gl.uniform3f(this._location,e,t,n))}},{key:"Init4f",value:function(e,t,n,r){this.IsUsed()&&(this._lastValue[0]=e,this._lastValue[1]=t,this._lastValue[2]=n,this._lastValue[3]=r,this._lastBatchValue.set(this._lastValue),this._gl.uniform4f(this._location,e,t,n,r))}},{key:"Update1f",value:function(e){e=Math.fround(e)
|
||
var t=this._lastValue
|
||
t[0]!==e&&(t[0]=e,this._gl.uniform1f(this._location,e))}},{key:"Update1i",value:function(e){var t=this._lastValue
|
||
t[0]!==e&&(t[0]=e,this._gl.uniform1i(this._location,e))}},{key:"Update2f",value:function(e,t){e=Math.fround(e),t=Math.fround(t)
|
||
var n=this._lastValue;(n[0]!==e||n[1]!==t)&&(n[0]=e,n[1]=t,this._gl.uniform2f(this._location,e,t))}},{key:"Update3f",value:function(e,t,n){e=Math.fround(e),t=Math.fround(t),n=Math.fround(n)
|
||
var r=this._lastValue;(r[0]!==e||r[1]!==t||r[2]!==n)&&(r[0]=e,r[1]=t,r[2]=n,this._gl.uniform3f(this._location,e,t,n))}},{key:"Update4f",value:function(e,t,n,r){e=Math.fround(e),t=Math.fround(t),n=Math.fround(n),r=Math.fround(r)
|
||
var a=this._lastValue;(a[0]!==e||a[1]!==t||a[2]!==n||a[3]!==r)&&(a[0]=e,a[1]=t,a[2]=n,a[3]=r,this._gl.uniform4f(this._location,e,t,n,r))}},{key:"UpdateMatrix4fv",value:function(e){var t=this._lastValue
|
||
areMat4sEqual(t,e)||(_C41.typedArraySet16(t,e,0),this._gl.uniformMatrix4fv(this._location,!1,e))}},{key:"IsSetToCustomInBatch",value:function(e){var t=this._lastBatchValue
|
||
return this.IsColorType()?t[0]===Math.fround(e.getR())&&t[1]===Math.fround(e.getG())&&t[2]===Math.fround(e.getB()):t[0]===Math.fround(e)}},{key:"SetBatchValueCustom",value:function(e){var t=this._lastBatchValue
|
||
this.IsColorType()?(t[0]=e.getR(),t[1]=e.getG(),t[2]=e.getB()):t[0]=e}},{key:"IsSetTo1InBatch",value:function(e){return this._lastBatchValue[0]===Math.fround(e)}},{key:"IsSetTo2InBatch",value:function(e,t){var n=this._lastBatchValue
|
||
return n[0]===Math.fround(e)&&n[1]===Math.fround(t)}},{key:"SetBatch1",value:function(e){this._lastBatchValue[0]=e}},{key:"SetBatch2",value:function(e,t){var n=this._lastBatchValue
|
||
n[0]=e,n[1]=t}}]),e}()
|
||
var _C42=self.C3,_glMatrix2=self.glMatrix,vec4=_glMatrix2.vec4,_mat2=_glMatrix2.mat4,BATCH_NULL=0,BATCH_QUAD=1,BATCH_SETTEXTURE=2,BATCH_SETCOLOR=3,BATCH_SETBLEND=4,BATCH_UPDATEMODELVIEW=5,BATCH_SETRENDERTARGET=6,BATCH_CLEARSURFACE=7,BATCH_CLEARRECT=8,BATCH_POINTS=9,BATCH_SETPROGRAM=10,BATCH_SETPROGRAMPARAMETERS=11,BATCH_INVALIDATEFRAMEBUFFER=12,BATCH_SETPOINTTEXCOORDS=13,BATCH_SETTILEMAPINFO=14,BATCH_BLITFRAMEBUFFER=15,BATCH_STARTQUERY=16,BATCH_ENDQUERY=17,BATCH_SETELLIPSEPARAMS=18,BATCH_SETGRADIENTCOLOR=19
|
||
_C42.Gfx.BatchState=_createClass(function _(e){_classCallCheck(this,_),this.renderer=e,this.currentMV=_mat2.create(),this.currentMatP=_mat2.create(),this.currentFramebuffer=null,this.currentColor=vec4.fromValues(1,1,1,1),this.currentShader=null,this.pointTexCoords=new _C42.Rect,this.clearColor=_C42.New(_C42.Color,0,0,0,0)}),_C42.Gfx.WebGLBatchJob=function(){function e(t){_classCallCheck(this,e)
|
||
var n=new ArrayBuffer(96)
|
||
this._type=0,this._batchState=t,this._gl=t.renderer.GetContext(),this._startIndex=0,this._indexCount=0,this._texParam=null,this._mat4param=new Float32Array(n,0,16),this._colorParam=new Float32Array(n,64,4),this._srcOriginRect=new Float32Array(n,80,4),this._shaderParams=[]}return _createClass(e,[{key:"InitQuad",value:function(e,t){this._type=BATCH_QUAD,this._startIndex=e,this._indexCount=t}},{key:"DoQuad",value:function(){var e=this._gl
|
||
e.drawElements(e.TRIANGLES,this._indexCount,e.UNSIGNED_SHORT,this._startIndex)}},{key:"InitSetTexture",value:function(e){this._type=BATCH_SETTEXTURE,this._texParam=e}},{key:"DoSetTexture",value:function(){var e=this._gl,t=this._texParam
|
||
e.bindTexture(e.TEXTURE_2D,t?t._GetTexture():null)}},{key:"InitSetColor",value:function(e){this._type=BATCH_SETCOLOR,e.writeToTypedArray(this._colorParam,0)}},{key:"DoSetColor",value:function(){var e=this._colorParam,t=this._batchState
|
||
vec4.copy(t.currentColor,e),t.currentShader.UpdateColor(e)}},{key:"InitSetGradientColor",value:function(e){this._type=BATCH_SETGRADIENTCOLOR,e.writeToTypedArray(this._colorParam,0)}},{key:"DoSetGradientColor",value:function(){var e=this._colorParam,t=this._batchState.currentShader
|
||
t._uColor2.IsUsed()&&t._uColor2.Update4f(e[0],e[1],e[2],e[3])}},{key:"InitSetBlend",value:function(e,t){this._type=BATCH_SETBLEND,this._startIndex=e,this._indexCount=t}},{key:"DoSetBlend",value:function(){this._gl.blendFunc(this._startIndex,this._indexCount)}},{key:"InitUpdateModelView",value:function(e){this._type=BATCH_UPDATEMODELVIEW,_mat2.copy(this._mat4param,e)}},{key:"DoUpdateModelView",value:function(){for(var e=this._batchState,t=e.renderer._allShaderPrograms,n=e.currentShader,r=this._mat4param,a=0,i=t.length;i>a;++a){var s=t[a]
|
||
s===n?s.UpdateMatMV(r,!0):s.SetMatMVStale()}_mat2.copy(e.currentMV,r)}},{key:"InitSetRenderTarget",value:function(e,t,n){this._type=BATCH_SETRENDERTARGET,this._texParam=e,this._startIndex=t?1:0,t&&_mat2.copy(this._mat4param,n)}},{key:"DoSetRenderTarget",value:function(){var e,t,n=this._gl,r=this._texParam,a=0!==this._startIndex,i=this._mat4param,s=this._batchState,o=s.renderer
|
||
if(r){var u=r._GetFramebuffer()
|
||
s.currentFramebuffer=u,n.bindFramebuffer(n.FRAMEBUFFER,u),e=r.GetWidth(),t=r.GetHeight()}else s.currentFramebuffer=null,n.bindFramebuffer(n.FRAMEBUFFER,null),e=o.GetScissoredViewportWidth(),t=o.GetScissoredViewportHeight()
|
||
a&&o._UpdateViewportBatch(e,t,i)}},{key:"InitClearSurface",value:function(e){this._type=BATCH_CLEARSURFACE,e.writeToTypedArray(this._mat4param,0)}},{key:"InitClearSurface2",value:function(e,t,n,r){this._type=BATCH_CLEARSURFACE
|
||
var a=this._mat4param
|
||
a[0]=e,a[1]=t,a[2]=n,a[3]=r}},{key:"DoClearSurface",value:function(){var e=this._gl,t=this._mat4param,n=this._batchState,r=n.renderer,a=n.clearColor,i=r._isScissorViewport&&_C42.isDebug
|
||
i&&e.disable(e.SCISSOR_TEST)
|
||
var s=t[0],o=t[1],u=t[2],l=t[3]
|
||
a.equalsRgba(s,o,u,l)||(e.clearColor(s,o,u,l),a.setRgba(s,o,u,l)),e.clear(e.COLOR_BUFFER_BIT),i&&e.enable(e.SCISSOR_TEST)}},{key:"InitClearRect",value:function(e,t,n,r,a,i,s,o){this._type=BATCH_CLEARRECT
|
||
var u=this._mat4param
|
||
u[0]=e,u[1]=t,u[2]=n,u[3]=r,u[4]=a,u[5]=i,u[6]=s,u[7]=o}},{key:"DoClearRectangle",value:function(){var e=this._gl,t=this._mat4param,n=this._batchState,r=n.renderer,a=n.clearColor
|
||
r._isScissorViewport||e.enable(e.SCISSOR_TEST),e.scissor(t[0],t[1],t[2],t[3])
|
||
var i=t[4],s=t[5],o=t[6],u=t[7]
|
||
a.equalsRgba(i,s,o,u)||(e.clearColor(i,s,o,u),a.setRgba(i,s,o,u)),e.clear(e.COLOR_BUFFER_BIT),r._isScissorViewport?e.scissor(0,0,r._viewportScissorWidth,r._viewportScissorHeight):e.disable(e.SCISSOR_TEST)}},{key:"InitSetPointTexCoords",value:function(e){this._type=BATCH_SETPOINTTEXCOORDS,e.writeToTypedArray(this._mat4param,0)}},{key:"DoSetPointTextureCoords",value:function(){var e=this._mat4param
|
||
this._batchState.pointTexCoords.set(e[0],e[1],e[2],e[3])}},{key:"InitPoints",value:function(e,t){this._type=BATCH_POINTS,this._startIndex=e,this._indexCount=1,this._mat4param[0]=t}},{key:"DoPoints",value:function(){var e=this._gl,t=this._batchState,n=t.renderer,r=n._spPoints
|
||
e.useProgram(r._shaderProgram),r.UpdateMatP(t.currentMatP,!1),r.UpdateMatMV(t.currentMV,!1)
|
||
var a=t.pointTexCoords
|
||
r._uPointTexStart.IsUsed()&&r._uPointTexStart.Update2f(a.getLeft(),a.getTop()),r._uPointTexEnd.IsUsed()&&r._uPointTexEnd.Update2f(a.getRight(),a.getBottom())
|
||
var i=this._mat4param[0]
|
||
if(r._uZElevation.IsUsed()&&r._uZElevation.Update1f(i),r._uColor.IsUsed()){var s=t.currentColor
|
||
r._uColor.Update4f(s[0],s[1],s[2],s[3])}e.drawArrays(e.POINTS,this._startIndex/4,this._indexCount),e.useProgram(t.currentShader._shaderProgram)}},{key:"InitSetProgram",value:function(e){this._type=BATCH_SETPROGRAM,this._texParam=e}},{key:"DoSetProgram",value:function(){var e=this._gl,t=this._batchState,n=this._texParam
|
||
if(t.currentShader=n,e.useProgram(n._shaderProgram),n.UpdateMatP(t.currentMatP,!1),n.UpdateMatMV(t.currentMV,!1),n._uColor.IsUsed()){var r=t.currentColor
|
||
n._uColor.Update4f(r[0],r[1],r[2],r[3])}}},{key:"InitSetProgramParameters",value:function(){this._type=BATCH_SETPROGRAMPARAMETERS}},{key:"DoSetProgramParameters",value:function(){var e=this._batchState.currentShader
|
||
e._hasAnyOptionalUniforms&&this._DoSetOptionalUniformProgramParameters(e),e._uCustomParameters.length&&this._DoUpdateCustomProgramParameters(e)}},{key:"_DoSetOptionalUniformProgramParameters",value:function(e){var t=this._gl,n=this._mat4param,r=this._colorParam,a=this._srcOriginRect
|
||
if(e._uSamplerBack.IsUsed()){var i=this._batchState.renderer,s=this._texParam
|
||
i._lastTexture1!==s&&(t.activeTexture(t.TEXTURE1),t.bindTexture(t.TEXTURE_2D,s?s._GetTexture():null),i._lastTexture1=s,t.activeTexture(t.TEXTURE0))}e._uPixelSize.IsUsed()&&e._uPixelSize.Update2f(n[0],n[1]),e._uDestStart.IsUsed()&&e._uDestStart.Update2f(n[2],n[3]),e._uDestEnd.IsUsed()&&e._uDestEnd.Update2f(n[4],n[5]),e._uLayerScale.IsUsed()&&e._uLayerScale.Update1f(n[6]),e._uLayerAngle.IsUsed()&&e._uLayerAngle.Update1f(n[7]),e._uSrcStart.IsUsed()&&e._uSrcStart.Update2f(n[12],n[13]),e._uSrcEnd.IsUsed()&&e._uSrcEnd.Update2f(n[14],n[15]),e._uSrcOriginStart.IsUsed()&&e._uSrcOriginStart.Update2f(a[0],a[1]),e._uSrcOriginEnd.IsUsed()&&e._uSrcOriginEnd.Update2f(a[2],a[3]),e._uLayoutStart.IsUsed()&&e._uLayoutStart.Update2f(r[0],r[1]),e._uLayoutEnd.IsUsed()&&e._uLayoutEnd.Update2f(r[2],r[3]),e._uSeconds.IsUsed()&&e._uSeconds.Update1f(this._startIndex)}},{key:"_DoUpdateCustomProgramParameters",value:function(e){for(var t=e._uCustomParameters,n=this._shaderParams,r=0,a=t.length;a>r;++r){var i=t[r],s=n[r]
|
||
i.IsColorType()?i.Update3f(s.getR(),s.getG(),s.getB()):i.Update1f(s)}}},{key:"InitInvalidateFramebuffer",value:function(e){this._type=BATCH_INVALIDATEFRAMEBUFFER,this._texParam=e}},{key:"DoInvalidateFramebuffer",value:function(){var e=this._gl,t=this._texParam,n=this._batchState.currentFramebuffer
|
||
t!==n&&e.bindFramebuffer(e.FRAMEBUFFER,t),e.invalidateFramebuffer(e.FRAMEBUFFER,[e.COLOR_ATTACHMENT0]),t!==n&&e.bindFramebuffer(e.FRAMEBUFFER,n)}},{key:"InitBlitFramebuffer",value:function(e,t,n){this._type=BATCH_BLITFRAMEBUFFER
|
||
var r=this._mat4param,a=this._batchState.renderer
|
||
r[0]=e.GetWidth(),r[1]=e.GetHeight(),r[2]=t?t.GetWidth():a.GetWidth(),r[3]=t?t.GetHeight():a.GetHeight(),r[4]=e.IsLinearSampling()?1:0,r[5]="stretch"===n
|
||
var i=this._shaderParams
|
||
_C42.clearArray(i),i.push(e._GetFramebuffer()),i.push(t?t._GetFramebuffer():null)}},{key:"DoBlitFramebuffer",value:function(){var e=this._mat4param,t=this._shaderParams,n=this._gl,r=e[0],a=e[1],i=e[2],s=e[3],o=0!==e[4],u=0!==e[5],l=t[0],c=t[1]
|
||
if(n.bindFramebuffer(n.READ_FRAMEBUFFER,l),n.bindFramebuffer(n.DRAW_FRAMEBUFFER,c),u)n.blitFramebuffer(0,0,r,a,0,0,i,s,n.COLOR_BUFFER_BIT,o?n.LINEAR:n.NEAREST)
|
||
else{var h=Math.min(r,i),_=Math.min(a,s),f=Math.max(a-s,0),d=Math.max(s-a,0)
|
||
n.blitFramebuffer(0,f,h,_+f,0,d,h,_+d,n.COLOR_BUFFER_BIT,n.NEAREST)}}},{key:"InitStartQuery",value:function(e){this._type=BATCH_STARTQUERY,this._texParam=e}},{key:"DoStartQuery",value:function(){this._texParam.BeginTimeElapsed(),this._texParam=null}},{key:"InitEndQuery",value:function(e){this._type=BATCH_ENDQUERY,this._texParam=e}},{key:"DoEndQuery",value:function(){this._texParam.EndTimeElapsed(),this._texParam=null}},{key:"InitSetEllipseParams",value:function(e,t,n){this._type=BATCH_SETELLIPSEPARAMS
|
||
var r=this._mat4param
|
||
r[0]=e,r[1]=t,r[2]=n}},{key:"DoSetEllipseParams",value:function(){var e=this._batchState.currentShader,t=this._mat4param
|
||
e._uPixelSize.IsUsed()&&e._uPixelSize.Update2f(t[0],t[1]),e._uOutlineThickness.IsUsed()&&e._uOutlineThickness.Update1f(t[2])}},{key:"InitSetTilemapInfo",value:function(e,t,n,r,a,i,s){this._type=BATCH_SETTILEMAPINFO
|
||
var o=this._mat4param
|
||
e.writeToTypedArray(o,0),o[4]=1/t,o[5]=1/n,o[6]=r/t,o[7]=a/n,o[8]=i/t,o[9]=s/n}},{key:"DoSetTilemapInfo",value:function(){var e=this._batchState.currentShader,t=this._mat4param
|
||
e._uSrcStart.IsUsed()&&e._uSrcStart.Update2f(t[0],t[1]),e._uPixelSize.IsUsed()&&e._uPixelSize.Update2f(t[4],t[5]),e._uTileSize.IsUsed()&&e._uTileSize.Update2f(t[6],t[7]),e._uTileSpacing.IsUsed()&&e._uTileSpacing.Update2f(t[8],t[9])}},{key:"Run",value:function(){switch(this._type){case 1:return void this.DoQuad()
|
||
case 2:return void this.DoSetTexture()
|
||
case 3:return void this.DoSetColor()
|
||
case 4:return void this.DoSetBlend()
|
||
case 5:return void this.DoUpdateModelView()
|
||
case 6:return void this.DoSetRenderTarget()
|
||
case 7:return void this.DoClearSurface()
|
||
case 8:return void this.DoClearRectangle()
|
||
case 9:return void this.DoPoints()
|
||
case 10:return void this.DoSetProgram()
|
||
case 11:return void this.DoSetProgramParameters()
|
||
case 12:return void this.DoInvalidateFramebuffer()
|
||
case 13:return void this.DoSetPointTextureCoords()
|
||
case 14:return void this.DoSetTilemapInfo()
|
||
case 15:return void this.DoBlitFramebuffer()
|
||
case 16:return void this.DoStartQuery()
|
||
case 17:return void this.DoEndQuery()
|
||
case 18:return void this.DoSetEllipseParams()
|
||
case 19:return void this.DoSetGradientColor()}}}]),e}()
|
||
var fillOrStrokeText=function(e,t,n,r,a,i){t?"Gecko"===_C43.Platform.BrowserEngine?e.strokeText(n,r,a,i):e.strokeText(n,r,a):"Gecko"===_C43.Platform.BrowserEngine?e.fillText(n,r,a,i):e.fillText(n,r,a)},fillOrStrokeRect=function(e,t,n,r,a,i){t?e.strokeRect(n,r,a,i):e.fillRect(n,r,a,i)},ptToPx=function(e){return e*(4/3)},_C43=self.C3,MAX_TEXTURE_SIZE=2048,EXTRA_LINE_HEIGHT=4,DEFAULT_OPTS={timeout:60},tempColor=new _C43.Color(0,0,0,1),VALID_HORIZ_ALIGNMENTS=new Set(["left","center","right"]),VALID_VERT_ALIGNMENTS=new Set(["top","center","bottom"]),VALID_WORD_WRAP_MODES=new Set(["word","character"]),allRendererTexts=new Set
|
||
_C43.FontManager&&_C43.FontManager.addEventListener("fontload",function(e){var t,n=e.font.GetName(),r=_createForOfIteratorHelper(allRendererTexts)
|
||
try{for(r.s();!(t=r.n()).done;){var a=t.value;(a.IsBBCodeEnabled()||_C43.equalsNoCase(a.GetFontName(),n))&&a._SetTextChanged()}}catch(i){r.e(i)}finally{r.f()}}),_C43.Gfx.RendererText=function(){function e(t,n){var r=this
|
||
_classCallCheck(this,e),n=Object.assign({},DEFAULT_OPTS,n),this._renderer=t,this._fontName="Arial",this._fontSize=16,this._lineHeight=0,this._isBold=!1,this._isItalic=!1,this._colorStr="black",this._isBBcodeEnabled=!1,this.onloadfont=null,this._alreadyLoadedFonts=new Set,this._horizontalAlign="left",this._verticalAlign="top",this._text="",this._bbString=null,this._wrappedText=_C43.New(_C43.WordWrap),this._wrapMode="word",this._textChanged=!1,this._isUpdating=!1,this._isAsync=!0,this._drawMaxCharCount=-1,this._drawCharCount=0,this._cssWidth=0,this._cssHeight=0,this._width=0,this._height=0,this._zoom=1,this._changed=!1,this._textCanvas=null,this._textContext=null,this._measureContext=null,this._lastCanvasWidth=-1,this._lastCanvasHeight=-1,this._lastTextCanvasFont="",this._lastMeasureCanvasFont="",this._lastTextCanvasFillStyle="",this._lastTextCanvasOpacity=1,this._lastTextCanvasLineWidth=1,this._measureTextCallback=function(e,t){return r._MeasureText(e,t)},this._texture=null,this._textureWidth=0,this._textureHeight=0,this._rcTex=new _C43.Rect,this._scaleFactor=1,this._needToRecreateTexture=!1,this._textureTimeout=new _C43.IdleTimeout(function(){r.ReleaseTexture(),r._SetTextCanvasSize(8,8)},n.timeout),this.ontextureupdate=null,this._wasReleased=!1,allRendererTexts.add(this)}return _createClass(e,[{key:"Release",value:function(){this.onloadfont=null,this._alreadyLoadedFonts.clear(),this._bbString=null,this._textCanvas=null,this._textContext=null,this._measureContext=null,this._measureTextCallback=null,this._textureTimeout.Release(),this.ontextureupdate=null,this.ReleaseTexture(),this._wrappedText.Clear(),this._wrappedText=null,this._renderer=null,this._wasReleased=!0,allRendererTexts["delete"](this)}},{key:"_SetChanged",value:function(){this._changed=!0}},{key:"_SetTextChanged",value:function(){this._SetChanged(),this._wrappedText.Clear(),this._textChanged=!0}},{key:"SetIsAsync",value:function(e){this._isAsync=!!e}},{key:"IsAsync",value:function(){return this._isAsync}},{key:"SetBBCodeEnabled",value:function(e){e=!!e,this._isBBcodeEnabled!==e&&(this._isBBcodeEnabled=e,this._textContext&&(this._textContext.textBaseline=this._isBBcodeEnabled?"alphabetic":"top"),this._SetTextChanged())}},{key:"IsBBCodeEnabled",value:function(){return this._isBBcodeEnabled}},{key:"SetFontName",value:function(e){e||(e="serif"),this._fontName!==e&&(this._fontName=e,this._SetTextChanged())}},{key:"GetFontName",value:function(){return this._fontName}},{key:"SetFontSize",value:function(e){.1>e&&(e=.1),this._fontSize!==e&&(this._fontSize=e,this._SetTextChanged())}},{key:"SetLineHeight",value:function(e){this._lineHeight!==e&&(this._lineHeight=e,this._SetChanged())}},{key:"SetBold",value:function(e){e=!!e,this._isBold!==e&&(this._isBold=e,this._SetTextChanged())}},{key:"SetItalic",value:function(e){e=!!e,this._isItalic!==e&&(this._isItalic=e,this._SetTextChanged())}},{key:"SetDrawMaxCharacterCount",value:function(e){e=Math.floor(e),this._drawMaxCharCount!==e&&(this._drawMaxCharCount=e,this._SetChanged())}},{key:"GetDrawMaxCharacterCount",value:function(){return this._drawMaxCharCount}},{key:"_GetStyleTag",value:function(e,t){for(var n=e.length-1;n>=0;--n){var r=e[n]
|
||
if(r.tag===t)return r}return null}},{key:"_HasStyleTag",value:function(e,t){return!!this._GetStyleTag(e,t)}},{key:"_GetFontString",value:function(e,t){var n="";(this._isBold||this._HasStyleTag(t,"b"))&&(n+="bold"),(this._isItalic||this._HasStyleTag(t,"i"))&&(n+=" italic")
|
||
var r=this._GetStyleTag(t,"size"),a=r?parseFloat(r.param):this._fontSize
|
||
n+=e?" "+a+"pt":" "+a*this._scaleFactor*this._zoom*self.devicePixelRatio+"pt"
|
||
var i=this._fontName,s=this._GetStyleTag(t,"font")
|
||
return s&&s.param&&(i=s.param,this.onloadfont&&!this._alreadyLoadedFonts.has(i)&&(this.onloadfont(i),this._alreadyLoadedFonts.add(i))),i&&(n+=' "'+i+'"'),n}},{key:"SetColor",value:function(e){e instanceof _C43.Color&&(e=e.getCssRgb()),this._colorStr!==e&&(this._colorStr=e,this._SetChanged())}},{key:"SetColorRgb",value:function(e,t,n){tempColor.setRgb(e,t,n),this.SetColor(tempColor)}},{key:"SetHorizontalAlignment",value:function(e){if(!VALID_HORIZ_ALIGNMENTS.has(e))throw Error("invalid horizontal alignment")
|
||
this._horizontalAlign!==e&&(this._horizontalAlign=e,this._SetChanged())}},{key:"SetVerticalAlignment",value:function(e){if(!VALID_VERT_ALIGNMENTS.has(e))throw Error("invalid vertical alignment")
|
||
this._verticalAlign!==e&&(this._verticalAlign=e,this._SetChanged())}},{key:"SetWordWrapMode",value:function(e){if(!VALID_WORD_WRAP_MODES.has(e))throw Error("invalid word wrap mode")
|
||
this._wrapMode!==e&&(this._wrapMode=e,this._SetTextChanged())}},{key:"SetText",value:function(e){this._text!==e&&(this._text=e,this._SetTextChanged())}},{key:"SetSize",value:function(e,t,n){if(void 0===n&&(n=1),!(0>=e||0>=e||this._cssWidth===e&&this._cssHeight===t&&this._zoom===n)){1===this._zoom!=(1===n)&&(this._needToRecreateTexture=!0)
|
||
var r=this._cssWidth,a=this._zoom
|
||
this._cssWidth=e,this._cssHeight=t,this._zoom=n
|
||
var i=self.devicePixelRatio
|
||
this._width=this._cssWidth*this._zoom*i,this._height=this._cssHeight*this._zoom*i
|
||
var s=Math.max(this._width,this._height),o=Math.min(this._renderer.GetMaxTextureSize(),MAX_TEXTURE_SIZE),u=1
|
||
s>o&&(u=o/s,this._width=Math.min(this._width*u,o),this._height=Math.min(this._height*u,o)),this._scaleFactor=u,this._textureWidth>0&&this._textureHeight>0&&this._zoom===a&&this._rcTex.set(0,0,this._width/this._textureWidth,this._height/this._textureHeight),this._cssWidth!==r?this._SetTextChanged():this._SetChanged()}}},{key:"GetWidth",value:function(){return this._width}},{key:"GetHeight",value:function(){return this._height}},{key:"GetTextWidth",value:function(){return this._MaybeWrapText(),this._wrappedText.GetMaxLineWidth()}},{key:"GetTextHeight",value:function(){return this._MaybeWrapText(),this._wrappedText.GetTotalLineHeight()+this._wrappedText.GetLineCount()*(this._lineHeight+EXTRA_LINE_HEIGHT)-this._lineHeight}},{key:"GetTexture",value:function(){return this._textureTimeout.Reset(),this._MaybeUpdate(),this._texture}},{key:"_MaybeUpdate",value:function(){var e=this;(!this._texture||this._changed||this._textChanged)&&(this._isUpdating||this._width<=0||this._height<=0||(this._changed=!1,this._isUpdating=!0,this._isAsync?_C43.Asyncify(function(){return e._DoUpdate()}):this._DoUpdate()))}},{key:"_DoUpdate",value:function(){this._wasReleased||(this._SetTextCanvasSize(Math.ceil(this._width),Math.ceil(this._height)),this._MaybeWrapText(),this._DrawTextToCanvas(),this._UpdateTexture(),this._textureTimeout.Reset(),this._isUpdating=!1)}},{key:"_SetTextCanvasSize",value:function(e,t){this._textCanvas||(this._textCanvas=_C43.CreateCanvas(16,16))
|
||
var n=!1;(this._lastCanvasWidth!==e||this._lastCanvasHeight!==t)&&(this._lastCanvasWidth=e,this._lastCanvasHeight=t,this._textCanvas.width=e,this._textCanvas.height=t,n=!0),this._textContext||(this._textContext=this._textCanvas.getContext("2d"),n=!0),n?(this._textContext.textBaseline=this._isBBcodeEnabled?"alphabetic":"top",this._textContext.font=this._lastTextCanvasFont,this._textContext.fillStyle=this._lastTextCanvasFillStyle,this._textContext.strokeStyle=this._lastTextCanvasFillStyle,this._textContext.globalAlpha=this._lastTextCanvasOpacity,this._textContext.lineWidth=this._lastTextCanvasLineWidth):this._textContext.clearRect(0,0,e,t)}},{key:"_MaybeCreateMeasureContext",value:function(){this._measureContext||(this._measureContext=_C43.CreateCanvas(16,16).getContext("2d"))}},{key:"_SetMeasureFontString",value:function(e){this._lastMeasureCanvasFont!==e&&(this._lastMeasureCanvasFont=e,this._measureContext.font=e)}},{key:"_MaybeWrapText",value:function(){this._textChanged&&(this._MaybeCreateMeasureContext(),!this._isBBcodeEnabled||this._bbString&&""+this._bbString===this._text||(this._bbString=new _C43.BBString(this._text,{noEscape:!0})),this._wrappedText.WordWrap(this._isBBcodeEnabled?this._bbString.toFragmentList():this._text,this._measureTextCallback,this._cssWidth,this._wrapMode,0),this._textChanged=!1)}},{key:"_MeasureText",value:function(e,t){this._SetMeasureFontString(this._GetFontString(!0,t))
|
||
var n=this._GetStyleTag(t,"size"),r=n?parseFloat(n.param):this._fontSize
|
||
return{width:this._measureContext.measureText(e).width,height:ptToPx(r)}}},{key:"_SetDrawFontString",value:function(e){this._lastTextCanvasFont!==e&&(this._lastTextCanvasFont=e,this._textContext.font=e)}},{key:"_SetDrawCanvasColor",value:function(e){this._lastTextCanvasFillStyle!==e&&(this._lastTextCanvasFillStyle=e,this._textContext.fillStyle=e,this._textContext.strokeStyle=e)}},{key:"_SetDrawCanvasOpacity",value:function(e){this._lastTextCanvasOpacity!==e&&(this._lastTextCanvasOpacity=e,this._textContext.globalAlpha=e)}},{key:"_SetDrawCanvasLineWith",value:function(e){this._lastTextCanvasLineWidth!==e&&(this._lastTextCanvasLineWidth=e,this._textContext.lineWidth=e)}},{key:"_DrawTextToCanvas",value:function(){this._drawCharCount=0
|
||
var e=this._scaleFactor*this._zoom*self.devicePixelRatio,t=(EXTRA_LINE_HEIGHT+this._lineHeight)*e,n=0,r=this._wrappedText.GetLines(),a=r.reduce(function(n,r){return n+r.height*e+t},0)-this._lineHeight*e
|
||
"center"===this._verticalAlign?n=Math.max(this._height/2-a/2,0):"bottom"===this._verticalAlign&&(n=this._height-a-2)
|
||
for(var i=0,s=r.length;s>i;++i){var o=r[i],u=o.height*e,l=n
|
||
if(this._isBBcodeEnabled){if(n+=u,i>0&&n>this._height-EXTRA_LINE_HEIGHT*e)break}else if(i>0&&n>=this._height-u)break
|
||
l>=0&&this._DrawTextLine(o,n,e),this._isBBcodeEnabled||(n+=u),n+=t}}},{key:"_DrawTextLine",value:function(e,t,n){var r=0
|
||
"center"===this._horizontalAlign?r=(this._width-e.width*n)/2:"right"===this._horizontalAlign&&(r=this._width-e.width*n)
|
||
var a,i=_createForOfIteratorHelper(e.fragments)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
this._DrawTextFragment(s,r,t,n,e.height),r+=s.width*n}}catch(o){i.e(o)}finally{i.f()}}},{key:"_DrawTextFragment",value:function(e,t,n,r,a){var i=this._textContext,s=a/16,o=e.width*r,u=e.height*r,l=e.height/16,c=(EXTRA_LINE_HEIGHT+this._lineHeight)*r,h=e.styles,_=e.text
|
||
if(-1!==this._drawMaxCharCount){if(this._drawCharCount>=this._drawMaxCharCount)return
|
||
this._drawCharCount+_.length>this._drawMaxCharCount&&(_=_.substr(0,this._drawMaxCharCount-this._drawCharCount),o=this._MeasureText(_,h).width*r),this._drawCharCount+=_.length}var f=this._GetStyleTag(h,"background"),d=this._HasStyleTag(h,"u"),p=this._HasStyleTag(h,"s")
|
||
if((!_C43.IsStringAllWhitespace(_)||f||d||p)&&!this._HasStyleTag(h,"hide")){var v=this._GetStyleTag(h,"offsetx")
|
||
t+=v?parseFloat(v.param)*r:0
|
||
var m=this._GetStyleTag(h,"offsety")
|
||
n+=m?parseFloat(m.param)*r:0,f&&(this._SetDrawCanvasColor(f.param),i.fillRect(t,n-u,o,u+c))
|
||
var y=this._GetStyleTag(h,"color")
|
||
this._SetDrawCanvasColor(y?y.param:this._colorStr)
|
||
var g=this._GetStyleTag(h,"opacity")
|
||
this._SetDrawCanvasOpacity(g?parseFloat(g.param)/100:1)
|
||
var C=this._HasStyleTag(h,"stroke")
|
||
if(C&&this._SetDrawCanvasLineWith(l*this._scaleFactor*this._zoom),d&&fillOrStrokeRect(i,C,t,n+r*s,o,r*s),p&&fillOrStrokeRect(i,C,t,n-u/4,o,r*l),this._SetDrawFontString(this._GetFontString(!1,h)),fillOrStrokeText(i,C,_,t,n,o),!C){this._SetDrawCanvasLineWith(l*this._scaleFactor*this._zoom)
|
||
var S=this._GetStyleTag(h,"outline")
|
||
S&&(this._SetDrawCanvasColor(S.param),fillOrStrokeText(i,!0,_,t,n,o))}}}},{key:"_UpdateTexture",value:function(){this._renderer.IsContextLost()||(this._textureWidth=Math.ceil(this._width),this._textureHeight=Math.ceil(this._height),this._rcTex.set(0,0,this._width/this._textureWidth,this._height/this._textureHeight),this._needToRecreateTexture&&(this.ReleaseTexture(),this._needToRecreateTexture=!1),this._texture||(this._texture=this._renderer.CreateDynamicTexture(this._textureWidth,this._textureHeight,{mipMap:1===this._zoom,mipMapQuality:"high"})),this._renderer.UpdateTexture(this._textCanvas,this._texture),this.ontextureupdate&&this.ontextureupdate())}},{key:"GetTexRect",value:function(){return this._rcTex}},{key:"ReleaseTexture",value:function(){this._texture&&(this._renderer.IsContextLost()||this._renderer.DeleteTexture(this._texture),this._texture=null)}}],[{key:"OnContextLost",value:function(){var e,t=_createForOfIteratorHelper(allRendererTexts)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.ReleaseTexture()}}catch(r){t.e(r)}finally{t.f()}}},{key:"GetAll",value:function(){return allRendererTexts.values()}}]),e}()
|
||
var _C44=self.C3,WebGLRealTimeElapsedQuery=function(){function e(t){_classCallCheck(this,e),this._gl=t.GetContext(),this._version=t.GetWebGLVersionNumber(),this._timerExt=t._GetDisjointTimerQueryExtension(),this._query=null,this._isActive=!1,this._hasResult=!1,this._result=0,1===this._version?this._query=this._timerExt.createQueryEXT():this._query=this._gl.createQuery()}return _createClass(e,[{key:"Release",value:function(){this._DeleteQueryObject(),this._gl=null,this._timerExt=null,this._hasResult=!1}},{key:"_DeleteQueryObject",value:function(){this._query&&(1===this._version?this._timerExt.deleteQueryEXT(this._query):this._gl.deleteQuery(this._query),this._query=null)}},{key:"BeginTimeElapsed",value:function(){if(this._isActive)throw Error("query already active")
|
||
1===this._version?this._timerExt.beginQueryEXT(this._timerExt.TIME_ELAPSED_EXT,this._query):this._gl.beginQuery(this._timerExt.TIME_ELAPSED_EXT,this._query),this._isActive=!0}},{key:"EndTimeElapsed",value:function(){if(!this._isActive)throw Error("query not active")
|
||
1===this._version?this._timerExt.endQueryEXT(this._timerExt.TIME_ELAPSED_EXT):this._gl.endQuery(this._timerExt.TIME_ELAPSED_EXT),this._isActive=!1}},{key:"CheckForResult",value:function(){if(this._query&&!this._hasResult&&!this._isActive){var e=!1
|
||
e=1===this._version?this._timerExt.getQueryObjectEXT(this._query,this._timerExt.QUERY_RESULT_AVAILABLE_EXT):this._gl.getQueryParameter(this._query,this._gl.QUERY_RESULT_AVAILABLE)
|
||
var t=this._gl.getParameter(this._timerExt.GPU_DISJOINT_EXT)
|
||
e&&!t&&(1===this._version?this._result=this._timerExt.getQueryObjectEXT(this._query,this._timerExt.QUERY_RESULT_EXT):this._result=this._gl.getQueryParameter(this._query,this._gl.QUERY_RESULT),this._result/=1e9,this._hasResult=!0),(e||t)&&this._DeleteQueryObject()}}},{key:"HasResult",value:function(){return this._hasResult}},{key:"GetResult",value:function(){if(!this._hasResult)throw Error("no result available")
|
||
return this._result}}]),e}()
|
||
_C44.Gfx.WebGLTimeElapsedQuery=function(){function e(t){_classCallCheck(this,e),this._renderer=t,this._frameNumber=t.GetFrameNumber(),this._isActive=!1,this._parentQuery=null,this._isNested=!1,this._realQuery=null,this._queries=[]}return _createClass(e,[{key:"Release",value:function(){var e,t=_createForOfIteratorHelper(this._queries)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n instanceof WebGLRealTimeElapsedQuery&&n.Release()}}catch(r){t.e(r)}finally{t.f()}_C44.clearArray(this._queries),this._parentQuery=null,this._realQuery=null,this._renderer=null}},{key:"BeginTimeElapsed",value:function(){if(this._isActive)throw Error("query already active")
|
||
var e=this._renderer._GetTimeQueryStack()
|
||
e.length>0?(this._isNested=!0,this._parentQuery=e[e.length-1],this._parentQuery._EndReal(),this._parentQuery._queries.push(this)):(this._isNested=!1,this._parentQuery=null),this._isActive=!0,e.push(this),this._StartReal()}},{key:"EndTimeElapsed",value:function(){if(!this._isActive)throw Error("query not active")
|
||
var e=this._renderer._GetTimeQueryStack().pop()
|
||
if(e!==this)throw Error("can only end most nested query")
|
||
this._isActive=!1,this._EndReal(),this._parentQuery&&(this._parentQuery._StartReal(),this._parentQuery=null)}},{key:"_StartReal",value:function(){this._realQuery=_C44.New(WebGLRealTimeElapsedQuery,this._renderer),this._queries.push(this._realQuery),this._realQuery.BeginTimeElapsed()}},{key:"_EndReal",value:function(){this._realQuery.EndTimeElapsed(),this._realQuery=null}},{key:"CheckForResult",value:function(){var e,t=_createForOfIteratorHelper(this._queries)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.CheckForResult()}}catch(r){t.e(r)}finally{t.f()}}},{key:"IsNested",value:function(){return this._isNested}},{key:"HasResult",value:function(){return this._queries.every(function(e){return e.HasResult()})}},{key:"GetResult",value:function(){return this._queries.reduce(function(e,t){return e+t.GetResult()},0)}},{key:"GetFrameNumber",value:function(){return this._frameNumber}}]),e}()
|
||
var _C45=self.C3
|
||
_C45.Gfx.WebGLQueryResultBuffer=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1e3
|
||
_classCallCheck(this,e),this._renderer=t,this._maxQueries=n,this._buffer=[],this._renderer._AddQueryResultBuffer(this)}return _createClass(e,[{key:"Release",value:function(){this.Clear(),this._renderer._RemoveQueryResultBuffer(this),this._renderer=null}},{key:"Clear",value:function(){var e,t=_createForOfIteratorHelper(this._buffer)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C45.clearArray(this._buffer)}},{key:"AddTimeElapsedQuery",value:function(){var e=new _C45.Gfx.WebGLTimeElapsedQuery(this._renderer)
|
||
if(this._buffer.push(e),this._buffer.length>this._maxQueries){var t=this._buffer.shift()
|
||
t.Release()}return e}},{key:"CheckForResults",value:function(e){var t,n=_createForOfIteratorHelper(this._buffer)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.GetFrameNumber()>=e)return
|
||
if(r.IsNested())return
|
||
r.CheckForResult()}}catch(a){n.e(a)}finally{n.f()}}},{key:"GetFrameRangeResultSum",value:function(e,t){if(e>=t)return NaN
|
||
var n,r=0,a=_createForOfIteratorHelper(this._buffer)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
if(i.GetFrameNumber()>=t)break
|
||
if(!(i.GetFrameNumber()<e)){if(!i.HasResult())return NaN
|
||
r+=i.GetResult()}}}catch(s){a.e(s)}finally{a.f()}return r}},{key:"DeleteAllBeforeFrameNumber",value:function(e){for(var t=0,n=this._buffer.length;n>t;++t){var r=this._buffer[t]
|
||
if(!(r.GetFrameNumber()<e))return void(t>0&&this._buffer.splice(0,t))
|
||
r.Release()}}}]),e}()
|
||
var _areMat4sEqual=function(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]},CheckPendingPolls=function f(){pollRafId=-1
|
||
var e,t=_createForOfIteratorHelper(pendingPolls)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.checkFunc()&&(n.resolve(),pendingPolls["delete"](n))}}catch(r){t.e(r)}finally{t.f()}pendingPolls.size>0&&(pollRafId=self.requestAnimationFrame(f))},GetWebGLContext=function(e,t,n){var r=null
|
||
if(n>=2&&(r=e.getContext("webgl2",t)))return{gl:r,version:2}
|
||
if(r=e.getContext("webgl",t),!r)try{r=e.getContext("experimental-webgl",t)}catch(a){console.warn("Error requesting 'experimental-webgl' context: ",a)}return{gl:r,version:1}},_C46=self.C3,_assert4=self.assert,_glMatrix3=self.glMatrix,_vec2=_glMatrix3.vec3,_vec3=_glMatrix3.vec4,_mat3=_glMatrix3.mat4,DEFAULT_WEBGLRENDERER_OPTS={powerPreference:"default",enableGpuProfiling:!0,alpha:!1,lowLatency:!1,maxWebGLVersion:2},VALID_POWER_PREFERENCES=new Set(["default","low-power","high-performance"]),MAX_VERTICES=8e3,MAX_INDICES=MAX_VERTICES/2*3,MAX_POINTS=8e3,LAST_POINT=MAX_POINTS-4,PARTIAL_TEXTURE_UPLOAD_CHUNK_SIZE=262144,defaultTexCoordsQuad=new _C46.Quad(0,0,1,0,1,1,0,1),_tmpVec=_vec2.fromValues(0,0,0),tmpVec3b=_vec2.fromValues(0,0,0),tmpMat4=_mat3.create(),tmpQuad=new _C46.Quad,tmpRect=new _C46.Rect,loseContextExtension=null
|
||
_C46.isDebug&&(self.debug_lose_context=function(){return loseContextExtension?void loseContextExtension.loseContext():void console.warn("WEBGL_lose_context not supported")},self.debug_restore_context=function(){return loseContextExtension?void loseContextExtension.restoreContext():void console.warn("WEBGL_lose_context not supported")})
|
||
var pendingPolls=new Set,pollRafId=-1
|
||
_C46.Gfx.WebGLRenderer=function(e){function t(e,r){var a
|
||
if(_classCallCheck(this,t),a=n.call(this),r=Object.assign({},DEFAULT_WEBGLRENDERER_OPTS,r),!VALID_POWER_PREFERENCES.has(r.powerPreference))throw Error("invalid power preference")
|
||
var i=!1,s={alpha:!!r.alpha,depth:!1,antialias:!1,powerPreference:r.powerPreference,failIfMajorPerformanceCaveat:!0}
|
||
r.lowLatency&&(s.desynchronized=!0,s.preserveDrawingBuffer=!0)
|
||
var o=GetWebGLContext(e,s,r.maxWebGLVersion)
|
||
if(o.gl||(i=!0,s.failIfMajorPerformanceCaveat=!1,o=GetWebGLContext(e,s,r.maxWebGLVersion)),!o.gl)throw Error("failed to initialise WebGL context")
|
||
var u=o.gl
|
||
return a._gl=u,a._attribs=u.getContextAttributes(),r.lowLatency&&!a._attribs.desynchronized&&console.info("[WebGLRenderer] Low-latency mode specified but is not supported here"),a._versionString=u.getParameter(u.VERSION),a._version=o.version,a._is3d=!0,a._lastBackbufferWidth=0,a._lastBackbufferHeight=0,a._vertexBuffer=null,a._texcoordBuffer=null,a._indexBuffer=null,a._pointBuffer=null,a._vertexData=new Float32Array(MAX_VERTICES*a.GetNumVertexComponents()),a._indexData=new Uint16Array(MAX_INDICES),a._texcoordData=new Float32Array(2*MAX_VERTICES),a._pointData=new Float32Array(4*MAX_POINTS),a._vertexPtr=0,a._texPtr=0,a._pointPtr=0,a._lastVertexPtr=0,a._lastProgram=null,a._spDeviceTransformTextureFill=null,a._spColorFill=null,a._spLinearGradientFill=null,a._spHardEllipseFill=null,a._spHardEllipseOutline=null,a._spSmoothEllipseFill=null,a._spSmoothEllipseOutline=null,a._spSmoothLineFill=null,a._spPoints=null,a._spTilemapFill=null,a._batch=[],a._batchPtr=0,a._topOfBatch=0,a._currentRenderTarget=null,a._baseZ=0,a._currentZ=0,a._lastPointZ=0,a._batchState=_C46.New(_C46.Gfx.BatchState,_assertThisInitialized(a)),a._lastColor=_C46.New(_C46.Color,1,1,1,1),a._lastTexture0=null,a._lastTexture1=null,a._lastSrcBlend=0,a._lastDestBlend=0,a._lineWidth=1,a._lineWidthStack=[a._lineWidth],a._lineCap=1,a._lineCapStack=[a._lineCap],a._lineOffset=.5,a._lineOffsetStack=[a._lineOffset],a._isScissorViewport=!1,a._viewportScissorWidth=-1,a._viewportScissorHeight=-1,a._lastPointTexCoords=new _C46.Rect,a._maxTextureSize=-1,a._minPointSize=0,a._maxPointSize=0,a._highpPrecision=0,a._unmaskedVendor="(unavailable)",a._unmaskedRenderer="(unavailable)",a._extensions=[],a._hasMajorPerformanceCaveat=i,a._isInitialisingAfterContextRestored=!1,a._parallelShaderCompileExt=null,a._isGpuProfilingEnabled=!!r.enableGpuProfiling,a._timerExt=null,a._allQueryResultBuffers=new Set,a._timeQueryStack=[],a.FillIndexBufferData(a._indexData),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"InitState",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i,s,o,u,l,c,h,_=this
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e=this._gl,t=this.GetNumVertexComponents(),this._lastColor.setRgba(1,1,1,1),this._lastTexture0=null,this._lastTexture1=null,this._vertexPtr=0,this._pointPtr=0,this._lastVertexPtr=MAX_VERTICES*t-4*t,_C46.clearArray(this._batch),this._batchPtr=0,this._topOfBatch=0,this._lastProgram=null,this._currentRenderTarget=null,this._lastPointTexCoords.set(0,0,1,1),this._baseZ=0,this._currentZ=0,this._lastPointZ=0,r=this._batchState,r.currentShader=null,r.currentFramebuffer=null,_vec3.set(r.currentColor,1,1,1,1),r.clearColor.setRgba(0,0,0,0),r.pointTexCoords.set(0,0,1,1),e.clearColor(0,0,0,0),e.clear(e.COLOR_BUFFER_BIT),e.enable(e.BLEND),e.blendFunc(e.ONE,e.ONE_MINUS_SRC_ALPHA),this._lastSrcBlend=e.ONE,this._lastDestBlend=e.ONE_MINUS_SRC_ALPHA,this._InitBlendModes(e),e.disable(e.CULL_FACE),e.disable(e.STENCIL_TEST),e.disable(e.DITHER),e.disable(e.DEPTH_TEST),this._pointBuffer=e.createBuffer(),e.bindBuffer(e.ARRAY_BUFFER,this._pointBuffer),e.bufferData(e.ARRAY_BUFFER,this._pointData.byteLength,e.DYNAMIC_DRAW),this._vertexBuffer=e.createBuffer(),e.bindBuffer(e.ARRAY_BUFFER,this._vertexBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertexData.byteLength,e.DYNAMIC_DRAW),this._texcoordBuffer=e.createBuffer(),e.bindBuffer(e.ARRAY_BUFFER,this._texcoordBuffer),e.bufferData(e.ARRAY_BUFFER,this._texcoordData.byteLength,e.DYNAMIC_DRAW),this._indexBuffer=e.createBuffer(),e.bindBuffer(e.ELEMENT_ARRAY_BUFFER,this._indexBuffer),e.bufferData(e.ELEMENT_ARRAY_BUFFER,this._indexData,e.STATIC_DRAW),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,null),this._maxTextureSize=e.getParameter(e.MAX_TEXTURE_SIZE),a=e.getParameter(e.ALIASED_POINT_SIZE_RANGE),this._minPointSize=a[0],this._maxPointSize=a[1],i=e.getShaderPrecisionFormat(e.VERTEX_SHADER,e.HIGH_FLOAT),s=e.getShaderPrecisionFormat(e.FRAGMENT_SHADER,e.HIGH_FLOAT),i&&s?this._highpPrecision=Math.min(i.precision,s.precision):this._highpPrecision=0,this._maxPointSize>2048&&(this._maxPointSize=2048),this._extensions=e.getSupportedExtensions(),o=e.getExtension("WEBGL_debug_renderer_info"),o&&(this._unmaskedVendor=e.getParameter(o.UNMASKED_VENDOR_WEBGL),this._unmaskedRenderer=e.getParameter(o.UNMASKED_RENDERER_WEBGL)),this._parallelShaderCompileExt=e.getExtension("KHR_parallel_shader_compile"),_C46.isDebug&&(loseContextExtension=e.getExtension("WEBGL_lose_context")),this._isGpuProfilingEnabled&&(1===this.GetWebGLVersionNumber()?("Chromium"!==_C46.Platform.BrowserEngine||_C46.Platform.BrowserVersionNumber>=81||"undefined"!=typeof document)&&(this._timerExt=e.getExtension("EXT_disjoint_timer_query")):this._timerExt=e.getExtension("EXT_disjoint_timer_query_webgl2")||e.getExtension("EXT_disjoint_timer_query")),this._ClearAllShaderPrograms(),u=_C46.Gfx.WebGLShaderProgram,l=u.GetDefaultVertexShaderSource(this._is3d,!1),c=[[u.GetTextureFillFragmentShaderSource(),l,"<default>"],[u.GetTextureFillFragmentShaderSource(),l,"<default-device-transform>"],[u.GetPointFragmentShaderSource(),u.GetPointVertexShaderSource(),"<point>"],[u.GetColorFillFragmentShaderSource(),l,"<fill>"],[u.GetLinearGradientFillFragmentShaderSource(),l,"<lineargradient>"],[u.GetHardEllipseFillFragmentShaderSource(),l,"<hardellipse>"],[u.GetHardEllipseOutlineFragmentShaderSource(),l,"<hardellipseoutline>"],[u.GetSmoothEllipseFillFragmentShaderSource(),l,"<smoothellipse>"],[u.GetSmoothEllipseOutlineFragmentShaderSource(),l,"<smoothellipseoutline>"],[u.GetSmoothLineFillFragmentShaderSource(),l,"<smoothline>"],[u.GetTilemapFragmentShaderSource(),u.GetDefaultVertexShaderSource(this._is3d,!0),"<tilemap>"]],n.next=68,Promise.all(c.map(function(e){return _.CreateShaderProgram({src:e[0]},e[1],e[2])}))
|
||
case 68:h=n.sent,this._spTextureFill=h[0],this._spDeviceTransformTextureFill=h[1],this._spPoints=h[2],this._spColorFill=h[3],this._spLinearGradientFill=h[4],this._spHardEllipseFill=h[5],this._spHardEllipseOutline=h[6],this._spSmoothEllipseFill=h[7],this._spSmoothEllipseOutline=h[8],this._spSmoothLineFill=h[9],this._spTilemapFill=h[10],this._currentStateGroup=null,this.SetTextureFillMode()
|
||
case 82:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"Is3D",value:function(){return this._is3d}},{key:"GetNumVertexComponents",value:function(){return this._is3d?3:2}},{key:"SetBaseZ",value:function(e){this._baseZ=e}},{key:"GetBaseZ",value:function(){return this._baseZ}},{key:"SetCurrentZ",value:function(e){this._currentZ=e,this._currentStateGroup=null}},{key:"GetCurrentZ",value:function(){return this._currentZ}},{key:"CreateShaderProgram",value:function(){function e(e,n,r){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r){var a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,_C46.Gfx.WebGLShaderProgram.Create(this,e,t,r)
|
||
case 2:return a=n.sent,this._AddShaderProgram(a),n.abrupt("return",a)
|
||
case 5:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"ResetLastProgram",value:function(){this._lastProgram=null}},{key:"SetSize",value:function(e,t,n){if(this._width!==e||this._height!==t||n){this.EndBatch()
|
||
var r=this._gl,a=this._batchState
|
||
this._width=e,this._height=t
|
||
var i=this.GetScissoredViewportWidth(),s=this.GetScissoredViewportHeight()
|
||
this._UpdateViewportRenderer(i,s,this._width,this._height),this._UpdateViewportBatch(i,s,this._matP),this._spDeviceTransformTextureFill&&(r.useProgram(this._spDeviceTransformTextureFill.GetShaderProgram()),this._spDeviceTransformTextureFill._UpdateDeviceTransformUniforms(this._matP),this._lastProgram=this._spDeviceTransformTextureFill,this._batchState.currentShader=this._spDeviceTransformTextureFill),r.bindTexture(r.TEXTURE_2D,null),r.activeTexture(r.TEXTURE1),r.bindTexture(r.TEXTURE_2D,null),r.activeTexture(r.TEXTURE0),this._lastTexture0=null,this._lastTexture1=null,this._currentRenderTarget&&this._currentRenderTarget._Resize(this._width,this._height),r.bindFramebuffer(r.FRAMEBUFFER,null),this._currentRenderTarget=null,a.currentFramebuffer=null}}},{key:"_UpdateViewportRenderer",value:function(e,t,n,r){this._cam[2]=100,_mat3.lookAt(this._matMV,this._cam,this._look,this._up),_mat3.perspective(this._matP,45,e/t,this.GetNearZ(),this.GetFarZ())
|
||
var a=[0,0],i=[0,0],s=self.devicePixelRatio
|
||
this.Project(0,0,e,t,a),this.Project(1,1,e,t,i),this._worldScale[0]=s/(i[0]-a[0]),this._worldScale[1]=-s/(i[1]-a[1]),this._lastBackbufferWidth=n,this._lastBackbufferHeight=r}},{key:"_UpdateViewportBatch",value:function(e,t,n){var r=this._gl,a=this._batchState
|
||
r.viewport(0,0,e,t)
|
||
for(var i=this._allShaderPrograms,s=a.currentShader,o=0,u=i.length;u>o;++o){var l=i[o]
|
||
l===s?l.UpdateMatP(n,!0):l.SetMatPStale()}_mat3.copy(a.currentMatP,n)}},{key:"SetViewportScissor",value:function(e,t){var n=this._gl
|
||
return this._width===e&&this._height===t?void(this._isScissorViewport&&(this.EndBatch(),n.disable(n.SCISSOR_TEST),this._isScissorViewport=!1,this._viewportScissorWidth=-1,this._viewportScissorHeight=-1,this.SetSize(this._width,this._height,!0))):(this._isScissorViewport||(this.EndBatch(),n.enable(n.SCISSOR_TEST),this._isScissorViewport=!0),void((this._viewportScissorWidth!==e||this._viewportScissorHeight!==t)&&(this.EndBatch(),n.scissor(0,0,e,t),this._viewportScissorWidth=e,this._viewportScissorHeight=t,this.SetSize(this._width,this._height,!0))))}},{key:"RemoveViewportScissor",value:function(){var e=this._gl
|
||
this._isScissorViewport&&(this.EndBatch(),e.disable(e.SCISSOR_TEST),this._isScissorViewport=!1),this._viewportScissorWidth=-1,this._viewportScissorHeight=-1}},{key:"GetScissoredViewportWidth",value:function(){return this._isScissorViewport?this._viewportScissorWidth:this.GetWidth()}},{key:"GetScissoredViewportHeight",value:function(){return this._isScissorViewport?this._viewportScissorHeight:this.GetHeight()}},{key:"UpdateModelView",value:function(){if(!_areMat4sEqual(this._lastMV,this._matMV)){var e=this.PushBatch()
|
||
e.InitUpdateModelView(this._matMV),_mat3.copy(this._lastMV,this._matMV),this._topOfBatch=0}}},{key:"GetBatchState",value:function(){return this._batchState}},{key:"PushBatch",value:function(){var e=this._batch
|
||
return this._batchPtr===e.length&&e.push(new _C46.Gfx.WebGLBatchJob(this._batchState)),e[this._batchPtr++]}},{key:"EndBatch",value:function(){0!==this._batchPtr&&(this.IsContextLost()||(this._WriteBuffers(),this._ExecuteBatch(),this._batchPtr=0,this._vertexPtr=0,this._texPtr=0,this._pointPtr=0,this._topOfBatch=0))}},{key:"_WriteBuffers",value:function(){var e=this._gl
|
||
this._pointPtr>0&&(e.bindBuffer(e.ARRAY_BUFFER,this._pointBuffer),e.bufferSubData(e.ARRAY_BUFFER,0,this._pointData.subarray(0,this._pointPtr))),this._vertexPtr>0&&(e.bindBuffer(e.ARRAY_BUFFER,this._vertexBuffer),e.bufferSubData(e.ARRAY_BUFFER,0,this._vertexData.subarray(0,this._vertexPtr)),e.bindBuffer(e.ARRAY_BUFFER,this._texcoordBuffer),e.bufferSubData(e.ARRAY_BUFFER,0,this._texcoordData.subarray(0,this._texPtr)))}},{key:"_ExecuteBatch",value:function(){for(var e=this._batch,t=0,n=this._batchPtr;n>t;++t)e[t].Run()}},{key:"GetOpacity",value:function(){return this._lastColor.getA()}},{key:"SetColorRgba",value:function(e,t,n,r){var a=this._lastColor
|
||
if(!a.equalsRgba(e,t,n,r)){a.setRgba(e,t,n,r)
|
||
var i=this.PushBatch()
|
||
i.InitSetColor(a),this._topOfBatch=0,this._currentStateGroup=null}}},{key:"SetOpacity",value:function(e){var t=this._lastColor
|
||
if(t.getA()!==e){t.setA(e)
|
||
var n=this.PushBatch()
|
||
n.InitSetColor(t),this._topOfBatch=0,this._currentStateGroup=null}}},{key:"SetColor",value:function(e){var t=this._lastColor
|
||
if(!t.equals(e)){t.set(e)
|
||
var n=this.PushBatch()
|
||
n.InitSetColor(t),this._topOfBatch=0,this._currentStateGroup=null}}},{key:"ResetColor",value:function(){this.SetColorRgba(1,1,1,1)}},{key:"GetColor",value:function(){return this._lastColor}},{key:"SetTexture",value:function(e){if(e!==this._lastTexture0){var t=this.PushBatch()
|
||
t.InitSetTexture(e),this._lastTexture0=e,this._topOfBatch=0}}},{key:"_ResetLastTexture",value:function(){this._lastTexture0=null}},{key:"SetBlendMode",value:function(e){var t=this._GetBlendByIndex(e)
|
||
this._SetBlend(t[0],t[1])}},{key:"SetNamedBlendMode",value:function(e){var t=this.GetNamedBlend(e)
|
||
this._SetBlend(t.srcBlend,t.destBlend)}},{key:"_SetBlend",value:function(e,t){if(e!==this._lastSrcBlend||t!==this._lastDestBlend){var n=this.PushBatch()
|
||
n.InitSetBlend(e,t),this._lastSrcBlend=e,this._lastDestBlend=t,this._topOfBatch=0,this._currentStateGroup=null}}},{key:"IsPremultipliedAlphaBlend",value:function(){return this._lastSrcBlend===this._gl.ONE&&this._lastDestBlend===this._gl.ONE_MINUS_SRC_ALPHA}},{key:"SetAlphaBlend",value:function(){this._SetBlend(this._gl.ONE,this._gl.ONE_MINUS_SRC_ALPHA)}},{key:"SetNoPremultiplyAlphaBlend",value:function(){this._SetBlend(this._gl.SRC_ALPHA,this._gl.ONE_MINUS_SRC_ALPHA)}},{key:"SetCopyBlend",value:function(){this._SetBlend(this._gl.ONE,this._gl.ZERO)}},{key:"Rect",value:function(e){this.Rect2(e.getLeft(),e.getTop(),e.getRight(),e.getBottom())}},{key:"Rect2",value:function(e,t,n,r){this.Quad2(e,t,n,t,n,r,e,r)}},{key:"_ExtendQuadBatch",value:function(){var e=this._vertexPtr
|
||
if(e>=this._lastVertexPtr&&(this.EndBatch(),e=0),1===this._topOfBatch)this._batch[this._batchPtr-1]._indexCount+=6
|
||
else{var t=this.PushBatch()
|
||
t.InitQuad(this._is3d?e:e/2*3,6),this._topOfBatch=1}}},{key:"_WriteQuadToVertexBuffer",value:function(e){e.writeToTypedArray3D(this._vertexData,this._vertexPtr,this._baseZ+this._currentZ),this._vertexPtr+=12}},{key:"Quad",value:function(e){this._ExtendQuadBatch(),this._WriteQuadToVertexBuffer(e),defaultTexCoordsQuad.writeToTypedArray(this._texcoordData,this._texPtr),this._texPtr+=8}},{key:"Quad2",value:function(e,t,n,r,a,i,s,o){this._ExtendQuadBatch()
|
||
var u=this._vertexData,l=this._vertexPtr,c=this._baseZ+this._currentZ
|
||
this._is3d?(u[l++]=e,u[l++]=t,u[l++]=c,u[l++]=n,u[l++]=r,u[l++]=c,u[l++]=a,u[l++]=i,u[l++]=c,u[l++]=s,u[l++]=o,u[l++]=c):(u[l++]=e,u[l++]=t,u[l++]=n,u[l++]=r,u[l++]=a,u[l++]=i,u[l++]=s,u[l++]=o),this._vertexPtr=l,defaultTexCoordsQuad.writeToTypedArray(this._texcoordData,this._texPtr),this._texPtr+=8}},{key:"Quad3",value:function(e,t){this._ExtendQuadBatch(),this._WriteQuadToVertexBuffer(e),t.writeAsQuadToTypedArray(this._texcoordData,this._texPtr),this._texPtr+=8}},{key:"Quad4",value:function(e,t){this._ExtendQuadBatch(),this._WriteQuadToVertexBuffer(e),t.writeToTypedArray(this._texcoordData,this._texPtr),this._texPtr+=8}},{key:"FullscreenQuad",value:function(e,t){if(_mat3.copy(tmpMat4,this._lastMV),_vec2.copy(_tmpVec,this._cam),_vec2.copy(tmpVec3b,this._look),this._cam[0]=0,this._cam[1]=0,this._cam[2]=100*self.devicePixelRatio,this._look[0]=0,this._look[1]=0,this._look[2]=0,this.ResetModelView(),this.UpdateModelView(),this._isScissorViewport){var n=this._viewportScissorWidth/2,r=this._viewportScissorHeight/2
|
||
tmpRect.set(-n,r,-n+this._viewportScissorWidth,r-this._viewportScissorHeight),tmpQuad.setFromRect(tmpRect),tmpRect.set(0,0,this._viewportScissorWidth/this._width,this._viewportScissorHeight/this._height),this.Quad3(tmpQuad,tmpRect)}else if("crop"===e&&this._currentRenderTarget&&t){var a=this._width/2,i=this._height/2,s=t.GetWidth(),o=t.GetHeight(),u=this._currentRenderTarget.GetWidth(),l=this._currentRenderTarget.GetHeight(),c=Math.min(u,s),h=Math.min(l,o),_=Math.max(o-l,0),f=Math.max(l-o,0)
|
||
tmpRect.set(-a,i-f,-a+c,i-h-f),tmpQuad.setFromRect(tmpRect),tmpRect.set(0,_,c,h+_),tmpRect.divide(s,o),this.Quad3(tmpQuad,tmpRect)}else{var d=this.GetRenderTargetSize(this._currentRenderTarget),p=_slicedToArray(d,2),v=p[0],m=p[1],y=v/2,g=m/2
|
||
this.Rect2(-y,g,y,-g)}_mat3.copy(this._matMV,tmpMat4),_vec2.copy(this._cam,_tmpVec),_vec2.copy(this._look,tmpVec3b),this.UpdateModelView()}},{key:"ConvexPoly",value:function(e){var t=e.length/2
|
||
if(3>t)throw Error("need at least 3 points")
|
||
for(var n=t-2,r=n-1,a=e[0],i=e[1],s=0;n>s;s+=2){var o=2*s,u=e[o+2],l=e[o+3],c=e[o+4],h=e[o+5]
|
||
if(s===r)this.Quad2(a,i,u,l,c,h,c,h)
|
||
else{var _=e[o+6],f=e[o+7]
|
||
this.Quad2(a,i,u,l,c,h,_,f)}}}},{key:"Line",value:function(e,t,n,r){var a=_C46.angleTo(e,t,n,r),i=Math.sin(a),s=Math.cos(a),o=.5*this._lineWidth,u=i*o,l=s*o,c=this._lineCap
|
||
2===c?this.LinePreCalc_LineCap2(e,t,n,r,u,l):1===c?this.LinePreCalc_LineCap1(e,t,n,r,u,l):this.LinePreCalc_LineCap0(e,t,n,r,u,l)}},{key:"LinePreCalc_LineCap2",value:function(e,t,n,r,a,i){var s=this._lineOffset,o=e+s-i,u=t+s-a,l=n+s+i,c=r+s+a,h=2*i,_=2*a,f=o+a,d=u-i,p=o-a+h,v=u+i+_,m=l+a,y=c-i,g=l-a-h,C=c+i-_
|
||
this.Quad2(f,d,m,y,g,C,p,v)}},{key:"LinePreCalc_LineCap1",value:function(e,t,n,r,a,i){var s=this._lineOffset,o=e+s-i,u=t+s-a,l=n+s+i,c=r+s+a,h=o+a,_=u-i,f=o-a,d=u+i,p=l+a,v=c-i,m=l-a,y=c+i
|
||
this.Quad2(h,_,p,v,m,y,f,d)}},{key:"LinePreCalc_LineCap0",value:function(e,t,n,r,a,i){var s=this._lineOffset,o=e+s,u=t+s,l=n+s,c=r+s,h=o+a,_=u-i,f=o-a,d=u+i,p=l+a,v=c-i,m=l-a,y=c+i
|
||
this.Quad2(h,_,p,v,m,y,f,d)}},{key:"TexturedLine",value:function(e,t,n,r,a,i){var s=_C46.angleTo(e,t,n,r),o=Math.sin(s),u=Math.cos(s),l=.5*this._lineWidth,c=o*l,h=u*l,_=this._lineCap
|
||
2===_?this.TexturedLinePreCalc_LineCap2(e,t,n,r,c,h,a,i):1===_?this.TexturedLinePreCalc_LineCap1(e,t,n,r,c,h,a,i):this.TexturedLinePreCalc_LineCap0(e,t,n,r,c,h,a,i)}},{key:"TexturedLinePreCalc_LineCap2",value:function(e,t,n,r,a,i,s,o){var u=this._lineOffset,l=e+u-i,c=t+u-a,h=n+u+i,_=r+u+a,f=2*i,d=2*a,p=l+a,v=c-i,m=l-a+f,y=c+i+d,g=h+a,C=_-i,S=h-a-f,k=_+i-d
|
||
tmpQuad.set(p,v,g,C,S,k,m,y),tmpRect.set(s,0,o,0),this.Quad3(tmpQuad,tmpRect)}},{key:"TexturedLinePreCalc_LineCap1",value:function(e,t,n,r,a,i,s,o){var u=this._lineOffset,l=e+u-i,c=t+u-a,h=n+u+i,_=r+u+a,f=l+a,d=c-i,p=l-a,v=c+i,m=h+a,y=_-i,g=h-a,C=_+i
|
||
tmpQuad.set(f,d,m,y,g,C,p,v),tmpRect.set(s,0,o,0),this.Quad3(tmpQuad,tmpRect)}},{key:"TexturedLinePreCalc_LineCap0",value:function(e,t,n,r,a,i,s,o){var u=this._lineOffset,l=e+u,c=t+u,h=n+u,_=r+u,f=l+a,d=c-i,p=l-a,v=c+i,m=h+a,y=_-i,g=h-a,C=_+i
|
||
tmpQuad.set(f,d,m,y,g,C,p,v),tmpRect.set(s,0,o,0),this.Quad3(tmpQuad,tmpRect)}},{key:"LineRect",value:function(e,t,n,r){var a=.5*this._lineWidth,i=this._lineCap
|
||
2===i?this._LineRectPreCalc_LineCap2(e,t,n,r,a):1===i?this._LineRectPreCalc_LineCap1(e,t,n,r,a):this._LineRectPreCalc_LineCap0(e,t,n,r,a)}},{key:"_LineRectPreCalc_LineCap2",value:function(e,t,n,r,a){this.LinePreCalc_LineCap2(e,t,n,t,0,a),this.LinePreCalc_LineCap2(n,t,n,r,a,0),this.LinePreCalc_LineCap2(n,r,e,r,0,-a),this.LinePreCalc_LineCap2(e,r,e,t,-a,0)}},{key:"_LineRectPreCalc_LineCap1",value:function(e,t,n,r,a){this.LinePreCalc_LineCap1(e,t,n,t,0,a),this.LinePreCalc_LineCap1(n,t,n,r,a,0),this.LinePreCalc_LineCap1(n,r,e,r,0,-a),this.LinePreCalc_LineCap1(e,r,e,t,-a,0)}},{key:"_LineRectPreCalc_LineCap0",value:function(e,t,n,r,a){this.LinePreCalc_LineCap0(e,t,n,t,0,a),this.LinePreCalc_LineCap0(n,t,n,r,a,0),this.LinePreCalc_LineCap0(n,r,e,r,0,-a),this.LinePreCalc_LineCap0(e,r,e,t,-a,0)}},{key:"LineRect2",value:function(e){this.LineRect(e.getLeft(),e.getTop(),e.getRight(),e.getBottom())}},{key:"LineQuad",value:function(e){var t=_C46.angleTo(e.getTlx(),e.getTly(),e.getTrx(),e.getTry()),n=Math.sin(t),r=Math.cos(t),a=.5*this._lineWidth,i=n*a,s=r*a,o=this._lineCap
|
||
2===o?this._LineQuadPreCalc_LineCap2(e,i,s):1===o?this._LineQuadPreCalc_LineCap1(e,i,s):this._LineQuadPreCalc_LineCap0(e,i,s)}},{key:"_LineQuadPreCalc_LineCap2",value:function(e,t,n){this.LinePreCalc_LineCap2(e.getTlx(),e.getTly(),e.getTrx(),e.getTry(),t,n),this.LinePreCalc_LineCap2(e.getTrx(),e.getTry(),e.getBrx(),e.getBry(),n,-t),this.LinePreCalc_LineCap2(e.getBrx(),e.getBry(),e.getBlx(),e.getBly(),-t,-n),this.LinePreCalc_LineCap2(e.getBlx(),e.getBly(),e.getTlx(),e.getTly(),-n,t)}},{key:"_LineQuadPreCalc_LineCap1",value:function(e,t,n){this.LinePreCalc_LineCap1(e.getTlx(),e.getTly(),e.getTrx(),e.getTry(),t,n),this.LinePreCalc_LineCap1(e.getTrx(),e.getTry(),e.getBrx(),e.getBry(),n,-t),this.LinePreCalc_LineCap1(e.getBrx(),e.getBry(),e.getBlx(),e.getBly(),-t,-n),this.LinePreCalc_LineCap1(e.getBlx(),e.getBly(),e.getTlx(),e.getTly(),-n,t)}},{key:"_LineQuadPreCalc_LineCap0",value:function(e,t,n){this.LinePreCalc_LineCap0(e.getTlx(),e.getTly(),e.getTrx(),e.getTry(),t,n),this.LinePreCalc_LineCap0(e.getTrx(),e.getTry(),e.getBrx(),e.getBry(),n,-t),this.LinePreCalc_LineCap0(e.getBrx(),e.getBry(),e.getBlx(),e.getBly(),-t,-n),this.LinePreCalc_LineCap0(e.getBlx(),e.getBly(),e.getTlx(),e.getTly(),-n,t)}},{key:"SetLineWidth",value:function(e){this._lineWidth=e,this._lineWidthStack[this._lineWidthStack.length-1]=e}},{key:"GetLineWidth",value:function(){return this._lineWidth}},{key:"PushLineWidth",value:function(e){if(this._lineWidthStack.length>=100)throw Error("pushed too many line widths - check push/pop pairs")
|
||
this._lineWidthStack.push(e),this._lineWidth=e}},{key:"PopLineWidth",value:function(){if(this._lineWidthStack.length<=1)throw Error("cannot pop last line width - check push/pop pairs")
|
||
this._lineWidthStack.pop(),this._lineWidth=this._lineWidthStack[this._lineWidthStack.length-1]}},{key:"SetLineCapButt",value:function(){this._lineCap=0,this._lineCapStack[this._lineCapStack.length-1]=0}},{key:"SetLineCapSquare",value:function(){this._lineCap=1,this._lineCapStack[this._lineCapStack.length-1]=0}},{key:"SetLineCapZag",value:function(){this._lineCap=2,this._lineCapStack[this._lineCapStack.length-1]=0}},{key:"PushLineCap",value:function(e){if("butt"===e)this.PushLineCapButt()
|
||
else if("square"===e)this.PushLineCapSquare()
|
||
else{if("zag"!==e)throw Error("invalid line cap")
|
||
this.PushLineCapZag()}}},{key:"PushLineCapButt",value:function(){if(this._lineCapStack.length>=100)throw Error("pushed too many line caps - check push/pop pairs")
|
||
this._lineCapStack.push(0),this._lineCap=0}},{key:"PushLineCapSquare",value:function(){if(this._lineCapStack.length>=100)throw Error("pushed too many line caps - check push/pop pairs")
|
||
this._lineCapStack.push(1),this._lineCap=1}},{key:"PushLineCapZag",value:function(){if(this._lineCapStack.length>=100)throw Error("pushed too many line caps - check push/pop pairs")
|
||
this._lineCapStack.push(2),this._lineCap=2}},{key:"PopLineCap",value:function(){if(this._lineCapStack.length<=1)throw Error("cannot pop last line cap - check push/pop pairs")
|
||
this._lineCapStack.pop(),this._lineCap=this._lineCapStack[this._lineCapStack.length-1]}},{key:"SetLineOffset",value:function(e){this._lineOffset=e,this._lineOffsetStack[this._lineOffsetStack.length-1]=e}},{key:"GetLineOffset",value:function(){return this._lineOffset}},{key:"PushLineOffset",value:function(e){if(this._lineOffsetStack.length>=100)throw Error("pushed too many line offsets - check push/pop pairs")
|
||
this._lineOffsetStack.push(e),this._lineOffset=e}},{key:"PopLineOffset",value:function(){if(this._lineOffsetStack.length<=1)throw Error("cannot pop last line offset - check push/pop pairs")
|
||
this._lineOffsetStack.pop(),this._lineOffset=this._lineOffsetStack[this._lineOffsetStack.length-1]}},{key:"SetPointTextureCoords",value:function(e){if(!this._lastPointTexCoords.equals(e)){this._lastPointTexCoords.copy(e)
|
||
var t=this.PushBatch()
|
||
t.InitSetPointTexCoords(e),this._topOfBatch=0}}},{key:"Point",value:function(e,t,n,r){this._pointPtr>=LAST_POINT&&this.EndBatch()
|
||
var a=this._pointPtr,i=this._baseZ+this._currentZ
|
||
if(2===this._topOfBatch&&this._lastPointZ===i)this._batch[this._batchPtr-1]._indexCount++
|
||
else{var s=this.PushBatch()
|
||
s.InitPoints(a,i),this._topOfBatch=2,this._lastPointZ=i}var o=this._pointData
|
||
o[a++]=e,o[a++]=t,o[a++]=n,o[a++]=r,this._pointPtr=a}},{key:"SetProgram",value:function(e){if(this._lastProgram!==e){var t=this.PushBatch()
|
||
t.InitSetProgram(e),this._lastProgram=e,this._topOfBatch=0,this._currentStateGroup=null}}},{key:"SetTextureFillMode",value:function(){this.SetProgram(this._spTextureFill)}},{key:"SetDeviceTransformTextureFillMode",value:function(){this.SetProgram(this._spDeviceTransformTextureFill)}},{key:"SetColorFillMode",value:function(){this.SetProgram(this._spColorFill)}},{key:"SetLinearGradientFillMode",value:function(){this.SetProgram(this._spLinearGradientFill)}},{key:"SetGradientColor",value:function(e){var t=this.PushBatch()
|
||
t.InitSetGradientColor(e),this._topOfBatch=0}},{key:"SetHardEllipseFillMode",value:function(){this.SetProgram(this._spHardEllipseFill)}},{key:"SetHardEllipseOutlineMode",value:function(){this.SetProgram(this._spHardEllipseOutline)}},{key:"SetSmoothEllipseFillMode",value:function(){this.SetProgram(this._spSmoothEllipseFill)}},{key:"SetSmoothEllipseOutlineMode",value:function(){this.SetProgram(this._spSmoothEllipseOutline)}},{key:"SetEllipseParams",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:1,r=this.PushBatch()
|
||
r.InitSetEllipseParams(e,t,n),this._topOfBatch=0}},{key:"SetSmoothLineFillMode",value:function(){this.SetProgram(this._spSmoothLineFill)}},{key:"SetTilemapFillMode",value:function(){this.SetProgram(this._spTilemapFill)}},{key:"SetTilemapInfo",value:function(e,t,n,r,a,i,s){if(this._lastProgram!==this._spTilemapFill)throw Error("must set tilemap fill mode first")
|
||
var o=this.PushBatch()
|
||
o.InitSetTilemapInfo(e,t,n,r,a,i,s),this._topOfBatch=0}},{key:"SetProgramParameters",value:function(e,t,n,r,a,i,s,o,u,l,c){var h=this._lastProgram,_=h._hasAnyOptionalUniforms,f=!!c.length
|
||
if(_&&!h.AreOptionalUniformsAlreadySetInBatch(t,n,r,a,i,s,o,u,l)||f&&!h.AreCustomParametersAlreadySetInBatch(c)){var d=this.PushBatch()
|
||
if(d.InitSetProgramParameters(),_){h.SetOptionalUniformsInBatch(t,n,r,a,i,s,o,u,l)
|
||
var p=d._mat4param
|
||
p[0]=i,p[1]=s,t.writeToTypedArray(p,2),p[6]=o,p[7]=u,n.writeToTypedArray(p,12)
|
||
var v=d._colorParam
|
||
a.writeToTypedArray(v,0)
|
||
var m=v[1]
|
||
v[1]=v[3],v[3]=m,r.writeToTypedArray(d._srcOriginRect,0),d._startIndex=l,h._uSamplerBack.IsUsed()?d._texParam=e?e.GetTexture():null:d._texParam=null}f&&(h.SetCustomParametersInBatch(c),_C46.shallowAssignArray(d._shaderParams,c)),this._topOfBatch=0}}},{key:"ClearRgba",value:function(e,t,n,r){var a=this.PushBatch()
|
||
a.InitClearSurface2(e,t,n,r),this._topOfBatch=0}},{key:"Clear",value:function(e){var t=this.PushBatch()
|
||
t.InitClearSurface(e),this._topOfBatch=0}},{key:"ClearRect",value:function(e,t,n,r){this.ClearRect4(e,t,n,r,0,0,0,0)}},{key:"ClearRect2",value:function(e){this.ClearRect4(e.getLeft(),e.getTop(),e.width(),e.height(),0,0,0,0)}},{key:"ClearRect3",value:function(e,t){this.ClearRect4(e.getLeft(),e.getTop(),e.width(),e.height(),t.getR(),t.getG(),t.getB(),t.getA())}},{key:"ClearRect4",value:function(e,t,n,r,a,i,s,o){if(!(0>n||0>r)){var u=this.PushBatch()
|
||
u.InitClearRect(e,t,n,r,a,i,s,o),this._topOfBatch=0}}},{key:"Start",value:function(){}},{key:"Finish",value:function(){_get(_getPrototypeOf(t.prototype),"Finish",this).call(this),this._gl.flush()}},{key:"CheckForQueryResults",value:function(){var e,t=_createForOfIteratorHelper(this._allQueryResultBuffers)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.CheckForResults(this._frameNumber)}}catch(r){t.e(r)}finally{t.f()}}},{key:"IsContextLost",value:function(){return!this._gl||this._gl.isContextLost()||this._isInitialisingAfterContextRestored}},{key:"OnContextLost",value:function(){_C46.Gfx.WebGLRendererTexture.OnContextLost(),_C46.Gfx.WebGLRenderTarget.OnContextLost(),_C46.Gfx.RendererText.OnContextLost()
|
||
var e,t=_createForOfIteratorHelper(this._allQueryResultBuffers)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Clear()}}catch(r){t.e(r)}finally{t.f()}this._extensions=[],this._timerExt=null,this._parallelShaderCompileExt=null,this._unmaskedVendor="(unavailable)",this._unmaskedRenderer="(unavailable)",this._lastProgram=null,this._spTextureFill=null,this._spDeviceTransformTextureFill=null,this._spColorFill=null,this._spLinearGradientFill=null,this._spHardEllipseFill=null,this._spHardEllipseOutline=null,this._spSmoothEllipseFill=null,this._spSmoothEllipseOutline=null,this._spSmoothLineFill=null,this._spPoints=null,this._spTilemapFill=null
|
||
var a,i=_createForOfIteratorHelper(this._stateGroups.values())
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
s.OnContextLost()}}catch(r){i.e(r)}finally{i.f()}var o,u=_createForOfIteratorHelper(this._allShaderPrograms)
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value
|
||
l.Release()}}catch(r){u.e(r)}finally{u.f()}this._ClearAllShaderPrograms()}},{key:"OnContextRestored",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return this._isInitialisingAfterContextRestored=!0,n.next=3,this.InitState()
|
||
case 3:this._isInitialisingAfterContextRestored=!1,e=_createForOfIteratorHelper(this._stateGroups.values())
|
||
try{for(e.s();!(t=e.n()).done;)r=t.value,r.OnContextRestored(this)}catch(a){e.e(a)}finally{e.f()}this.SetSize(this._width,this._height,!0)
|
||
case 7:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"CreateStaticTexture",value:function(e,t){if(this.IsContextLost())throw Error("context lost")
|
||
this.EndBatch()
|
||
var n=_C46.New(_C46.Gfx.WebGLRendererTexture,this)
|
||
return n._CreateStatic(e,t),n}},{key:"CreateStaticTextureAsync",value:function(e,t){var n=this
|
||
if(this.IsContextLost())return Promise.reject("context lost")
|
||
t=Object.assign({},t)
|
||
var r=t.wrapX&&"clamp-to-edge"!==t.wrapX||t.wrapY&&"clamp-to-edge"!==t.wrapY
|
||
return!_C46.Supports.ImageBitmapOptions||!this.SupportsNPOTTextures()&&r?_C46.Supports.ImageBitmap?createImageBitmap(e).then(function(e){return _C46.Asyncify(function(){return n.CreateStaticTexture(e,t)})}):e instanceof Blob?_C46.BlobToImage(e,!0).then(function(e){return n.CreateStaticTextureAsync(e,t)}):"undefined"!=typeof HTMLImageElement&&e instanceof HTMLImageElement&&"function"==typeof e.decode?e.decode().then(function(){return _C46.Asyncify(function(){return n.CreateStaticTexture(e,t)})}):_C46.Asyncify(function(){return n.CreateStaticTexture(e,t)}):(t.premultiplyAlpha=!1,createImageBitmap(e,{premultiplyAlpha:"premultiply"}).then(function(e){return _C46.Asyncify(function(){return n.CreateStaticTexture(e,t)})}))}},{key:"CreateDynamicTexture",value:function(e,t,n){this.EndBatch()
|
||
var r=_C46.New(_C46.Gfx.WebGLRendererTexture,this)
|
||
return r._CreateDynamic(e,t,n),r}},{key:"UpdateTexture",value:function(e,t,n){this.EndBatch(),t._Update(e,n)}},{key:"DeleteTexture",value:function(e){e&&(e.SubtractReference(),e.GetReferenceCount()>0||(this.EndBatch(),e===this._lastTexture0&&(this._gl.bindTexture(this._gl.TEXTURE_2D,null),this._lastTexture0=null),e===this._lastTexture1&&(this._gl.activeTexture(this._gl.TEXTURE1),this._gl.bindTexture(this._gl.TEXTURE_2D,null),this._gl.activeTexture(this._gl.TEXTURE0),this._lastTexture1=null),e._Delete()))}},{key:"CreateRenderTarget",value:function(e){var t=this._width,n=this._height,r=!0
|
||
if(e&&("number"==typeof e.width&&(t=e.width,r=!1),"number"==typeof e.height&&(n=e.height,r=!1)),0>=t||0>=n)throw Error("invalid size")
|
||
this.EndBatch()
|
||
var a=_C46.New(_C46.Gfx.WebGLRenderTarget,this)
|
||
return a._Create(t,n,Object.assign({isDefaultSize:r},e)),this._currentRenderTarget=null,this._batchState.currentFramebuffer=null,a}},{key:"SetRenderTarget",value:function(e){if(e!==this._currentRenderTarget){var t,n,r,a
|
||
e?(e.IsDefaultSize()&&e._Resize(this._width,this._height),r=e.GetWidth(),a=e.GetHeight(),t=r,n=a):(r=this._width,a=this._height,t=this.GetScissoredViewportWidth(),n=this.GetScissoredViewportHeight())
|
||
var i=this._lastBackbufferWidth!==r||this._lastBackbufferHeight!==a
|
||
i&&this._UpdateViewportRenderer(t,n,r,a)
|
||
var s=this.PushBatch()
|
||
s.InitSetRenderTarget(e,i,this._matP),this._currentRenderTarget=e,this._topOfBatch=0}}},{key:"GetRenderTarget",value:function(){return this._currentRenderTarget}},{key:"GetRenderTargetSize",value:function(e){return e?[e.GetWidth(),e.GetHeight()]:[this._width,this._height]}},{key:"CopyRenderTarget",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"stretch"
|
||
if(this._version<2||this._currentRenderTarget&&this._currentRenderTarget.GetMultisampling()>0)this.SetCopyBlend(),this.ResetColor(),this.DrawRenderTarget(e,t)
|
||
else{var n=this.PushBatch()
|
||
n.InitBlitFramebuffer(e,this._currentRenderTarget,t),this._topOfBatch=0}}},{key:"DrawRenderTarget",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"stretch",n=e.GetTexture()
|
||
if(!n)throw Error("not a texture-backed render target")
|
||
this.SetTexture(n),this.FullscreenQuad(t,n)}},{key:"InvalidateRenderTarget",value:function(e){if(!(this._version<2)){var t=this.PushBatch()
|
||
t.InitInvalidateFramebuffer(e._GetFramebuffer()),this._topOfBatch=0}}},{key:"DeleteRenderTarget",value:function(e){this.SetRenderTarget(null),this.EndBatch()
|
||
var t=e.GetTexture()
|
||
t===this._lastTexture0&&(this._gl.bindTexture(this._gl.TEXTURE_2D,null),this._lastTexture0=null),t===this._lastTexture1&&(this._gl.activeTexture(this._gl.TEXTURE1),this._gl.bindTexture(this._gl.TEXTURE_2D,null),this._gl.activeTexture(this._gl.TEXTURE0),this._lastTexture1=null),e._Delete()}},{key:"ReadBackRenderTargetToImageData",value:function(){function e(e,n,r){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r){var a,i,s,o,u,l,c,h,_,f,d,p,v,m,y,g,C,S=this
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this.EndBatch(),a=this._currentRenderTarget,e?(i=e.GetWidth(),s=e.GetHeight(),o=e._GetFramebuffer()):(i=this.GetWidth(),s=this.GetHeight(),o=null),u=0,l=0,c=i,h=s,r&&(u=_C46.clamp(Math.floor(r.getLeft()),0,i-1),l=_C46.clamp(Math.floor(r.getTop()),0,s-1),_=r.width(),_=0===_?i-u:_C46.clamp(Math.floor(_),0,i-u),f=r.height(),f=0===f?s-l:_C46.clamp(Math.floor(f),0,s-l),c=_,h=f,l=s-(l+h)),d=this._gl,d.bindFramebuffer(d.FRAMEBUFFER,o),p=function(){d.bindFramebuffer(d.FRAMEBUFFER,null),S._currentRenderTarget=null,S._batchState.currentFramebuffer=null,S.SetRenderTarget(a)},t||!(this.GetWebGLVersionNumber()>=2)){n.next=33
|
||
break}return d.bindFramebuffer(d.READ_FRAMEBUFFER,o),m=d.createBuffer(),y=c*h*4,g=d.PIXEL_PACK_BUFFER,d.bindBuffer(g,m),d.bufferData(g,y,d.STREAM_READ),d.readPixels(u,l,c,h,d.RGBA,d.UNSIGNED_BYTE,0),d.bindFramebuffer(d.READ_FRAMEBUFFER,null),d.bindBuffer(g,null),p(),C=d.fenceSync(d.SYNC_GPU_COMMANDS_COMPLETE,0),n.next=25,this._WaitForObjectReady(function(){return d.getSyncParameter(C,d.SYNC_STATUS)===d.SIGNALED})
|
||
case 25:d.deleteSync(C),v=new ImageData(c,h),d.bindBuffer(g,m),d.getBufferSubData(g,0,new Uint8Array(v.data.buffer),0,y),d.bindBuffer(g,null),d.deleteBuffer(m),n.next=36
|
||
break
|
||
case 33:v=new ImageData(c,h),d.readPixels(u,l,c,h,d.RGBA,d.UNSIGNED_BYTE,new Uint8Array(v.data.buffer)),p()
|
||
case 36:return n.abrupt("return",v)
|
||
case 37:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"StartQuery",value:function(e){if(this.SupportsGPUProfiling()){var t=this.PushBatch()
|
||
t.InitStartQuery(e),this._topOfBatch=0}}},{key:"EndQuery",value:function(e){if(this.SupportsGPUProfiling()){var t=this.PushBatch()
|
||
t.InitEndQuery(e),this._topOfBatch=0}}},{key:"_WaitForObjectReady",value:function(e){var t=new Promise(function(t){return pendingPolls.add({resolve:t,checkFunc:e})})
|
||
return-1===pollRafId&&(pollRafId=self.requestAnimationFrame(CheckPendingPolls)),t}},{key:"IsDesynchronized",value:function(){return!!this._attribs.desynchronized}},{key:"GetEstimatedBackBufferMemoryUsage",value:function(){return this._width*this._height*(this._attribs.alpha?4:3)}},{key:"GetEstimatedRenderBufferMemoryUsage",value:function(){var e,t=0,n=_createForOfIteratorHelper(_C46.Gfx.WebGLRenderTarget.allRenderTargets())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
r.GetTexture()||(t+=r.GetEstimatedMemoryUsage())}}catch(a){n.e(a)}finally{n.f()}return t}},{key:"GetEstimatedTextureMemoryUsage",value:function(){var e,t=0,n=_createForOfIteratorHelper(_C46.Gfx.WebGLRendererTexture.allTextures())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
t+=r.GetEstimatedMemoryUsage()}}catch(a){n.e(a)}finally{n.f()}return t}},{key:"GetEstimatedTotalMemoryUsage",value:function(){return this.GetEstimatedBackBufferMemoryUsage()+this.GetEstimatedRenderBufferMemoryUsage()+this.GetEstimatedTextureMemoryUsage()}},{key:"GetWebGLVersionString",value:function(){return this._versionString}},{key:"GetWebGLVersionNumber",value:function(){return this._version}},{key:"SupportsNPOTTextures",value:function(){return this.GetWebGLVersionNumber()>=2}},{key:"GetMaxTextureSize",value:function(){return this._maxTextureSize}},{key:"GetMinPointSize",value:function(){return this._minPointSize}},{key:"GetMaxPointSize",value:function(){return this._maxPointSize}},{key:"SupportsHighP",value:function(){return 0!==this._highpPrecision}},{key:"GetHighPPrecision",value:function(){return this._highpPrecision}},{key:"GetUnmaskedVendor",value:function(){return this._unmaskedVendor}},{key:"GetUnmaskedRenderer",value:function(){return this._unmaskedRenderer}},{key:"GetExtensions",value:function(){return this._extensions}},{key:"HasMajorPerformanceCaveat",value:function(){return this._hasMajorPerformanceCaveat}},{key:"SupportsGPUProfiling",value:function(){return!!this._timerExt}},{key:"_GetDisjointTimerQueryExtension",value:function(){return this._timerExt}},{key:"_GetParallelShaderCompileExtension",value:function(){return this._parallelShaderCompileExt}},{key:"_AddQueryResultBuffer",value:function(e){this._allQueryResultBuffers.add(e)}},{key:"_RemoveQueryResultBuffer",value:function(e){this._allQueryResultBuffers["delete"](e)}},{key:"_GetTimeQueryStack",value:function(){return this._timeQueryStack}},{key:"GetContext",value:function(){return this._gl}},{key:"_InitBlendModes",value:function(e){this._InitBlendModeData([["normal",e.ONE,e.ONE_MINUS_SRC_ALPHA],["additive",e.ONE,e.ONE],["xor",e.ONE,e.ONE_MINUS_SRC_ALPHA],["copy",e.ONE,e.ZERO],["destination-over",e.ONE_MINUS_DST_ALPHA,e.ONE],["source-in",e.DST_ALPHA,e.ZERO],["destination-in",e.ZERO,e.SRC_ALPHA],["source-out",e.ONE_MINUS_DST_ALPHA,e.ZERO],["destination-out",e.ZERO,e.ONE_MINUS_SRC_ALPHA],["source-atop",e.DST_ALPHA,e.ONE_MINUS_SRC_ALPHA],["destination-atop",e.ONE_MINUS_DST_ALPHA,e.SRC_ALPHA]])}},{key:"CreateRendererText",value:function(){return _C46.New(_C46.Gfx.RendererText,this)}},{key:"CreateWebGLText",value:function(){return this.CreateRendererText()}}]),t}(_C46.Gfx.RendererBase)
|
||
var SortZOrderList=function(e,t){var n=e[0],r=t[0],a=n-r
|
||
if(0!==a)return a
|
||
var i=e[1],s=t[1]
|
||
return i-s},_C47=self.C3,runtime=null,keysDownByKey=new Set,tempZOrderList=[],tempInstances=[],didWarnInAlertPolyfill=!1
|
||
self.IRuntime=function(){function e(t,n){var r=this
|
||
_classCallCheck(this,e),runtime=t,Object.defineProperties(this,{assets:{value:runtime.GetAssetManager().GetIAssetManager(),writable:!1},objects:{value:n,writable:!1},globalVars:{value:{},writable:!1},projectName:{value:runtime.GetProjectName(),writable:!1},projectVersion:{value:runtime.GetProjectVersion(),writable:!1},storage:{value:new self.IStorage(runtime),writable:!1},isInWorker:{value:runtime.IsInWorker(),writable:!1}}),runtime.UserScriptDispatcher().addEventListener("keydown",function(e){return keysDownByKey.has(e.key)?void e.stopPropagation():void keysDownByKey.add(e.key)}),runtime.UserScriptDispatcher().addEventListener("keyup",function(e){return keysDownByKey["delete"](e.key)}),runtime.Dispatcher().addEventListener("window-blur",function(){return keysDownByKey.clear()}),runtime.IsInWorker()&&(self.alert=function(e){return didWarnInAlertPolyfill||(didWarnInAlertPolyfill=!0,console.warn("[Construct 3] alert() was called from a Web Worker, because the project 'Use worker' setting is enabled. This method is not normally available in a Web Worker. Construct has implemented the alert for you, but note that other features may be missing in worker mode. You may wish to disable 'Use worker', or use a more convenient function like console.log(). For more information please refer to the scripting section of the manual.")),r.alert(e)})}return _createClass(e,[{key:"_InitGlobalVars",value:function(e){Object.defineProperties(this.globalVars,e)}},{key:"addEventListener",value:function(e,t){runtime.UserScriptDispatcher().addEventListener(e,t)}},{key:"removeEventListener",value:function(e,t){runtime.UserScriptDispatcher().removeEventListener(e,t)}},{key:"callFunction",value:function(e){var t=runtime.GetEventSheetManager(),n=t.GetFunctionBlockByName(e)
|
||
if(!n)throw Error("cannot find function name '".concat(e,"'"))
|
||
if(!n.IsEnabled())return n.GetDefaultReturnValue()
|
||
for(var r=arguments.length,a=Array(r>1?r-1:0),i=1;r>i;i++)a[i-1]=arguments[i]
|
||
if(a.length<n.GetFunctionParameterCount())throw Error("not enough function parameters passed for '".concat(e,"' (").concat(a.length," passed, ").concat(n.GetFunctionParameterCount()," expected)"))
|
||
var s=n.GetEventBlock(),o=null,u=t.GetCurrentEvent()
|
||
if(u){var l=u.GetSolModifiersIncludingParents()
|
||
l.length>0&&(o=l,t.PushCleanSol(l))}var c=s.RunAsExpressionFunctionCall.apply(s,[s.GetSolModifiersIncludingParents(),n.GetReturnType(),n.GetDefaultReturnValue()].concat(a))
|
||
return o&&t.PopSol(o),c}},{key:"setReturnValue",value:function(e){var t=runtime.GetEventStack().GetCurrentExpFuncStackFrame()
|
||
if(!t)throw Error("not in a function which returns a value")
|
||
switch(t.GetFunctionReturnType()){case 1:"number"==typeof e&&t.SetFunctionReturnValue(e)
|
||
break
|
||
case 2:"string"==typeof e&&t.SetFunctionReturnValue(e)
|
||
break
|
||
case 3:("number"==typeof e||"string"==typeof e)&&t.SetFunctionReturnValue(e)}}},{key:"dt",get:function(){return runtime.GetDt()}},{key:"gameTime",get:function(){return runtime.GetGameTime()}},{key:"wallTime",get:function(){return runtime.GetWallTime()}},{key:"random",value:function(){return runtime.Random()}},{key:"layout",get:function(){return runtime.GetMainRunningLayout().GetILayout()}},{key:"getLayout",value:function(e){var t=runtime.GetLayoutManager(),n=null
|
||
if("number"!=typeof e&&"string"!=typeof e)throw new TypeError("expected string or number")
|
||
if(n=t.GetLayout(e),!n)throw Error("invalid layout")
|
||
return n.GetILayout()}},{key:"getAllLayouts",value:function(){return runtime.GetLayoutManager().GetAllLayouts().map(function(e){return e.GetILayout()})}},{key:"goToLayout",value:function(e){var t=runtime.GetLayoutManager(),n=null
|
||
if("number"!=typeof e&&"string"!=typeof e)throw new TypeError("expected string or number")
|
||
if(n=t.GetLayout(e),!n)throw Error("invalid layout")
|
||
t.IsPendingChangeMainLayout()||t.ChangeMainLayout(n)}},{key:"keyboard",get:function(){var e=runtime._GetCommonScriptInterfaces().keyboard
|
||
if(!e)throw Error("runtime.keyboard used but Keyboard object missing - add it to your project first")
|
||
return e}},{key:"mouse",get:function(){var e=runtime._GetCommonScriptInterfaces().mouse
|
||
if(!e)throw Error("runtime.mouse used but Mouse object missing - add it to your project first")
|
||
return e}},{key:"touch",get:function(){var e=runtime._GetCommonScriptInterfaces().touch
|
||
if(!e)throw Error("runtime.touch used but Touch object missing - add it to your project first")
|
||
return e}},{key:"invokeDownload",value:function(e,t){runtime.InvokeDownload(e,t)}},{key:"getInstanceByUid",value:function(e){var t=runtime.GetInstanceByUID(e)
|
||
return t?t.GetInterfaceClass():null}},{key:"sortZOrder",value:function(e,t){var n,r=runtime.GetCurrentLayout(),a=_createForOfIteratorHelper(e)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value,s=runtime._UnwrapScriptInterface(i)
|
||
if(!s||!s.GetWorldInfo())throw Error("invalid instance")
|
||
var o=s.GetWorldInfo()
|
||
tempZOrderList.push([o.GetLayer().GetIndex(),o.GetZIndex()]),tempInstances.push(s)}}catch(u){a.e(u)}finally{a.f()}if(0!==tempZOrderList.length){tempZOrderList.sort(SortZOrderList),tempInstances.sort(function(e,n){return t(e.GetInterfaceClass(),n.GetInterfaceClass())})
|
||
for(var l=!1,c=0,h=tempZOrderList.length;h>c;++c){var _=tempInstances[c],f=r.GetLayerByIndex(tempZOrderList[c][0]),d=tempZOrderList[c][1],p=f._GetInstances()
|
||
p[d]!==_&&(p[d]=_,_.GetWorldInfo()._SetLayer(f),f.SetZIndicesChanged(),l=!0)}l&&runtime.UpdateRender(),_C47.clearArray(tempZOrderList),_C47.clearArray(tempInstances)}}},{key:"alert",value:function(e){return runtime.PostComponentMessageToDOMAsync("runtime","alert",{message:e+(runtime.IsInWorker()?" [via Web Worker]":"")})}}]),e}()
|
||
var _C48=self.C3,assetManager=null
|
||
self.IAssetManager=function(){function e(t){_classCallCheck(this,e),assetManager=t,Object.defineProperties(this,{isWebMOpusSupported:{value:assetManager.IsAudioFormatSupported("audio/webm; codecs=opus"),writable:!1}})}return _createClass(e,[{key:"fetchText",value:function(e){return assetManager.FetchText(e)}},{key:"fetchJson",value:function(e){return assetManager.FetchJson(e)}},{key:"fetchBlob",value:function(e){return assetManager.FetchBlob(e)}},{key:"fetchArrayBuffer",value:function(e){return assetManager.FetchArrayBuffer(e)}},{key:"getProjectFileUrl",value:function(e){return assetManager.GetProjectFileUrl(e)}},{key:"getMediaFileUrl",value:function(e){return _C48.IsRelativeURL(e)&&(e=e.toLowerCase()),assetManager.GetMediaFileUrl(e,assetManager.GetMediaSubfolder())}},{key:"mediaFolder",get:function(){return assetManager.GetMediaSubfolder()}},{key:"decodeWebMOpus",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r,a,i,s
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this.isWebMOpusSupported){n.next=2
|
||
break}throw Error("decodeWebMOpus(): not supported because WebM Opus is supported by the platform")
|
||
case 2:return n.next=4,assetManager.GetRuntime()._WasmDecodeWebMOpus(t)
|
||
case 4:return r=n.sent,a=new Float32Array(r),i=e.createBuffer(1,a.length,48e3),s=i.getChannelData(0),s.set(a),n.abrupt("return",i)
|
||
case 10:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"loadScripts",value:function(){var e
|
||
return(e=assetManager).LoadScripts.apply(e,arguments)}},{key:"compileWebAssembly",value:function(e){return assetManager.CompileWebAssembly(e)}},{key:"loadStyleSheet",value:function(e){return assetManager.LoadStyleSheet(e)}}]),e}(),self.IStorage=function(){function e(t){_classCallCheck(this,e),this._storage=t._GetProjectStorage()}return _createClass(e,[{key:"getItem",value:function(e){return this._storage.getItem(e)}},{key:"setItem",value:function(e,t){return this._storage.setItem(e,t)}},{key:"removeItem",value:function(e){return this._storage.removeItem(e)}},{key:"clear",value:function(){return this._storage.clear()}},{key:"keys",value:function(){return this._storage.keys()}}]),e}()
|
||
var _C49=self.C3,map=new WeakMap
|
||
self.IObjectClass=function(){function e(t){_classCallCheck(this,e),map.set(this,t),Object.defineProperties(this,{name:{value:t.GetName(),writable:!1}}),t.GetRuntime()._MapScriptInterface(this,t)}return _createClass(e,[{key:"addEventListener",value:function(e,t){map.get(this).UserScriptDispatcher().addEventListener(e,t)}},{key:"removeEventListener",value:function(e,t){map.get(this).UserScriptDispatcher().removeEventListener(e,t)}},{key:"getAllInstances",value:function(){return map.get(this).GetInstances().map(function(e){return e.GetInterfaceClass()})}},{key:"getFirstInstance",value:function(){var e=map.get(this).GetInstances()
|
||
return e.length>0?e[0].GetInterfaceClass():null}},{key:"getPickedInstances",value:function(){return map.get(this).GetCurrentSol().GetInstances().map(function(e){return e.GetInterfaceClass()})}},{key:"getFirstPickedInstance",value:function(){var e=map.get(this).GetCurrentSol().GetInstances()
|
||
return e.length>0?e[0].GetInterfaceClass():null}},{key:"instances",value:_regeneratorRuntime().mark(function t(){var e,n,r
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=_createForOfIteratorHelper(map.get(this).GetInstances()),t.prev=1,e.s()
|
||
case 3:if((n=e.n()).done){t.next=9
|
||
break}return r=n.value,t.next=7,r.GetInterfaceClass()
|
||
case 7:t.next=3
|
||
break
|
||
case 9:t.next=14
|
||
break
|
||
case 11:t.prev=11,t.t0=t["catch"](1),e.e(t.t0)
|
||
case 14:return t.prev=14,e.f(),t.finish(14)
|
||
case 17:case"end":return t.stop()}},t,this,[[1,11,14,17]])})},{key:"pickedInstances",value:_regeneratorRuntime().mark(function n(){var e,t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:e=_createForOfIteratorHelper(map.get(this).GetCurrentSol().GetInstances()),n.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){n.next=9
|
||
break}return r=t.value,n.next=7,r.GetInterfaceClass()
|
||
case 7:n.next=3
|
||
break
|
||
case 9:n.next=14
|
||
break
|
||
case 11:n.prev=11,n.t0=n["catch"](1),e.e(n.t0)
|
||
case 14:return n.prev=14,e.f(),n.finish(14)
|
||
case 17:case"end":return n.stop()}},n,this,[[1,11,14,17]])})},{key:"setInstanceClass",value:function(e){var t=map.get(this)
|
||
if(t.GetInstanceCount()>0)throw Error("setInstanceClass() called too late, because instances have already been created - call in runOnStartup")
|
||
map.get(this)._SetUserScriptInstanceClass(e)}},{key:"createInstance",value:function(e,t,n){if("number"!=typeof e&&"string"!=typeof e)throw new TypeError("invalid layer parameter")
|
||
var r=map.get(this),a=r.GetRuntime(),i=a.GetMainRunningLayout().GetLayer(e)
|
||
if(!i)throw Error("invalid layer")
|
||
var s=a.CreateInstance(r,i,t,n),o=a.GetEventSheetManager()
|
||
if(o.BlockFlushingInstances(!0),s._TriggerOnCreated(),s.IsInContainer()){var u,l=_createForOfIteratorHelper(s.siblings())
|
||
try{for(l.s();!(u=l.n()).done;){var c=u.value
|
||
c._TriggerOnCreated()}}catch(h){l.e(h)}finally{l.f()}}return o.BlockFlushingInstances(!1),s.GetInterfaceClass()}}]),e}()
|
||
var _map=new WeakMap
|
||
self.ILayout=function(){function e(t){_classCallCheck(this,e),_map.set(this,t)
|
||
for(var n=[],r=t.GetEffectList(),a=r.GetAllEffectTypes().length,i=0;a>i;++i)n.push(new self.IEffectInstance(r,i))
|
||
Object.defineProperties(this,{name:{value:t.GetName(),writable:!1},index:{value:t.GetIndex(),writable:!1},effects:{value:n,writable:!1}})}return _createClass(e,[{key:"addEventListener",value:function(e,t){_map.get(this).UserScriptDispatcher().addEventListener(e,t)}},{key:"removeEventListener",value:function(e,t){_map.get(this).UserScriptDispatcher().removeEventListener(e,t)}},{key:"width",get:function(){return _map.get(this).GetWidth()},set:function(e){_map.get(this).SetWidth(e)}},{key:"height",get:function(){return _map.get(this).GetHeight()},set:function(e){_map.get(this).SetHeight(e)}},{key:"scrollTo",value:function(e,t){var n=_map.get(this)
|
||
n.SetScrollX(e),n.SetScrollY(t)}},{key:"getLayer",value:function(e){var t=_map.get(this),n=null
|
||
if("number"!=typeof e&&"string"!=typeof e)throw new TypeError("expected string or number")
|
||
if(n=t.GetLayer(e),!n)throw Error("invalid layer")
|
||
return n.GetILayer()}},{key:"getAllLayers",value:function(){return _map.get(this).GetLayers().map(function(e){return e.GetILayer()})}}]),e}()
|
||
var _C50=self.C3,_map2=new WeakMap
|
||
self.ILayer=function(){function e(t){_classCallCheck(this,e),_map2.set(this,t)
|
||
for(var n=[],r=t.GetEffectList(),a=r.GetAllEffectTypes().length,i=0;a>i;++i)n.push(new self.IEffectInstance(r,i))
|
||
Object.defineProperties(this,{name:{value:t.GetName(),writable:!1},index:{value:t.GetIndex(),writable:!1},layout:{value:t.GetLayout().GetILayout(),writable:!1},effects:{value:n,writable:!1}})}return _createClass(e,[{key:"isVisible",get:function(){return _map2.get(this).IsVisible()},set:function(e){_map2.get(this).SetVisible(e)}},{key:"opacity",get:function(){return _map2.get(this).GetOpacity()},set:function(e){e=_C50.clamp(+e,0,1),isNaN(e)||_map2.get(this).SetOpacity(e)}},{key:"getViewport",value:function(){return _map2.get(this).GetViewport().toDOMRect()}},{key:"cssPxToLayer",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=_map2.get(this),a=r.GetRuntime()
|
||
return r.CanvasCssToLayer(e-a.GetCanvasClientX(),t-a.GetCanvasClientY(),n)}},{key:"layerToCssPx",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=_map2.get(this),a=r.GetRuntime(),i=r.LayerToCanvasCss(e,t,n),s=_slicedToArray(i,2),o=s[0],u=s[1]
|
||
return[o+a.GetCanvasClientX(),u+a.GetCanvasClientY()]}}],[{key:"_Unwrap",value:function(e){return _map2.get(e)}}]),e}()
|
||
var GetDispatcher=function(e){var t=dispatchers.get(e)
|
||
return t?t:(t=_C51.New(_C51.Event.Dispatcher),dispatchers.set(e,t),t)},_C51=self.C3,_map3=new WeakMap,dispatchers=new WeakMap,initInst=null
|
||
self.IInstance=function(){function e(){_classCallCheck(this,e),_map3.set(this,initInst)
|
||
var t={runtime:{value:initInst.GetRuntime().GetIRuntime(),writable:!1},objectType:{value:initInst.GetObjectClass().GetIObjectClass(),writable:!1},uid:{value:initInst.GetUID(),writable:!1}}
|
||
initInst._GetInstVarsScriptDescriptor(t),initInst._GetBehaviorsScriptDescriptor(t),Object.defineProperties(this,t),initInst.GetRuntime()._MapScriptInterface(this,initInst)}return _createClass(e,[{key:"_Release",value:function(){var e=dispatchers.get(this)
|
||
e&&(e.Release(),dispatchers["delete"](this)),_map3["delete"](this)}},{key:"addEventListener",value:function(e,t,n){GetDispatcher(this).addEventListener(e,t,n)}},{key:"removeEventListener",value:function(e,t,n){GetDispatcher(this).removeEventListener(e,t,n)}},{key:"dispatchEvent",value:function(e){GetDispatcher(this).dispatchEvent(e)}},{key:"destroy",value:function(){var e=_map3.get(this)
|
||
e.GetRuntime().DestroyInstance(e)}}],[{key:"_Init",value:function(e){initInst=e}},{key:"_GetInitInst",value:function(){return initInst}}]),e}()
|
||
var _C52=self.C3,IInstance=self.IInstance,ILayer=self.ILayer,_map4=new WeakMap,BLEND_MODE_TO_INDEX=new Map([["normal",0],["additive",1],["copy",3],["destination-over",4],["source-in",5],["destination-in",6],["source-out",7],["destination-out",8],["source-atop",9],["destination-atop",10]]),INDEX_TO_BLEND_MODE=new Map(_toConsumableArray(BLEND_MODE_TO_INDEX.entries()).map(function(e){return[e[1],e[0]]})),_tempColor=_C52.New(_C52.Color)
|
||
self.IWorldInstance=function(e){function t(){var e
|
||
_classCallCheck(this,t),e=n.call(this)
|
||
var r=IInstance._GetInitInst()
|
||
_map4.set(_assertThisInitialized(e),r)
|
||
var a=[],i=r.GetWorldInfo(),s=i.GetInstanceEffectList()
|
||
if(s)for(var o=i.GetObjectClass().GetEffectList().GetAllEffectTypes().length,u=0;o>u;++u)a.push(new self.IEffectInstance(s,u))
|
||
var l={effects:{value:a,writable:!1}}
|
||
return Object.defineProperties(_assertThisInitialized(e),l),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"layout",get:function(){return _map4.get(this).GetWorldInfo().GetLayout().GetILayout()}},{key:"layer",get:function(){return _map4.get(this).GetWorldInfo().GetLayer().GetILayer()}},{key:"x",get:function(){return _map4.get(this).GetWorldInfo().GetX()},set:function(e){e=+e
|
||
var t=_map4.get(this).GetWorldInfo()
|
||
isNaN(e)||t.GetX()===e||(t.SetX(e),t.SetBboxChanged())}},{key:"y",get:function(){return _map4.get(this).GetWorldInfo().GetY()},set:function(e){e=+e
|
||
var t=_map4.get(this).GetWorldInfo()
|
||
isNaN(e)||t.GetY()===e||(t.SetY(e),t.SetBboxChanged())}},{key:"zElevation",get:function(){return _map4.get(this).GetWorldInfo().GetZElevation()},set:function(e){e=+e
|
||
var t=_map4.get(this),n=t.GetWorldInfo()
|
||
n.GetZElevation()!==e&&(n.SetZElevation(e),t.GetRuntime().UpdateRender())}},{key:"totalZElevation",get:function(){return _map4.get(this).GetWorldInfo().GetTotalZElevation()}},{key:"width",get:function(){return _map4.get(this).GetWorldInfo().GetWidth()},set:function(e){e=+e
|
||
var t=_map4.get(this).GetWorldInfo()
|
||
isNaN(e)||t.GetWidth()===e||(t.SetWidth(e),t.SetBboxChanged())}},{key:"height",get:function(){return _map4.get(this).GetWorldInfo().GetHeight()},set:function(e){e=+e
|
||
var t=_map4.get(this).GetWorldInfo()
|
||
isNaN(e)||t.GetHeight()===e||(t.SetHeight(e),t.SetBboxChanged())}},{key:"angle",get:function(){return _map4.get(this).GetWorldInfo().GetAngle()},set:function(e){e=_C52.clampAngle(+e)
|
||
var t=_map4.get(this).GetWorldInfo()
|
||
isNaN(e)||t.GetAngle()===e||(t.SetAngle(e),t.SetBboxChanged())}},{key:"angleDegrees",get:function(){return _C52.toDegrees(this.angle)},set:function(e){this.angle=_C52.toRadians(e)}},{key:"getBoundingBox",value:function(){return _map4.get(this).GetWorldInfo().GetBoundingBox().toDOMRect()}},{key:"getBoundingQuad",value:function(){return _map4.get(this).GetWorldInfo().GetBoundingQuad().toDOMQuad()}},{key:"isVisible",get:function(){return _map4.get(this).GetWorldInfo().IsVisible()},set:function(e){e=!!e
|
||
var t=_map4.get(this),n=t.GetWorldInfo()
|
||
n.IsVisible()!==e&&(n.SetVisible(e),t.GetRuntime().UpdateRender())}},{key:"opacity",get:function(){return _map4.get(this).GetWorldInfo().GetOpacity()},set:function(e){e=_C52.clamp(+e,0,1)
|
||
var t=_map4.get(this),n=t.GetWorldInfo()
|
||
isNaN(e)||n.GetOpacity()===e||(n.SetOpacity(e),t.GetRuntime().UpdateRender())}},{key:"colorRgb",get:function(){var e=_map4.get(this).GetWorldInfo().GetUnpremultipliedColor()
|
||
return[e.getR(),e.getG(),e.getB()]},set:function(e){if(e.length<3)throw Error("expected 3 elements")
|
||
_tempColor.setRgb(e[0],e[1],e[2])
|
||
var t=_map4.get(this),n=t.GetWorldInfo()
|
||
n.GetUnpremultipliedColor().equalsIgnoringAlpha(_tempColor)||(n.SetUnpremultipliedColor(_tempColor),t.GetRuntime().UpdateRender())}},{key:"blendMode",get:function(){return INDEX_TO_BLEND_MODE.get(_map4.get(this).GetWorldInfo().GetBlendMode())},set:function(e){var t=BLEND_MODE_TO_INDEX.get(e)
|
||
if("number"!=typeof t)throw Error("invalid blend mode")
|
||
var n=_map4.get(this),r=n.GetWorldInfo()
|
||
r.SetBlendMode(t),n.GetRuntime().UpdateRender()}},{key:"moveToTop",value:function(){_map4.get(this).GetWorldInfo().ZOrderMoveToTop()}},{key:"moveToBottom",value:function(){_map4.get(this).GetWorldInfo().ZOrderMoveToBottom()}},{key:"moveToLayer",value:function(e){var t=ILayer._Unwrap(e)
|
||
if(!t)throw Error("invalid layer")
|
||
_map4.get(this).GetWorldInfo().ZOrderMoveToLayer(t)}},{key:"moveAdjacentToInstance",value:function(e,t){_map4.get(this).GetWorldInfo().ZOrderMoveAdjacentToInstance(_map4.get(e),t)}},{key:"containsPoint",value:function(e,t){return _map4.get(this).GetWorldInfo().ContainsPoint(+e,+t)}},{key:"testOverlap",value:function(e){var t=_map4.get(this),n=_map4.get(e)
|
||
return t.GetRuntime().GetCollisionEngine().TestOverlap(t,n)}},{key:"testOverlapSolid",value:function(){var e=_map4.get(this),t=e.GetRuntime().GetCollisionEngine().TestOverlapSolid(e)
|
||
return t?t.GetInterfaceClass():null}},{key:"getParent",value:function(){var e=_map4.get(this).GetParent()
|
||
return e?e.GetInterfaceClass():null}},{key:"getTopParent",value:function(){var e=_map4.get(this).GetTopParent()
|
||
return e?e.GetInterfaceClass():null}},{key:"parents",value:_regeneratorRuntime().mark(function r(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(_map4.get(this).parents()),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=9
|
||
break}return n=t.value,r.next=7,n.GetInterfaceClass()
|
||
case 7:r.next=3
|
||
break
|
||
case 9:r.next=14
|
||
break
|
||
case 11:r.prev=11,r.t0=r["catch"](1),e.e(r.t0)
|
||
case 14:return r.prev=14,e.f(),r.finish(14)
|
||
case 17:case"end":return r.stop()}},r,this,[[1,11,14,17]])})},{key:"getChildCount",value:function(){return _map4.get(this).GetChildCount()}},{key:"getChildAt",value:function(e){var t=_map4.get(this).GetChildAt(e)
|
||
return t?t.GetInterfaceClass():null}},{key:"children",value:_regeneratorRuntime().mark(function a(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(_map4.get(this).children()),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=9
|
||
break}return n=t.value,r.next=7,n.GetInterfaceClass()
|
||
case 7:r.next=3
|
||
break
|
||
case 9:r.next=14
|
||
break
|
||
case 11:r.prev=11,r.t0=r["catch"](1),e.e(r.t0)
|
||
case 14:return r.prev=14,e.f(),r.finish(14)
|
||
case 17:case"end":return r.stop()}},a,this,[[1,11,14,17]])})},{key:"allChildren",value:_regeneratorRuntime().mark(function i(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(_map4.get(this).allChildren()),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=9
|
||
break}return n=t.value,r.next=7,n.GetInterfaceClass()
|
||
case 7:r.next=3
|
||
break
|
||
case 9:r.next=14
|
||
break
|
||
case 11:r.prev=11,r.t0=r["catch"](1),e.e(r.t0)
|
||
case 14:return r.prev=14,e.f(),r.finish(14)
|
||
case 17:case"end":return r.stop()}},i,this,[[1,11,14,17]])})},{key:"addChild",value:function(e,t){t||(t={})
|
||
var n=_map4.get(this),r=_map4.get(e)
|
||
n.AddChild(r,t)}},{key:"removeChild",value:function(e){var t=_map4.get(this),n=_map4.get(e)
|
||
t.RemoveChild(n)}},{key:"removeFromParent",value:function(){var e=_map4.get(this)
|
||
if(e.HasParent()){var t=e.GetParent()
|
||
t.RemoveChild(e)}}},{key:"createMesh",value:function(e,t){_map4.get(this).GetWorldInfo().CreateMesh(e,t)}},{key:"releaseMesh",value:function(){var e=_map4.get(this).GetWorldInfo()
|
||
e.ReleaseMesh(),e.SetBboxChanged()}},{key:"setMeshPoint",value:function(e,t,n){var r=_map4.get(this).GetWorldInfo()
|
||
r.SetMeshPoint(e,t,n)&&r.SetBboxChanged()}}]),t}(IInstance)
|
||
var _C53=self.C3,_map5=new WeakMap
|
||
self.IDOMInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map5.set(_assertThisInitialized(e),self.IInstance._GetInitInst()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"getElement",value:function(){return _map5.get(this).GetSdkInstance()._GetElementInDOMMode()}},{key:"focus",value:function(){_map5.get(this).GetSdkInstance().FocusElement()}},{key:"blur",value:function(){_map5.get(this).GetSdkInstance().BlurElement()}},{key:"setCssStyle",value:function(e,t){_map5.get(this).GetSdkInstance().SetElementCSSStyle(e,t)}}]),t}(self.IWorldInstance)
|
||
var _GetDispatcher=function(e){var t=_dispatchers.get(e)
|
||
return t?t:(t=_C54.New(_C54.Event.Dispatcher),_dispatchers.set(e,t),t)},_C54=self.C3,_map6=new WeakMap,_dispatchers=new WeakMap,initBehInst=null
|
||
self.IBehaviorInstance=function(){function e(){_classCallCheck(this,e),_map6.set(this,initBehInst)
|
||
var t={runtime:{value:initBehInst.GetRuntime().GetIRuntime(),writable:!1},behavior:{value:initBehInst.GetBehavior().GetIBehavior(),writable:!1}}
|
||
Object.defineProperties(this,t)}return _createClass(e,[{key:"instance",get:function(){return _map6.get(this).GetObjectInstance().GetInterfaceClass()}},{key:"_Release",value:function(){var e=_dispatchers.get(this)
|
||
e&&(e.Release(),_dispatchers["delete"](this)),_map6["delete"](this)}},{key:"addEventListener",value:function(e,t,n){_GetDispatcher(this).addEventListener(e,t,n)}},{key:"removeEventListener",value:function(e,t,n){_GetDispatcher(this).removeEventListener(e,t,n)}},{key:"dispatchEvent",value:function(e){_GetDispatcher(this).dispatchEvent(e)}}],[{key:"_Init",value:function(e){initBehInst=e}},{key:"_GetInitInst",value:function(){return initBehInst}}]),e}()
|
||
var _map7=new WeakMap
|
||
self.IBehavior=function(){function e(t){_classCallCheck(this,e),_map7.set(this,t)
|
||
var n={runtime:{value:t.GetRuntime().GetIRuntime(),writable:!1}}
|
||
Object.defineProperties(this,n)}return _createClass(e,[{key:"getAllInstances",value:function(){return _map7.get(this).GetInstances().map(function(e){return e.GetInterfaceClass()})}}]),e}()
|
||
var _C55=self.C3,_map8=new WeakMap
|
||
self.IEffectInstance=function(){function e(t,n){_classCallCheck(this,e),_map8.set(this,t)
|
||
var r={index:{value:n,writable:!1}}
|
||
Object.defineProperties(this,r)}return _createClass(e,[{key:"name",get:function(){var e=_map8.get(this).GetAllEffectTypes()
|
||
return e[this.index].GetName()}},{key:"isActive",get:function(){return _map8.get(this).IsEffectIndexActive(this.index)},set:function(e){e=!!e
|
||
var t=_map8.get(this)
|
||
t.IsEffectIndexActive(this.index)!==e&&(t.SetEffectIndexActive(this.index,e),t.UpdateActiveEffects(),t.GetRuntime().UpdateRender())}},{key:"setParameter",value:function(e,t){e=Math.floor(+e)
|
||
var n=_map8.get(this),r=n.GetEffectParametersForIndex(this.index)
|
||
if(0>e||e>=r.length)throw new RangeError("invalid effect parameter index")
|
||
var a=r[e]
|
||
if(a instanceof _C55.Color){if(!Array.isArray(t)||t.length<3)throw new TypeError("expected array with 3 elements")
|
||
var i=t[0],s=t[1],o=t[2]
|
||
if(a.equalsRgb(i,s,o))return
|
||
a.setRgb(i,s,o)}else{if("number"!=typeof t)throw new TypeError("expected number")
|
||
if(a===t)return
|
||
r[e]=t}n.IsEffectIndexActive(this.index)&&n.GetRuntime().UpdateRender()}},{key:"getParameter",value:function(e){e=Math.floor(+e)
|
||
var t=_map8.get(this),n=t.GetEffectParametersForIndex(this.index)
|
||
if(0>e||e>=n.length)throw new RangeError("invalid effect parameter index")
|
||
var r=n[e]
|
||
return r instanceof _C55.Color?[r.getR(),r.getG(),r.getB()]:r}}]),e}()
|
||
var GetTypeFromFileExtension=function(e){if(!e)return""
|
||
var t=e.split(".")
|
||
if(t.length<2)return""
|
||
var n=t[t.length-1].toLowerCase()
|
||
return EXT_TO_TYPE.get(n)||""},AddScript=function(e,t){return new Promise(function(n,r){var a=document.createElement("script")
|
||
a.onload=n,a.onerror=r,a.async=!1,"module"===t&&(a.type="module"),a.src=e,document.head.appendChild(a)})},_C56=self.C3,VALID_LOAD_POLICIES=new Set(["local","remote"]),EXT_TO_TYPE=new Map([["mp4","video/mp4"],["webm","video/webm"],["m4a","audio/mp4"],["mp3","audio/mpeg"],["js","application/javascript"],["wasm","application/wasm"],["svg","image/svg+xml"],["html","text/html"]])
|
||
_C56.AssetManager=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this)
|
||
var i=r.exportType
|
||
a._runtime=e,a._scriptsType=r.scriptsType,a._localUrlBlobs=new Map,a._localBlobUrlCache=new Map,a._isCordova="cordova"===i,a._isiOSCordova=!!r.isiOSCordova,a._isFileProtocol="file:"===location.protocol,a._swClientId=r.swClientId,a._supportedAudioFormats=r.supportedAudioFormats||{},a._audioFiles=new Map,a._preloadSounds=!1,a._mediaSubfolder="",a._fontsSubfolder="",a._iconsSubfolder=""
|
||
var s="html5"===i||"scirra-arcade"===i||"instant-games"===i
|
||
a._defaultLoadPolicy=s?"remote":"local",a._allAssets=[],a._assetsByUrl=new Map,a._webFonts=[],a._loadPromises=[],a._hasFinishedInitialLoad=!1,a._totalAssetSizeToLoad=0,a._assetSizeLoaded=0,a._lastLoadProgress=0,a._hasHadErrorLoading=!1,a._loadingRateLimiter=_C56.New(_C56.RateLimiter,function(){return a._FireLoadingProgressEvent()},50),a._promiseThrottle=new _C56.PromiseThrottle(Math.max(_C56.hardwareConcurrency,8))
|
||
var o=r.previewImageBlobs
|
||
if(o){var u=r.previewProjectFileBlobs
|
||
u&&Object.assign(o,u)
|
||
var l=r.projectData
|
||
l&&(o["data.json"]=l)
|
||
for(var c=0,h=Object.entries(o);c<h.length;c++){var _=_slicedToArray(h[c],2),f=_[0],d=_[1]
|
||
a._localUrlBlobs.set(f.toLowerCase(),d)}}var p=r.previewProjectFileUrls
|
||
if(p)for(var v=0,m=Object.entries(p);v<m.length;v++){var y=_slicedToArray(m[v],2),g=y[0],C=y[1]
|
||
a._localBlobUrlCache.set(g,C)}return a._iAssetManager=new self.IAssetManager(_assertThisInitialized(a)),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._localUrlBlobs.clear()
|
||
var e,t=_createForOfIteratorHelper(this._localBlobUrlCache.values())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.startsWith("blob:")&&URL.revokeObjectURL(n)}}catch(r){t.e(r)}finally{t.f()}this._localBlobUrlCache.clear()
|
||
var a,i=_createForOfIteratorHelper(this._allAssets)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
s.Release()}}catch(r){i.e(r)}finally{i.f()}_C56.clearArray(this._allAssets),this._assetsByUrl.clear(),_C56.clearArray(this._loadPromises),this._runtime=null}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"_SetMediaSubfolder",value:function(e){this._mediaSubfolder=e}},{key:"GetMediaSubfolder",value:function(){return this._mediaSubfolder}},{key:"_SetFontsSubfolder",value:function(e){this._fontsSubfolder=e}},{key:"GetFontsSubfolder",value:function(){return this._fontsSubfolder}},{key:"_SetIconsSubfolder",value:function(e){this._iconsSubfolder=e}},{key:"GetIconsSubfolder",value:function(){return this._iconsSubfolder}},{key:"_HasLocalUrlBlob",value:function(e){return this._localUrlBlobs.has(e.toLowerCase())}},{key:"_GetLocalUrlBlob",value:function(e){return this._localUrlBlobs.get(e.toLowerCase())||null}},{key:"GetLocalUrlAsBlobUrl",value:function(e){if(!this._HasLocalUrlBlob(e))return e
|
||
var t=e.toLowerCase(),n=this._localBlobUrlCache.get(t)
|
||
if(!n){var r=this._GetLocalUrlBlob(t)
|
||
n=URL.createObjectURL(r),this._localBlobUrlCache.set(t,n)}return n}},{key:"FetchBlob",value:function(e,t){t=t||this._defaultLoadPolicy
|
||
var n=this._GetLocalUrlBlob(e)
|
||
if(n)return Promise.resolve(n)
|
||
if(_C56.IsRelativeURL(e)){var r=e.toLowerCase()
|
||
return this._isCordova&&this._isFileProtocol?this.CordovaFetchLocalFileAsBlob(r):"local"===t?this._promiseThrottle.Add(function(){return _C56.FetchBlob(r)}):_C56.FetchBlob(r)}return _C56.FetchBlob(e)}},{key:"FetchArrayBuffer",value:function(e){var t=this._GetLocalUrlBlob(e)
|
||
if(t)return _C56.BlobToArrayBuffer(t)
|
||
if(_C56.IsRelativeURL(e)){var n=e.toLowerCase()
|
||
return this._isCordova&&this._isFileProtocol?this.CordovaFetchLocalFileAsArrayBuffer(n):"local"===this._defaultLoadPolicy?this._promiseThrottle.Add(function(){return _C56.FetchArrayBuffer(n)}):_C56.FetchArrayBuffer(n)}return _C56.FetchArrayBuffer(e)}},{key:"FetchText",value:function(e){var t=this._GetLocalUrlBlob(e)
|
||
if(t)return _C56.BlobToString(t)
|
||
if(_C56.IsRelativeURL(e)){var n=e.toLowerCase()
|
||
return this._isCordova&&this._isFileProtocol?this.CordovaFetchLocalFileAsText(n):"local"===this._defaultLoadPolicy?this._promiseThrottle.Add(function(){return _C56.FetchText(n)}):_C56.FetchText(n)}return _C56.FetchText(e)}},{key:"FetchJson",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this.FetchText(e)
|
||
case 2:return t=n.sent,n.abrupt("return",JSON.parse(t))
|
||
case 4:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_CordovaFetchLocalFileAs",value:function(e,t){return this._runtime.PostComponentMessageToDOMAsync("runtime","cordova-fetch-local-file",{filename:e,as:t})}},{key:"CordovaFetchLocalFileAsText",value:function(e){return this._CordovaFetchLocalFileAs(e,"text")}},{key:"CordovaFetchLocalFileAsBlob",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this._CordovaFetchLocalFileAs(e,"buffer")
|
||
case 2:return t=n.sent,r=GetTypeFromFileExtension(e),n.abrupt("return",new Blob([t],{type:r}))
|
||
case 5:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"CordovaFetchLocalFileAsBlobURL",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(e=e.toLowerCase(),t=this._localBlobUrlCache.get(e),!t){n.next=4
|
||
break}return n.abrupt("return",t)
|
||
case 4:return n.next=6,this.CordovaFetchLocalFileAsBlob(e)
|
||
case 6:return r=n.sent,t=URL.createObjectURL(r),this._localBlobUrlCache.set(e,t),n.abrupt("return",t)
|
||
case 10:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"CordovaFetchLocalFileAsArrayBuffer",value:function(e){return this._CordovaFetchLocalFileAs(e,"buffer")}},{key:"GetMediaFileUrl",value:function(e){return this._HasLocalUrlBlob(e)?this.GetLocalUrlAsBlobUrl(e):this._mediaSubfolder+e.toLowerCase()}},{key:"GetProjectFileUrl",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:""
|
||
if(_C56.IsAbsoluteURL(e)){if(t)throw Error("cannot specify subfolder with remote URL")
|
||
return Promise.resolve(e)}return this._HasLocalUrlBlob(e)?Promise.resolve(this.GetLocalUrlAsBlobUrl(e)):this._isCordova&&this._isFileProtocol?this.CordovaFetchLocalFileAsBlobURL(t+e):Promise.resolve(t+e.toLowerCase())}},{key:"GetProjectFileIframeUrl",value:function(e){if(_C56.IsAbsoluteURL(e))return Promise.resolve(e)
|
||
var t=e.indexOf("?"),n=-1===t?"":e.substr(t),r=-1===t?e:e.substr(0,t)
|
||
if(this._HasLocalUrlBlob(r)){var a=this.GetLocalUrlAsBlobUrl(r)
|
||
if(!a.startsWith("blob:")&&this._swClientId){var i=new URL(a),s=new URLSearchParams(n)
|
||
s.set("__c3_client_id",this._swClientId),i.search=""+s,a=""+i}return Promise.resolve(a)}return this._isCordova&&this._isFileProtocol?this.CordovaFetchLocalFileAsBlobURL(r):Promise.resolve(e.toLowerCase())}},{key:"LoadProjectFileUrl",value:function(e){return this.GetProjectFileUrl(e)}},{key:"LoadImage",value:function(e){var t=this
|
||
if(e.loadPolicy&&!VALID_LOAD_POLICIES.has(e.loadPolicy))throw Error("invalid load policy")
|
||
var n=this._assetsByUrl.get(e.url)
|
||
return n?n:(n=_C56.New(_C56.ImageAsset,this,{url:e.url,size:e.size||0,loadPolicy:e.loadPolicy||this._defaultLoadPolicy}),this._allAssets.push(n),this._assetsByUrl.set(n.GetURL(),n),this._hasFinishedInitialLoad||(this._totalAssetSizeToLoad+=n.GetSize(),this._loadPromises.push(n.Load().then(function(){return t._AddLoadedSize(n.GetSize())}))),n)}},{key:"WaitForAllToLoad",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,Promise.all(this._loadPromises)
|
||
case 3:this._lastLoadProgress=1,e.next=11
|
||
break
|
||
case 6:e.prev=6,e.t0=e["catch"](0),console.error("Error loading: ",e.t0),this._hasHadErrorLoading=!0,this._FireLoadingProgressEvent()
|
||
case 11:case"end":return e.stop()}},n,this,[[0,6]])}))
|
||
return e}()},{key:"SetInitialLoadFinished",value:function(){this._hasFinishedInitialLoad=!0}},{key:"HasHadErrorLoading",value:function(){return this._hasHadErrorLoading}},{key:"_AddLoadedSize",value:function(e){this._assetSizeLoaded+=e,this._loadingRateLimiter.Call()}},{key:"_FireLoadingProgressEvent",value:function(){var e=_C56.New(_C56.Event,"loadingprogress")
|
||
this._lastLoadProgress=_C56.clamp(this._assetSizeLoaded/this._totalAssetSizeToLoad,0,1),e.progress=this._lastLoadProgress,this._runtime.Dispatcher().dispatchEvent(e)}},{key:"GetLoadProgress",value:function(){return this._lastLoadProgress}},{key:"_SetWebFonts",value:function(e){_C56.shallowAssignArray(this._webFonts,e),this._webFonts.length&&this._loadPromises.push(this._LoadWebFonts())}},{key:"_LoadWebFonts",value:function(){var e=this
|
||
if("undefined"==typeof FontFace)return Promise.resolve()
|
||
var t,n=[],r=_createForOfIteratorHelper(this._webFonts)
|
||
try{var a=function(){var r=_slicedToArray(t.value,3),a=r[0],i=r[1],s=r[2]
|
||
e._totalAssetSizeToLoad+=s,n.push(e._LoadWebFont(a,i).then(function(){return e._AddLoadedSize(s)}))}
|
||
for(r.s();!(t=r.n()).done;)a()}catch(i){r.e(i)}finally{r.f()}return Promise.all(n)}},{key:"_LoadWebFont",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,this.GetProjectFileUrl(t,this._fontsSubfolder)
|
||
case 3:return r=n.sent,a=new FontFace(e,"url('".concat(r,"')")),this._runtime.IsInWorker()?self.fonts.add(a):document.fonts.add(a),n.next=8,a.load()
|
||
case 8:n.next=13
|
||
break
|
||
case 10:n.prev=10,n.t0=n["catch"](0),console.warn("[C3 runtime] Failed to load web font '".concat(e,"': "),n.t0)
|
||
case 13:case"end":return n.stop()}},n,this,[[0,10]])}))
|
||
return e}()},{key:"IsAudioFormatSupported",value:function(e){return!!this._supportedAudioFormats[e]}},{key:"_SetAudioFiles",value:function(e,t){var n=this
|
||
this._preloadSounds=!!t
|
||
var r,a=_createForOfIteratorHelper(e)
|
||
try{var i=function(){var e=_slicedToArray(r.value,3),t=e[0],a=e[1],i=e[2]
|
||
n._audioFiles.set(t,{fileName:t,formats:a.map(function(e){return{type:e[0],fileExtension:e[1],fullName:t+e[1],fileSize:e[2]}}),isMusic:i})}
|
||
for(a.s();!(r=a.n()).done;)i()}catch(s){a.e(s)}finally{a.f()}}},{key:"GetPreferredAudioFile",value:function(e){var t=this._audioFiles.get(e.toLowerCase())
|
||
if(!t)return null
|
||
var n,r=null,a=_createForOfIteratorHelper(t.formats)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
if(r||"audio/webm; codecs=opus"!==i.type||(r=i),this.IsAudioFormatSupported(i.type))return i}}catch(s){a.e(s)}finally{a.f()}return r}},{key:"GetProjectAudioFileUrl",value:function(e){var t=this.GetPreferredAudioFile(e)
|
||
return t?{url:this.GetMediaFileUrl(t.fullName),type:t.type}:null}},{key:"GetAudioToPreload",value:function(){if(this._preloadSounds){var e,t=[],n=_createForOfIteratorHelper(this._audioFiles.values())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
if(!r.isMusic){var a=this.GetPreferredAudioFile(r.fileName)
|
||
a&&t.push({originalUrl:r.fileName,url:this.GetMediaFileUrl(a.fullName),type:a.type,fileSize:a.fileSize})}}}catch(i){n.e(i)}finally{n.f()}return t}return[]}},{key:"GetIAssetManager",value:function(){return this._iAssetManager}},{key:"GetScriptsType",value:function(){return this._scriptsType}},{key:"LoadScripts",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i,s,o,u=this,l=arguments
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:for(e=l.length,t=Array(e),r=0;e>r;r++)t[r]=l[r]
|
||
return n.next=3,Promise.all(t.map(function(e){return u.GetProjectFileUrl(e)}))
|
||
case 3:if(a=n.sent,!this._runtime.IsInWorker()){n.next=21
|
||
break}if("classic"!==this._scriptsType){n.next=9
|
||
break}importScripts.apply(void 0,_toConsumableArray(a)),n.next=19
|
||
break
|
||
case 9:if(1!==t.length){n.next=15
|
||
break}return i=t[0],n.next=13,self.c3_import((_C56.IsRelativeURL(i)?"./":"")+i)
|
||
case 13:n.next=19
|
||
break
|
||
case 15:return s=t.map(function(e){return'import "'.concat(_C56.IsRelativeURL(e)?"./":"").concat(e,'";')}).join("\n"),o=URL.createObjectURL(new Blob([s],{type:"application/javascript"})),n.next=19,self.c3_import(o)
|
||
case 19:n.next=23
|
||
break
|
||
case 21:return n.next=23,Promise.all(a.map(function(e){return AddScript(e,u._scriptsType)}))
|
||
case 23:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"CompileWebAssembly",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!WebAssembly.compileStreaming){n.next=9
|
||
break}return n.next=3,this.GetProjectFileUrl(e)
|
||
case 3:return t=n.sent,n.next=6,WebAssembly.compileStreaming(fetch(t))
|
||
case 6:return n.abrupt("return",n.sent)
|
||
case 9:return n.next=11,_C56.FetchArrayBuffer(e)
|
||
case 11:return r=n.sent,n.next=14,WebAssembly.compile(r)
|
||
case 14:return n.abrupt("return",n.sent)
|
||
case 15:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"LoadStyleSheet",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this.GetProjectFileUrl(e)
|
||
case 2:return t=n.sent,n.next=5,this._runtime.PostComponentMessageToDOMAsync("runtime","add-stylesheet",{url:t})
|
||
case 5:return n.abrupt("return",n.sent)
|
||
case 6:case"end":return n.stop()}},n,this)}))
|
||
return e}()}]),t}(_C56.DefendedBase)
|
||
var _C57=self.C3
|
||
_C57.Asset=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._assetManager=e,a._runtime=e.GetRuntime(),a._url=r.url,a._size=r.size,a._loadPolicy=r.loadPolicy,a._blob=null,a._isLoaded=!1,a._loadPromise=null,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._loadPromise=null,this._assetManager=null,this._runtime=null,this._blob=null}},{key:"GetURL",value:function(){return this._url}},{key:"GetSize",value:function(){return this._size}},{key:"Load",value:function(){var e=this
|
||
return"local"===this._loadPolicy||this._blob?(this._isLoaded=!0,Promise.resolve()):this._loadPromise?this._loadPromise:(this._loadPromise=this._assetManager.FetchBlob(this._url,this._loadPolicy).then(function(t){e._isLoaded=!0,e._loadPromise=null,e._blob=t})["catch"](function(e){return console.error("Error loading resource: ",e)}),this._loadPromise)}},{key:"IsLoaded",value:function(){return this._isLoaded}},{key:"GetBlob",value:function(){return this._blob?Promise.resolve(this._blob):this._assetManager.FetchBlob(this._url,this._loadPolicy)}}]),t}(_C57.DefendedBase)
|
||
var _C58=self.C3,promiseThrottle=new _C58.PromiseThrottle,allImageAssets=new Set
|
||
_C58.ImageAsset=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,r),a._texturePromise=null,a._webglTexture=null,a._refCount=0,a._imageWidth=-1,a._imageHeight=-1,allImageAssets.add(_assertThisInitialized(a)),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){if(this.ReleaseTexture(),0!==this._refCount)throw Error("released image asset which still has texture references")
|
||
this._texturePromise=null,allImageAssets["delete"](this),_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"LoadStaticTexture",value:function(e,t){var n=this
|
||
return this._refCount++,this._webglTexture?Promise.resolve(this._webglTexture):this._texturePromise?this._texturePromise:(this._texturePromise=this.GetBlob().then(function(r){return promiseThrottle.Add(function(){return e.CreateStaticTextureAsync(r,t).then(function(t){return n._texturePromise=null,0===n._refCount?(e.DeleteTexture(t),null):(n._webglTexture=t,n._imageWidth=t.GetWidth(),n._imageHeight=t.GetHeight(),n._webglTexture)})})})["catch"](function(e){throw console.error("Failed to load texture: ",e),e}),this._texturePromise)}},{key:"ReleaseTexture",value:function(){if(this._refCount<=0)throw Error("texture released too many times")
|
||
if(this._refCount--,0===this._refCount&&this._webglTexture){var e=this._webglTexture.GetRenderer()
|
||
e.DeleteTexture(this._webglTexture),this._webglTexture=null}}},{key:"GetTexture",value:function(){return this._webglTexture}},{key:"GetWidth",value:function(){return this._imageWidth}},{key:"GetHeight",value:function(){return this._imageHeight}},{key:"LoadToDrawable",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,this.GetBlob()
|
||
case 2:if(e=t.sent,!_C58.Supports.ImageBitmapOptions){t.next=9
|
||
break}return t.next=6,createImageBitmap(e,{premultiplyAlpha:"none"})
|
||
case 6:return t.abrupt("return",t.sent)
|
||
case 9:if(!_C58.Supports.ImageBitmap){t.next=15
|
||
break}return t.next=12,createImageBitmap(e)
|
||
case 12:return t.abrupt("return",t.sent)
|
||
case 15:return t.next=17,_C58.BlobToImage(e)
|
||
case 17:return t.abrupt("return",t.sent)
|
||
case 18:case"end":return t.stop()}},n,this)}))
|
||
return e}()}],[{key:"OnWebGLContextLost",value:function(){var e,t=_createForOfIteratorHelper(allImageAssets)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._texturePromise=null,n._webglTexture=null,n._refCount=0}}catch(r){t.e(r)}finally{t.f()}}}]),t}(_C58.Asset)
|
||
var SortByInstLastCachedZIndex=function(e,t){return e.GetWorldInfo()._GetLastCachedZIndex()-t.GetWorldInfo()._GetLastCachedZIndex()},_C59=self.C3,_assert5=self.assert
|
||
_C59.RenderCell=function(e){function t(e,r,a){var i
|
||
return _classCallCheck(this,t),i=n.call(this),i._grid=e,i._x=r,i._y=a,i._instances=[],i._isSorted=!0,i._pendingRemoval=new Set,i._isAnyPendingRemoval=!1,i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C59.clearArray(this._instances),this._pendingRemoval.clear(),this._grid=null}},{key:"Reset",value:function(){_C59.clearArray(this._instances),this._isSorted=!0,this._pendingRemoval.clear(),this._isAnyPendingRemoval=!1}},{key:"SetChanged",value:function(){this._isSorted=!1}},{key:"IsEmpty",value:function(){return this._instances.length?this._instances.length>this._pendingRemoval.size?!1:(this._FlushPending(),!0):!0}},{key:"Insert",value:function(e){return this._pendingRemoval.has(e)?(this._pendingRemoval["delete"](e),void(0===this._pendingRemoval.size&&(this._isAnyPendingRemoval=!1))):(this._instances.push(e),void(this._isSorted=1===this._instances.length))}},{key:"Remove",value:function(e){this._pendingRemoval.add(e),this._isAnyPendingRemoval=!0,this._pendingRemoval.size>=50&&this._FlushPending()}},{key:"_FlushPending",value:function(){if(this._isAnyPendingRemoval){if(this._instances.length===this._pendingRemoval.size)return void this.Reset()
|
||
_C59.arrayRemoveAllInSet(this._instances,this._pendingRemoval),this._pendingRemoval.clear(),this._isAnyPendingRemoval=!1}}},{key:"_EnsureSorted",value:function(){this._isSorted||(this._instances.sort(SortByInstLastCachedZIndex),this._isSorted=!0)}},{key:"Dump",value:function(e){this._FlushPending(),this._EnsureSorted(),this._instances.length&&e.push(this._instances)}}]),t}(_C59.DefendedBase)
|
||
var _C60=self.C3
|
||
_C60.RenderGrid=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._cellWidth=e,a._cellHeight=r,a._cells=_C60.New(_C60.PairMap),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._cells.Release(),this._cells=null}},{key:"GetCell",value:function(e,t,n){var r=this._cells.Get(e,t)
|
||
return r?r:n?(r=_C60.New(_C60.RenderCell,this,e,t),this._cells.Set(e,t,r),r):null}},{key:"XToCell",value:function(e){return Math.floor(e/this._cellWidth)}},{key:"YToCell",value:function(e){return Math.floor(e/this._cellHeight)}},{key:"Update",value:function(e,t,n){if(t)for(var r=t.getLeft(),a=t.getRight();a>=r;++r)for(var i=t.getTop(),s=t.getBottom();s>=i;++i)if(!n||!n.containsPoint(r,i)){var o=this.GetCell(r,i,!1)
|
||
o&&(o.Remove(e),o.IsEmpty()&&this._cells.Delete(r,i))}if(n)for(var u=n.getLeft(),l=n.getRight();l>=u;++u)for(var c=n.getTop(),h=n.getBottom();h>=c;++c)t&&t.containsPoint(u,c)||this.GetCell(u,c,!0).Insert(e)}},{key:"QueryRange",value:function(e,t){for(var n=this.XToCell(e.getLeft()),r=this.YToCell(e.getTop()),a=this.XToCell(e.getRight()),i=this.YToCell(e.getBottom());a>=n;++n)for(var s=r;i>=s;++s){var o=this.GetCell(n,s,!1)
|
||
o&&o.Dump(t)}}},{key:"MarkRangeChanged",value:function(e){for(var t=e.getLeft(),n=e.getTop(),r=e.getRight(),a=e.getBottom();r>=t;++t)for(var i=n;a>=i;++i){var s=this.GetCell(t,i,!1)
|
||
s&&s.SetChanged()}}}]),t}(_C60.DefendedBase)
|
||
var _SortByInstLastCachedZIndex=function(e,t){return e.GetWorldInfo()._GetLastCachedZIndex()-t.GetWorldInfo()._GetLastCachedZIndex()},SortByInstZElevation=function(e,t){return e.GetWorldInfo().GetZElevation()-t.GetWorldInfo().GetZElevation()},_C61=self.C3,_tmpRect=new _C61.Rect,_tmpQuad=new _C61.Quad,renderCellArr=[],tmpDestRect=new _C61.Rect,tmpSrcRect=new _C61.Rect,_glMatrix4=self.glMatrix,_vec4=_glMatrix4.vec3,tempVec3=_vec4.fromValues(0,1,0)
|
||
_C61.Layer=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this),i._layout=e,i._runtime=e.GetRuntime(),i._name=a[0],i._index=r,i._sid=a[2],i._isVisible=!!a[3],i._backgroundColor=_C61.New(_C61.Color),i._backgroundColor.setFromJSON(a[4].map(function(e){return e/255})),i._isTransparent=!!a[5],i._parallaxX=a[6],i._parallaxY=a[7],i._color=_C61.New(_C61.Color,1,1,1,a[8]),i._premultipliedColor=_C61.New(_C61.Color),i._isForceOwnTexture=a[9],i._useRenderCells=a[10],i._scaleRate=a[11],i._blendMode=a[12],i._curRenderTarget=null,i._scale=1,i._zElevation=a[16],i._angle=0,i._isAngleEnabled=!0,i._viewport=_C61.New(_C61.Rect),i._viewportZ0=_C61.New(_C61.Rect),i._startupInitialInstances=[],i._initialInstances=[],i._createdGlobalUids=[],i._initialUIDsToInstanceData=new Map,i._instances=[],i._zIndicesUpToDate=!1,i._anyInstanceZElevated=!1,i._effectList=_C61.New(_C61.EffectList,_assertThisInitialized(i),a[15]),i._renderGrid=null,i._lastRenderList=[],i._isRenderListUpToDate=!1,i._lastRenderCells=_C61.New(_C61.Rect,0,0,-1,-1),i._curRenderCells=_C61.New(_C61.Rect,0,0,-1,-1),i._iLayer=new self.ILayer(_assertThisInitialized(i)),i._UpdatePremultipliedColor(),i._useRenderCells&&(i._renderGrid=_C61.New(_C61.RenderGrid,i._runtime.GetOriginalViewportWidth(),i._runtime.GetOriginalViewportHeight()))
|
||
var s,o=_createForOfIteratorHelper(a[14])
|
||
try{for(o.s();!(s=o.n()).done;){var u=s.value,l=i._runtime.GetObjectClassByIndex(u[1])
|
||
i._layout._AddInitialObjectClass(l),l.GetDefaultInstanceData()||(l.SetDefaultInstanceData(u),l._SetDefaultLayerIndex(i._index)),i._initialInstances.push(u),i._initialUIDsToInstanceData.set(u[2],u)}}catch(c){o.e(c)}finally{o.f()}return _C61.shallowAssignArray(i._startupInitialInstances,i._initialInstances),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._layout=null,this._runtime=null}},{key:"GetInitialInstanceData",value:function(e){return this._initialUIDsToInstanceData.get(e)}},{key:"CreateInitialInstances",value:function(e){for(var t=this._layout.IsFirstVisit(),n=0,r=this._initialInstances,a=0,i=r.length;i>a;++a){var s=r[a],o=this._runtime.GetObjectClassByIndex(s[1]),u=!0
|
||
if(!o.HasPersistBehavior()||t){var l=this._runtime.CreateInstanceFromData(s,this,!0)
|
||
e.push(l),o.IsGlobal()&&(u=!1,this._createdGlobalUids.push(l.GetUID()))}u&&(r[n]=r[a],++n)}_C61.truncateArray(r,n),this._runtime.FlushPendingInstances(),this.SetZIndicesChanged()}},{key:"_AddInstance",value:function(e,t){var n=e.GetWorldInfo()
|
||
if(n.GetLayer()!==this)throw Error("instance added to wrong layer")
|
||
this._instances.push(e),0!==n.GetZElevation()&&(this._anyInstanceZElevated=!0),t&&this._useRenderCells&&e.GetWorldInfo().SetBboxChanged(),this.SetZIndicesChanged()}},{key:"_MaybeAddInstance",value:function(e){this._instances.includes(e)||(this._instances.push(e),0!==e.GetWorldInfo().GetZElevation()&&(this._anyInstanceZElevated=!0),this.SetZIndicesChanged())}},{key:"_PrependInstance",value:function(e,t){var n=e.GetWorldInfo()
|
||
if(n.GetLayer()!==this)throw Error("instance added to wrong layer")
|
||
this._instances.unshift(e),0!==n.GetZElevation()&&(this._anyInstanceZElevated=!0),this.SetZIndicesChanged(),t&&this._useRenderCells&&e.GetWorldInfo().SetBboxChanged()}},{key:"_RemoveInstance",value:function(e,t){var n=this._instances.indexOf(e)
|
||
0>n||(t&&this._useRenderCells&&e.GetWorldInfo()._RemoveFromRenderCells(),this._instances.splice(n,1),this.SetZIndicesChanged(),this._MaybeResetAnyInstanceZElevatedFlag())}},{key:"_SetAnyInstanceZElevated",value:function(){this._anyInstanceZElevated=!0}},{key:"_MaybeResetAnyInstanceZElevatedFlag",value:function(){0===this._instances.length&&(this._anyInstanceZElevated=!1)}},{key:"_SortInstancesByLastCachedZIndex",value:function(e){if(e){var t,n=new Set,r=_createForOfIteratorHelper(this._instances)
|
||
try{for(r.s();!(t=r.n()).done;){var a=t.value,i=a.GetWorldInfo()._GetLastCachedZIndex()
|
||
i>=0&&n.add(i)}}catch(s){r.e(s)}finally{r.f()}var o,u=-1,l=_createForOfIteratorHelper(this._instances)
|
||
try{for(l.s();!(o=l.n()).done;){var c=o.value,h=c.GetWorldInfo()
|
||
if(!(h._GetLastCachedZIndex()>=0)){for(++u;n.has(u);)++u
|
||
h._SetZIndex(u)}}}catch(s){l.e(s)}finally{l.f()}}this._instances.sort(_SortByInstLastCachedZIndex)}},{key:"_Start",value:function(){}},{key:"_End",value:function(){var e,t=_createForOfIteratorHelper(this._instances)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.GetObjectClass().IsGlobal()||this._runtime.DestroyInstance(n)}}catch(r){t.e(r)}finally{t.f()}this._runtime.FlushPendingInstances(),_C61.clearArray(this._instances),this._anyInstanceZElevated=!1,this.SetZIndicesChanged()}},{key:"RecreateInitialObjects",value:function(e,t,n,r,a){var i,s=this._runtime.GetEventSheetManager(),o=this._runtime.GetAllObjectClasses(),u=e.IsFamily(),l=[],c=_createForOfIteratorHelper(this._initialInstances)
|
||
try{for(c.s();!(i=c.n()).done;){var h=i.value,_=h[0],f=_[0],d=_[1]
|
||
if(t.containsPoint(f,d)){var p=o[h[1]]
|
||
if(p!==e){if(!u)continue
|
||
if(!e.FamilyHasMember(p))continue}var v=this,m=this._runtime.GetCurrentLayout()
|
||
this.GetLayout()!==m&&(v=m.GetLayerByName(this.GetName()),v||(v=m.GetLayerByIndex(this.GetIndex())))
|
||
var y=this._runtime.CreateInstanceFromData(h,v,!1,void 0,void 0,!1,a),g=y.GetWorldInfo()
|
||
g.OffsetXY(n,r),g.SetBboxChanged(),s.BlockFlushingInstances(!0),y._TriggerOnCreatedOnSelfAndRelated(),s.BlockFlushingInstances(!1),l.push(y)}}}catch(C){c.e(C)}finally{c.f()}return l}},{key:"GetInstanceCount",value:function(){return this._instances.length}},{key:"GetLayout",value:function(){return this._layout}},{key:"GetName",value:function(){return this._name}},{key:"GetIndex",value:function(){return this._index}},{key:"GetSID",value:function(){return this._sid}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetDevicePixelRatio",value:function(){return this._runtime.GetDevicePixelRatio()}},{key:"GetEffectList",value:function(){return this._effectList}},{key:"UsesRenderCells",value:function(){return this._useRenderCells}},{key:"GetRenderGrid",value:function(){return this._renderGrid}},{key:"SetRenderListStale",value:function(){this._isRenderListUpToDate=!1}},{key:"IsVisible",value:function(){return this._isVisible}},{key:"SetVisible",value:function(e){e=!!e,this._isVisible!==e&&(this._isVisible=e,this._runtime.UpdateRender())}},{key:"GetViewport",value:function(){return this._viewport}},{key:"GetViewportForZ",value:function(e,t){var n=this._viewportZ0
|
||
if(0===e)t.copy(n)
|
||
else{var r=this.Get2DScaleFactorToZ(e),a=n.midX(),i=n.midY(),s=.5*n.width()/r,o=.5*n.height()/r
|
||
t.set(a-s,i-o,a+s,i+o)}}},{key:"GetOpacity",value:function(){return this._color.getA()}},{key:"SetOpacity",value:function(e){e=_C61.clamp(e,0,1),this._color.getA()!==e&&(this._color.setA(e),this._UpdatePremultipliedColor(),this._runtime.UpdateRender())}},{key:"_UpdatePremultipliedColor",value:function(){this._premultipliedColor.copy(this._color),this._premultipliedColor.premultiply()}},{key:"GetPremultipliedColor",value:function(){return this._premultipliedColor}},{key:"HasDefaultColor",value:function(){return this._color.equalsRgba(1,1,1,1)}},{key:"GetScaleRate",value:function(){return this._scaleRate}},{key:"SetScaleRate",value:function(e){this._scaleRate!==e&&(this._scaleRate=e,this._runtime.UpdateRender())}},{key:"GetParallaxX",value:function(){return this._parallaxX}},{key:"GetParallaxY",value:function(){return this._parallaxY}},{key:"SetParallax",value:function(e,t){if((this._parallaxX!==e||this._parallaxY!==t)&&(this._parallaxX=e,this._parallaxY=t,this._runtime.UpdateRender(),1!==this._parallaxX||1!==this._parallaxY)){var n,r=_createForOfIteratorHelper(this._instances)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
a.GetObjectClass()._SetAnyInstanceParallaxed(!0)}}catch(i){r.e(i)}finally{r.f()}}}},{key:"SetParallaxX",value:function(e){this.SetParallax(e,this.GetParallaxY())}},{key:"SetParallaxY",value:function(e){this.SetParallax(this.GetParallaxX(),e)}},{key:"SetZElevation",value:function(e){e=+e,this._zElevation!==e&&(this._zElevation=e,this._runtime.UpdateRender())}},{key:"GetZElevation",value:function(){return this._zElevation}},{key:"SetAngle",value:function(e){this._angle=_C61.clampAngle(e)}},{key:"GetAngle",value:function(){return this._isAngleEnabled?_C61.clampAngle(this._layout.GetAngle()+this._angle):0}},{key:"GetOwnAngle",value:function(){return this._angle}},{key:"HasInstances",value:function(){return this._instances.length>0}},{key:"_GetInstances",value:function(){return this._instances}},{key:"GetBackgroundColor",value:function(){return this._backgroundColor}},{key:"IsTransparent",value:function(){return this._isTransparent}},{key:"SetTransparent",value:function(e){this._isTransparent=!!e}},{key:"IsForceOwnTexture",value:function(){return this._isForceOwnTexture}},{key:"SetForceOwnTexture",value:function(e){this._isForceOwnTexture=!!e}},{key:"SetBlendMode",value:function(e){this._blendMode!==e&&(this._blendMode=e,this._runtime.UpdateRender())}},{key:"GetBlendMode",value:function(){return this._blendMode}},{key:"IsTransformCompatibleWith",value:function(e){return this===e||this._parallaxX===e._parallaxX&&this._parallaxY===e._parallaxY&&this._scale===e._scale&&this._scaleRate===e._scaleRate&&this._angle===e._angle}},{key:"_RemoveAllInstancesInSet",value:function(e){if(0!==e.size){var t=_C61.arrayRemoveAllInSet(this._instances,e)
|
||
t>0&&(this._MaybeResetAnyInstanceZElevatedFlag(),this.SetZIndicesChanged())}}},{key:"SetZIndicesChanged",value:function(){this._zIndicesUpToDate=!1,this._isRenderListUpToDate=!1}},{key:"_UpdateZIndices",value:function(){if(!this._zIndicesUpToDate){if(this._instances.sort(SortByInstZElevation),this._useRenderCells)for(var e=0,t=this._instances.length;t>e;++e){var n=this._instances[e].GetWorldInfo()
|
||
n._SetZIndex(e),this._renderGrid.MarkRangeChanged(n.GetRenderCellRange())}else for(var r=0,a=this._instances.length;a>r;++r)this._instances[r].GetWorldInfo()._SetZIndex(r)
|
||
this._zIndicesUpToDate=!0}}},{key:"MoveInstanceAdjacent",value:function(e,t,n){var r=e.GetWorldInfo(),a=t.GetWorldInfo()
|
||
if(r.GetLayer()!==this||a.GetLayer()!==this)throw Error("can't arrange Z order unless both objects on this layer")
|
||
var i=r.GetZIndex(),s=a.GetZIndex()
|
||
return i===s+(n?1:-1)?!1:(_C61.arrayRemove(this._instances,i),s>i&&s--,n&&s++,s===this._instances.length?this._instances.push(e):this._instances.splice(s,0,e),this.SetZIndicesChanged(),!0)}},{key:"_MergeSortedZArrays",value:function(e,t){for(var n=[],r=0,a=0,i=e.length,s=t.length;i>r&&s>a;){var o=e[r],u=t[a]
|
||
o.GetWorldInfo()._GetLastCachedZIndex()<u.GetWorldInfo()._GetLastCachedZIndex()?(n.push(o),++r):(n.push(u),++a)}for(;i>r;++r)n.push(e[r])
|
||
for(;s>a;++a)n.push(t[a])
|
||
return n}},{key:"_MergeAllSortedZArrays_pass",value:function(e){for(var t=[],n=e.length,r=0;n-1>r;r+=2){var a=e[r],i=e[r+1]
|
||
t.push(this._MergeSortedZArrays(a,i))}return n%2===1&&t.push(e[n-1]),t}},{key:"_MergeAllSortedZArrays",value:function(e){for(;e.length>1;)e=this._MergeAllSortedZArrays_pass(e)
|
||
return e[0]}},{key:"_GetRenderCellInstancesToDraw",value:function(){return this._UpdateZIndices(),_C61.clearArray(renderCellArr),this._renderGrid.QueryRange(this._viewport,renderCellArr),renderCellArr.length?1===renderCellArr.length?renderCellArr[0]:this._MergeAllSortedZArrays(renderCellArr):[]}},{key:"_IsOpaque",value:function(){return!this.UsesOwnTexture()&&!this.IsTransparent()}},{key:"ShouldDraw",value:function(){return this.IsVisible()&&this.GetOpacity()>0&&(this.HasInstances()||!this.IsTransparent())}},{key:"UsesOwnTexture",value:function(){return this.IsForceOwnTexture()||!this.HasDefaultColor()||0!==this.GetBlendMode()||this._effectList.HasAnyActiveEffect()}},{key:"GetRenderTarget",value:function(){return this._curRenderTarget}},{key:"_CanFastPathDrawLayer",value:function(e){if(0===e.length)return!0
|
||
if(e.length>=2)return!1
|
||
var t=e[0],n=t.GetShaderProgram()
|
||
return!n.MustPreDraw()&&!n.UsesDest()&&!n.UsesCrossSampling()&&this.HasDefaultColor()}},{key:"Get2DScaleFactorToZ",value:function(e){var t=this.GetCameraZ()
|
||
return t/(t-e)}},{key:"GetCameraZ",value:function(){return 100/this.GetNormalScale()}},{key:"_SetTransform",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,r=this._runtime.GetRenderScale(),a=(this._viewport.midX()+t)*r,i=(this._viewport.midY()+n)*r,s=this.GetCameraZ()
|
||
e.SetCameraXYZ(a,i,s),e.SetLookXYZ(a,i,s-100)
|
||
var o=this.GetAngle(),u=tempVec3
|
||
0===o?_vec4.set(u,0,1,0):_vec4.set(u,Math.sin(o),Math.cos(o),0),e.ResetModelView(u),e.Scale(r,r),e.UpdateModelView()}},{key:"Draw",value:function(e,t,n){var r=this._runtime.GetCanvasManager(),a=this.UsesOwnTexture(),i=null,s=null
|
||
if(this._runtime.IsGPUProfiling()&&e.SupportsGPUProfiling()){var o=r.GetLayerTimingsBuffer(this)
|
||
o&&(s=o.AddTimeElapsedQuery(),e.StartQuery(s))}if(a){var u={sampling:this._runtime.GetSampling()}
|
||
"low"===r.GetCurrentFullscreenScalingQuality()&&(u.width=r.GetDrawWidth(),u.height=r.GetDrawHeight()),i=this._runtime.GetAdditionalRenderTarget(u),e.SetRenderTarget(i),this.IsTransparent()&&e.ClearRgba(0,0,0,0)}else e.SetRenderTarget(t)
|
||
if(this.IsTransparent()||e.Clear(this._backgroundColor),this._curRenderTarget=i||t,this._SetTransform(e),e.SetBaseZ(this.GetZElevation()),this.GetNormalScale()>Number.EPSILON){this._UpdateZIndices()
|
||
var l=this._useRenderCells&&0===this.GetZElevation()&&!this._anyInstanceZElevated
|
||
l?this._DrawInstances_RenderCells(e):this._DrawInstances(e,this._instances)}e.SetBaseZ(0),e.SetCurrentZ(0),e.SetCameraXYZ(0,0,100),e.SetLookXYZ(0,0,0),a&&this._DrawLayerOwnTextureToRenderTarget(e,i,t,n),s&&e.EndQuery(s),this._curRenderTarget=null}},{key:"_DrawInstances",value:function(e,t){for(var n=this._viewport,r=this._curRenderTarget,a=null,i=0,s=t.length;s>i;++i){var o=t[i]
|
||
if(o!==a){a=o
|
||
var u=o.GetWorldInfo()
|
||
u.IsVisible()&&u.IsInViewport(n)&&(u.HasAnyActiveEffect()?this._DrawInstanceWithEffectsAndRestore(o,u,e,r):this._DrawInstance(o,u,e))}}}},{key:"_DrawInstances_RenderCells",value:function(e){var t,n=this._renderGrid,r=this._curRenderCells,a=this._lastRenderCells,i=this._viewport
|
||
r.set(n.XToCell(i.getLeft()),n.YToCell(i.getTop()),n.XToCell(i.getRight()),n.YToCell(i.getBottom())),this._isRenderListUpToDate&&r.equals(a)?t=this._lastRenderList:(t=this._GetRenderCellInstancesToDraw(),this._isRenderListUpToDate=!0,a.copy(r)),this._DrawInstances(e,t),t!==this._lastRenderList&&_C61.shallowAssignArray(this._lastRenderList,t)}},{key:"_DrawInstance",value:function(e,t,n){var r=t.GetRendererStateGroup()
|
||
n.GetCurrentStateGroup()!==r&&r.Apply(),e.Draw(n)}},{key:"_DrawInstanceWithEffectsAndRestore",value:function(e,t,n,r){this._DrawInstanceWithEffects(e,t,n,r,null)&&this._SetTransform(n)}},{key:"_DrawInstanceWithEffects",value:function(e,t,n,r,a){var i=t.GetInstanceEffectList().GetActiveEffectTypes()
|
||
if(1===i.length){var s=i[0],o=s.GetShaderProgram()
|
||
if(!o.NeedsPostDrawOrExtendsBox()&&t.HasDefaultColor()&&!e.MustPreDraw())return this._DrawInstanceWithEffects_FastPath(e,t,s,o,n),!1}var u=_C61.RenderEffectChain(n,this._runtime,e,r,i,a)
|
||
return n.SetBaseZ(this.GetZElevation()),u}},{key:"_DrawInstanceWithEffects_FastPath",value:function(e,t,n,r,a){a.SetProgram(r),a.SetBlendMode(t.GetBlendMode()),r.IsAnimated()&&this._runtime.UpdateRender()
|
||
var i=0,s=0
|
||
if(r.UsesAnySrcRectOrPixelSize()){var o=e.GetCurrentSurfaceSize(),u=_slicedToArray(o,2),l=u[0],c=u[1]
|
||
i=1/l,s=1/c
|
||
var h=e.GetCurrentTexRect()
|
||
h?tmpSrcRect.copy(h):tmpSrcRect.set(0,0,0,0)}var _=t.GetInstanceEffectList().GetEffectParametersForIndex(n.GetIndex())
|
||
a.SetCurrentZ(t.GetZElevation()),a.SetProgramParameters(null,tmpDestRect,tmpSrcRect,tmpSrcRect,t.GetBoundingBox(),i,s,this.GetOwnScale(),this.GetAngle(),this._runtime.GetGameTime(),_),e.Draw(a)}},{key:"_DrawLayerOwnTextureToRenderTarget",value:function(e,t,n,r){var a=this._effectList.GetActiveEffectTypes(),i=this._runtime
|
||
if(this._CanFastPathDrawLayer(a)){if(e.SetRenderTarget(n),1===a.length){var s=a[0],o=s.GetShaderProgram()
|
||
e.SetProgram(o),tmpSrcRect.set(0,0,1,1)
|
||
var u=this._effectList.GetEffectParametersForIndex(s.GetIndex())
|
||
e.SetProgramParameters(null,tmpDestRect,tmpSrcRect,tmpSrcRect,this._viewport,1/i.GetDrawWidth(),1/i.GetDrawHeight(),this.GetNormalScale(),this.GetAngle(),i.GetGameTime(),u),o.IsAnimated()&&i.UpdateRender()}else e.SetTextureFillMode()
|
||
r&&0===this._blendMode&&this.HasDefaultColor()&&0===a.length?e.CopyRenderTarget(t):(e.SetBlendMode(this._blendMode),e.SetColor(this._premultipliedColor),e.DrawRenderTarget(t)),e.InvalidateRenderTarget(t),i.ReleaseAdditionalRenderTarget(t)}else _C61.RenderEffectChain(e,i,this,n,a)}},{key:"GetOwnScale",value:function(){return this._scale}},{key:"SetOwnScale",value:function(e){this._scale!==e&&(this._scale=e,this._layout.BoundScrolling(),this._runtime.UpdateRender())}},{key:"GetRenderScale",value:function(){return this.GetNormalScale()*this._runtime.GetRenderScale()}},{key:"GetDisplayScale",value:function(){return this.GetNormalScale()*this._runtime.GetDisplayScale()}},{key:"GetNormalScale",value:function(){return(this._scale*this._layout.GetScale()-1)*this._scaleRate+1}},{key:"UpdateViewport",value:function(){this._isAngleEnabled=!1
|
||
var e=this.CanvasCssToLayer(0,0),t=_slicedToArray(e,2),n=t[0],r=t[1]
|
||
this._isAngleEnabled=!0,this._runtime.IsPixelRoundingEnabled()&&(n=Math.round(n),r=Math.round(r))
|
||
var a=1/this.GetNormalScale(),i=this._viewportZ0
|
||
i.set(n,r,n+this._runtime.GetViewportWidth()*a,r+this._runtime.GetViewportHeight()*a)
|
||
var s=this.GetAngle()
|
||
0!==s&&(_tmpRect.copy(i),_tmpRect.offset(-i.midX(),-i.midY()),_tmpQuad.setFromRotatedRect(_tmpRect,s),_tmpQuad.getBoundingBox(_tmpRect),_tmpRect.offset(i.midX(),i.midY()),i.copy(_tmpRect)),this.GetViewportForZ(this._zElevation,this._viewport)}},{key:"CanvasCssToLayer",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0
|
||
return this._CanvasToLayer(e,t,n,this.GetDisplayScale())}},{key:"DrawSurfaceToLayer",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0
|
||
return this._CanvasToLayer(e,t,n,this.GetRenderScale()*this.GetDevicePixelRatio())}},{key:"_CanvasToLayer",value:function(e,t,n,r){var a=this._runtime.GetParallaxXOrigin(),i=this._runtime.GetParallaxYOrigin(),s=(this._layout.GetScrollX()-a)*this._parallaxX+a,o=(this._layout.GetScrollY()-i)*this._parallaxY+i,u=this.GetNormalScale(),l=this._runtime.GetViewportWidth()/u,c=this._runtime.GetViewportHeight()/u,h=s-l/2,_=o-c/2,f=h+e/r,d=_+t/r,p=this.GetAngle()
|
||
if(0!==p){f-=s,d-=o
|
||
var v=Math.cos(p),m=Math.sin(p),y=f*v-d*m
|
||
d=d*v+f*m,f=y,f+=s,d+=o}if(0!==n){var g=this._viewportZ0.midX(),C=this._viewportZ0.midY(),S=this.Get2DScaleFactorToZ(n)
|
||
f=(f-g)/S+g,d=(d-C)/S+C}return[f,d]}},{key:"CanvasCssToLayer_DefaultTransform",value:function(e,t){var n=this._scale,r=this._scaleRate,a=this._parallaxX,i=this._parallaxY,s=this._angle
|
||
this._scale=1,this._scaleRate=1,this._parallaxX=1,this._parallaxY=1,this._angle=0
|
||
var o=this.CanvasCssToLayer(e,t)
|
||
return this._scale=n,this._scaleRate=r,this._parallaxX=a,this._parallaxY=i,this._angle=s,o}},{key:"LayerToCanvasCss",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0
|
||
return this._LayerToCanvas(e,t,n,this.GetDisplayScale())}},{key:"LayerToDrawSurface",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0
|
||
return this._LayerToCanvas(e,t,n,this.GetRenderScale()*this.GetDevicePixelRatio())}},{key:"_LayerToCanvas",value:function(e,t,n,r){var a=this._runtime,i=this._layout
|
||
if(0!==n){var s=this._viewportZ0.midX(),o=this._viewportZ0.midY(),u=this.Get2DScaleFactorToZ(n)
|
||
e=(e-s)*u+s,t=(t-o)*u+o}var l=a.GetParallaxXOrigin(),c=a.GetParallaxYOrigin(),h=(i.GetScrollX()-l)*this._parallaxX+l,_=(i.GetScrollY()-c)*this._parallaxY+c,f=this.GetAngle()
|
||
if(0!==f){e-=h,t-=_
|
||
var d=Math.cos(-f),p=Math.sin(-f),v=e*d-t*p
|
||
t=t*d+e*p,e=v,e+=h,t+=_}var m=this.GetNormalScale(),y=a.GetViewportWidth()/m,g=a.GetViewportHeight()/m,C=h-y/2,S=_-g/2,k=e-C,I=t-S,T=k*r,G=I*r
|
||
return[T,G]}},{key:"_GetLayerToDrawSurfaceScale",value:function(e,t){return e*=this.GetRenderScale()*this.GetDevicePixelRatio(),0!==t&&(e*=this.Get2DScaleFactorToZ(t)),e}},{key:"_SaveToJson",value:function(){var e={s:this.GetOwnScale(),a:this.GetOwnAngle(),vl:this._viewport.getLeft(),vt:this._viewport.getTop(),vr:this._viewport.getRight(),vb:this._viewport.getBottom(),v:this.IsVisible(),bc:this._backgroundColor.toJSON(),t:this.IsTransparent(),px:this.GetParallaxX(),py:this.GetParallaxY(),c:this._color.toJSON(),sr:this.GetScaleRate(),fx:this._effectList.SaveToJson(),cg:this._createdGlobalUids}
|
||
return e}},{key:"_LoadFromJson",value:function(e){this._scale=e.s,this._angle=e.a,this._viewport.set(e.vl,e.vt,e.vr,e.vb),this._isVisible=!!e.v,this._backgroundColor.setFromJSON(e.bc),this._isTransparent=!!e.t,this._parallaxX=e.px,this._parallaxY=e.py,this._color.setFromJSON(e.c),this._scaleRate=e.sr,_C61.shallowAssignArray(this._createdGlobalUids,e.cg),_C61.shallowAssignArray(this._initialInstances,this._startupInitialInstances)
|
||
for(var t=new Set(this._createdGlobalUids),n=0,r=0,a=this._initialInstances.length;a>r;++r)t.has(this._initialInstances[r][2])||(this._initialInstances[n]=this._initialInstances[r],++n)
|
||
_C61.truncateArray(this._initialInstances,n),this._effectList.LoadFromJson(e.fx),this._SortInstancesByLastCachedZIndex(!1),this.SetZIndicesChanged()}},{key:"GetILayer",value:function(){return this._iLayer}}],[{key:"Create",value:function(e,t,n){return _C61.New(_C61.Layer,e,t,n)}}]),t}(_C61.DefendedBase)
|
||
var _C62=self.C3,C3Debugger=self.C3Debugger,_assert6=self.assert,tempDestRect=_C62.New(_C62.Rect),tempSrcRect=_C62.New(_C62.Rect),tempLayoutRect=_C62.New(_C62.Rect)
|
||
_C62.Layout=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this),i._layoutManager=e,i._runtime=e.GetRuntime(),i._name=a[0],i._originalWidth=a[1],i._originalHeight=a[2],i._width=a[1],i._height=a[2],i._isUnboundedScrolling=!!a[3],i._eventSheetName=a[4],i._eventSheet=null,i._sid=a[5],i._index=r,i._scrollX=0,i._scrollY=0,i._scale=1,i._angle=0,i._initialObjectClasses=new Set,i._textureLoadedTypes=new Set,i._textureLoadPendingPromises=new Set,i._createdInstances=[],i._initialNonWorld=[],i._layers=[],i._layersByName=new Map,i._layersBySid=new Map,i._effectList=_C62.New(_C62.EffectList,_assertThisInitialized(i),a[8]),i._curRenderTarget=null,i._persistData={},i._isFirstVisit=!0,i._iLayout=new self.ILayout(_assertThisInitialized(i)),i._userScriptDispatcher=_C62.New(_C62.Event.Dispatcher)
|
||
var s,o=_createForOfIteratorHelper(a[6])
|
||
try{for(o.s();!(s=o.n()).done;){var u=s.value,l=_C62.Layer.Create(_assertThisInitialized(i),i._layers.length,u)
|
||
i._layers.push(l),i._layersByName.set(l.GetName().toLowerCase(),l),i._layersBySid.set(l.GetSID(),l)}}catch(c){o.e(c)}finally{o.f()}var h,_=_createForOfIteratorHelper(a[7])
|
||
try{for(_.s();!(h=_.n()).done;){var f=h.value,d=i._runtime.GetObjectClassByIndex(f[1])
|
||
if(!d)throw Error("missing nonworld object class")
|
||
d.GetDefaultInstanceData()||d.SetDefaultInstanceData(f),i._initialNonWorld.push(f),i._AddInitialObjectClass(d)}}catch(c){_.e(c)}finally{_.f()}return i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){var e,t=_createForOfIteratorHelper(this._layers)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C62.clearArray(this._layers),this._textureLoadPendingPromises.clear(),this._eventSheet=null,this._layoutManager=null,this._runtime=null}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetName",value:function(){return this._name}},{key:"GetSID",value:function(){return this._sid}},{key:"GetIndex",value:function(){return this._index}},{key:"GetEffectList",value:function(){return this._effectList}},{key:"GetMinLayerScale",value:function(){for(var e=this._layers[0].GetNormalScale(),t=1,n=this._layers.length;n>t;++t){var r=this._layers[t];(0!==r.GetParallaxX()||0!==r.GetParallaxY())&&(e=Math.min(e,r.GetNormalScale()))}return e}},{key:"SetScrollX",value:function(e){if(!this._isUnboundedScrolling){var t=this._runtime.GetViewportWidth()*(1/this.GetMinLayerScale())/2
|
||
e>this._width-t&&(e=this._width-t),t>e&&(e=t)}this._scrollX!==e&&(this._scrollX=e,this._runtime.UpdateRender())}},{key:"GetScrollX",value:function(){return this._scrollX}},{key:"SetScrollY",value:function(e){if(!this._isUnboundedScrolling){var t=this._runtime.GetViewportHeight()*(1/this.GetMinLayerScale())/2
|
||
e>this._height-t&&(e=this._height-t),t>e&&(e=t)}this._scrollY!==e&&(this._scrollY=e,this._runtime.UpdateRender())}},{key:"GetScrollY",value:function(){return this._scrollY}},{key:"BoundScrolling",value:function(){this.SetScrollX(this.GetScrollX()),this.SetScrollY(this.GetScrollY())}},{key:"GetScale",value:function(){return this._scale}},{key:"SetScale",value:function(e){e=+e,this._scale!==e&&(this._scale=e,this.BoundScrolling())}},{key:"SetAngle",value:function(e){this._angle=_C62.clampAngle(e)}},{key:"GetAngle",value:function(){return this._angle}},{key:"GetWidth",value:function(){return this._width}},{key:"SetWidth",value:function(e){!isFinite(e)||1>e||(this._width=e)}},{key:"GetHeight",value:function(){return this._height}},{key:"SetHeight",value:function(e){!isFinite(e)||1>e||(this._height=e)}},{key:"GetEventSheet",value:function(){return this._eventSheet}},{key:"GetLayers",value:function(){return this._layers}},{key:"GetLayerCount",value:function(){return this._layers.length}},{key:"GetLayer",value:function(e){return"number"==typeof e?this.GetLayerByIndex(e):this.GetLayerByName(""+e)}},{key:"GetLayerByIndex",value:function(e){return e=_C62.clamp(Math.floor(e),0,this._layers.length-1),this._layers[e]}},{key:"GetLayerByName",value:function(e){return this._layersByName.get(e.toLowerCase())||null}},{key:"GetLayerBySID",value:function(e){return this._layersBySid.get(e)||null}},{key:"HasOpaqueBottomLayer",value:function(){var e,t=_createForOfIteratorHelper(this._layers)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
if(n.ShouldDraw())return n._IsOpaque()}}catch(r){t.e(r)}finally{t.f()}return!1}},{key:"IsFirstVisit",value:function(){return this._isFirstVisit}},{key:"_GetInitialObjectClasses",value:function(){return _toConsumableArray(this._initialObjectClasses)}},{key:"_AddInitialObjectClass",value:function(e){if(e.IsInContainer()){var t,n=_createForOfIteratorHelper(e.GetContainer().GetObjectTypes())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
this._initialObjectClasses.add(r)}}catch(a){n.e(a)}finally{n.f()}}else this._initialObjectClasses.add(e)}},{key:"_GetTextureLoadedObjectTypes",value:function(){return _toConsumableArray(this._textureLoadedTypes)}},{key:"_Load",value:function(e,t){if(e===this||!t)return Promise.resolve()
|
||
e&&(_C62.CopySet(this._textureLoadedTypes,e._textureLoadedTypes),e._textureLoadedTypes.clear())
|
||
var n,r=[],a=_createForOfIteratorHelper(this._initialObjectClasses)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
this._textureLoadedTypes.has(i)||(r.push(i.LoadTextures(t)),this._textureLoadedTypes.add(i))}}catch(s){a.e(s)}finally{a.f()}return Promise.all(r)}},{key:"MaybeLoadTexturesFor",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!e.IsFamily()){n.next=2
|
||
break}throw Error("cannot load textures for family")
|
||
case 2:if(t=this._runtime.GetWebGLRenderer(),t&&!t.IsContextLost()&&!this._textureLoadedTypes.has(e)){n.next=5
|
||
break}return n.abrupt("return")
|
||
case 5:return this._textureLoadedTypes.add(e),r=e.LoadTextures(t),this._AddPendingTextureLoadPromise(r),n.next=10,r
|
||
case 10:e.OnDynamicTextureLoadComplete(),this._runtime.UpdateRender()
|
||
case 12:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_AddPendingTextureLoadPromise",value:function(e){var t=this
|
||
this._textureLoadPendingPromises.add(e),e.then(function(){return t._textureLoadPendingPromises["delete"](e)})["catch"](function(){return t._textureLoadPendingPromises["delete"](e)})}},{key:"WaitForPendingTextureLoadsToComplete",value:function(){return Promise.all(_toConsumableArray(this._textureLoadPendingPromises))}},{key:"MaybeUnloadTexturesFor",value:function(e){if(e.IsFamily()||e.GetInstanceCount()>0)throw Error("cannot unload textures")
|
||
var t=this._runtime.GetWebGLRenderer()
|
||
t&&this._textureLoadedTypes.has(e)&&(this._textureLoadedTypes["delete"](e),e.ReleaseTextures(t))}},{key:"_Unload",value:function(e,t){if(e!==this&&t){var n,r=_createForOfIteratorHelper(this._textureLoadedTypes)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
a.IsGlobal()||e._initialObjectClasses.has(a)||(a.ReleaseTextures(),this._textureLoadedTypes["delete"](a))}}catch(i){r.e(i)}finally{r.f()}}}},{key:"_OnWebGLContextLost",value:function(){this._textureLoadedTypes.clear()}},{key:"_StartRunning",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a,i,s,o,u,l,c,h,_=this
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t=this._runtime,r=this._layoutManager,a=t.GetEventSheetManager(),this._eventSheetName&&(this._eventSheet=a.GetEventSheetByName(this._eventSheetName),this._eventSheet._UpdateDeepIncludes()),r._SetMainRunningLayout(this),this._width=this._originalWidth,this._height=this._originalHeight,this._scrollX=t.GetOriginalViewportWidth()/2,this._scrollY=t.GetOriginalViewportHeight()/2,this.BoundScrolling(),this._MoveGlobalObjectsToThisLayout(e),this._runtime.SetUsingCreatePromises(!0),this._CreateInitialInstances(),this._isFirstVisit||this._CreatePersistedInstances(),this._CreateAndLinkContainerInstances(this._createdInstances),this._CreateInitialNonWorldInstances(),r.ClearPendingChangeLayout(),t.FlushPendingInstances(),this._runtime.SetUsingCreatePromises(!1),i=this._runtime.GetCreatePromises(),n.next=22,Promise.all(i)
|
||
case 22:if(_C62.clearArray(i),!t.IsLoadingState()){s=_createForOfIteratorHelper(this._createdInstances)
|
||
try{for(s.s();!(o=s.n()).done;)u=o.value,u.SetupInitialSceneGraphConnections()}catch(f){s.e(f)}finally{s.f()}l=_createForOfIteratorHelper(this._createdInstances)
|
||
try{for(l.s();!(c=l.n()).done;)h=c.value,h._TriggerOnCreated()}catch(f){l.e(f)}finally{l.f()}}return _C62.clearArray(this._createdInstances),n.next=27,Promise.all(_toConsumableArray(this._initialObjectClasses).map(function(e){return e.PreloadTexturesWithInstances(_._runtime.GetWebGLRenderer())}))
|
||
case 27:if(!e){n.next=31
|
||
break}return t.Dispatcher().dispatchEvent(new _C62.Event("beforefirstlayoutstart")),n.next=31,t.DispatchUserScriptEventAsyncWait(new _C62.Event("beforeprojectstart"))
|
||
case 31:return n.next=33,this.DispatchUserScriptEventAsyncWait(new _C62.Event("beforelayoutstart"))
|
||
case 33:if(t.IsLoadingState()){n.next=36
|
||
break}return n.next=36,t.TriggerAsync(_C62.Plugins.System.Cnds.OnLayoutStart,null,null)
|
||
case 36:return n.next=38,this.DispatchUserScriptEventAsyncWait(new _C62.Event("afterlayoutstart"))
|
||
case 38:if(!e){n.next=42
|
||
break}return t.Dispatcher().dispatchEvent(new _C62.Event("afterfirstlayoutstart")),n.next=42,t.DispatchUserScriptEventAsyncWait(new _C62.Event("afterprojectstart"))
|
||
case 42:return a._RunQueuedTriggers(r),n.next=45,this.WaitForPendingTextureLoadsToComplete()
|
||
case 45:this._isFirstVisit=!1
|
||
case 46:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_MoveGlobalObjectsToThisLayout",value:function(e){var t,n=_createForOfIteratorHelper(this._runtime.GetAllObjectClasses())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(!r.IsFamily()&&r.IsWorldType()){var a,i=_createForOfIteratorHelper(r.GetInstances())
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value,o=s.GetWorldInfo(),u=o.GetLayer(),l=_C62.clamp(u.GetIndex(),0,this._layers.length-1),c=this._layers[l]
|
||
o._SetLayer(c),c._MaybeAddInstance(s)}}catch(h){i.e(h)}finally{i.f()}}}}catch(h){n.e(h)}finally{n.f()}if(!e){var _,f=_createForOfIteratorHelper(this._layers)
|
||
try{for(f.s();!(_=f.n()).done;){var d=_.value
|
||
d._SortInstancesByLastCachedZIndex(!1)}}catch(h){f.e(h)}finally{f.f()}}}},{key:"_CreateInitialInstances",value:function(){var e,t=_createForOfIteratorHelper(this._layers)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.CreateInitialInstances(this._createdInstances),n.UpdateViewport(),n._Start()}}catch(r){t.e(r)}finally{t.f()}}},{key:"_CreatePersistedInstances",value:function(){for(var e=!1,t=0,n=Object.entries(this._persistData);t<n.length;t++){var r=_slicedToArray(n[t],2),a=r[0],i=r[1],s=this._runtime.GetObjectClassBySID(parseInt(a,10))
|
||
if(s&&!s.IsFamily()&&s.HasPersistBehavior()){var o,u=_createForOfIteratorHelper(i)
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value,c=null
|
||
if(!s.IsWorldType()||(c=this.GetLayerBySID(l.w.l))){var h=this._runtime.CreateInstanceFromData(s,c,!1,0,0,!0)
|
||
h.LoadFromJson(l),e=!0,this._createdInstances.push(h)}}}catch(_){u.e(_)}finally{u.f()}_C62.clearArray(i)}}var f,d=_createForOfIteratorHelper(this._layers)
|
||
try{for(d.s();!(f=d.n()).done;){var p=f.value
|
||
p._SortInstancesByLastCachedZIndex(!0),p.SetZIndicesChanged()}}catch(_){d.e(_)}finally{d.f()}e&&(this._runtime.FlushPendingInstances(),this._runtime._RefreshUidMap())}},{key:"_CreateAndLinkContainerInstances",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.IsInContainer()){var a,i=r.GetWorldInfo(),s=r.GetIID(),o=_createForOfIteratorHelper(r.GetObjectClass().GetContainer().objectTypes())
|
||
try{for(o.s();!(a=o.n()).done;){var u=a.value
|
||
if(u!==r.GetObjectClass()){var l=u.GetInstances()
|
||
if(l.length>s)r._AddSibling(l[s])
|
||
else{var c=void 0
|
||
c=i?this._runtime.CreateInstanceFromData(u,i.GetLayer(),!0,i.GetX(),i.GetY(),!0):this._runtime.CreateInstanceFromData(u,null,!0,0,0,!0),this._runtime.FlushPendingInstances(),u._UpdateIIDs(),r._AddSibling(c),e.push(c)}}}}catch(h){o.e(h)}finally{o.f()}}}}catch(h){n.e(h)}finally{n.f()}}},{key:"_CreateInitialNonWorldInstances",value:function(){var e,t=_createForOfIteratorHelper(this._initialNonWorld)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value,r=this._runtime.GetObjectClassByIndex(n[1])
|
||
r.IsInContainer()||this._runtime.CreateInstanceFromData(n,null,!0)}}catch(a){t.e(a)}finally{t.f()}}},{key:"_CreateGlobalNonWorlds",value:function(){for(var e=[],t=this._initialNonWorld,n=0,r=0,a=t.length;a>r;++r){var i=t[r],s=this._runtime.GetObjectClassByIndex(i[1])
|
||
s.IsGlobal()?s.IsInContainer()&&s.GetContainer().HasAnyWorldType()||e.push(this._runtime.CreateInstanceFromData(i,null,!0)):(t[n]=i,++n)}_C62.truncateArray(t,n),this._runtime.FlushPendingInstances(),this._CreateAndLinkContainerInstances(e)}},{key:"RecreateInitialObjects",value:function(e,t,n,r,a,i){if(n)return n.RecreateInitialObjects(e,t,r,a,i)
|
||
var s,o=[],u=_createForOfIteratorHelper(this._layers)
|
||
try{for(u.s();!(s=u.n()).done;){var l=s.value
|
||
o.push(l.RecreateInitialObjects(e,t,r,a,i))}}catch(c){u.e(c)}finally{u.f()}return o.flat()}},{key:"_StopRunning",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i,s,o,u,l,c
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(e=this._layoutManager,this._runtime.IsLoadingState()){n.next=4
|
||
break}return n.next=4,this._runtime.TriggerAsync(_C62.Plugins.System.Cnds.OnLayoutEnd,null,null)
|
||
case 4:e.SetIsEndingLayout(!0),this._runtime.GetEventSheetManager().ClearAllScheduledWaits(),this._isFirstVisit||this._SavePersistData(),t=_createForOfIteratorHelper(this._layers)
|
||
try{for(t.s();!(r=t.n()).done;)a=r.value,a._End()}catch(h){t.e(h)}finally{t.f()}i=_createForOfIteratorHelper(this._runtime.GetAllObjectClasses()),n.prev=10,i.s()
|
||
case 12:if((s=i.n()).done){n.next=21
|
||
break}if(o=s.value,!(o.IsGlobal()||o.IsWorldType()||o.GetPlugin().IsSingleGlobal()||o.IsFamily())){n.next=16
|
||
break}return n.abrupt("continue",19)
|
||
case 16:u=_createForOfIteratorHelper(o.GetInstances())
|
||
try{for(u.s();!(l=u.n()).done;)c=l.value,this._runtime.DestroyInstance(c)}catch(h){u.e(h)}finally{u.f()}this._runtime.FlushPendingInstances()
|
||
case 19:n.next=12
|
||
break
|
||
case 21:n.next=26
|
||
break
|
||
case 23:n.prev=23,n.t0=n["catch"](10),i.e(n.t0)
|
||
case 26:return n.prev=26,i.f(),n.finish(26)
|
||
case 29:e.SetIsEndingLayout(!1),e.GetMainRunningLayout()===this&&e._SetMainRunningLayout(null)
|
||
case 31:case"end":return n.stop()}},n,this,[[10,23,26,29]])}))
|
||
return e}()},{key:"_SaveInstanceToPersist",value:function(e){var t=""+e.GetObjectClass().GetSID()
|
||
this._persistData.hasOwnProperty(t)||(this._persistData[t]=[])
|
||
var n=this._persistData[t]
|
||
n.push(e.SaveToJson())}},{key:"_SavePersistData",value:function(){var e,t=_createForOfIteratorHelper(this._layers)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._UpdateZIndices()
|
||
var r,a=_createForOfIteratorHelper(n._GetInstances())
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value,s=i.GetObjectClass()
|
||
!s.IsGlobal()&&s.HasPersistBehavior()&&this._SaveInstanceToPersist(i)}}catch(o){a.e(o)}finally{a.f()}}}catch(o){t.e(o)}finally{t.f()}}},{key:"ResetPersistData",value:function(){this._persistData={},this._isFirstVisit=!0}},{key:"GetRenderTarget",value:function(){return this._curRenderTarget}},{key:"UsesOwnTexture",value:function(){return"low"===this._runtime.GetCanvasManager().GetCurrentFullscreenScalingQuality()||this._runtime.UsesAnyBackgroundBlending()||"low-latency"===this._runtime.GetCompositingMode()||this._effectList.HasAnyActiveEffect()}},{key:"_CanFastPathDrawLayout",value:function(e){if(0===e.length)return!0
|
||
if(e.length>=2)return!1
|
||
var t=e[0],n=t.GetShaderProgram()
|
||
return!n.MustPreDraw()}},{key:"Draw",value:function(e){var t=this._runtime.GetCanvasManager(),n=this.UsesOwnTexture(),r=null
|
||
if(n){"low-latency"!==this._runtime.GetCompositingMode()&&(e.SetRenderTarget(null),e.ClearRgba(0,0,0,0))
|
||
var a={sampling:this._runtime.GetSampling(),readback:this._runtime.UsesAnyBackgroundBlending()||this._effectList.HasAnyActiveEffect()}
|
||
"low"===t.GetCurrentFullscreenScalingQuality()&&(a.width=t.GetDrawWidth(),a.height=t.GetDrawHeight()),r=this._runtime.GetAdditionalRenderTarget(a),e.SetRenderTarget(r)}else e.SetRenderTarget(null)
|
||
this.HasOpaqueBottomLayer()||e.ClearRgba(0,0,0,0),this._curRenderTarget=r
|
||
var i,s=!0,o=_createForOfIteratorHelper(this._layers)
|
||
try{for(o.s();!(i=o.n()).done;){var u=i.value
|
||
u.UpdateViewport(),u.ShouldDraw()&&(u.Draw(e,r,s),s=!1)}}catch(l){o.e(l)}finally{o.f()}n&&this._DrawLayoutOwnTextureToRenderTarget(e,r),this._curRenderTarget=null}},{key:"_DrawLayoutOwnTextureToRenderTarget",value:function(e,t){var n=this._effectList.GetActiveEffectTypes(),r=this._runtime
|
||
if(this._CanFastPathDrawLayout(n)){if(e.SetRenderTarget(null),1===n.length){var a=n[0],i=a.GetShaderProgram()
|
||
e.SetProgram(i),tempSrcRect.set(0,0,1,1),tempLayoutRect.set(0,0,r.GetViewportWidth(),r.GetViewportHeight())
|
||
var s=this._effectList.GetEffectParametersForIndex(a.GetIndex())
|
||
e.SetProgramParameters(null,tempDestRect,tempSrcRect,tempSrcRect,tempLayoutRect,1/r.GetDrawWidth(),1/r.GetDrawHeight(),this.GetScale(),this.GetAngle(),r.GetGameTime(),s),i.IsAnimated()&&r.UpdateRender()}else e.SetTextureFillMode()
|
||
0===n.length?e.CopyRenderTarget(t):(e.SetAlphaBlend(),e.ResetColor(),e.DrawRenderTarget(t)),e.InvalidateRenderTarget(t),r.ReleaseAdditionalRenderTarget(t)}else _C62.RenderEffectChain(e,r,this,null,n)}},{key:"_SaveToJson",value:function(){var e,t={sx:this.GetScrollX(),sy:this.GetScrollY(),s:this.GetScale(),a:this.GetAngle(),w:this.GetWidth(),h:this.GetHeight(),fv:this._isFirstVisit,persist:this._persistData,fx:this._effectList.SaveToJson(),layers:{}},n=_createForOfIteratorHelper(this._layers)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
t.layers[""+r.GetSID()]=r._SaveToJson()}}catch(a){n.e(a)}finally{n.f()}return t}},{key:"_LoadFromJson",value:function(e){this._scrollX=e.sx,this._scrollY=e.sy,this._scale=e.s,this._angle=e.a,this._width=e.w,this._height=e.h,this._isFirstVisit=!!e.fv,this._persistData=e.persist,this._effectList.LoadFromJson(e.fx)
|
||
for(var t=0,n=Object.entries(e.layers);t<n.length;t++){var r=_slicedToArray(n[t],2),a=r[0],i=r[1],s=parseInt(a,10),o=this.GetLayerBySID(s)
|
||
o&&o._LoadFromJson(i)}}},{key:"GetILayout",value:function(){return this._iLayout}},{key:"UserScriptDispatcher",value:function(){return this._userScriptDispatcher}},{key:"DispatchUserScriptEvent",value:function(e){e.layout=this.GetILayout()
|
||
var t=this._runtime,n=t.IsDebug()&&!t.GetEventSheetManager().IsInEventEngine()
|
||
n&&C3Debugger.StartMeasuringScriptTime(),this._userScriptDispatcher.dispatchEvent(e),n&&C3Debugger.AddScriptTime()}},{key:"DispatchUserScriptEventAsyncWait",value:function(e){return e.layout=this.GetILayout(),this._userScriptDispatcher.dispatchEventAndWaitAsync(e)}}]),t}(_C62.DefendedBase)
|
||
var _C63=self.C3
|
||
_C63.LayoutManager=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e,r._allLayouts=[],r._layoutsByName=new Map,r._layoutsBySid=new Map,r._mainRunningLayout=null,r._runningSubLayouts=[],r._firstLayout=null,r._isEndingLayout=0,r._pendingChangeLayout=null,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._runtime=null,this._mainRunningLayout=null,this._firstLayout=null,this._pendingChangeLayout=null,_C63.clearArray(this._allLayouts),this._layoutsByName.clear(),this._layoutsBySid.clear(),_C63.clearArray(this._runningSubLayouts)}},{key:"Create",value:function(e){var t=_C63.New(_C63.Layout,this,this._allLayouts.length,e)
|
||
this._allLayouts.push(t),this._layoutsByName.set(t.GetName().toLowerCase(),t),this._layoutsBySid.set(t.GetSID(),t)}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"SetFirstLayout",value:function(e){this._firstLayout=e}},{key:"GetFirstLayout",value:function(){if(this._firstLayout)return this._firstLayout
|
||
if(this._allLayouts.length)return this._allLayouts[0]
|
||
throw Error("no first layout")}},{key:"GetLayoutByName",value:function(e){return this._layoutsByName.get(e.toLowerCase())||null}},{key:"GetLayoutBySID",value:function(e){return this._layoutsBySid.get(e)||null}},{key:"GetLayoutByIndex",value:function(e){return e=_C63.clamp(Math.floor(e),0,this._allLayouts.length-1),this._allLayouts[e]}},{key:"GetLayout",value:function(e){return"number"==typeof e?this.GetLayoutByIndex(e):this.GetLayoutByName(""+e)}},{key:"GetAllLayouts",value:function(){return this._allLayouts}},{key:"_SetMainRunningLayout",value:function(e){this._mainRunningLayout=e}},{key:"GetMainRunningLayout",value:function(){return this._mainRunningLayout}},{key:"_AddRunningSubLayout",value:function(e){if(this._runningSubLayouts.includes(e))throw Error("layout already running")
|
||
this._runningSubLayouts.push(e)}},{key:"_RemoveRunningSubLayout",value:function(e){var t=this._runningSubLayouts.indexOf(e)
|
||
if(-1===t)throw Error("layout not running")
|
||
this._runningSubLayouts.splice(t,1)}},{key:"runningLayouts",value:_regeneratorRuntime().mark(function r(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._mainRunningLayout){e.next=3
|
||
break}return e.next=3,this._mainRunningLayout
|
||
case 3:if(!this._runningSubLayouts.length){e.next=5
|
||
break}return e.delegateYield(this._runningSubLayouts,"t0",5)
|
||
case 5:case"end":return e.stop()}},r,this)})},{key:"IsLayoutRunning",value:function(e){return this._mainRunningLayout===e||this._runningSubLayouts.includes(e)}},{key:"SetIsEndingLayout",value:function(e){if(e)this._isEndingLayout++
|
||
else{if(this._isEndingLayout<=0)throw Error("already unset")
|
||
this._isEndingLayout--}}},{key:"IsEndingLayout",value:function(){return this._isEndingLayout>0}},{key:"ChangeMainLayout",value:function(e){this._pendingChangeLayout=e}},{key:"ClearPendingChangeLayout",value:function(){this._pendingChangeLayout=null}},{key:"IsPendingChangeMainLayout",value:function(){return!!this._pendingChangeLayout}},{key:"GetPendingChangeMainLayout",value:function(){return this._pendingChangeLayout}}]),t}(_C63.DefendedBase)
|
||
var AllocRenderEffectChainState=function(){return ctxPtr===ctxStack.length&&ctxStack.push(new RenderEffectChainState),ctxStack[ctxPtr++]},ReleaseRenderEffectChainState=function(e){e.ReleaseEffectRenderTargets(),e.Clear(),ctxPtr--},DebugLogRenderTargetContents=function(){var e=_asyncToGenerator(_regeneratorRuntime().mark(function t(e,n,r){var a,i
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,_C64.Gfx.WebGLRenderTarget.DebugReadPixelsToBlob(n,r)
|
||
case 2:a=t.sent,i=URL.createObjectURL(a),console.log("[FX] "+e+" "+(r?"":" [to display]")+": ",i)
|
||
case 5:case"end":return t.stop()}},t)}))
|
||
return function(t,n,r){return e.apply(this,arguments)}}(),GetInstanceBox=function(e,t){for(var n=0,r=t.length;r>n;++n){var a=t[n].GetShaderProgram()
|
||
e.boxExtendHorizontal+=a.GetBoxExtendHorizontal(),e.boxExtendVertical+=a.GetBoxExtendVertical()}var i=e.wi,s=i.GetLayer(),o=s.GetAngle(),u=i.GetBoundingBox(),l=i.GetTotalZElevation(),c=s.LayerToDrawSurface(u.getLeft(),u.getTop(),l),h=_slicedToArray(c,2),_=h[0],f=h[1],d=s.LayerToDrawSurface(u.getRight(),u.getBottom(),l),p=_slicedToArray(d,2),v=p[0],m=p[1]
|
||
if(0!==o){var y=s.LayerToDrawSurface(u.getRight(),u.getTop(),l),g=_slicedToArray(y,2),C=g[0],S=g[1],k=s.LayerToDrawSurface(u.getLeft(),u.getBottom(),l),I=_slicedToArray(k,2),T=I[0],G=I[1],b=Math.min(_,v,C,T)
|
||
v=Math.max(_,v,C,T),_=b,b=Math.min(f,m,S,G),m=Math.max(f,m,S,G),f=b}var A=e.screenRect,E=e.rcTexOrigin,R=e.rcTexDest,x=e.clearRect,P=e.rcTexBounce
|
||
A.set(_,f,v,m),A.shuntY(e.drawHeight),E.copy(A),E.divide(e.surfaceWidth,e.surfaceHeight),E.swapTopBottom(),A.inflate(e.boxExtendHorizontal,e.boxExtendVertical),R.copy(A),R.divide(e.surfaceWidth,e.surfaceHeight),R.swapTopBottom(),x.copy(A),x.roundOuter(),x.inflate(e.boxExtendHorizontal+1,e.boxExtendVertical+1),A.clamp(0,0,e.drawWidth,e.drawHeight),x.clamp(0,0,e.drawWidth,e.drawHeight),P.copy(A),P.divide(e.surfaceWidth,e.surfaceHeight),P.swapTopBottom()},PreDraw=function(e){var t=e.renderer
|
||
t.SetTextureFillMode()
|
||
var n=e.GetEffectRenderTarget(e.fxIndex)
|
||
t.SetRenderTarget(n)
|
||
var r=e.opts
|
||
if(r&&r.preTransform&&r.preTransform(),isDebug&&t.ClearRgba(1,0,0,1),t.ClearRect2(e.clearRect),e.inst)t.SetColor(e.wi.GetPremultipliedColor()),t.SetCurrentZ(e.wi.GetTotalZElevation()),e.inst.Draw(t),t.SetCurrentZ(0)
|
||
else{var a=(e.layer||e.layout).GetRenderTarget()
|
||
e.layer?t.SetColor(e.layer.GetPremultipliedColor()):t.ResetColor(),t.DrawRenderTarget(a),t.InvalidateRenderTarget(a),e.runtime.GetCanvasManager().ReleaseAdditionalRenderTarget(a)}e.rcTexDest.clampFlipped(0,1,1,0),e.fxIndex=1,e.otherFxIndex=0,isDebugFrame&&DebugLogRenderTargetContents("Pre-draw",t,n)},RenderFirstBounce=function(e,t){var n=e.renderer,r=e.runtime,a=e.GetEffectRenderTarget(e.fxIndex)
|
||
n.SetRenderTarget(a)
|
||
var i=e.opts
|
||
if(i&&i.preTransform&&i.preTransform(),isDebug&&n.ClearRgba(1,0,0,1),n.ClearRect2(e.clearRect),e.inst){var s=e.inst.GetCurrentSurfaceSize(),o=_slicedToArray(s,2),u=o[0],l=o[1],c=e.inst.GetCurrentTexRect()
|
||
c?e.srcRect.copy(c):e.srcRect.set(0,0,0,0)
|
||
var h=e.wi.GetInstanceEffectList().GetEffectParametersForIndex(t.GetIndex())
|
||
n.SetProgramParameters(e.renderTarget,e.rcTexDest,e.srcRect,e.srcRect,e.layoutRect,1/u,1/l,e.layerScale,e.layerAngle,r.GetGameTime(),h),n.SetCurrentZ(e.wi.GetTotalZElevation()),e.inst.Draw(n),n.SetCurrentZ(0),e.rcTexDest.clampFlipped(0,1,1,0),e.screenRect.shuntY(e.drawHeight),isDebugFrame&&DebugLogRenderTargetContents("First bounce",n,a)}else{var _=(e.layer||e.layout).GetEffectList().GetEffectParametersForIndex(t.GetIndex())
|
||
n.SetProgramParameters(e.renderTarget,e.rcTexDest,e.rcTexBounce,e.rcTexOrigin,e.layoutRect,1/e.drawWidth,1/e.drawHeight,e.layerScale,e.layerAngle,r.GetGameTime(),_)
|
||
var f=(e.layer||e.layout).GetRenderTarget()
|
||
isDebugFrame&&DebugLogRenderTargetContents("Layer target",n,f),n.DrawRenderTarget(f),n.InvalidateRenderTarget(f),r.GetCanvasManager().ReleaseAdditionalRenderTarget(f),isDebugFrame&&DebugLogRenderTargetContents("First bounce",n,a)}},RenderBounce=function(e,t,n,r){var a,i,s=e.renderer,o=e.runtime
|
||
0===r&&e.preDraw&&e.inst&&e.screenRect.shuntY(e.drawHeight),n?(e.inst?s.SetBlendMode(e.wi.GetBlendMode()):e.layer&&s.SetBlendMode(e.layer.GetBlendMode()),a=e.renderTarget,s.SetRenderTarget(a)):(a=e.GetEffectRenderTarget(e.fxIndex),s.SetRenderTarget(a),isDebug&&s.ClearRgba(1,0,0,1),s.ClearRect2(e.clearRect)),i=e.inst?e.wi.GetInstanceEffectList().GetEffectParametersForIndex(t.GetIndex()):(e.layer||e.layout).GetEffectList().GetEffectParametersForIndex(t.GetIndex()),s.SetProgramParameters(e.renderTarget,e.rcTexDest,e.rcTexBounce,e.rcTexOrigin,e.layoutRect,1/e.surfaceWidth,1/e.surfaceHeight,e.layerScale,e.layerAngle,o.GetGameTime(),i)
|
||
var u=e.GetEffectRenderTarget(e.otherFxIndex)
|
||
s.SetTexture(u.GetTexture()),o.GetCanvasManager().SetDeviceTransform(s),e.didChangeTransform=!0,_tempQuad.setFromRect(e.screenRect),s.Quad3(_tempQuad,e.rcTexBounce),e.inst||s.InvalidateRenderTarget(u),isDebugFrame&&DebugLogRenderTargetContents("Bounce "+r,s,a)},PostDraw=function(e,t){var n=e.renderer
|
||
if(e.layout){n.SetTextureFillMode(),n.SetRenderTarget(e.renderTarget)
|
||
var r=e.GetEffectRenderTarget(e.otherFxIndex)
|
||
return n.CopyRenderTarget(r),void n.InvalidateRenderTarget(r)}var a=e.runtime.GetCanvasManager()
|
||
"low"===a.GetCurrentFullscreenScalingQuality()?(n.SetTextureFillMode(),a.SetDeviceTransform(n,a.GetDrawWidth(),a.GetDrawHeight()),e.didChangeTransform=!0):n.SetDeviceTransformTextureFillMode(),e.inst?n.SetBlendMode(e.wi.GetBlendMode()):e.layer&&n.SetBlendMode(e.layer.GetBlendMode()),n.SetRenderTarget(e.renderTarget)
|
||
var i=e.GetEffectRenderTarget(e.otherFxIndex)
|
||
n.SetTexture(i.GetTexture()),_tempQuad.setFromRect(e.screenRect),n.Quad3(_tempQuad,e.rcTexBounce),e.inst||n.InvalidateRenderTarget(i),isDebugFrame&&DebugLogRenderTargetContents("Post-draw",n,e.renderTarget)},_C64=self.C3,RenderEffectChainState=function(){function e(){_classCallCheck(this,e),this.renderer=null,this.runtime=null,this.drawWidth=0,this.drawHeight=0,this.surfaceWidth=0,this.surfaceHeight=0,this.layoutRect=new _C64.Rect,this.rcTexBounce=new _C64.Rect,this.rcTexDest=new _C64.Rect,this.rcTexOrigin=new _C64.Rect,this.screenRect=new _C64.Rect,this.clearRect=new _C64.Rect,this.srcRect=new _C64.Rect,this.fxTex=[null,null],this.fxIndex=0,this.otherFxIndex=1,this.boxExtendHorizontal=0,this.boxExtendVertical=0,this.layerScale=0,this.layerAngle=0,this.layout=null,this.layer=null,this.inst=null,this.wi=null,this.renderTarget=null,this.preDraw=!1,this.postDraw=!1,this.didChangeTransform=!1,this.opts=null}return _createClass(e,[{key:"Clear",value:function(){this.renderer=null,this.runtime=null,this.layout=null,this.layer=null,this.inst=null,this.wi=null,this.renderTarget=null,this.opts=null}},{key:"ShouldPreDraw",value:function(e){var t=e.GetShaderProgram()
|
||
return t.MustPreDraw()?!0:this.inst?t.UsesDest()&&(0!==this.wi.GetAngle()||this.wi.GetWidth()<0||this.wi.GetHeight()<0)||0!==this.boxExtendHorizontal||0!==this.boxExtendVertical||!this.wi.HasDefaultColor()||this.inst.MustPreDraw():this.layer?!this.layer.HasDefaultColor():void 0}},{key:"ShouldPostDraw",value:function(e){var t=e.GetShaderProgram()
|
||
return t.UsesDest()||t.UsesCrossSampling()||this.layout&&"low"===this.runtime.GetCanvasManager().GetCurrentFullscreenScalingQuality()}},{key:"GetEffectRenderTarget",value:function(e){if(0!==e&&1!==e)throw Error("invalid effect target")
|
||
var t=this.fxTex
|
||
if(!t[e]){var n=this.runtime,r=n.GetCanvasManager(),a={sampling:n.GetSampling()}
|
||
"low"===r.GetCurrentFullscreenScalingQuality()&&(a.width=r.GetDrawWidth(),a.height=r.GetDrawHeight()),t[e]=r.GetAdditionalRenderTarget(a)}return t[e]}},{key:"ReleaseEffectRenderTargets",value:function(){var e=this.fxTex,t=this.runtime.GetCanvasManager()
|
||
e[0]&&(t.ReleaseAdditionalRenderTarget(e[0]),e[0]=null),e[1]&&(t.ReleaseAdditionalRenderTarget(e[1]),e[1]=null)}}]),e}(),ctxStack=[],ctxPtr=0,_tempQuad=new _C64.Quad,isDebug=!1,isDebugFrame=!1
|
||
_C64.RenderEffectChain=function(e,t,n,r,a,i){var s=AllocRenderEffectChainState()
|
||
if(s.renderer=e,s.runtime=t,n instanceof _C64.Instance)s.inst=n,s.wi=s.inst.GetWorldInfo()
|
||
else if(n instanceof _C64.Layer)s.layer=n
|
||
else{if(!(n instanceof _C64.Layout))throw Error("invalid effects object")
|
||
s.layout=n}var o=t.GetCanvasManager()
|
||
if(s.renderTarget=r,s.drawWidth=o.GetDrawWidth(),s.drawHeight=o.GetDrawHeight(),s.surfaceWidth=s.drawWidth,s.surfaceHeight=s.drawHeight,s.fxIndex=0,s.otherFxIndex=1,s.boxExtendHorizontal=0,s.boxExtendVertical=0,s.screenRect.set(0,0,s.drawWidth,s.drawHeight),s.clearRect.set(0,0,s.drawWidth,s.drawHeight),s.didChangeTransform=!1,s.opts=i,s.inst){var u=s.wi
|
||
s.layerScale=u.GetLayer().GetRenderScale(),s.layerAngle=u.GetLayer().GetAngle(),s.layoutRect.copy(u.GetBoundingBox())}else if(s.layer){var l=s.layer
|
||
s.layerScale=l.GetRenderScale(),s.layerAngle=l.GetAngle(),s.layoutRect.copy(l.GetViewport())}else{var c=s.layout
|
||
s.layerScale=c.GetScale(),s.layerAngle=c.GetAngle(),s.layoutRect.set(0,0,s.drawWidth,s.drawHeight)}s.inst?GetInstanceBox(s,a):(s.rcTexBounce.set(0,0,s.drawWidth/s.surfaceWidth,s.drawHeight/s.surfaceHeight),s.rcTexDest.copy(s.rcTexBounce),s.rcTexOrigin.copy(s.rcTexBounce),s.rcTexBounce.swapTopBottom(),s.rcTexDest.swapTopBottom(),s.rcTexOrigin.swapTopBottom()),e.SetAlphaBlend(),e.ResetColor(),e.SetBaseZ(0),e.SetCurrentZ(0),s.preDraw=s.ShouldPreDraw(a[0]),s.preDraw&&PreDraw(s),e.ResetColor()
|
||
var h=a.length-1
|
||
s.postDraw=s.ShouldPostDraw(a[h])
|
||
for(var _=0,f=a.length;f>_;++_){var d=a[_],p=d.GetShaderProgram()
|
||
if(e.SetProgram(p),p.IsAnimated()&&t.UpdateRender(),0!==_||s.preDraw){e.SetCopyBlend()
|
||
var v=_===h&&!s.postDraw
|
||
RenderBounce(s,d,v,_)}else RenderFirstBounce(s,d)
|
||
0===s.fxIndex?(s.fxIndex=1,s.otherFxIndex=0):(s.fxIndex=0,s.otherFxIndex=1)}s.postDraw&&PostDraw(s,a)
|
||
var m=s.didChangeTransform
|
||
return ReleaseRenderEffectChainState(s),isDebugFrame=!1,m}
|
||
var _C65=self.C3,NAMES_REGEXP=RegExp("<(.+?)>","g")
|
||
_C65.TimelineManager=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e,r._timelineDataManager=_C65.New(_C65.TimelineDataManager),r._pluginInstance=null,r._timelines=[],r._timelinesByName=new Map,r._objectClassToTimelineMap=new Map,r._timelinesCreatedByTemplate=new Map,r._scheduledTimelines=[],r._playingTimelines=[],r._hasRuntimeListeners=!1,r._changingLayout=!1,r._isTickingTimelines=!1,r._tickFunc=function(){return r._OnTick()},r._tick2Func=function(){return r._OnTick2()},r._beforeLayoutChange=function(){return r._OnBeforeChangeLayout()},r._layoutChange=function(){return r._OnAfterChangeLayout()},r._instanceDestroy=function(e){return r._OnInstanceDestroy(e.instance)},r._afterLoad=function(e){return r._OnAfterLoad()},r._destroyedWhileLoadingState=[],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.RemoveRuntimeListeners(),this._tickFunc=null,this._tick2Func=null,this._beforeLayoutChange=null,this._layoutChange=null,this._instanceDestroy=null,this._afterLoad=null
|
||
var e,t=_createForOfIteratorHelper(this._timelines)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Stop(),n.Release()}}catch(r){t.e(r)}finally{t.f()}_C65.clearArray(this._timelines),this._timelines=null,this._timelineDataManager.Release(),this._timelineDataManager=null,_C65.clearArray(this._scheduledTimelines),this._scheduledTimelines=null,_C65.clearArray(this._playingTimelines),this._playingTimelines=null,this._timelinesByName.clear(),this._timelinesByName=null,this._objectClassToTimelineMap.clear(),this._objectClassToTimelineMap=null,this._timelinesCreatedByTemplate.clear(),this._timelinesCreatedByTemplate=null,_C65.clearArray(this._destroyedWhileLoadingState),this._destroyedWhileLoadingState=null,this._runtime=null}},{key:"AddRuntimeListeners",value:function(){var e=this._runtime.Dispatcher()
|
||
e.addEventListener("pretick",this._tickFunc),e.addEventListener("tick2",this._tick2Func),e.addEventListener("beforelayoutchange",this._beforeLayoutChange),e.addEventListener("layoutchange",this._layoutChange),e.addEventListener("instancedestroy",this._instanceDestroy),e.addEventListener("afterload",this._afterLoad)}},{key:"RemoveRuntimeListeners",value:function(){var e=this._runtime.Dispatcher()
|
||
e.removeEventListener("pretick",this._tickFunc),e.removeEventListener("tick2",this._tick2Func),e.removeEventListener("beforelayoutchange",this._beforeLayoutChange),e.removeEventListener("layoutchange",this._layoutChange),e.removeEventListener("instancedestroy",this._instanceDestroy),e.removeEventListener("afterload",this._afterLoad)}},{key:"Create",value:function(e){this._timelineDataManager.Add(e)
|
||
var t=_C65.TimelineState.CreateInitial(e,this)
|
||
this.Add(t),this.SetTimelineObjectClassesToMap(t),this._timelinesCreatedByTemplate.set(t.GetName(),0)}},{key:"CreateFromTemplate",value:function(e){var t=this.GetTimelineDataManager(),n=e.GetTemplateName(),r=t.Get(n),a=_C65.TimelineState.CreateFromTemplate("".concat(n,":").concat(this._timelinesCreatedByTemplate.get(n)),r,this)
|
||
return this._IncreaseTemplateTimelinesCount(n),this.Add(a),a}},{key:"_IncreaseTemplateTimelinesCount",value:function(e){this._timelinesCreatedByTemplate.set(e,this._timelinesCreatedByTemplate.get(e)+1)}},{key:"_SetCreatedTemplateTimelinesCount",value:function(){var e,t=_createForOfIteratorHelper(this._timelines)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
if(!n.IsTemplate()){var r=n.GetTemplateName()
|
||
this._IncreaseTemplateTimelinesCount(r)}}}catch(a){t.e(a)}finally{t.f()}}},{key:"_ClearCreatedTemplateTimelinesCount",value:function(){var e,t=_createForOfIteratorHelper(this._timelinesCreatedByTemplate.keys())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
this._timelinesCreatedByTemplate.set(n,0)}}catch(r){t.e(r)}finally{t.f()}}},{key:"Add",value:function(e){this._timelines.push(e),this._timelinesByName.set(e.GetName().toLowerCase(),e)}},{key:"Remove",value:function(e){e.IsTemplate()||(_C65.arrayFindRemove(this._timelines,e),_C65.arrayFindRemove(this._scheduledTimelines,e),_C65.arrayFindRemove(this._playingTimelines,e),this._timelinesByName["delete"](e.GetName().toLowerCase()),this.RemoveTimelineFromObjectClassMap(e),e.IsReleased()||e.Release())}},{key:"Trigger",value:function(e){this._runtime.Trigger(e,this._pluginInstance,null)}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetTimelineDataManager",value:function(){return this._timelineDataManager}},{key:"SetPluginInstance",value:function(e){this._pluginInstance=e}},{key:"GetPluginInstance",value:function(){return this._pluginInstance}},{key:"GetTimelines",value:_regeneratorRuntime().mark(function r(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(this._timelines),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=9
|
||
break}return n=t.value,r.next=7,n
|
||
case 7:r.next=3
|
||
break
|
||
case 9:r.next=14
|
||
break
|
||
case 11:r.prev=11,r.t0=r["catch"](1),e.e(r.t0)
|
||
case 14:return r.prev=14,e.f(),r.finish(14)
|
||
case 17:case"end":return r.stop()}},r,this,[[1,11,14,17]])})},{key:"SetTimelineObjectClassToMap",value:function(e,t){this._objectClassToTimelineMap.has(e)||this._objectClassToTimelineMap.set(e,new Set),this._objectClassToTimelineMap.get(e).add(t)}},{key:"SetTimelineObjectClassesToMap",value:function(e){var t,n=_createForOfIteratorHelper(e.GetObjectClasses())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
this.SetTimelineObjectClassToMap(r,e)}}catch(a){n.e(a)}finally{n.f()}}},{key:"RemoveTimelineFromObjectClassMap",value:function(e){var t,n=_createForOfIteratorHelper(this._objectClassToTimelineMap.entries())
|
||
try{for(n.s();!(t=n.n()).done;){var r=_slicedToArray(t.value,2),a=r[0],i=r[1]
|
||
i.has(e)&&(i["delete"](e),0===i.size&&this._objectClassToTimelineMap["delete"](a))}}catch(s){n.e(s)}finally{n.f()}}},{key:"GetTimelinesForObjectClass",value:function(e){return this._objectClassToTimelineMap.has(e)?this._objectClassToTimelineMap.get(e):void 0}},{key:"GetTimelineOfTemplateForInstances",value:function(e,t){if(t){var n,r=_createForOfIteratorHelper(this._timelines)
|
||
try{var a=function(){var r=n.value,a=t.every(function(e){return r.HasTrackInstance(e.instance,e.trackId)})
|
||
return a&&r.GetName().includes(e.GetName())?{v:r}:void 0}
|
||
for(r.s();!(n=r.n()).done;){var i=a()
|
||
if("object"===_typeof(i))return i.v}}catch(s){r.e(s)}finally{r.f()}}}},{key:"GetTimelineByName",value:function(e){return this._timelinesByName.get(e.toLowerCase())||null}},{key:"GetScheduledOrPlayingTimelineByName",value:function(e){var t,n=_createForOfIteratorHelper(this._scheduledTimelines)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.GetName()===e)return r}}catch(a){n.e(a)}finally{n.f()}var i,s=_createForOfIteratorHelper(this._playingTimelines)
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
if(o.GetName()===e)return o}}catch(a){s.e(a)}finally{s.f()}return null}},{key:"GetTimelinesByName",value:_regeneratorRuntime().mark(function a(e){var t,n,r,i,s,o,u,l,c,h,_
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(!NAMES_REGEXP.test(e)){a.next=26
|
||
break}NAMES_REGEXP.lastIndex=0,n=new Set
|
||
do if(t=NAMES_REGEXP.exec(e)){r=t[1].split(","),i=_createForOfIteratorHelper(r)
|
||
try{for(i.s();!(s=i.n()).done;)o=s.value,n.add(o)}catch(f){i.e(f)}finally{i.f()}}while(t)
|
||
u=_createForOfIteratorHelper(n.values()),a.prev=5,u.s()
|
||
case 7:if((l=u.n()).done){a.next=15
|
||
break}if(c=l.value,h=this.GetTimelineByName(c),!h){a.next=13
|
||
break}return a.next=13,h
|
||
case 13:a.next=7
|
||
break
|
||
case 15:a.next=20
|
||
break
|
||
case 17:a.prev=17,a.t0=a["catch"](5),u.e(a.t0)
|
||
case 20:return a.prev=20,u.f(),a.finish(20)
|
||
case 23:n.clear(),a.next=30
|
||
break
|
||
case 26:if(_=this.GetTimelineByName(e),!_){a.next=30
|
||
break}return a.next=30,_
|
||
case 30:case"end":return a.stop()}},a,this,[[5,17,20,23]])})},{key:"GetTimelinesByTags",value:_regeneratorRuntime().mark(function i(e){var t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:t=_createForOfIteratorHelper(this._timelines),a.prev=1,t.s()
|
||
case 3:if((n=t.n()).done){a.next=10
|
||
break}if(r=n.value,!r.HasTags(e)){a.next=8
|
||
break}return a.next=8,r
|
||
case 8:a.next=3
|
||
break
|
||
case 10:a.next=15
|
||
break
|
||
case 12:a.prev=12,a.t0=a["catch"](1),t.e(a.t0)
|
||
case 15:return a.prev=15,t.f(),a.finish(15)
|
||
case 18:case"end":return a.stop()}},i,this,[[1,12,15,18]])})},{key:"AddScheduledTimeline",value:function(e){this._scheduledTimelines.includes(e)||this._scheduledTimelines.push(e),this._MaybeEnableRuntimeListeners()}},{key:"RemovePlayingTimeline",value:function(e){_C65.arrayFindRemove(this._playingTimelines,e),this._MaybeDisableRuntimeListeners()}},{key:"ScheduleTimeline",value:function(e){this._playingTimelines.includes(e)?(e.SetPlaying(!0),e.SetScheduled(!1),e.SetMarkedForRemoval(!1)):(e.SetPlaying(!1),e.SetScheduled(!0),e.SetMarkedForRemoval(!1),this._scheduledTimelines.includes(e)||this._scheduledTimelines.push(e)),this._MaybeEnableRuntimeListeners()}},{key:"DeScheduleTimeline",value:function(e){e.SetPlaying(!1),e.SetScheduled(!1),e.ResolvePlayPromise(),_C65.arrayFindRemove(this._scheduledTimelines,e),this._MaybeDisableRuntimeListeners()}},{key:"CompleteTimeline",value:function(e){e.SetPlaying(!1),e.SetScheduled(!1),e.SetMarkedForRemoval(!0)}},{key:"CompleteTimelineAndResolve",value:function(e){this.CompleteTimeline(e),e.ResolvePlayPromise()}},{key:"_OnTick",value:function(){if(!this.GetRuntime().IsLoadingState()&&this._hasRuntimeListeners&&!this._changingLayout){var e=!1
|
||
for(this._isTickingTimelines=!0;this._scheduledTimelines.length;){var t=this._scheduledTimelines.pop()
|
||
t.SetInitialState(),this._playingTimelines.push(t)}var n,r=this._runtime.GetDt(),a=this._runtime.GetTimeScale(),i=_createForOfIteratorHelper(this._playingTimelines)
|
||
try{for(i.s();!(n=i.n()).done;){var s=n.value
|
||
if(!s.IsMarkedForRemoval()){var o=s.Tick(r,a)
|
||
!e&&o&&(e=!0)}}}catch(u){i.e(u)}finally{i.f()}this._isTickingTimelines=!1,e&&this.GetRuntime().UpdateRender()}}},{key:"_OnTick2",value:function(){if(!this.GetRuntime().IsLoadingState()&&this._hasRuntimeListeners&&!this._changingLayout){var e,t,n=_createForOfIteratorHelper(this._playingTimelines)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.IsMarkedForRemoval()&&(e||(e=new Set),this._MaybeExecuteTimelineFinishTriggers(r),e.add(r))}}catch(a){n.e(a)}finally{n.f()}e&&_C65.arrayRemoveAllInSet(this._playingTimelines,e),this._MaybeDisableRuntimeListeners()}}},{key:"_MaybeExecuteTimelineFinishTriggers",value:function(e){e.IsReleased()||e.HasValidTracks()&&e.IsComplete()&&e.InitialStateSet()&&e.FinishTriggers()}},{key:"_MaybeEnableRuntimeListeners",value:function(){this._hasRuntimeListeners||(this._hasRuntimeListeners=!0)}},{key:"_MaybeDisableRuntimeListeners",value:function(){this._playingTimelines.length||this._scheduledTimelines.length||this._isTickingTimelines||(this._hasRuntimeListeners=!1)}},{key:"_OnBeforeChangeLayout",value:function(){for(this._changingLayout=!0;this._scheduledTimelines.length;)this.DeScheduleTimeline(this._scheduledTimelines.pop())
|
||
var e,t=new Set,n=_createForOfIteratorHelper(this._playingTimelines)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value,a=r._OnBeforeChangeLayout()
|
||
a&&t.add(r)}}catch(i){n.e(i)}finally{n.f()}_C65.arrayRemoveAllInSet(this._playingTimelines,t),this._MaybeDisableRuntimeListeners()
|
||
var s,o=_createForOfIteratorHelper(this._timelines)
|
||
try{for(o.s();!(s=o.n()).done;){var u=s.value
|
||
u.CleanCaches()}}catch(i){o.e(i)}finally{o.f()}}},{key:"_OnAfterChangeLayout",value:function(){this._changingLayout=!1}},{key:"_OnInstanceDestroy",value:function(e){var t=e.GetObjectClass(),n=this.GetTimelinesForObjectClass(t)
|
||
if(n)if(this._runtime.IsLoadingState())this._destroyedWhileLoadingState.push(e)
|
||
else{var r,a=_createForOfIteratorHelper(n)
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
i.IsTemplate()||(i.IsReleased()?this.Remove(i):i.HasValidTracks()||(this._MaybeExecuteTimelineFinishTriggers(i),this.Remove(i)))}}catch(s){a.e(s)}finally{a.f()}}}},{key:"_OnAfterLoad",value:function(){var e,t=_createForOfIteratorHelper(this._destroyedWhileLoadingState)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
this._OnInstanceDestroy(n)}}catch(r){t.e(r)}finally{t.f()}_C65.clearArray(this._destroyedWhileLoadingState)}},{key:"_SaveToJson",value:function(){return{timelinesJson:this._SaveTimelinesToJson(),scheduledTimelinesJson:this._SaveScheduledTimelinesToJson(),playingTimelinesJson:this._SavePlayingTimelinesToJson(),hasRuntimeListeners:this._hasRuntimeListeners,changingLayout:this._changingLayout,isTickingTimelines:this._isTickingTimelines}}},{key:"_LoadFromJson",value:function(e){e&&(this._ClearCreatedTemplateTimelinesCount(),this._LoadTimelinesFromJson(e.timelinesJson),this._LoadScheduledTimelinesFromJson(e.scheduledTimelinesJson),this._LoadPlayingTimelinesFromJson(e.playingTimelinesJson),this._hasRuntimeListeners=!e.hasRuntimeListeners,this._changingLayout=!!e.changingLayout,this._isTickingTimelines=!!e.isTickingTimelines,this._SetCreatedTemplateTimelinesCount(),this._MaybeEnableRuntimeListeners(),this._MaybeDisableRuntimeListeners())}},{key:"_SaveTimelinesToJson",value:function(){return this._timelines.map(function(e){return e._SaveToJson()})}},{key:"_LoadTimelinesFromJson",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=this.GetTimelineByName(r.name)
|
||
if(a)a._LoadFromJson(r)
|
||
else{var i=this._GetTemplateNameFromJson(r)
|
||
if(!i)continue
|
||
var s=this.GetTimelineByName(i)
|
||
a=this.CreateFromTemplate(s),a._LoadFromJson(r)}a.HasTracks()||this.Remove(a)}}catch(o){n.e(o)}finally{n.f()}}},{key:"_GetTemplateNameFromJson",value:function(e){var t=e.name,n=t.split(":")
|
||
return n&&2===n.length?n[0]:null}},{key:"_SaveScheduledTimelinesToJson",value:function(){return this._SaveTimelines(this._scheduledTimelines)}},{key:"_LoadScheduledTimelinesFromJson",value:function(e){this._LoadTimelines(e,this._scheduledTimelines)}},{key:"_SavePlayingTimelinesToJson",value:function(){return this._SaveTimelines(this._playingTimelines)}},{key:"_LoadPlayingTimelinesFromJson",value:function(e){this._LoadTimelines(e,this._playingTimelines)}},{key:"_IsTimelineInJson",value:function(e,t){var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a===e.GetName())return!0}}catch(i){r.e(i)}finally{r.f()}return!1}},{key:"_SaveTimelines",value:function(e){return e.map(function(e){return e.GetName()})}},{key:"_LoadTimelines",value:function(e,t){var n,r=new Set,a=_createForOfIteratorHelper(t)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
this._IsTimelineInJson(i,e)||r.add(i)}}catch(s){a.e(s)}finally{a.f()}_C65.arrayRemoveAllInSet(t,r)
|
||
var o,u=function(e){return function(t){return t.GetName()===e}},l=_createForOfIteratorHelper(e)
|
||
try{for(l.s();!(o=l.n()).done;){var c=o.value,h=this.GetTimelineByName(c)
|
||
if(h){var _=t.find(u(c))
|
||
_||t.push(h)}}}catch(s){l.e(s)}finally{l.f()}}}]),t}(_C65.DefendedBase)
|
||
var _C66=self.C3,PING_PONG_BEGIN=0,PING_PONG_END=1
|
||
_C66.TimelineState=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this),i._runtime=a.GetRuntime(),i._timelineManager=a,i._timelineDataItem=r,i._name=e,i._tracks=[]
|
||
var s,o=_createForOfIteratorHelper(i._timelineDataItem.GetTrackData().trackDataItems())
|
||
try{for(o.s();!(s=o.n()).done;){var u=s.value
|
||
i._tracks.push(_C66.TrackState.Create(_assertThisInitialized(i),u))}}catch(l){o.e(l)}finally{o.f()}return i._playPromise=null,i._playResolve=null,i._playheadTime=_C66.New(_C66.KahanSum),i._playheadTime.Set(0),i._playbackRate=1,i._pingPongState=PING_PONG_BEGIN,i._currentRepeatCount=1,i._isPlaying=!1,i._isScheduled=!1,i._initialStateSet=!1,i._complete=!0,i._released=!1,i._markedForRemoval=!1,i._completedTick=-1,i._implicitPause=!1,i._isTemplate=!1,i._finishedTriggers=!1,i._firstTick=!1,i._lastDelta=NaN,i._tags=[""],i._stringTags="",i._tagsChanged=!1,i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){if(!this.IsReleased()){this._timelineManager.DeScheduleTimeline(this),this._timelineManager.CompleteTimelineAndResolve(this)
|
||
var e,t=_createForOfIteratorHelper(this._tracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C66.clearArray(this._tracks),this._tracks=null,this._playheadTime.Release(),this._playheadTime=null,this._runtime=null,this._timelineManager=null,this._timelineDataItem=null,this._released=!0,this._playPromise=null,this._playResolve=null}}},{key:"GetTimelineManager",value:function(){return this._timelineManager}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetTracks",value:function(){return this._tracks}},{key:"GetSimilarPropertyTracks",value:function(e,t,n){var r,a=[],i=_createForOfIteratorHelper(this._tracks)
|
||
try{for(i.s();!(r=i.n()).done;){var s=r.value
|
||
if(e===s.GetInstance()){var o=s.GetPropertyTrack(n)
|
||
o&&t.constructor===o.GetSourceAdapter().constructor&&a.push(o)}}}catch(u){i.e(u)}finally{i.f()}return a}},{key:"HasTracks",value:function(){return!!this._tracks.length}},{key:"GetTrackById",value:function(e){var t,n=_createForOfIteratorHelper(this._tracks)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(_C66.equalsNoCase(r.GetId(),e))return r}}catch(a){n.e(a)}finally{n.f()}return null}},{key:"SetName",value:function(e){this._name=e}},{key:"GetName",value:function(){return this._name}},{key:"GetTimelineDataItem",value:function(){return this._timelineDataItem}},{key:"GetTemplateName",value:function(){return this._timelineDataItem.GetName()}},{key:"GetTotalTime",value:function(){return this._timelineDataItem.GetTotalTime()}},{key:"SetTotalTime",value:function(e){this._timelineDataItem.SetTotalTime(e)}},{key:"GetStep",value:function(){return this._timelineDataItem.GetStep()}},{key:"SetStep",value:function(e){this._timelineDataItem.SetStep(e)}},{key:"GetInterpolationMode",value:function(){return this._timelineDataItem.GetInterpolationMode()}},{key:"SetInterpolationMode",value:function(e){this._timelineDataItem.SetInterpolationMode(e)}},{key:"GetResultMode",value:function(){return this._timelineDataItem.GetResultMode()}},{key:"SetResultMode",value:function(e){this._timelineDataItem.GetResultMode(e)}},{key:"SetEase",value:function(e){var t,n=_createForOfIteratorHelper(this.GetTracks())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.SetEase(e)}}catch(a){n.e(a)}finally{n.f()}}},{key:"GetLoop",value:function(){return this._timelineDataItem.GetLoop()}},{key:"SetLoop",value:function(e){return this._timelineDataItem.SetLoop(e)}},{key:"GetPingPong",value:function(){return this._timelineDataItem.GetPingPong()}},{key:"SetPingPong",value:function(e){return this._timelineDataItem.SetPingPong(e)}},{key:"GetRepeatCount",value:function(){return this._timelineDataItem.GetRepeatCount()}},{key:"SetPlaybackRate",value:function(e){return this._playbackRate=e}},{key:"GetPlaybackRate",value:function(){return this._playbackRate}},{key:"IsForwardPlayBack",value:function(){return this.IsPlaying()?this._playbackRate>0:!0}},{key:"GetPlayPromise",value:function(){var e=this
|
||
return this._playPromise?this._playPromise:(this._playPromise=new Promise(function(t){e._playResolve=t}),this._playPromise)}},{key:"ResolvePlayPromise",value:function(){this._playPromise&&(this._playResolve(),this._playPromise=null,this._playResolve=null)}},{key:"SetTags",value:function(e){this._tags=_C66.TimelineState._GetTagArray(e),this._tagsChanged=!0}},{key:"GetTags",value:function(){return this._tags}},{key:"GetStringTags",value:function(){return this._tagsChanged&&(this._stringTags=this._tags.join(" ")),this._tagsChanged=!1,this._stringTags}},{key:"HasTags",value:function(e){if(!this._tags)return!1
|
||
if(!this._tags.length)return!1
|
||
var t=_C66.TimelineState._GetTagArray(e)
|
||
return t&&t.length?t.every(_C66.TimelineState._HasTag,this):!1}},{key:"OnStarted",value:function(){_C66.Plugins.Timeline.Cnds.SetTriggerTimeline(this),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimelineStarted),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimelineStartedByName),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimelineStartedByTags),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnAnyTimelineStarted),_C66.Plugins.Timeline.Cnds.SetTriggerTimeline(null)}},{key:"OnCompleted",value:function(){this._completedTick=this._runtime.GetTickCount()}},{key:"FinishTriggers",value:function(){this._finishedTriggers||(this._finishedTriggers=!0,_C66.Plugins.Timeline.Cnds.SetTriggerTimeline(this),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimelineFinished),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimelineFinishedByName),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimelineFinishedByTags),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnAnyTimelineFinished),_C66.Plugins.Timeline.Cnds.SetTriggerTimeline(null))}},{key:"SetPlaying",value:function(e){this._isPlaying=e}},{key:"IsCompletedTick",value:function(){return this._completedTick===this._runtime.GetTickCount()}},{key:"IsPlaying",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1
|
||
return this.IsCompletedTick()?!0:this.IsScheduled()&&!e?!0:this._isPlaying}},{key:"_IsPlaying",value:function(){return this.IsPlaying(!0)}},{key:"IsPaused",value:function(){return this._IsPaused()}},{key:"_IsPaused",value:function(){return this.IsReleased()?!1:this.IsScheduled()?!1:this._IsPlaying()?!1:this.IsComplete()?!1:!0}},{key:"SetScheduled",value:function(e){this._isScheduled=e}},{key:"IsScheduled",value:function(){return this._isScheduled}},{key:"SetComplete",value:function(e){this._complete=e
|
||
var t=this.GetTime();(0>=t||t>=this.GetTotalTime())&&(this._complete=!0)}},{key:"IsComplete",value:function(){return this._complete}},{key:"IsReleased",value:function(){return this._released}},{key:"SetMarkedForRemoval",value:function(e){this._markedForRemoval=e}},{key:"IsMarkedForRemoval",value:function(){return this._markedForRemoval}},{key:"SetImplicitPause",value:function(e){this._implicitPause=e}},{key:"IsImplicitPause",value:function(){return this._implicitPause}},{key:"SetIsTemplate",value:function(e){this._isTemplate=!!e}},{key:"IsTemplate",value:function(){return this._isTemplate}},{key:"InitialStateSet",value:function(){return this._initialStateSet}},{key:"GetTime",value:function(){return this._playheadTime.Get()}},{key:"SetTime",value:function(e){var t=this.GetTime()
|
||
this._SetTime(e),this.SetComplete(!1),this.IsComplete()||this.SetImplicitPause(!0),(this._IsPlaying()||this.IsScheduled()||!this._initialStateSet)&&(this._IsPlaying()||this.IsScheduled()||this._initialStateSet?this._IsPlaying()?this.Stop():this.IsScheduled()&&(this._timelineManager.DeScheduleTimeline(this),this.SetInitialStateFromSetTime()):this.SetInitialStateFromSetTime())
|
||
var n=this._Interpolate(e,!1,!0,!0,t)
|
||
n&&this.GetRuntime().UpdateRender(),this._OnSetTime()}},{key:"_SetTime",value:function(e){0>e?this._playheadTime.Set(0):e>=this.GetTotalTime()?this._playheadTime.Set(this.GetTotalTime()):this._playheadTime.Set(e)}},{key:"_OnSetTime",value:function(){_C66.Plugins.Timeline&&this.constructor===_C66.TimelineState&&(_C66.Plugins.Timeline.Cnds.SetTriggerTimeline(this),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimeSet),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimeSetByName),this._timelineManager.Trigger(_C66.Plugins.Timeline.Cnds.OnTimeSetByTags),_C66.Plugins.Timeline.Cnds.SetTriggerTimeline(null))}},{key:"_CanResume",value:function(){if(this.GetLoop())return!0
|
||
if(this.GetPingPong()&&this._pingPongState===PING_PONG_END){if(this.IsForwardPlayBack()){if(this.GetTime()>=this.GetTotalTime())return!1}else if(this.GetTime()<=0)return!1}else if(!this.GetLoop()&&!this.GetPingPong())if(this.IsForwardPlayBack()){if(this.GetTime()>=this.GetTotalTime())return!1}else if(this.GetTime()<=0)return!1
|
||
return!0}},{key:"Resume",value:function(){this.IsReleased()||this._CanResume()&&this.Play(!0)}},{key:"Play",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1
|
||
return this.IsReleased()?!1:this.IsScheduled()?!1:this._IsPlaying()&&this.IsCompletedTick()?this._SchedulePlayingTimeline():this._IsPlaying()?!1:this.IsComplete()||e||this.IsImplicitPause()?this._ScheduleStoppedTimeline():!1}},{key:"_SchedulePlayingTimeline",value:function(){return this.SetImplicitPause(!1),this._timelineManager.RemovePlayingTimeline(this),this._timelineManager.ScheduleTimeline(this),this.GetPlayPromise(),!0}},{key:"_ScheduleStoppedTimeline",value:function(){return this.SetImplicitPause(!1),this._timelineManager.ScheduleTimeline(this),this.GetPlayPromise(),!0}},{key:"Stop",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1
|
||
this.IsReleased()||(this.SetComplete(e),this._timelineManager.CompleteTimeline(this),this.IsComplete()&&this.ResolvePlayPromise())}},{key:"Reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!0,t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1
|
||
if(!this.IsReleased()){if(!this._IsPlaying()&&this.IsScheduled())return this._timelineManager.DeScheduleTimeline(this)
|
||
if(!this.IsComplete()){this.Stop(!0),this.IsForwardPlayBack()?this._SetTime(0):this._SetTime(this.GetTotalTime())
|
||
var n,r=this.GetTime()
|
||
n=t?this._InterpolateBeforeChangeLayout(r):this._Interpolate(r,!1,!1,!0),e&&this._OnSetTime(),n&&e&&this.GetRuntime().UpdateRender()}}}},{key:"ResetBeforeChangeLayout",value:function(){this.Reset(!1,!0)}},{key:"_InterpolateBeforeChangeLayout",value:function(e){this._Interpolate(e,!1,!1,!0,NaN,!1,!0)}},{key:"_OnBeforeChangeLayout",value:function(){return this.IsReleased()?!0:this.HasValidGlobalTracks()?!1:(this._timelineManager.CompleteTimeline(this),this.ResetBeforeChangeLayout(),!0)}},{key:"SetInitialStateFromSetTime",value:function(){this.SetInitialState(!0)}},{key:"SetInitialState",value:function(e){if(!this.IsMarkedForRemoval())if(e){this._initialStateSet=!0,this._firstTick=!0
|
||
var t,n=_createForOfIteratorHelper(this._tracks)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.SetInitialState()}}catch(a){n.e(a)}finally{n.f()}}else if(this.SetPlaying(!0),this.SetScheduled(!1),this.OnStarted(),this.IsComplete()){this._completedTick=-1,this._pingPongState=PING_PONG_BEGIN,this._currentRepeatCount=1,this._complete=!1,this._finishedTriggers=!1,this._initialStateSet=!0,this._firstTick=!0,this.IsForwardPlayBack()?this._SetTime(0):this._SetTime(this.GetTotalTime())
|
||
var i,s=_createForOfIteratorHelper(this._tracks)
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
o.SetInitialState()}}catch(a){s.e(a)}finally{s.f()}}else{this._firstTick=!0
|
||
var u,l=_createForOfIteratorHelper(this._tracks)
|
||
try{for(l.s();!(u=l.n()).done;){var c=u.value
|
||
c.SetResumeState()}}catch(a){l.e(a)}finally{l.f()}}}},{key:"Tick",value:function(e,t){if(0!==e||0!==this._lastDelta){this._lastDelta=e
|
||
var n=this.GetTime(),r=e*t*this._playbackRate
|
||
this._SetTime(n+r)
|
||
var a
|
||
if(this.GetLoop()||this.GetPingPong()?this.GetLoop()&&!this.GetPingPong()?a=this._LoopCompleteCheck():!this.GetLoop()&&this.GetPingPong()?a=this._PingPongCompleteCheck():this.GetLoop()&&this.GetPingPong()&&(a=this._LoopPingPongCompleteCheck()):a=this._SimpleCompleteCheck(),a){var i,s=_createForOfIteratorHelper(this._tracks)
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
o.SetEndState()}}catch(u){s.e(u)}finally{s.f()}return this.Stop(!0),this.OnCompleted(),!0}return this._Interpolate(this.GetTime(),!0,!1,!1,n,!0)}}},{key:"_Interpolate",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:!1,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:!1,i=arguments.length>4&&void 0!==arguments[4]?arguments[4]:NaN,s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:!1,o=arguments.length>6&&void 0!==arguments[6]?arguments[6]:!1,u=!1,l=_createForOfIteratorHelper(this._tracks)
|
||
try{for(l.s();!(t=l.n()).done;){var c=t.value
|
||
c.BeforeInterpolate()}}catch(h){l.e(h)}finally{l.f()}var _,f=_createForOfIteratorHelper(this._tracks)
|
||
try{for(f.s();!(_=f.n()).done;){var d=_.value,p=e
|
||
if("number"==typeof i){var v=this.GetTime(),m=v-d.GetStartOffset(),y=i-d.GetStartOffset()
|
||
0>m&&y>0&&(p=d.GetStartOffset(),this._SetTime(p))}var g=d.Interpolate(p,n,r,a,this._firstTick,o)
|
||
!u&&g&&(u=!0)}}catch(h){f.e(h)}finally{f.f()}var C,S=_createForOfIteratorHelper(this._tracks)
|
||
try{for(S.s();!(C=S.n()).done;){var k=C.value
|
||
k.AfterInterpolate()}}catch(h){S.e(h)}finally{S.f()}return this._firstTick&&s&&(this._firstTick=!1),u}},{key:"_SimpleCompleteCheck",value:function(){if(this.IsForwardPlayBack()){if(this.GetTime()>=this.GetTotalTime()){if(!(this._currentRepeatCount<this.GetRepeatCount()))return this._SetTime(this.GetTotalTime()),!0
|
||
this._currentRepeatCount++,this._SetTime(0)}}else if(this.GetTime()<=0){if(!(this._currentRepeatCount<this.GetRepeatCount()))return this._SetTime(0),!0
|
||
this._currentRepeatCount++,this._SetTime(this.GetTotalTime())}return!1}},{key:"_LoopCompleteCheck",value:function(){return this.IsForwardPlayBack()?this.GetTime()>=this.GetTotalTime()&&this._SetTime(0):this.GetTime()<=0&&this._SetTime(this.GetTotalTime()),!1}},{key:"_PingPongCompleteCheck",value:function(){if(this.IsForwardPlayBack()){if(this.GetTime()>=this.GetTotalTime())if(this._SetTime(this.GetTotalTime()),this.SetPlaybackRate(-1*this.GetPlaybackRate()),this._pingPongState===PING_PONG_END){if(!(this._currentRepeatCount<this.GetRepeatCount()))return!0
|
||
this._currentRepeatCount++,this._pingPongState=PING_PONG_BEGIN}else this._pingPongState===PING_PONG_BEGIN&&(this._pingPongState=PING_PONG_END)}else if(this.GetTime()<=0)if(this._SetTime(0),this.SetPlaybackRate(-1*this.GetPlaybackRate()),this._pingPongState===PING_PONG_END){if(!(this._currentRepeatCount<this.GetRepeatCount()))return!0
|
||
this._currentRepeatCount++,this._pingPongState=PING_PONG_BEGIN}else this._pingPongState===PING_PONG_BEGIN&&(this._pingPongState=PING_PONG_END)
|
||
return!1}},{key:"_LoopPingPongCompleteCheck",value:function(){return this.IsForwardPlayBack()?this.GetTime()>=this.GetTotalTime()&&(this._SetTime(this.GetTotalTime()),this.SetPlaybackRate(-1*this.GetPlaybackRate())):this.GetTime()<=0&&(this._SetTime(0),this.SetPlaybackRate(-1*this.GetPlaybackRate())),!1}},{key:"AddTrack",value:function(){var e=this._timelineDataItem.GetTrackData().AddEmptyTrackDataItem(),t=_C66.TrackState.Create(this,e)
|
||
return this._tracks.push(t),t}},{key:"CleanCaches",value:function(){var e,t=_createForOfIteratorHelper(this._tracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.CleanCaches()}}catch(r){t.e(r)}finally{t.f()}}},{key:"ClearTrackInstances",value:function(){var e,t=_createForOfIteratorHelper(this._tracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.ClearInstance()}}catch(r){t.e(r)}finally{t.f()}}},{key:"SetTrackInstance",value:function(e,t){if(t){var n,r=_createForOfIteratorHelper(this._tracks)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(e){if(a.GetId()!==e)continue
|
||
a.SetInstance(t),this._timelineManager.SetTimelineObjectClassToMap(t.GetObjectClass(),this)
|
||
break}if(!a.HasInstance()){a.SetInstance(t),this._timelineManager.SetTimelineObjectClassToMap(t.GetObjectClass(),this)
|
||
break}}}catch(i){r.e(i)}finally{r.f()}}}},{key:"HasTrackInstance",value:function(e,t){var n,r=_createForOfIteratorHelper(this._tracks)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(t){if(t===a.GetId()&&e===a.GetInstance())return!0}else if(e===a.GetInstance())return!0}}catch(i){r.e(i)}finally{r.f()}return!1}},{key:"HasValidTracks",value:function(){return this._tracks.some(function(e){return e.CanInstanceBeValid()})}},{key:"HasValidGlobalTracks",value:function(){return this._tracks.some(function(e){if(!e.CanInstanceBeValid())return!1
|
||
var t=e.GetObjectClass()
|
||
return t?t.IsGlobal():!1})}},{key:"GetPropertyTrack",value:function(e){var t,n=_createForOfIteratorHelper(this.GetTracks())
|
||
try{for(n.s();!(t=n.n()).done;){var r,a=t.value,i=_createForOfIteratorHelper(a.GetPropertyTracks())
|
||
try{for(i.s();!(r=i.n()).done;){var s=r.value
|
||
if(s.GetPropertyName()===e)return s}}catch(o){i.e(o)}finally{i.f()}}}catch(o){n.e(o)}finally{n.f()}}},{key:"GetKeyframeWithTags",value:function(e){var t=e?e.split(" "):[],n=new Set(t.map(function(e){return e.toLowerCase().trim()}))
|
||
t=_toConsumableArray(n.values())
|
||
var r,a=_createForOfIteratorHelper(this.GetTracks())
|
||
try{for(a.s();!(r=a.n()).done;){var i,s=r.value,o=_createForOfIteratorHelper(s.GetKeyframeDataItems())
|
||
try{var u=function(){var e=i.value,n=t.every(function(t){return e.HasTag(t)})
|
||
return n?{v:e}:void 0}
|
||
for(o.s();!(i=o.n()).done;){var l=u()
|
||
if("object"===_typeof(l))return l.v}}catch(c){o.e(c)}finally{o.f()}}}catch(c){a.e(c)}finally{a.f()}}},{key:"GetObjectClasses",value:function(){var e,t=[],n=_createForOfIteratorHelper(this.GetTracks())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
t.push(r.GetObjectClass())}}catch(a){n.e(a)}finally{n.f()}return t.filter(function(e){return e})}},{key:"_SaveToJson",value:function(){return{tracksJson:this._SaveTracksToJson(),name:this._name,playheadTime:this.GetTime(),playbackRate:this._playbackRate,pingPongState:this._pingPongState,currentRepeatCount:this._currentRepeatCount,isPlaying:this._isPlaying,isScheduled:this._isScheduled,initialStateSet:this._initialStateSet,finishedTriggers:this._finishedTriggers,complete:this._complete,released:this._released,markedForRemoval:this._markedForRemoval,completedTick:this._completedTick,implicitPause:this._implicitPause,isTemplate:this._isTemplate,tags:this._tags.join(" "),stringTags:this._stringTags,tagsChanged:this._tagsChanged,firstTick:this._firstTick}}},{key:"_LoadFromJson",value:function(e){e&&(this._LoadTracksFromJson(e.tracksJson),this._name=e.name,this._playheadTime.Set(e.playheadTime),this._playbackRate=e.playbackRate,this._pingPongState=e.pingPongState,this._currentRepeatCount=e.currentRepeatCount,this._isPlaying=!!e.isPlaying,this._isScheduled=!!e.isScheduled,this._initialStateSet=!!e.initialStateSet,this._finishedTriggers=e.hasOwnProperty("finishedTriggers")?!!e.finishedTriggers:!1,this._complete=!!e.complete,this._released=!!e.released,this._markedForRemoval=!!e.markedForRemoval,this._completedTick=e.completedTick,this._implicitPause=!!e.implicitPause,this._isTemplate=!!e.isTemplate,this._tags=e.tags.split(" "),this._stringTags=e.stringTags,this._tagsChanged=!!e.tagsChanged,this._firstTick=!!e.firstTick)}},{key:"_SaveTracksToJson",value:function(){return this._tracks.map(function(e){return e._SaveToJson()})}},{key:"_LoadTracksFromJson",value:function(e){var t=this
|
||
e.forEach(function(e,n){var r=t._tracks[n]
|
||
r._LoadFromJson(e)}),this._tracks.filter(function(e){return e.CanInstanceBeValid()})}}],[{key:"CreateInitial",value:function(e,t){var n=t.GetTimelineDataManager(),r=n.GetNameId(),a=n.Get(e[r]),i=_C66.New(_C66.TimelineState,e[r],a,t)
|
||
return i.SetIsTemplate(!0),i}},{key:"CreateFromTemplate",value:function(e,t,n){return _C66.New(_C66.TimelineState,e,t,n)}},{key:"WORLD_INSTANCE_BOX_CHANGE",get:function(){return 1}},{key:"LAYOUT_RENDER_CHANGE",get:function(){return _C66.nextHighestPowerOfTwo(1)}},{key:"_HasTag",value:function(e){var t=this.GetTags()
|
||
return""===e?1===t.length&&""===t[0]:t.includes(e)}},{key:"_GetTagArray",value:function(e){return _C66.IsArray(e)?e.slice(0):_C66.IsString(e)?e.split(" "):void 0}}]),t}(_C66.DefendedBase)
|
||
var _C67=self.C3
|
||
_C67.TrackState=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this),a._timeline=e,a._trackDataItem=r,a._trackData=r.GetTrackData(),a._instanceUid=NaN,a._objectClassIndex=NaN,a._instance=null,a._worldInfo=null,a._isNested=r.GetStartOffset()>0,a._initialStateOfNestedSet=!1,a._endStateOfNestedSet=!1,a._lastKeyframeDataItem=null,a._keyframeDataItems=a._trackDataItem.GetKeyframeData().GetKeyframeDataItemArray(),a._propertyTracks=[]
|
||
var i,s=_createForOfIteratorHelper(a._trackDataItem.GetPropertyTrackData().propertyTrackDataItems())
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
a._propertyTracks.push(_C67.PropertyTrackState.Create(_assertThisInitialized(a),o))}}catch(u){s.e(u)}finally{s.f()}return a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._keyframeDataItems=null
|
||
var e,t=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C67.clearArray(this._propertyTracks),this._propertyTracks=null,this._timeline=null,this._instance=null,this._worldInfo=null,this._trackDataItem=null,this._lastKeyframeDataItem=null}},{key:"CleanCaches",value:function(){var e,t=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.CleanCaches()}}catch(r){t.e(r)}finally{t.f()}this._instance=null,this._worldInfo=null}},{key:"GetTimeline",value:function(){return this._timeline}},{key:"GetRuntime",value:function(){return this._timeline.GetRuntime()}},{key:"GetKeyframeDataItems",value:function(){return this._keyframeDataItems?this._keyframeDataItems:(this._keyframeDataItems=this._trackDataItem.GetKeyframeData().GetKeyframeDataItemArray(),this._keyframeDataItems)}},{key:"GetPropertyTracks",value:function(){return this._propertyTracks}},{key:"GetPropertyTrack",value:function(e){var t,n=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.GetPropertyName()===e)return r}}catch(a){n.e(a)}finally{n.f()}}},{key:"MaybeGetInstance",value:function(){this._instance||this.GetInstance()}},{key:"IsInstanceValid",value:function(){return this._instance?!this._instance.IsDestroyed():!1}},{key:"CanInstanceBeValid",value:function(){var e=this.GetInstanceUID(),t=this.GetRuntime().GetInstanceByUID(e)
|
||
return t?!t.IsDestroyed():!1}},{key:"GetObjectClass",value:function(){var e=this.GetObjectClassIndex()
|
||
if(-1!==e)return this.GetRuntime().GetObjectClassByIndex(e)}},{key:"ClearInstance",value:function(){this._instance=null,this._instanceUid=-1,this._worldInfo=null,this._objectClassIndex=-1}},{key:"HasInstance",value:function(){return!!this._instance}},{key:"GetInstance",value:function(){if(this._instance&&this.IsInstanceValid())return this._instance
|
||
var e=this.GetInstanceUID()
|
||
return this._instance=this.GetRuntime().GetInstanceByUID(e),this._instance}},{key:"SetInstance",value:function(e){if(this._instance!==e){this.CleanCaches(),this._instance=e,this._objectClassIndex=e.GetObjectClass().GetIndex(),this._instanceUid=e.GetUID(),this._worldInfo=e.GetWorldInfo()
|
||
var t,n=_createForOfIteratorHelper(this.propertyTrackItems())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=r.propertyTrack,i=r.sourceAdapter,s=a.GetSourceAdapterId()
|
||
switch(s){case"instance-variable":var o=(i.GetEditorIndex(),e.GetObjectClass()),u=o.GetInstanceVariableIndexByName(r.name),l=o.GetInstanceVariableName(u),c=o.GetInstanceVariableType(u)
|
||
l===r.name&&c===r.type&&i.UpdateInstanceVariableIndex(u)
|
||
break
|
||
case"behavior":var h=r.behaviorType,_=this.GetObjectClass(),f=e.GetObjectClass(),d=i.GetBehaviorType(f)
|
||
if(h&&d){var p=h.GetName()
|
||
_.GetBehaviorIndexByName(p),f.GetBehaviorIndexByName(p),i.GetEditorIndex()
|
||
i.UpdateBehaviorTypeSid(d.GetSID())}}}}catch(v){n.e(v)}finally{n.f()}}}},{key:"propertyTrackItems",value:_regeneratorRuntime().mark(function r(){var e,t,n,a,i,s,o,u,l,c
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(this._propertyTracks),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=30
|
||
break}n=t.value,a=n.GetSourceAdapter(),i=this.GetObjectClass(),s={propertyTrack:n,sourceAdapter:a},r.t0=n.GetSourceAdapterId(),r.next="world-instance"===r.t0?11:"instance-variable"===r.t0?13:"effect"===r.t0?17:"behavior"===r.t0?21:"plugin"===r.t0?24:26
|
||
break
|
||
case 11:return s.property=n.GetPropertyName(),r.abrupt("break",26)
|
||
case 13:return o=a.GetEditorIndex(),s.name=i.GetInstanceVariableName(o),s.type=i.GetInstanceVariableType(o),r.abrupt("break",26)
|
||
case 17:return u=i.GetEffectList(),l=a.GetEffectType(u),s.effectType=l,r.abrupt("break",26)
|
||
case 21:return c=a.GetBehaviorType(i),s.behaviorType=c,r.abrupt("break",26)
|
||
case 24:return s.plugin=i.GetPlugin(),r.abrupt("break",26)
|
||
case 26:return r.next=28,s
|
||
case 28:r.next=3
|
||
break
|
||
case 30:r.next=35
|
||
break
|
||
case 32:r.prev=32,r.t1=r["catch"](1),e.e(r.t1)
|
||
case 35:return r.prev=35,e.f(),r.finish(35)
|
||
case 38:case"end":return r.stop()}},r,this,[[1,32,35,38]])})},{key:"GetWorldInfo",value:function(){if(this._worldInfo&&this.IsInstanceValid())return this._worldInfo
|
||
var e=this.GetInstance()
|
||
return e&&(this._worldInfo=e.GetWorldInfo()),this._worldInfo}},{key:"GetTrackDataItem",value:function(){return this._trackDataItem}},{key:"GetInstanceUID",value:function(){return this._instanceUid?this._instanceUid:this._trackDataItem.GetInstanceUID()}},{key:"SetInstanceUID",value:function(e){this._trackDataItem.SetInstanceUID(e)}},{key:"GetInterpolationMode",value:function(){return this._trackDataItem.GetInterpolationMode()}},{key:"SetInterpolationMode",value:function(e){this._trackDataItem.SetInterpolationMode(e)}},{key:"GetResultMode",value:function(){return this._trackDataItem.GetResultMode()}},{key:"GetId",value:function(){return this._trackDataItem.GetId()}},{key:"GetStartOffset",value:function(){return this._trackDataItem.GetStartOffset()}},{key:"GetLocalTotalTime",value:function(){return this._trackDataItem.GetLocalTotalTime()}},{key:"SetResultMode",value:function(e){this._trackDataItem.SetResultMode(e)}},{key:"SetEase",value:function(e){var t,n=_createForOfIteratorHelper(this.GetKeyframeDataItems())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.SetEase(e)}}catch(a){n.e(a)}finally{n.f()}var i,s=_createForOfIteratorHelper(this.GetPropertyTracks())
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
o.SetEase(e)}}catch(a){s.e(a)}finally{s.f()}}},{key:"GetEnable",value:function(){return this._trackDataItem.GetEnable()}},{key:"SetEnable",value:function(e){this._trackDataItem.SetEnable(e)}},{key:"GetObjectClassIndex",value:function(){return isNaN(this._objectClassIndex)?this._trackDataItem.GetObjectClassIndex():this._objectClassIndex}},{key:"SetObjectClassIndex",value:function(e){this._trackDataItem.SetObjectClassIndex(e)}},{key:"SetOriginalWidth",value:function(e){this._trackDataItem.SetOriginalWidth(e)}},{key:"GetOriginalWidth",value:function(){return this._trackDataItem.GetOriginalWidth()}},{key:"SetOriginalHeight",value:function(e){this._trackDataItem.SetOriginalHeight(e)}},{key:"GetOriginalHeight",value:function(){return this._trackDataItem.GetOriginalHeight()}},{key:"SetInitialState",value:function(){if(this.MaybeGetInstance(),this.IsInstanceValid()){var e,t=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.SetInitialState()}}catch(r){t.e(r)}finally{t.f()}var a=this.GetTimeline(),i=a.IsForwardPlayBack(),s=i?0:this.GetLocalTotalTime()
|
||
this._lastKeyframeDataItem=this.GetLastKeyFrameBeforeTime(s),this._initialStateOfNestedSet=!1,this._endStateOfNestedSet=!1,this.Interpolate(s)}}},{key:"SetResumeState",value:function(){if(this.MaybeGetInstance(),this.IsInstanceValid()){var e=(this._timeline.IsForwardPlayBack(),this._timeline.GetTime()-this.GetStartOffset())
|
||
this._lastKeyframeDataItem=this.GetLastKeyFrameBeforeTime(e)
|
||
var t,n=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.SetResumeState()}}catch(a){n.e(a)}finally{n.f()}}}},{key:"SetEndState",value:function(){if(!this.GetTimeline().IsComplete()&&(this.MaybeGetInstance(),this.IsInstanceValid()&&!this._isNested)){var e=this._timeline.GetTime(),t=this.GetStartOffset()+this.GetLocalTotalTime()
|
||
e>=t?this.Interpolate(this.GetLocalTotalTime(),!0,!1,!0):0>=e&&this.Interpolate(0,!0,!1,!0)}}},{key:"BeforeInterpolate",value:function(){var e,t=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.BeforeInterpolate()}}catch(r){t.e(r)}finally{t.f()}}},{key:"Interpolate",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:!1,r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:!1,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:!1,i=arguments.length>5&&void 0!==arguments[5]?arguments[5]:!1
|
||
if(this.MaybeGetInstance(),!this.IsInstanceValid())return!1
|
||
if(i&&this.GetObjectClass().IsGlobal())return!1
|
||
if(e-=this.GetStartOffset(),0>e)return!1
|
||
this.MaybeSetInitialStateOfNestedTrack(e,t),this.MaybeTriggerKeyframeReachedConditions(e,t,a)
|
||
var s,o=!1,u=!1,l=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(l.s();!(s=l.n()).done;){var c=s.value,h=c.Interpolate(e,n,!1,r)
|
||
o||0===(h&_C67.TimelineState.WORLD_INSTANCE_BOX_CHANGE)||(o=!0),u||0===(h&_C67.TimelineState.LAYOUT_RENDER_CHANGE)||(u=!0)}}catch(_){l.e(_)}finally{l.f()}if(this.MaybeSetEndStateOfNestedTrack(e,t),o){var f=this.GetWorldInfo()
|
||
f&&f.SetBboxChanged()}return u}},{key:"AfterInterpolate",value:function(){var e,t=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.AfterInterpolate()}}catch(r){t.e(r)}finally{t.f()}}},{key:"MaybeSetInitialStateOfNestedTrack",value:function(e,t){if(t&&this._isNested&&!this._initialStateOfNestedSet){var n=this.GetTimeline()
|
||
if(n.IsForwardPlayBack()){if(0>e)return
|
||
var r,a=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
i.Interpolate(0,!1,!1,!0)}}catch(s){a.e(s)}finally{a.f()}}else{if(e>this.GetLocalTotalTime())return
|
||
var o,u=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value
|
||
l.Interpolate(this.GetLocalTotalTime(),!1,!1,!0)}}catch(s){u.e(s)}finally{u.f()}}var c,h=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(h.s();!(c=h.n()).done;){var _=c.value
|
||
_.SetInitialState()}}catch(s){h.e(s)}finally{h.f()}this._initialStateOfNestedSet=!0}}},{key:"MaybeSetEndStateOfNestedTrack",value:function(e,t){if(t&&this._isNested&&!this._endStateOfNestedSet){var n=this.GetTimeline()
|
||
if(n.IsForwardPlayBack()){if(e>=this.GetLocalTotalTime()){var r,a=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
i.Interpolate(this.GetLocalTotalTime(),!1,!1,!0)}}catch(s){a.e(s)}finally{a.f()}this._endStateOfNestedSet=!0}}else if(0>=e){var o,u=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value
|
||
l.Interpolate(0,!1,!1,!0)}}catch(s){u.e(s)}finally{u.f()}this._endStateOfNestedSet=!0}}}},{key:"MaybeTriggerKeyframeReachedConditions",value:function(e,t,n){if(!n&&t){var r=this.GetLastKeyFrameBeforeTime(e)
|
||
return r!==this._lastKeyframeDataItem&&this.OnKeyframeReached(r),this._lastKeyframeDataItem=r,r}}},{key:"GetLastKeyFrameBeforeTime",value:function(e){var t=this.GetTimeline(),n=this._trackData.GetKeyFrameDataItemAtTime(e,this._trackDataItem)
|
||
return n?n:t.IsForwardPlayBack()?this._trackData.GetFirstKeyFrameDataItemLowerOrEqualThan(e,this._trackDataItem):this._trackData.GetFirstKeyFrameDataItemHigherOrEqualThan(e,this._trackDataItem)}},{key:"OnKeyframeReached",value:function(e){if(_C67.Plugins.Timeline&&this.GetTimeline().constructor===_C67.TimelineState){var t=this.GetTimeline()
|
||
_C67.Plugins.Timeline.Cnds.SetTriggerTimeline(t),_C67.Plugins.Timeline.Cnds.SetTriggerKeyframe(e)
|
||
var n=t.GetTimelineManager()
|
||
n.Trigger(_C67.Plugins.Timeline.Cnds.OnAnyKeyframeReached),n.Trigger(_C67.Plugins.Timeline.Cnds.OnKeyframeReached),_C67.Plugins.Timeline.Cnds.SetTriggerTimeline(null),_C67.Plugins.Timeline.Cnds.SetTriggerKeyframe(null)}}},{key:"AddKeyframe",value:function(){var e=this._trackDataItem.GetKeyframeData(),t=e.AddEmptyKeyframeDataItem()
|
||
return t}},{key:"AddPropertyTrack",value:function(){var e=this._trackDataItem.GetPropertyTrackData(),t=e.AddEmptyPropertyTrackDataItem(),n=_C67.PropertyTrackState.Create(this,t)
|
||
return this._propertyTracks.push(n),n}},{key:"DeleteKeyframes",value:function(e){var t=this._trackDataItem.GetKeyframeData()
|
||
t.DeleteKeyframeDataItems(e)}},{key:"DeletePropertyKeyframes",value:function(e){var t,n=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.DeletePropertyKeyframes(e)}}catch(a){n.e(a)}finally{n.f()}}},{key:"SaveState",value:function(){var e,t=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.SaveState()}}catch(r){t.e(r)}finally{t.f()}}},{key:"CompareInitialStateWithCurrent",value:function(){if(this.MaybeGetInstance(),this.IsInstanceValid()){var e,t=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.CompareInitialStateWithCurrent()}}catch(r){t.e(r)}finally{t.f()}}}},{key:"CompareSaveStateWithCurrent",value:function(){if(this.MaybeGetInstance(),this.IsInstanceValid()){var e,t=!1,n=_createForOfIteratorHelper(this._propertyTracks)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value,a=r.CompareSaveStateWithCurrent()
|
||
!t&&a&&(t=!0)}}catch(i){n.e(i)}finally{n.f()}if(t){var s=this.AddKeyframe()
|
||
s.SetTime(this.GetTimeline().GetTime()),s.SetEase("noease"),s.SetEnable(!0),s.SetTags("")}}}},{key:"_SaveToJson",value:function(){var e=this.GetInstance(),t=e?e.GetUID():this.GetInstanceUID()
|
||
return{propertyTracksJson:this._SavePropertyTracksToJson(),lastKeyframeDataItemJson:this._SaveLastKeyframeDataItemToJson(),initialStateOfNestedSet:this._initialStateOfNestedSet,endStateOfNestedSet:this._endStateOfNestedSet,instanceUid:t}}},{key:"_LoadFromJson",value:function(e){e&&(this._LoadPropertyTracksFromJson(e.propertyTracksJson),this._LoadLastKeyframeDataItemFromJson(e.lastKeyframeDataItemJson),this._LoadInstanceFromJson(e.instanceUid),this._initialStateOfNestedSet=!1,e.hasOwnProperty.initialStateOfNestedSet&&(this._initialStateOfNestedSet=e.initialStateOfNestedSet),this._endStateOfNestedSet=!1,e.hasOwnProperty.endStateOfNestedSet&&(this._endStateOfNestedSet=e.endStateOfNestedSet))}},{key:"_SaveLastKeyframeDataItemToJson",value:function(){var e=this._trackDataItem.GetKeyframeData()
|
||
return e.GetKeyframeDataItemIndex(this._lastKeyframeDataItem)}},{key:"_SavePropertyTracksToJson",value:function(){return this._propertyTracks.map(function(e){return e._SaveToJson()})}},{key:"_LoadPropertyTracksFromJson",value:function(e){var t=this
|
||
e.forEach(function(e,n){var r=t._propertyTracks[n]
|
||
r._LoadFromJson(e)})}},{key:"_LoadInstanceFromJson",value:function(e){if(_C67.IsFiniteNumber(e)){var t=this.GetRuntime().GetInstanceByUID(e)
|
||
if(t){var n=this.GetTimeline()
|
||
n.ClearTrackInstances(),n.SetTrackInstance(this._trackDataItem.GetId(),t)}}}},{key:"_LoadLastKeyframeDataItemFromJson",value:function(e){var t=this._trackDataItem.GetKeyframeData()
|
||
this._lastKeyframeDataItem=t.GetKeyframeDataItemFromIndex(e)}}],[{key:"Create",value:function(e,t){return _C67.New(_C67.TrackState,e,t)}}]),t}(_C67.DefendedBase)
|
||
var _C68=self.C3
|
||
_C68.PropertyTrackState=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._track=e,a._propertyTrackDataItem=r,a._propertyTrackData=r.GetPropertyTrackData(),a._sourceAdapter=a.GetSourceAdapter(),a._propertyKeyframeDataItems=a._propertyTrackDataItem.GetPropertyKeyframeData().GetPropertyKeyframeDataItemArray(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._track=null,this._sourceAdapter&&(this._sourceAdapter.Release(),this._sourceAdapter=null),this._propertyKeyframeDataItems=null,this._propertyTrackDataItem=null,this._propertyTrackData=null}},{key:"GetTrack",value:function(){return this._track}},{key:"GetPropertyTrackDataItem",value:function(){return this._propertyTrackDataItem}},{key:"GetPropertyTrackData",value:function(){return this._propertyTrackData}},{key:"GetTimeline",value:function(){return this._track.GetTimeline()}},{key:"GetRuntime",value:function(){return this._track.GetRuntime()}},{key:"GetInstance",value:function(){return this._track.GetInstance()}},{key:"GetSourceAdapter",value:function(){if(this._sourceAdapter)return this._sourceAdapter
|
||
var e,t=this._propertyTrackDataItem.GetSourceAdapterId()
|
||
switch(t){case"behavior":e=new _C68.PropertyTrackState.BehaviorSourceAdapter(this)
|
||
break
|
||
case"effect":e=new _C68.PropertyTrackState.EffectSourceAdapter(this)
|
||
break
|
||
case"instance-variable":e=new _C68.PropertyTrackState.InstanceVariableSourceAdapter(this)
|
||
break
|
||
case"plugin":e=new _C68.PropertyTrackState.PluginSourceAdapter(this)
|
||
break
|
||
case"world-instance":e=new _C68.PropertyTrackState.WorldInstanceSourceAdapter(this)
|
||
break
|
||
case"value":e=new _C68.PropertyTrackState.ValueSourceAdapter(this)}return this._sourceAdapter=e,this._sourceAdapter}},{key:"GetSourceAdapterId",value:function(){return this._propertyTrackDataItem.GetSourceAdapterId()}},{key:"SetSourceAdapterId",value:function(e){this._propertyTrackDataItem.SetSourceAdapterId(e)}},{key:"GetSourceAdapterArgs",value:function(){return this._propertyTrackDataItem.GetSourceAdapterArguments()}},{key:"SetSourceAdapterArgs",value:function(e){this._propertyTrackDataItem.SetSourceAdapterArguments(e)}},{key:"GetSourceAdapterValue",value:function(){return this.GetSourceAdapter().GetValue()}},{key:"GetPropertyName",value:function(){return this._propertyTrackDataItem.GetProperty()}},{key:"SetPropertyName",value:function(e){this._propertyTrackDataItem.SetProperty(e)}},{key:"GetPropertyType",value:function(){return this._propertyTrackDataItem.GetType()}},{key:"SetPropertyType",value:function(e){this._propertyTrackDataItem.SetType(e)}},{key:"GetPropertyKeyframeType",value:function(){return this.GetPropertyTrackData().GetFirstPropertyKeyframeDataItem(this._propertyTrackDataItem).GetType()}},{key:"GetMin",value:function(){return this._propertyTrackDataItem.GetMin()}},{key:"SetMin",value:function(e){this._propertyTrackDataItem.SetMin(e)}},{key:"GetMax",value:function(){return this._propertyTrackDataItem.GetMax()}},{key:"SetMax",value:function(e){this._propertyTrackDataItem.SetMax(e)}},{key:"GetEnable",value:function(){return this._propertyTrackDataItem.GetEnable()}},{key:"SetEnable",value:function(e){this._propertyTrackDataItem.SetEnable(e)}},{key:"GetInterpolationMode",value:function(){return this._propertyTrackDataItem.GetInterpolationMode()}},{key:"SetInterpolationMode",value:function(e){this._propertyTrackDataItem.SetInterpolationMode(e)}},{key:"GetResultMode",value:function(){return this._propertyTrackDataItem.GetResultMode()}},{key:"SetResultMode",value:function(e){this._propertyTrackDataItem.SetResultMode(e)}},{key:"SetEase",value:function(e){var t,n=_createForOfIteratorHelper(this.GetPropertyKeyframeDataItems())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.SetEase(e)}}catch(a){n.e(a)}finally{n.f()}}},{key:"GetPropertyKeyframeDataItems",value:function(){return this._propertyKeyframeDataItems?this._propertyKeyframeDataItems:(this._propertyKeyframeDataItems=this._propertyTrackDataItem.GetPropertyKeyframeData().GetPropertyKeyframeDataItemArray(),this._propertyKeyframeDataItems)}},{key:"GetPropertyKeyframeValues",value:_regeneratorRuntime().mark(function r(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(this.GetPropertyKeyframeDataItems()),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=9
|
||
break}return n=t.value,r.next=7,n.GetValueWithResultMode()
|
||
case 7:r.next=3
|
||
break
|
||
case 9:r.next=14
|
||
break
|
||
case 11:r.prev=11,r.t0=r["catch"](1),e.e(r.t0)
|
||
case 14:return r.prev=14,e.f(),r.finish(14)
|
||
case 17:case"end":return r.stop()}},r,this,[[1,11,14,17]])})},{key:"CleanCaches",value:function(){this.GetSourceAdapter().CleanCaches()}},{key:"GetCurrentState",value:function(){return this.GetSourceAdapter().GetCurrentState()}},{key:"SetInitialState",value:function(){this.GetSourceAdapter().SetInitialState()}},{key:"SetResumeState",value:function(){this.GetSourceAdapter().SetResumeState()}},{key:"BeforeInterpolate",value:function(){this.GetSourceAdapter().BeforeInterpolate()}},{key:"Interpolate",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:!1,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:!1,i=this._propertyTrackDataItem,s=this._propertyTrackData.GetPropertyKeyFrameDataItemAtTime(e,i)
|
||
return s?t=this._propertyTrackData.GetFirstPropertyKeyFrameDataItemHigherThan(e,i):(s=this._propertyTrackData.GetFirstPropertyKeyFrameDataItemLowerOrEqualThan(e,i),t=this._propertyTrackData.GetFirstPropertyKeyFrameDataItemHigherOrEqualThan(e,i)),this.GetSourceAdapter().Interpolate(e,s,t,n,r,a)}},{key:"AfterInterpolate",value:function(){this.GetSourceAdapter().AfterInterpolate()}},{key:"AddPropertyKeyframe",value:function(){var e=this._propertyTrackDataItem.GetPropertyKeyframeData(),t=e.AddEmptyPropertyKeyframeDataItem()
|
||
return t}},{key:"DeletePropertyKeyframes",value:function(e){var t=this._propertyTrackDataItem.GetPropertyKeyframeData()
|
||
t.DeletePropertyKeyframeDataItems(e)}},{key:"SaveState",value:function(){this.GetSourceAdapter().SaveState()}},{key:"CompareInitialStateWithCurrent",value:function(){var e=this.GetSourceAdapter().CompareInitialStateWithCurrent()
|
||
if(e){var t=this._propertyTrackData.GetFirstPropertyKeyframeDataItem(this._propertyTrackDataItem),n=this.GetSourceAdapter().GetCurrentState()
|
||
t.SetAbsoluteValue(n)}}},{key:"CompareSaveStateWithCurrent",value:function(){var e=this.GetSourceAdapter().CompareSaveStateWithCurrent()
|
||
return e&&this.AddPropertyKeyframeAtCurrentTime(),this.GetSourceAdapter().ClearSaveState(),e}},{key:"AddPropertyKeyframeAtCurrentTime",value:function(){var e=this.GetTimeline().GetTime(),t=this.GetSourceAdapter(),n=_C68.PropertyTrackState.GetStartPropertyKeyframeForTime(e,this),r=this.AddPropertyKeyframe()
|
||
r.SetType(n.GetType()),r.SetTime(e),r.SetEase(n.GetEase()),r.SetEnable(!0),r.SetValue(t.GetValueAtTime()),r.SetAbsoluteValue(t.GetCurrentState())}},{key:"_SaveToJson",value:function(){return{sourceAdapterJson:this.GetSourceAdapter()._SaveToJson()}}},{key:"_LoadFromJson",value:function(e){e&&this.GetSourceAdapter()._LoadFromJson(e.sourceAdapterJson)}}],[{key:"Create",value:function(e,t){return _C68.New(_C68.PropertyTrackState,e,t)}},{key:"GetStartPropertyKeyframeForTime",value:function(e,t){var n=t.GetPropertyTrackDataItem(),r=t._propertyTrackData,a=r.GetPropertyKeyFrameDataItemAtTime(e,n)
|
||
return a||(a=r.GetFirstPropertyKeyFrameDataItemLowerOrEqualThan(e,n)),a}},{key:"GetEndPropertyKeyframeForTime",value:function(e,t){var n=t.GetPropertyTrackDataItem(),r=t._propertyTrackData,a=r.GetPropertyKeyFrameDataItemAtTime(e,n)
|
||
return a?r.GetFirstPropertyKeyFrameDataItemHigherThan(e,n):r.GetFirstPropertyKeyFrameDataItemHigherOrEqualThan(e,n)}}]),t}(_C68.DefendedBase)
|
||
var _C69=self.C3,NS=_C69.PropertyTrackState
|
||
NS.PropertySourceAdapter=function(){function e(t){_classCallCheck(this,e),this._propertyTrack=t,this._propertyAdapter=null}return _createClass(e,[{key:"Release",value:function(){this._propertyAdapter&&(this._propertyAdapter.Release(),this._propertyAdapter=null),this._propertyTrack=null}},{key:"GetPropertyTrack",value:function(){return this._propertyTrack}},{key:"CleanCaches",value:function(){this._propertyAdapter&&this._propertyAdapter.CleanCaches()}},{key:"GetPropertyAdapter",value:function(){return this._propertyAdapter?this._propertyAdapter:(this._propertyAdapter=this._CreatePropertyAdapter(),this._propertyAdapter)}},{key:"GetEditorIndex",value:function(){}},{key:"GetIndex",value:function(){return this.GetEditorIndex()}},{key:"GetTarget",value:function(){}},{key:"SetInitialState",value:function(){this.GetPropertyAdapter().SetInitialState()}},{key:"SetResumeState",value:function(){this.GetPropertyAdapter().SetResumeState()}},{key:"BeforeInterpolate",value:function(){this.GetPropertyAdapter().BeforeChangeProperty()}},{key:"Interpolate",value:function(e,t,n,r,a,i){var s=NS.PropertySourceAdapter.GetInterpolateFunc(this._propertyTrack),o=s(e,t,n,this._propertyTrack)
|
||
return a?o:this.GetPropertyAdapter().ChangeProperty(e,o,t,n,r,i)}},{key:"AfterInterpolate",value:function(){this.GetPropertyAdapter().AfterChangeProperty()}},{key:"SaveState",value:function(){this.GetPropertyAdapter().SetSaveState()}},{key:"ClearSaveState",value:function(){this.GetPropertyAdapter().ClearSaveState()}},{key:"GetCurrentState",value:function(){return this.GetPropertyAdapter().GetCurrentState()}},{key:"CompareInitialStateWithCurrent",value:function(){return this.GetPropertyAdapter().CompareInitialStateWithCurrent()}},{key:"CompareSaveStateWithCurrent",value:function(){return this.GetPropertyAdapter().CompareSaveStateWithCurrent()}},{key:"GetValueAtTime",value:function(){return NS.PropertySourceAdapter.GetValueAtTime(this._propertyTrack)}},{key:"_CreatePropertyAdapter",value:function(){var e=this._propertyTrack.GetPropertyType(),t=this._propertyTrack.GetPropertyKeyframeType()
|
||
switch(t){case"combo":case"boolean":case"text":case"string":return new NS.PropertyInterpolationAdapter.NoInterpolationAdapter(this)
|
||
case"numeric":case"number":case"angle":return"combo"===e?new NS.PropertyInterpolationAdapter.NoInterpolationAdapter(this):new NS.PropertyInterpolationAdapter.NumericInterpolationAdapter(this)
|
||
case"color":case"offsetColor":return new NS.PropertyInterpolationAdapter.ColorInterpolationAdapter(this)}}},{key:"_SaveToJson",value:function(){return{propertyAdapterJson:this.GetPropertyAdapter()._SaveToJson()}}},{key:"_LoadFromJson",value:function(e){e&&this.GetPropertyAdapter()._LoadFromJson(e.propertyAdapterJson)}}],[{key:"GetValueAtTime",value:function(e){var t=e.GetTrack(),n=t.GetTimeline().GetTime(),r=NS.GetStartPropertyKeyframeForTime(n,e),a=NS.GetEndPropertyKeyframeForTime(n,e),i=NS.PropertySourceAdapter.GetInterpolateFunc(e)
|
||
return i(n,r,a,e)}},{key:"GetValue",value:function(e,t,n){var r=e.GetResultMode()
|
||
switch("combo"===e.GetPropertyType()&&(r="absolute"),r){case"relative":return t+n
|
||
case"absolute":return n}}},{key:"GetInterpolateFunc",value:function(e){var t=e.GetPropertyKeyframeType()
|
||
switch(t){case"numeric":return NS.NumericTypeAdapter.Interpolate
|
||
case"angle":return NS.AngleTypeAdapter.Interpolate
|
||
case"boolean":return NS.BooleanTypeAdapter.Interpolate
|
||
case"color":return NS.ColorTypeAdapter.Interpolate
|
||
case"text":return NS.TextTypeAdapter.Interpolate}}},{key:"GetWillChangeFunc",value:function(e){var t=e.GetPropertyKeyframeType()
|
||
switch(t){case"numeric":return NS.NumericTypeAdapter.WillChange
|
||
case"angle":return NS.AngleTypeAdapter.WillChange
|
||
case"boolean":return NS.BooleanTypeAdapter.WillChange
|
||
case"color":return NS.ColorTypeAdapter.WillChange
|
||
case"text":return NS.TextTypeAdapter.WillChange}}}]),e}()
|
||
var _C70=self.C3,WorldInstanceSourceAdapter=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t)}(_C70.PropertyTrackState.PropertySourceAdapter)
|
||
_C70.PropertyTrackState.WorldInstanceSourceAdapter=WorldInstanceSourceAdapter
|
||
var _C71=self.C3,INDEX=0,InstanceVariableSourceAdapter=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._updatedIndex=NaN,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetEditorIndex",value:function(){return this._propertyTrack.GetPropertyTrackDataItem().GetSourceAdapterArguments()[INDEX]}},{key:"GetIndex",value:function(){return this._updatedIndex?this._updatedIndex:_get(_getPrototypeOf(t.prototype),"GetIndex",this).call(this)}},{key:"GetTarget",value:function(){return this._propertyTrack.GetTrack().GetInstance()}},{key:"UpdateInstanceVariableIndex",value:function(e){var t=this._propertyTrack.GetPropertyTrackDataItem().GetSourceAdapterArguments()[INDEX]
|
||
t!==e&&(this._updatedIndex=e)}},{key:"Interpolate",value:function(e,n,r,a,i,s){return this.GetPropertyAdapter().CanChange(n.GetValue())?_get(_getPrototypeOf(t.prototype),"Interpolate",this).call(this,e,n,r,a,i,s):void 0}},{key:"_SaveToJson",value:function(){return Object.assign(_get(_getPrototypeOf(t.prototype),"_SaveToJson",this).call(this),{index:this._updatedIndex})}},{key:"_LoadFromJson",value:function(e){e&&(_get(_getPrototypeOf(t.prototype),"_LoadFromJson",this).call(this,e),this._updatedIndex=e.index)}}]),t}(_C71.PropertyTrackState.PropertySourceAdapter)
|
||
_C71.PropertyTrackState.InstanceVariableSourceAdapter=InstanceVariableSourceAdapter
|
||
var _C72=self.C3,SID=0,_INDEX=1,NAME=2,BehaviorSourceAdapter=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._sid=NaN,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetEditorIndex",value:function(){var e=this._propertyTrack.GetPropertyTrackDataItem()
|
||
return e.GetSourceAdapterArguments()[_INDEX]}},{key:"GetTarget",value:function(){var e=this._propertyTrack.GetPropertyTrackDataItem(),t=this._propertyTrack.GetTrack(),n=this._sid?this._sid:e.GetSourceAdapterArguments()[SID],r=t.GetInstance(),a=r.GetBehaviorIndexBySID(n),i=r.GetBehaviorInstances()[a]
|
||
return i.GetSdkInstance()}},{key:"GetBehaviorType",value:function(e){var t=this._propertyTrack.GetPropertyTrackDataItem(),n=t.GetSourceAdapterArguments()[NAME]
|
||
return e.GetBehaviorTypeByName(n)}},{key:"UpdateBehaviorTypeSid",value:function(e){var t=this._propertyTrack.GetPropertyTrackDataItem()
|
||
t.GetSourceAdapterArguments()[SID]!==e&&(this._sid=e)}},{key:"Interpolate",value:function(e,n,r,a,i,s){var o=this._propertyTrack.GetTrack(),u=o.GetInstance()
|
||
return this.GetBehaviorType(u.GetObjectClass())?_get(_getPrototypeOf(t.prototype),"Interpolate",this).call(this,e,n,r,a,i,s):void 0}},{key:"_SaveToJson",value:function(){return Object.assign(_get(_getPrototypeOf(t.prototype),"_SaveToJson",this).call(this),{sid:this._sid})}},{key:"_LoadFromJson",value:function(e){e&&(_get(_getPrototypeOf(t.prototype),"_LoadFromJson",this).call(this,e),this._sid=e.sid)}}]),t}(_C72.PropertyTrackState.PropertySourceAdapter)
|
||
_C72.PropertyTrackState.BehaviorSourceAdapter=BehaviorSourceAdapter
|
||
var _C73=self.C3,_NAME=0,_INDEX2=1,EffectSourceAdapter=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetEditorIndex",value:function(){return this._propertyTrack.GetPropertyTrackDataItem().GetSourceAdapterArguments()[_INDEX2]}},{key:"GetTarget",value:function(){var e=this._propertyTrack,t=e.GetTrack(),n=t.GetWorldInfo(),r=n.GetInstanceEffectList(),a=r.GetEffectList(),i=this.GetEffectType(a),s=i.GetIndex()
|
||
return r.IsEffectIndexActive(s)?r.GetEffectParametersForIndex(s):null}},{key:"GetEffectType",value:function(e){var t=this._propertyTrack,n=t.GetPropertyTrackDataItem().GetSourceAdapterArguments()[_NAME]
|
||
return e.GetEffectTypeByName(n)}},{key:"Interpolate",value:function(e,n,r,a,i,s){return this._IsEffectActive()?_get(_getPrototypeOf(t.prototype),"Interpolate",this).call(this,e,n,r,a,i,s):void 0}},{key:"_IsEffectActive",value:function(){var e=this._propertyTrack,t=e.GetTrack(),n=t.GetWorldInfo(),r=n.GetInstanceEffectList(),a=r.GetEffectList(),i=this.GetEffectType(a)
|
||
if(i){var s=i.GetIndex()
|
||
return r.IsEffectIndexActive(s)}}}]),t}(_C73.PropertyTrackState.PropertySourceAdapter)
|
||
_C73.PropertyTrackState.EffectSourceAdapter=EffectSourceAdapter
|
||
var _C74=self.C3,_INDEX3=0,PluginSourceAdapter=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetEditorIndex",value:function(){return this._propertyTrack.GetPropertyTrackDataItem().GetSourceAdapterArguments()[_INDEX3]}},{key:"GetTarget",value:function(){return this._propertyTrack.GetTrack().GetInstance().GetSdkInstance()}},{key:"Interpolate",value:function(e,n,r,a,i,s){var o=this._propertyTrack.GetTrack(),u=o.GetObjectClass().GetPlugin(),l=o.GetInstance().GetObjectClass().GetPlugin()
|
||
return u===l?_get(_getPrototypeOf(t.prototype),"Interpolate",this).call(this,e,n,r,a,i,s):void 0}}]),t}(_C74.PropertyTrackState.PropertySourceAdapter)
|
||
_C74.PropertyTrackState.PluginSourceAdapter=PluginSourceAdapter
|
||
var _C75=self.C3,ValueSourceAdapter=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._value=0,r._init=!1,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"SetInitialState",value:function(){var e=this._propertyTrack.GetPropertyTrackData(),t=this._propertyTrack.GetPropertyTrackDataItem()
|
||
t=e.GetFirstPropertyKeyframeDataItem(t),this._value=t.GetValueWithResultMode()}},{key:"SetResumeState",value:function(){}},{key:"GetValue",value:function(){return this._init||this._propertyTrack.Interpolate(0),this._value}},{key:"Interpolate",value:function(e,t,n,r,a,i){var s=_C75.PropertyTrackState.NumericTypeAdapter.Interpolate
|
||
this._value=s(e,t,n,this._propertyTrack),this._init=!0}},{key:"SaveState",value:function(){}},{key:"ClearSaveState",value:function(){}},{key:"GetCurrentState",value:function(){return this._value}},{key:"CompareInitialStateWithCurrent",value:function(){return!1}},{key:"CompareSaveStateWithCurrent",value:function(){return!1}},{key:"_SaveToJson",value:function(){return{value:this._value,init:this._init}}},{key:"_LoadFromJson",value:function(e){e&&(this._value=e.value,this._init=e.hasOwnProperty("init")?e.init:!0)}}]),t}(_C75.PropertyTrackState.PropertySourceAdapter)
|
||
_C75.PropertyTrackState.ValueSourceAdapter=ValueSourceAdapter
|
||
var _C76=self.C3
|
||
_C76.PropertyTrackState.PropertyInterpolationAdapter=function(){function e(t){_classCallCheck(this,e),this._sourceAdapter=t,this._propertyTrack=t.GetPropertyTrack(),this._worldInfo=this._propertyTrack.GetTrack().GetWorldInfo(),this._property=this._propertyTrack.GetPropertyName(),this._firstAbsoluteUpdate=!1,this._saveState=null,this._target=null}return _createClass(e,[{key:"Release",value:function(){this._sourceAdapter=null,this._propertyTrack=null,this._worldInfo=null,this._saveState=null,this._target=null}},{key:"CleanCaches",value:function(){this._worldInfo=null,this._saveState=null,this._target=null}},{key:"GetPropertyTrack",value:function(){return this._propertyTrack}},{key:"GetWorldInfo",value:function(){return this._worldInfo?this._worldInfo:(this._worldInfo=this._propertyTrack.GetTrack().GetWorldInfo(),this._worldInfo)}},{key:"SetFirstAbsoluteUpdate",value:function(e){this._firstAbsoluteUpdate=!!e}},{key:"GetFirstAbsoluteUpdate",value:function(){return this._firstAbsoluteUpdate}},{key:"SetInitialState",value:function(){}},{key:"SetResumeState",value:function(){}},{key:"SetSaveState",value:function(){this._saveState=this.GetCurrentState()}},{key:"ClearSaveState",value:function(){this._saveState=null}},{key:"GetCurrentState",value:function(){}},{key:"CompareInitialStateWithCurrent",value:function(){}},{key:"CompareSaveStateWithCurrent",value:function(){}},{key:"CanChange",value:function(e){var t=_typeof(this._Getter()),n=_typeof(e)
|
||
return t===n}},{key:"BeforeChangeProperty",value:function(){}},{key:"ChangeProperty",value:function(e,t,n,r,a){}},{key:"AfterChangeProperty",value:function(){}},{key:"_FirstKeyframeGetter",value:function(){var e=this,t=this._PickTimelinePlaybackMode(function(){var t=e._propertyTrack.GetPropertyTrackDataItem(),n=e._propertyTrack.GetPropertyTrackData()
|
||
return n.GetFirstPropertyKeyframeDataItem(t)},function(){var t=e._propertyTrack.GetPropertyTrackDataItem(),n=e._propertyTrack.GetPropertyTrackData()
|
||
return n.GetLastPropertyKeyframeDataItem(t)})
|
||
return t.GetAbsoluteValue()}},{key:"_CurrentKeyframeGetter",value:function(){var e=this,t=this._propertyTrack.GetTimeline(),n=t.GetTime()-this._propertyTrack.GetTrack().GetStartOffset(),r=this._PickTimelinePlaybackMode(function(){var t=e._propertyTrack.GetPropertyTrackDataItem(),r=e._propertyTrack.GetPropertyTrackData()
|
||
return r.GetFirstPropertyKeyFrameDataItemLowerOrEqualThan(n,t)},function(){var t=e._propertyTrack.GetPropertyTrackDataItem(),r=e._propertyTrack.GetPropertyTrackData(),a=r.GetFirstPropertyKeyFrameDataItemHigherOrEqualThan(n,t)
|
||
return a?a:r.GetLastPropertyKeyframeDataItem(t)})
|
||
return r.GetAbsoluteValue()}},{key:"_PickTimelinePlaybackMode",value:function(e,t){var n=this._propertyTrack.GetTimeline()
|
||
return n.IsForwardPlayBack()?e():t()}},{key:"_PickResultMode",value:function(e,t){var n=this._propertyTrack.GetResultMode()
|
||
return"relative"===n?e():t()}},{key:"_PickFirstAbsoluteUpdate",value:function(e,t){return this.GetFirstAbsoluteUpdate()?(this.SetFirstAbsoluteUpdate(!1),e()):t()}},{key:"_GetAbsoluteInitialValue",value:function(e){}},{key:"_GetIndex",value:function(){return this._sourceAdapter.GetIndex()}},{key:"_GetTarget",value:function(){return this._target?this._target:(this._target=this._sourceAdapter.GetTarget(),this._target)}},{key:"_PickSource",value:function(e,t,n,r,a){var i=this._propertyTrack.GetSourceAdapterId()
|
||
switch(i){case"behavior":return e()
|
||
case"effect":return t()
|
||
case"instance-variable":return n()
|
||
case"plugin":return r()
|
||
case"world-instance":return a()}}},{key:"_SaveToJson",value:function(){return{firstAbsoluteUpdate:this._firstAbsoluteUpdate,saveState:this._saveState}}},{key:"_LoadFromJson",value:function(e){e&&(this._firstAbsoluteUpdate=e.firstAbsoluteUpdate,this._saveState=e.saveState)}},{key:"_GetPropertyKeyframeStubs",value:function(e){var t,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1,r=[],a=_createForOfIteratorHelper(e)
|
||
try{for(a.s();!(t=a.n()).done;){var i,s=t.value,o=s.GetTrack().GetStartOffset(),u=_createForOfIteratorHelper(s.GetPropertyKeyframeDataItems())
|
||
try{for(u.s();!(i=u.n()).done;){var l=i.value
|
||
n&&0===l.GetTime()?r.push({time:o+l.GetTime(),value:l.GetAbsoluteValue()}):n||r.push({time:o+l.GetTime(),value:l.GetAbsoluteValue()})}}catch(c){u.e(c)}finally{u.f()}}}catch(c){a.e(c)}finally{a.f()}return r.sort(function(e,t){return e.time-t.time})}},{key:"_GetLastPropertyKeyframeStub",value:function(e,t,n){return this._GetPropertyKeyframeStubLowerThanPlayhead(t,n)}},{key:"_GetPropertyKeyframeStubLowerThanPlayhead",value:function(e,t){for(var n=t.length-1;n>=0;n--){var r=t[n].time
|
||
if(e>=r)return t[n]}return null}}]),e}()
|
||
var _C77=self.C3,TMP_COLORS_MAP=new Map,TMP_COLOR=[0,0,0],ColorInterpolationAdapter=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"SetInitialState",value:function(){}},{key:"SetResumeState",value:function(){}},{key:"GetCurrentState",value:function(){var e=this._propertyTrack.GetSourceAdapterId(),t=this._GetTarget(),n=this._GetIndex()
|
||
switch(e){case"behavior":return this._ToColorArray(t.GetPropertyValueByIndex(n))
|
||
case"effect":return this._ToColorArray(t[n])
|
||
case"plugin":return this._ToColorArray(t.GetPropertyValueByIndex(n))
|
||
case"world-instance":return this._ToColorArray(this._Getter())}}},{key:"CompareInitialStateWithCurrent",value:function(){var e=this._FirstKeyframeGetter()
|
||
return!this._CompareColors(e,this._Getter())}},{key:"CompareSaveStateWithCurrent",value:function(){return _C77.IsNullOrUndefined(this._saveState)?!1:!this._CompareColors(this._saveState,this._Getter())}},{key:"_CompareColors",value:function(e,t){return e.equalsIgnoringAlpha(t)}},{key:"_FirstKeyframeGetter",value:function(){var e=_get(_getPrototypeOf(t.prototype),"_FirstKeyframeGetter",this).call(this)
|
||
return this._GetColorFromArray(e)}},{key:"_CurrentKeyframeGetter",value:function(){var e=_get(_getPrototypeOf(t.prototype),"_CurrentKeyframeGetter",this).call(this)
|
||
return this._GetColorFromArray(e)}},{key:"_GetAbsoluteInitialValue",value:function(e){}},{key:"_ToColorArray",value:function(e){return _C77.IsInstanceOf(e,_C77.Color)?e.toArray().slice(0,3):e.slice(0,3)}},{key:"_GetColorFromArray",value:function(e){return _C77.IsInstanceOf(e,_C77.Color)?e:new _C77.Color(e[0],e[1],e[2],1)}},{key:"CanChange",value:function(e){return!0}},{key:"BeforeChangeProperty",value:function(){var e=this._propertyTrack.GetInstance()
|
||
TMP_COLORS_MAP.has(e)||TMP_COLORS_MAP.set(e,new Map)
|
||
var t=TMP_COLORS_MAP.get(e),n=this._propertyTrack.GetSourceAdapterId()
|
||
t.has(n)||t.set(n,new Map)
|
||
var r=t.get(n)
|
||
r.has(this._property)||r.set(this._property,{used:!1,color:new _C77.Color(0,0,0,1)})}},{key:"_GetTmpColor",value:function(e,t,n){var r=TMP_COLORS_MAP.get(e).get(t).get(n)
|
||
return r.used=!0,r.color}},{key:"ChangeProperty",value:function(e,t,n,r,a){var i=this._propertyTrack.GetTimeline(),s=this._propertyTrack.GetTrack(),o=this._propertyTrack.GetInstance(),u=this._propertyTrack.GetSourceAdapter(),l=this._propertyTrack.GetSourceAdapterId(),c=this._property,h=i.GetSimilarPropertyTracks(o,u,c)
|
||
if(h.length>1){var _=this._GetPropertyKeyframeStubs(h,!0),f=this._GetLastPropertyKeyframeStub(i,i.GetTime(),_)
|
||
if(f){var d=s.GetStartOffset(),p=f.time-d
|
||
if(0===p)this._GetTmpColor(o,l,this._property).addRgb(t[0],t[1],t[2])
|
||
else{if(0>p)return
|
||
var v=t[0],m=t[1],y=t[2],g=this._propertyTrack.Interpolate(p,!1,!0),C=_C77.Color.DiffChannel(v,g[0]),S=_C77.Color.DiffChannel(m,g[1]),k=_C77.Color.DiffChannel(y,g[2])
|
||
this._GetTmpColor(o,l,this._property).addRgb(C,S,k)}}}else this._Setter(t[0],t[1],t[2])
|
||
return _C77.TimelineState.LAYOUT_RENDER_CHANGE}},{key:"AfterChangeProperty",value:function(){var e=this._propertyTrack.GetInstance()
|
||
if(TMP_COLORS_MAP.has(e)){var t=TMP_COLORS_MAP.get(e),n=this._propertyTrack.GetSourceAdapterId()
|
||
if(t.has(n)){var r=t.get(n)
|
||
if(r.has(this._property)){var a=r.get(this._property),i=a.used,s=a.color
|
||
i&&this._Setter(s.getR(),s.getG(),s.getB()),0===r.size&&t["delete"](n),0===t.size&&TMP_COLORS_MAP["delete"](e)}}}}},{key:"_Getter",value:function(){var e=this._propertyTrack.GetSourceAdapterId(),t=this._GetTarget(),n=this._GetIndex()
|
||
switch(e){case"behavior":return this._GetColorFromArray(t.GetPropertyValueByIndex(n))
|
||
case"effect":return t[n].clone()
|
||
case"plugin":return this._GetColorFromArray(t.GetPropertyValueByIndex(n))
|
||
case"world-instance":return this.GetWorldInfo().GetUnpremultipliedColor().clone()}}},{key:"_Setter",value:function(e,t,n){var r=this._propertyTrack.GetSourceAdapterId(),a=this._GetTarget(),i=this._GetIndex()
|
||
switch(r){case"behavior":TMP_COLOR[0]=e,TMP_COLOR[1]=t,TMP_COLOR[2]=n,a.SetPropertyValueByIndex(i,TMP_COLOR)
|
||
break
|
||
case"effect":a[i].setRgb(e,t,n)
|
||
break
|
||
case"plugin":TMP_COLOR[0]=e,TMP_COLOR[1]=t,TMP_COLOR[2]=n,a.SetPropertyValueByIndex(i,TMP_COLOR)
|
||
break
|
||
case"world-instance":this.GetWorldInfo().SetUnpremultipliedColorRGB(e,t,n)}}},{key:"_SaveToJson",value:function(){}},{key:"_LoadFromJson",value:function(e){}}]),t}(_C77.PropertyTrackState.PropertyInterpolationAdapter)
|
||
_C77.PropertyTrackState.PropertyInterpolationAdapter.ColorInterpolationAdapter=ColorInterpolationAdapter
|
||
var _C78=self.C3,NoInterpolationAdapter=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"SetInitialState",value:function(){}},{key:"SetResumeState",value:function(){}},{key:"GetCurrentState",value:function(){return this._Getter()}},{key:"CompareInitialStateWithCurrent",value:function(){var e=this._FirstKeyframeGetter()
|
||
return e!==this.GetCurrentState()}},{key:"CompareSaveStateWithCurrent",value:function(){return _C78.IsNullOrUndefined(this._saveState)?!1:this._saveState!==this.GetCurrentState()}},{key:"ChangeProperty",value:function(e,t,n,r,a){var i=_C78.PropertyTrackState.PropertySourceAdapter.GetWillChangeFunc(this._propertyTrack),s=this._propertyTrack,o=s.GetTrack(),u=s.GetSourceAdapterId(),l=s.GetTimeline(),c=o.GetInstance(),h=s.GetSourceAdapter(),_=this._property,f=l.GetSimilarPropertyTracks(c,h,_)
|
||
if(f.length>1){var d=this._GetPropertyKeyframeStubs(f),p=e+o.GetStartOffset(),v=this._GetLastPropertyKeyframeStub(l,p,d)
|
||
v&&(t=v.value)}var m=i(this._GetIndex(),this._GetTarget(),t,u)
|
||
if(m)switch(this._Setter(t),u){case"behavior":return
|
||
case"effect":return
|
||
case"instance-variable":return
|
||
case"plugin":return _C78.TimelineState.LAYOUT_RENDER_CHANGE}}},{key:"_Getter",value:function(){var e=this._propertyTrack.GetSourceAdapterId(),t=this._GetTarget(),n=this._GetIndex()
|
||
switch(e){case"behavior":return t.GetPropertyValueByIndex(n)
|
||
case"effect":return t[n]
|
||
case"instance-variable":return t.GetInstanceVariableValue(n)
|
||
case"plugin":return t.GetPropertyValueByIndex(n)}}},{key:"_Setter",value:function(e){var t=this._propertyTrack.GetSourceAdapterId(),n=this._GetTarget(),r=this._GetIndex()
|
||
switch(t){case"behavior":n.SetPropertyValueByIndex(r,e)
|
||
break
|
||
case"effect":n[r]=e
|
||
break
|
||
case"instance-variable":n.SetInstanceVariableValue(r,e)
|
||
break
|
||
case"plugin":n.SetPropertyValueByIndex(r,e)}}}]),t}(_C78.PropertyTrackState.PropertyInterpolationAdapter)
|
||
_C78.PropertyTrackState.PropertyInterpolationAdapter.NoInterpolationAdapter=NoInterpolationAdapter
|
||
var _C79=self.C3,_NS=_C79.PropertyTrackState.PropertyInterpolationAdapter,INSTANCE_FUNC_MAP=new Map,add=function(e,t,n,r,a){return INSTANCE_FUNC_MAP.set(e,{setter:t,absolute_setter:n,getter:r,round:a})}
|
||
add("offsetX",function(e,t){return e.OffsetX(t)},function(e,t){return e.SetX(t)},function(e){return e.GetX()},!0),add("offsetY",function(e,t){return e.OffsetY(t)},function(e,t){return e.SetY(t)},function(e){return e.GetY()},!0),add("offsetWidth",function(e,t){return e.OffsetWidth(t)},function(e,t){return e.SetWidth(t)},function(e){return e.GetWidth()},!0),add("offsetHeight",function(e,t){return e.OffsetHeight(t)},function(e,t){return e.SetHeight(t)},function(e){return e.GetHeight()},!0),add("offsetAngle",function(e,t){return e.OffsetAngle(t)},function(e,t){return e.SetAngle(t)},function(e){return e.GetAngle()},!1),add("offsetOpacity",function(e,t){return e.OffsetOpacity(t)},function(e,t){return e.SetOpacity(t)},function(e){return e.GetOpacity()},!1),add("offsetOriginX",function(e,t){return e.OffsetOriginX(t)},function(e,t){return e.SetOriginX(t)},function(e){return e.GetOriginX()},!1),add("offsetOriginY",function(e,t){return e.OffsetOriginY(t)},function(e,t){return e.SetOriginY(t)},function(e){return e.GetOriginY()},!1),add("offsetZElevation",function(e,t){return e.OffsetZElevation(t)},function(e,t){return e.SetZElevation(t)},function(e){return e.GetZElevation()},!0),add("offsetScaleX",function(e,t,n){e.OffsetWidth(n.GetOriginalWidth()*t)},function(e,t,n){e.SetWidth(n.GetOriginalWidth()*t)},function(e,t){return e.GetWidth()/t.GetOriginalWidth()},!1),add("offsetScaleY",function(e,t,n){e.OffsetHeight(n.GetOriginalHeight()*t)},function(e,t,n){e.SetHeight(n.GetOriginalHeight()*t)},function(e,t){return e.GetHeight()/t.GetOriginalHeight()},!1)
|
||
var NumericInterpolationAdapter=function(e){function t(e){var r
|
||
_classCallCheck(this,t),r=n.call(this,e),r._lastValue=0,r._instance_getter=null,r._instance_setter=null,r._instance_absolute_setter=null,r._round=!1,_C79.IsInstanceOf(r._propertyTrack.GetTimeline(),_C79.Tween)?r._typeAdapter=new _C79.PropertyTrackState.PropertyInterpolationAdapter.NumericInterpolationAdapterForTween(_assertThisInitialized(r)):r._typeAdapter=new _C79.PropertyTrackState.PropertyInterpolationAdapter.NumericInterpolationAdapterForTimeline(_assertThisInitialized(r))
|
||
var a=r._propertyTrack.GetPropertyName()
|
||
if("world-instance"===r._propertyTrack.GetSourceAdapterId()){var i=INSTANCE_FUNC_MAP.get(a)
|
||
r._instance_getter=i.getter,r._instance_setter=i.setter,r._instance_absolute_setter=i.absolute_setter,r._round=i.round}return r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._typeAdapter=null,this._instance_getter=null,this._instance_setter=null,this._instance_absolute_setter=null,_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetLastValue",value:function(){return this._lastValue}},{key:"SetLastValue",value:function(e){this._lastValue=e}},{key:"SetInitialState",value:function(){var e=this._typeAdapter.SetInitialState()
|
||
"number"==typeof e&&(this._lastValue=e)}},{key:"SetResumeState",value:function(){var e=this._typeAdapter.SetResumeState()
|
||
"number"==typeof e&&(this._lastValue=e)}},{key:"GetCurrentState",value:function(){return this._Getter()}},{key:"CompareInitialStateWithCurrent",value:function(){var e=this._FirstKeyframeGetter()
|
||
return e!==this.GetCurrentState()}},{key:"CompareSaveStateWithCurrent",value:function(){return _C79.IsNullOrUndefined(this._saveState)?!1:this._saveState!==this.GetCurrentState()}},{key:"BeforeChangeProperty",value:function(){this._typeAdapter.BeforeChangeProperty()}},{key:"ChangeProperty",value:function(e,t,n,r,a,i){return this._typeAdapter.ChangeProperty(e,t,n,r,a,i)}},{key:"AfterChangeProperty",value:function(){this._typeAdapter.AfterChangeProperty()}},{key:"_Getter",value:function(){var e=this,t=this._GetTarget(),n=this._GetIndex(),r=this._propertyTrack.GetTrack(),a=this.GetWorldInfo()
|
||
return this._PickSource(function(){return t.GetPropertyValueByIndex(n)},function(){return t[n]},function(){return t.GetInstanceVariableValue(n)},function(){return t.GetPropertyValueByIndex(n)},function(){return e._instance_getter(a,r)})}},{key:"_Setter",value:function(e,t,n){var r=this,a=this._GetTarget(),i=this._GetIndex(),s=this._propertyTrack.GetTrack(),o=this.GetWorldInfo()
|
||
this._PickSource(function(){return a.OffsetPropertyValueByIndex(i,e)},function(){return a[i]+=e},function(){return a.SetInstanceVariableOffset(i,e)},function(){return a.OffsetPropertyValueByIndex(i,e)},function(){return r._instance_setter(o,e,s)})}},{key:"_SetterAbsolute",value:function(e,t,n){var r=this,a=this._GetTarget(),i=this._GetIndex(),s=this._propertyTrack.GetTrack(),o=this.GetWorldInfo()
|
||
this._PickSource(function(){return a.SetPropertyValueByIndex(i,e)},function(){return a[i]=e},function(){return a.SetInstanceVariableValue(i,e)},function(){return a.SetPropertyValueByIndex(i,e)},function(){return r._instance_absolute_setter(o,e,s)})}},{key:"_MaybeEnsureValue",value:function(e,t,n,r,a,i){this._typeAdapter._MaybeEnsureValue(e,t,n,r,a,i)}},{key:"_AddDelta",value:function(e,t,n){var r,a=""+e,i=a.split(".")[1]||"",s=i.length,o=this._Getter()
|
||
r=0===s?this._round?Math.round(o):o:_C79.toFixed(o,s),this._Setter(r-o,t,n)}},{key:"_SaveToJson",value:function(){return Object.assign(_get(_getPrototypeOf(t.prototype),"_SaveToJson",this).call(this),{v:this._lastValue})}},{key:"_LoadFromJson",value:function(e){e&&(_get(_getPrototypeOf(t.prototype),"_LoadFromJson",this).call(this,e),this._lastValue=e.v)}}]),t}(_C79.PropertyTrackState.PropertyInterpolationAdapter)
|
||
_C79.PropertyTrackState.PropertyInterpolationAdapter.NumericInterpolationAdapter=NumericInterpolationAdapter
|
||
var _C80=self.C3,TMP_ABSOLUTE_VALUES_MAP=new Map,NumericInterpolationAdapterForTimeline=function(){function e(t){_classCallCheck(this,e),this._numericInterpolationAdapter=t}return _createClass(e,[{key:"Release",value:function(){this._numericInterpolationAdapter=null}},{key:"SetInitialState",value:function(){var e=this._numericInterpolationAdapter,t=this._numericInterpolationAdapter.GetPropertyTrack()
|
||
return e._PickResultMode(function(){return e._PickTimelinePlaybackMode(function(){return 0},function(){return _C80.PropertyTrackState.PropertySourceAdapter.GetValueAtTime(t)})},function(){})}},{key:"SetResumeState",value:function(){}},{key:"BeforeChangeProperty",value:function(){var e=this._numericInterpolationAdapter,t=this._numericInterpolationAdapter.GetPropertyTrack(),n=t.GetPropertyName()
|
||
e._PickResultMode(function(){},function(){var e=t.GetInstance()
|
||
TMP_ABSOLUTE_VALUES_MAP.has(e)||TMP_ABSOLUTE_VALUES_MAP.set(e,new Map)
|
||
var r=TMP_ABSOLUTE_VALUES_MAP.get(e),a=t.GetSourceAdapterId()
|
||
r.has(a)||r.set(a,new Map)
|
||
var i=r.get(a)
|
||
i.has(n)||i.set(n,{used:!1,value:0})})}},{key:"_GetTmpAbsoluteValueObject",value:function(e,t,n){var r=TMP_ABSOLUTE_VALUES_MAP.get(e).get(t).get(n)
|
||
return r.used=!0,r}},{key:"ChangeProperty",value:function(e,t,n,r,a,i){var s=this,o=this._numericInterpolationAdapter,u=this._numericInterpolationAdapter.GetPropertyTrack(),l=u.GetPropertyName()
|
||
return o._PickResultMode(function(){var u=o.GetLastValue()
|
||
o._Setter(t-u,n,r),i&&s._MaybeEnsureValue(e,n,r,a,u,t),o.SetLastValue(t)},function(){var e=u.GetTimeline(),n=u.GetTrack(),r=u.GetInstance(),a=u.GetSourceAdapter(),i=u.GetSourceAdapterId(),c=e.GetSimilarPropertyTracks(r,a,l)
|
||
if(c.length>1){var h=o._GetPropertyKeyframeStubs(c,!0),_=o._GetLastPropertyKeyframeStub(e,e.GetTime(),h)
|
||
if(_){var f=n.GetStartOffset(),d=_.time-f
|
||
if(0===d){var p=s._GetTmpAbsoluteValueObject(r,i,l)
|
||
p.value+=t}else{if(0>d)return
|
||
var v=u.Interpolate(d,!1,!0),m=s._GetTmpAbsoluteValueObject(r,i,l)
|
||
m.value+=t-v}}}else o._SetterAbsolute(t)}),o._PickSource(function(){},function(){return _C80.TimelineState.LAYOUT_RENDER_CHANGE},function(){},function(){return _C80.TimelineState.LAYOUT_RENDER_CHANGE},function(){return _C80.TimelineState.LAYOUT_RENDER_CHANGE})}},{key:"AfterChangeProperty",value:function(){var e=this._numericInterpolationAdapter,t=this._numericInterpolationAdapter.GetPropertyTrack(),n=t.GetPropertyName()
|
||
e._PickResultMode(function(){},function(){var r=t.GetInstance()
|
||
if(TMP_ABSOLUTE_VALUES_MAP.has(r)){var a=TMP_ABSOLUTE_VALUES_MAP.get(r),i=t.GetSourceAdapterId()
|
||
if(a.has(i)){var s=a.get(i)
|
||
if(s.has(n)){var o=s.get(n),u=o.used,l=o.value
|
||
u&&e._SetterAbsolute(l),s["delete"](n),0===s.size&&a["delete"](i),0===a.size&&TMP_ABSOLUTE_VALUES_MAP["delete"](r)}}}})}},{key:"_MaybeEnsureValue",value:function(e,t,n,r,a,i){var s=this._numericInterpolationAdapter
|
||
r||(t&&e===t.GetTime()?s._AddDelta(t.GetValueWithResultMode(),t,n):n&&e===n.GetTime()?s._AddDelta(n.GetValueWithResultMode(),t,n):i-a===0&&s._AddDelta(t.GetValueWithResultMode(),t,n))}}]),e}()
|
||
_C80.PropertyTrackState.PropertyInterpolationAdapter.NumericInterpolationAdapterForTimeline=NumericInterpolationAdapterForTimeline
|
||
var _C81=self.C3,_TMP_ABSOLUTE_VALUES_MAP=new Map,NumericInterpolationAdapterForTween=function(){function e(t){_classCallCheck(this,e),this._numericInterpolationAdapter=t}return _createClass(e,[{key:"Release",value:function(){this._numericInterpolationAdapter=null}},{key:"SetInitialState",value:function(){var e=this._numericInterpolationAdapter
|
||
return e.SetFirstAbsoluteUpdate(!0),this._GetAbsoluteInitialValue(e._FirstKeyframeGetter())}},{key:"SetResumeState",value:function(){var e=this._numericInterpolationAdapter
|
||
if(e._FirstKeyframeGetter()!==e._CurrentKeyframeGetter())return e.SetFirstAbsoluteUpdate(!0),this._GetAbsoluteInitialValue(e._CurrentKeyframeGetter())}},{key:"BeforeChangeProperty",value:function(){}},{key:"ChangeProperty",value:function(e,t,n,r,a,i){var s=this,o=this._numericInterpolationAdapter,u=o.GetLastValue()
|
||
return o._PickResultMode(function(){o._Setter(t-u,n,r),i&&s._MaybeEnsureValue(e,n,r,a,u,t)},function(){o._PickFirstAbsoluteUpdate(function(){o._Setter(u,n,r)},function(){o._Setter(t-u,n,r),i&&s._MaybeEnsureValue(e,n,r,a,u,t)})}),o.SetLastValue(t),o._PickSource(function(){},function(){return _C81.TimelineState.LAYOUT_RENDER_CHANGE},function(){},function(){return _C81.TimelineState.LAYOUT_RENDER_CHANGE},function(){return _C81.TimelineState.LAYOUT_RENDER_CHANGE})}},{key:"AfterChangeProperty",value:function(){}},{key:"_GetAbsoluteInitialValue",value:function(e){var t=this._numericInterpolationAdapter
|
||
return e-t.GetCurrentState()}},{key:"_MaybeEnsureValue",value:function(e,t,n,r,a,i){var s=this._numericInterpolationAdapter
|
||
r?t&&e===t.GetTime()?s._AddDelta(t.GetValueWithResultMode(),t,n):n&&e===n.GetTime()?s._AddDelta(n.GetValueWithResultMode(),t,n):n||s._AddDelta(t.GetValueWithResultMode(),t,n):t&&e===t.GetTime()?s._AddDelta(t.GetValueWithResultMode(),t,n):n&&e===n.GetTime()?s._AddDelta(n.GetValueWithResultMode(),t,n):i-a===0&&s._AddDelta(t.GetValueWithResultMode(),t,n)}}]),e}()
|
||
_C81.PropertyTrackState.PropertyInterpolationAdapter.NumericInterpolationAdapterForTween=NumericInterpolationAdapterForTween
|
||
var _C82=self.C3,Ease=self.Ease
|
||
_C82.PropertyTrackState.NumericTypeAdapter=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"WillChange",value:function(e,t,n,r){var a
|
||
switch(r){case"behavior":a=t.GetPropertyValueByIndex(e)
|
||
break
|
||
case"effect":a=t[e]
|
||
break
|
||
case"instance-variable":a=t.GetInstanceVariableValue(e)
|
||
break
|
||
case"plugin":a=t.GetPropertyValueByIndex(e)}return a===n?!1:!0}},{key:"Interpolate",value:function(e,t,n,r){if(!n){var a=r.GetPropertyTrackDataItem(),i=r.GetPropertyTrackData()
|
||
return a=i.GetLastPropertyKeyframeDataItem(a),a.GetValueWithResultMode()}var s=r.GetInterpolationMode()
|
||
if("default"===s&&(s="continuous"),"combo"===r.GetPropertyType()&&(s="discrete"),"discrete"===s)return t.GetValueWithResultMode()
|
||
if("continuous"===s||"step"===s){if("step"===s){var o=r.GetTimeline().GetStep()
|
||
if(0!==o){var u=1/o
|
||
e=Math.floor(e*u)/u}}var l=t.GetTime(),c=n.GetTime(),h=t.GetValueWithResultMode(),_=n.GetValueWithResultMode()
|
||
if(h===_)return h
|
||
var f,d=_C82.normalize(e,l,c),p=t.GetEase(),v=t.GetAddOn("cubic-bezier"),m=n.GetAddOn("cubic-bezier")
|
||
if(v&&v.GetStartEnable()&&m&&m.GetEndEnable()){var y=c-l
|
||
f=Ease.GetRuntimeEase(p)(y*d,0,1,y),f=Ease.GetRuntimeEase("cubicbezier")(f,h,h+v.GetStartAnchor(),_+m.GetEndAnchor(),_)}else f=Ease.GetRuntimeEase(p)((c-l)*d,h,_-h,c-l)
|
||
return"integer"===r.GetPropertyType()?Math.floor(f):f}}}]),e}()
|
||
var _C83=self.C3
|
||
_C83.PropertyTrackState.AngleTypeAdapter=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"WillChange",value:function(e,t,n,r){var a
|
||
switch(r){case"behavior":a=t.GetPropertyValueByIndex(e)
|
||
break
|
||
case"effect":a=t[e]
|
||
break
|
||
case"instance-variable":a=t.GetInstanceVariableValue(e)
|
||
break
|
||
case"plugin":a=t.GetPropertyValueByIndex(e)}return a===n?!1:!0}},{key:"Interpolate",value:function(e,t,n,r){if(!n){var a=r.GetPropertyTrackDataItem(),i=r.GetPropertyTrackData()
|
||
return a=i.GetLastPropertyKeyframeDataItem(a),a.GetValueWithResultMode()}var s=r.GetInterpolationMode()
|
||
if("default"===s&&(s="continuous"),"combo"===r.GetPropertyType()&&(s="discrete"),"discrete"===s)return t.GetValueWithResultMode()
|
||
if("continuous"===s||"step"===s){if("step"===s){var o=r.GetTimeline().GetStep()
|
||
if(0!==o){var u=1/o
|
||
e=Math.floor(e*u)/u}}var l=t.GetTime(),c=n.GetTime(),h=t.GetValueWithResultMode(),_=n.GetValueWithResultMode(),f=t.GetAddOn("angle")
|
||
if(!f){if(h===_)return h
|
||
var d=_C83.normalize(e,l,c),p=self.Ease.GetRuntimeEase(t.GetEase())
|
||
return _C83.angleLerp(h,_,p(d,0,1,1))}var v=f.GetRevolutions()
|
||
if(h===_&&0===v)return h
|
||
var m=_C83.normalize(e,l,c),y=self.Ease.GetRuntimeEase(t.GetEase()),g=y(m,0,1,1)
|
||
switch(f.GetDirection()){case"closest":return _C83.angleLerp(h,_,g,v)
|
||
case"clockwise":return _C83.angleLerpClockwise(h,_,g,v)
|
||
case"anti-clockwise":return _C83.angleLerpAntiClockwise(h,_,g,v)}}}}]),e}()
|
||
var _C84=self.C3
|
||
_C84.PropertyTrackState.BooleanTypeAdapter=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"WillChange",value:function(e,t,n,r){var a
|
||
switch(r){case"behavior":a=t.GetPropertyValueByIndex(e)
|
||
break
|
||
case"effect":a=t[e]
|
||
break
|
||
case"instance-variable":a=t.GetInstanceVariableValue(e)
|
||
break
|
||
case"plugin":a=t.GetPropertyValueByIndex(e)}return!!a==!!n?!1:!0}},{key:"Interpolate",value:function(e,t,n,r){if(!n){var a=r.GetPropertyTrackDataItem(),i=r.GetPropertyTrackData()
|
||
return a=i.GetLastPropertyKeyframeDataItem(a),a.GetValueWithResultMode()?1:0}return t.GetValueWithResultMode()?1:0}}]),e}()
|
||
var _C85=self.C3,TEMP_COLOR_ARRAY=[0,0,0],TEMP_COLOR_ARRAY_2=[0,0,0],TEMP_COLOR_ARRAY_3=[0,0,0]
|
||
_C85.PropertyTrackState.ColorTypeAdapter=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"WillChange",value:function(e,t,n,r){var a
|
||
switch(r){case"behavior":a=t.GetPropertyValueByIndex(e)
|
||
break
|
||
case"effect":a=t[e]
|
||
break
|
||
case"instance-variable":a=t.GetInstanceVariableValue(e)
|
||
break
|
||
case"plugin":a=t.GetPropertyValueByIndex(e)}return Array.isArray(n)?(TEMP_COLOR_ARRAY[0]=n[0],TEMP_COLOR_ARRAY[1]=n[1],TEMP_COLOR_ARRAY[2]=n[2]):(TEMP_COLOR_ARRAY_3.parseCommaSeparatedRgb(n),TEMP_COLOR_ARRAY[0]=Math.floor(255*TEMP_COLOR_ARRAY_3.getR()),TEMP_COLOR_ARRAY[1]=Math.floor(255*TEMP_COLOR_ARRAY_3.getG()),TEMP_COLOR_ARRAY[2]=Math.floor(255*TEMP_COLOR_ARRAY_3.getB())),Array.isArray(a)?(TEMP_COLOR_ARRAY_2[0]=a[0],TEMP_COLOR_ARRAY_2[1]=a[1],TEMP_COLOR_ARRAY_2[2]=a[2]):(TEMP_COLOR_ARRAY_3.parseCommaSeparatedRgb(a),TEMP_COLOR_ARRAY_2[0]=Math.floor(255*TEMP_COLOR_ARRAY_3.getR()),TEMP_COLOR_ARRAY_2[1]=Math.floor(255*TEMP_COLOR_ARRAY_3.getG()),TEMP_COLOR_ARRAY_2[2]=Math.floor(255*TEMP_COLOR_ARRAY_3.getB())),TEMP_COLOR_ARRAY[0]!==TEMP_COLOR_ARRAY_2[0]?!0:TEMP_COLOR_ARRAY[1]!==TEMP_COLOR_ARRAY_2[1]?!0:TEMP_COLOR_ARRAY[2]!==TEMP_COLOR_ARRAY_2[2]?!0:!1}},{key:"Interpolate",value:function(e,t,n,r){if(!n){var a=r.GetPropertyTrackDataItem(),i=r.GetPropertyTrackData()
|
||
a=i.GetLastPropertyKeyframeDataItem(a)
|
||
var s=a.GetValueWithResultMode()
|
||
return TEMP_COLOR_ARRAY[0]=s[0],TEMP_COLOR_ARRAY[1]=s[1],TEMP_COLOR_ARRAY[2]=s[2],TEMP_COLOR_ARRAY}var o=r.GetInterpolationMode()
|
||
if("default"===o&&(o="continuous"),"discrete"===o){var u=t.GetValueWithResultMode()
|
||
return TEMP_COLOR_ARRAY[0]=u[0],TEMP_COLOR_ARRAY[1]=u[1],TEMP_COLOR_ARRAY[2]=u[2],TEMP_COLOR_ARRAY}if("continuous"===o||"step"===o){if("step"===o){var l=r.GetTimeline().GetStep()
|
||
if(0!==l){var c=1/l
|
||
e=Math.floor(e*c)/c}}var h=t.GetTime(),_=n.GetTime(),f=t.GetValueWithResultMode(),d=n.GetValueWithResultMode(),p=_C85.normalize(e,h,_),v=t.GetEase(),m=f[0],y=f[1],g=f[2],C=d[0],S=d[1],k=d[2],I=self.Ease.GetRuntimeEase(v),T=_-h,G=T*p
|
||
return m===C?TEMP_COLOR_ARRAY[0]=m:TEMP_COLOR_ARRAY[0]=I(G,m,C-m,T),y===S?TEMP_COLOR_ARRAY[1]=y:TEMP_COLOR_ARRAY[1]=I(G,y,S-y,T),g===k?TEMP_COLOR_ARRAY[2]=g:TEMP_COLOR_ARRAY[2]=I(G,g,k-g,T),TEMP_COLOR_ARRAY}}}]),e}()
|
||
var _C86=self.C3
|
||
_C86.PropertyTrackState.TextTypeAdapter=function(){function e(){_classCallCheck(this,e)}return _createClass(e,null,[{key:"WillChange",value:function(e,t,n,r){var a
|
||
switch(r){case"behavior":a=t.GetPropertyValueByIndex(e)
|
||
break
|
||
case"effect":a=t[e]
|
||
break
|
||
case"instance-variable":a=t.GetInstanceVariableValue(e)
|
||
break
|
||
case"plugin":a=t.GetPropertyValueByIndex(e)}return a===n?!1:!0}},{key:"Interpolate",value:function(e,t,n,r){if(!n){var a=r.GetPropertyTrackDataItem(),i=r.GetPropertyTrackData()
|
||
return a=i.GetLastPropertyKeyframeDataItem(a),a.GetValueWithResultMode()}return t.GetValueWithResultMode()}}]),e}()
|
||
var _C87=self.C3
|
||
_C87.TimelineDataManager=function(){function e(){_classCallCheck(this,e),this._timelineDataItems=new Map}return _createClass(e,[{key:"Release",value:function(){var e,t=_createForOfIteratorHelper(this._timelineDataItems.values())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}this._timelineDataItems.clear(),this._timelineDataItems=null}},{key:"Add",value:function(e){var t=new _C87.TimelineDataItem(e),n=t.GetName()
|
||
this._timelineDataItems.set(n,t)}},{key:"Get",value:function(e){return this._timelineDataItems.get(e)}},{key:"GetNameId",value:function(){return 0}}],[{key:"_CreateDataItems",value:function(e,t,n,r){if(t){var a,i=_createForOfIteratorHelper(t)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
_C87.TimelineDataManager._CreateDataItem("create",s,e,n,r)}}catch(o){i.e(o)}finally{i.f()}}}},{key:"_LoadDataItemsFromJson",value:function(e,t,n,r){e.length?t.forEach(function(t,n){e[n]._LoadFromJson(t)}):t.forEach(function(t){_C87.TimelineDataManager._CreateDataItem("load",t,e,n,r)})}},{key:"_CreateDataItem",value:function(e,t,n,r,a){var i
|
||
if("function"==typeof r)switch(e){case"load":i=new r(null,a)
|
||
break
|
||
case"create":i=new r(t,a)}else if("object"===_typeof(r)){var s=r.prop,o=t[s],u=r.map.get(o)
|
||
switch(e){case"load":i=new u(null,a)
|
||
break
|
||
case"create":i=new u(t,a)}}switch(e){case"load":i._LoadFromJson(t),n.push(i)
|
||
break
|
||
case"create":if("function"==typeof i.GetEnable&&!i.GetEnable())return i.Release()
|
||
n.push(i)}}}]),e}()
|
||
var _C88=self.C3,_NAME2=0,TOTAL_TIME=1,STEP=2,INTERPOLATION_MODE=3,RESULT_MODE=4,TRACKS=5,LOOP=6,PING_PONG=7,REPEAT_COUNT=8
|
||
_C88.TimelineDataItem=function(){function e(t){_classCallCheck(this,e),this._name="",this._totalTime=NaN,this._step=0,this._interpolationMode="default",this._resultMode="default",this._loop=!1,this._pingPong=!1,this._repeatCount=1,this._trackData=null,t&&(this._name=t[_NAME2],this._totalTime=t[TOTAL_TIME],this._step=t[STEP],this._interpolationMode=t[INTERPOLATION_MODE],this._resultMode=t[RESULT_MODE],this._loop=!!t[LOOP],this._pingPong=!!t[PING_PONG],this._repeatCount=t[REPEAT_COUNT],this._trackData=new _C88.TrackData(t[TRACKS],this))}return _createClass(e,[{key:"Release",value:function(){this._trackData.Release(),this._trackData=null}},{key:"GetTrackData",value:function(){return this._trackData||(this._trackData=new _C88.TrackData(null,this)),this._trackData}},{key:"GetName",value:function(){return this._name}},{key:"SetName",value:function(e){this._name=e}},{key:"GetTotalTime",value:function(){return this._totalTime}},{key:"SetTotalTime",value:function(e){this._totalTime=e}},{key:"GetStep",value:function(){return this._step}},{key:"SetStep",value:function(e){this._step=e}},{key:"GetInterpolationMode",value:function(){return this._interpolationMode}},{key:"SetInterpolationMode",value:function(e){this._interpolationMode=e}},{key:"GetResultMode",value:function(){return this._resultMode}},{key:"SetResultMode",value:function(e){this._resultMode=e}},{key:"GetLoop",value:function(){return this._loop}},{key:"SetLoop",value:function(e){this._loop=e}},{key:"GetPingPong",value:function(){return this._pingPong}},{key:"SetPingPong",value:function(e){this._pingPong=e}},{key:"GetRepeatCount",value:function(){return this._repeatCount}},{key:"_SaveToJson",value:function(){return{trackDataJson:this._trackData._SaveToJson(),name:this._name,totalTime:this._totalTime,step:this._step,interpolationMode:this._interpolationMode,resultMode:this._resultMode,loop:this._loop,pingPong:this._pingPong,repeatCount:this._repeatCount}}},{key:"_LoadFromJson",value:function(e){e&&(this.GetTrackData()._LoadFromJson(e.trackDataJson),this._name=e.name,this._totalTime=e.totalTime,this._step=e.step,this._interpolationMode=e.interpolationMode,this._resultMode=e.resultMode,this._loop=e.loop,this._pingPong=e.pingPong,this._repeatCount=e.repeatCount)}}]),e}()
|
||
var _C89=self.C3,WI_DATA=0,OC_INDEX=1,WI_UID=2,_INTERPOLATION_MODE=1,_RESULT_MODE=2,ENABLED=3,KEYFRAMES=4,PROPERTY_TRACKS=5,ID=6,NESTED_DATA=7,START_OFFSET=0,LOCAL_TOTAL_TIME=1,WI_ADDITIONAL_DATA=8,ORIGINAL_WIDTH=0,ORIGINAL_HEIGHT=1,TrackDataItem=function(){function e(t,n){_classCallCheck(this,e),this._trackData=n,this._instanceData=null,this._additionalInstanceData=null,this._instanceUid=NaN,this._objectClassIndex=NaN,this._interpolationMode="default",this._resultMode="default",this._enabled=!1,this._keyframeData=null,this._propertyTrackData=null,this._id="",this._nestedData=null,this._startOffset=0,this._localTotalTime=this._trackData.GetTimelineDataItem().GetTotalTime(),t&&(this._instanceData=t[WI_DATA],this._instanceUid=t[WI_DATA][WI_UID],this._objectClassIndex=t[WI_DATA][OC_INDEX],this._interpolationMode=t[_INTERPOLATION_MODE],this._resultMode=t[_RESULT_MODE],this._enabled=!!t[ENABLED],t[ID]&&(this._id=t[ID]),t[NESTED_DATA]&&(this._nestedData=t[NESTED_DATA],this._startOffset=t[NESTED_DATA][START_OFFSET],this._localTotalTime=t[NESTED_DATA][LOCAL_TOTAL_TIME]),t[WI_ADDITIONAL_DATA]&&(this._additionalInstanceData=t[WI_ADDITIONAL_DATA]),this._keyframeData=new _C89.KeyframeData(t[KEYFRAMES],this),this._propertyTrackData=new _C89.PropertyTrackData(t[PROPERTY_TRACKS],this))}return _createClass(e,[{key:"Release",value:function(){this._instanceData=null,this._trackData=null,this._keyframeData&&(this._keyframeData.Release(),this._keyframeData=null),this._propertyTrackData&&(this._propertyTrackData.Release(),this._propertyTrackData=null),this._nestedData=null}},{key:"GetTrackData",value:function(){return this._trackData}},{key:"GetKeyframeData",value:function(){return this._keyframeData||(this._keyframeData=new _C89.KeyframeData(null,this)),this._keyframeData}},{key:"GetPropertyTrackData",value:function(){return this._propertyTrackData||(this._propertyTrackData=new _C89.PropertyTrackData(null,this)),this._propertyTrackData}},{key:"GetInstanceData",value:function(){return this._instanceData}},{key:"GetObjectClassIndex",value:function(){return this._objectClassIndex}},{key:"SetObjectClassIndex",value:function(e){this._objectClassIndex=e}},{key:"GetInstanceUID",value:function(){return this._instanceUid}},{key:"SetInstanceUID",value:function(e){this._instanceUid=e}},{key:"GetInterpolationMode",value:function(){return this._interpolationMode}},{key:"SetInterpolationMode",value:function(e){this._interpolationMode=e}},{key:"GetResultMode",value:function(){return this._resultMode}},{key:"SetResultMode",value:function(e){this._resultMode=e}},{key:"GetEnable",value:function(){return this._enabled}},{key:"SetEnable",value:function(e){this._enabled=!!e}},{key:"GetId",value:function(){return this._id}},{key:"GetStartOffset",value:function(){return this._startOffset}},{key:"GetLocalTotalTime",value:function(){return this._localTotalTime}},{key:"GetOriginalWidth",value:function(){return this._additionalInstanceData[ORIGINAL_WIDTH]}},{key:"SetOriginalWidth",value:function(e){this._additionalInstanceData||(this._additionalInstanceData=[]),this._additionalInstanceData[ORIGINAL_WIDTH]=e}},{key:"GetOriginalHeight",value:function(){return this._additionalInstanceData||(this._additionalInstanceData=[]),this._additionalInstanceData[ORIGINAL_HEIGHT]}},{key:"SetOriginalHeight",value:function(e){this._additionalInstanceData||(this._additionalInstanceData=[]),this._additionalInstanceData[ORIGINAL_HEIGHT]=e}},{key:"_SaveToJson",value:function(){return{keyframeDataJson:this._keyframeData._SaveToJson(),propertyTrackDataJson:this._propertyTrackData._SaveToJson(),instanceData:this._instanceData,additionalInstanceData:this._additionalInstanceData,instanceUid:this._instanceUid,objectClassIndex:this._objectClassIndex,interpolationMode:this._interpolationMode,resultMode:this._resultMode,enabled:this._enabled,id:this._id,nestedData:this._nestedData}}},{key:"_LoadFromJson",value:function(e){e&&(this._instanceData=e.instanceData,this._instanceUid=e.instanceUid,this._objectClassIndex=e.objectClassIndex,this._interpolationMode=e.interpolationMode,this._resultMode=e.resultMode,this._enabled=e.enabled,this._id=e.id,this._localTotalTime=this._trackData.GetTimelineDataItem().GetTotalTime(),e.nestedData&&(this._nestedData=e.nestedData,this._startOffset=this._nestedData[START_OFFSET],this._localTotalTime=this._nestedData[LOCAL_TOTAL_TIME]),e.additionalInstanceData&&(this._additionalInstanceData=e.additionalInstanceData),this.GetKeyframeData()._LoadFromJson(e.keyframeDataJson),this.GetPropertyTrackData()._LoadFromJson(e.propertyTrackDataJson))}}]),e}()
|
||
_C89.TrackData=function(){function e(t,n){_classCallCheck(this,e),this._timelineDataItem=n,this._trackDataItems=[],this._keyframeTimeMap=new Map,_C89.TimelineDataManager._CreateDataItems(this._trackDataItems,t,TrackDataItem,this)}return _createClass(e,[{key:"Release",value:function(){this._timelineDataItem=null
|
||
var e,t=_createForOfIteratorHelper(this._trackDataItems)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C89.clearArray(this._trackDataItems),this._trackDataItems=null,this._keyframeTimeMap.clear(),this._keyframeTimeMap=null}},{key:"GetTimelineDataItem",value:function(){return this._timelineDataItem}},{key:"AddEmptyTrackDataItem",value:function(){var e=new TrackDataItem(null,this)
|
||
return this._trackDataItems.push(e),e}},{key:"GetFirstKeyframeDataItem",value:function(e){return e.GetKeyframeData().GetKeyframeDataItemArray()[0]}},{key:"GetLastKeyframeDataItem",value:function(e){var t=e.GetKeyframeData().GetKeyframeDataItemArray()
|
||
return t[t.length-1]}},{key:"GetKeyFrameDataItemAtTime",value:function(e,t){var n=this._keyframeTimeMap.get(t)
|
||
if(n&&n.has(e))return n.get(e)
|
||
var r,a=_createForOfIteratorHelper(t.GetKeyframeData().keyframeDataItems())
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
if(i.GetTime()===e)return n||this._keyframeTimeMap.set(t,new Map),this._keyframeTimeMap.get(t).set(e,i),i}}catch(s){a.e(s)}finally{a.f()}}},{key:"GetFirstKeyFrameDataItemHigherThan",value:function(e,t){var n,r=_createForOfIteratorHelper(t.GetKeyframeData().keyframeDataItems())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.GetTime()>e)return a}}catch(i){r.e(i)}finally{r.f()}}},{key:"GetFirstKeyFrameDataItemHigherOrEqualThan",value:function(e,t){var n,r=_createForOfIteratorHelper(t.GetKeyframeData().keyframeDataItems())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.GetTime()>=e)return a}}catch(i){r.e(i)}finally{r.f()}}},{key:"GetFirstKeyFrameDataItemLowerOrEqualThan",value:function(e,t){var n,r=_createForOfIteratorHelper(t.GetKeyframeData().keyframeDataItemsReverse())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.GetTime()<=e)return a}}catch(i){r.e(i)}finally{r.f()}}},{key:"trackDataItems",value:_regeneratorRuntime().mark(function t(){var e,n,r
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=_createForOfIteratorHelper(this._trackDataItems),t.prev=1,e.s()
|
||
case 3:if((n=e.n()).done){t.next=9
|
||
break}return r=n.value,t.next=7,r
|
||
case 7:t.next=3
|
||
break
|
||
case 9:t.next=14
|
||
break
|
||
case 11:t.prev=11,t.t0=t["catch"](1),e.e(t.t0)
|
||
case 14:return t.prev=14,e.f(),t.finish(14)
|
||
case 17:case"end":return t.stop()}},t,this,[[1,11,14,17]])})},{key:"_SaveToJson",value:function(){return{trackDataItemsJson:this._trackDataItems.map(function(e){return e._SaveToJson()})}}},{key:"_LoadFromJson",value:function(e){e&&_C89.TimelineDataManager._LoadDataItemsFromJson(this._trackDataItems,e.trackDataItemsJson,TrackDataItem,this)}}]),e}()
|
||
var _C90=self.C3,SOURCE_DATA=0,SOURCE=0,PROPERTY=1,TYPE=2,MIN=3,MAX=4,_INTERPOLATION_MODE2=5,_RESULT_MODE2=6,_ENABLED=7,PROPERTY_KEYFRAMES=8,PropertyTrackDataItem=function(){function e(t,n){_classCallCheck(this,e),this._propertyTrackData=n,this._sourceAdapterId="",this._sourceAdapterArguments=null,this._property=null,this._type=null,this._min=NaN,this._max=NaN,this._interpolationMode="default",this._resultMode="default",this._enabled=!1,this._propertyKeyframeData=null,t&&(this._sourceAdapterId=t[SOURCE_DATA][SOURCE],this._sourceAdapterArguments=t[SOURCE_DATA].slice(1),this._property=t[PROPERTY],this._type=t[TYPE],this._min=t[MIN],this._max=t[MAX],this._interpolationMode=t[_INTERPOLATION_MODE2],this._resultMode=t[_RESULT_MODE2],this._enabled=!!t[_ENABLED],this._propertyKeyframeData=new _C90.PropertyKeyframeData(t[PROPERTY_KEYFRAMES],this))}return _createClass(e,[{key:"Release",value:function(){this._propertyKeyframeData.Release(),this._propertyKeyframeData=null,this._propertyTrackData=null,this._sourceAdapterArguments=null}},{key:"GetPropertyTrackData",value:function(){return this._propertyTrackData}},{key:"GetPropertyKeyframeData",value:function(){return this._propertyKeyframeData||(this._propertyKeyframeData=new _C90.PropertyKeyframeData(null,this)),this._propertyKeyframeData}},{key:"GetSourceAdapterId",value:function(){return this._sourceAdapterId}},{key:"SetSourceAdapterId",value:function(e){this._sourceAdapterId=e}},{key:"GetSourceAdapterArguments",value:function(){return this._sourceAdapterArguments}},{key:"SetSourceAdapterArguments",value:function(e){this._sourceAdapterArguments=e}},{key:"GetProperty",value:function(){return this._property}},{key:"SetProperty",value:function(e){this._property=e}},{key:"GetType",value:function(){return this._type}},{key:"SetType",value:function(e){this._type=e}},{key:"GetMin",value:function(){return this._min}},{key:"SetMin",value:function(e){this._min=e}},{key:"GetMax",value:function(){return this._max}},{key:"SetMax",value:function(e){this._max=e}},{key:"GetInterpolationMode",value:function(){return this._interpolationMode}},{key:"SetInterpolationMode",value:function(e){this._interpolationMode=e}},{key:"GetResultMode",value:function(){return this._resultMode}},{key:"SetResultMode",value:function(e){this._resultMode=e}},{key:"GetEnable",value:function(){return this._enabled}},{key:"SetEnable",value:function(e){this._enabled=!!e}},{key:"_SaveToJson",value:function(){return{propertyKeyframeDataJson:this._propertyKeyframeData._SaveToJson(),sourceAdapterId:this._sourceAdapterId,sourceAdapterArguments:this._sourceAdapterArguments,property:this._property,type:this._type,min:this._min,max:this._max,interpolationMode:this._interpolationMode,resultMode:this._resultMode,enabled:this._enabled}}},{key:"_LoadFromJson",value:function(e){e&&(this._sourceAdapterId=e.sourceAdapterId,this._sourceAdapterArguments=e.sourceAdapterArguments,this._property=e.property,this._type=e.type,this._min=e.min,this._max=e.max,this._interpolationMode=e.interpolationMode,this._resultMode=e.resultMode,this._enabled=e.enabled,this.GetPropertyKeyframeData()._LoadFromJson(e.propertyKeyframeDataJson))}}]),e}()
|
||
_C90.PropertyTrackData=function(){function e(t,n){_classCallCheck(this,e),this._trackDataItem=n,this._propertyTrackDataItems=[],this._propertyKeyframeTimeMap=new Map,_C90.TimelineDataManager._CreateDataItems(this._propertyTrackDataItems,t,PropertyTrackDataItem,this)}return _createClass(e,[{key:"Release",value:function(){this._trackDataItem=null
|
||
var e,t=_createForOfIteratorHelper(this._propertyTrackDataItems)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C90.clearArray(this._propertyTrackDataItems),this._propertyTrackDataItems=null,this._propertyKeyframeTimeMap.clear(),this._propertyKeyframeTimeMap=null}},{key:"GetTrackDataItem",value:function(){return this._trackDataItem}},{key:"AddEmptyPropertyTrackDataItem",value:function(){var e=new PropertyTrackDataItem(null,this)
|
||
return this._propertyTrackDataItems.push(e),e}},{key:"GetFirstPropertyKeyframeDataItem",value:function(e){var t=e.GetPropertyKeyframeData()
|
||
return t.GetPropertyKeyframeDataItemArray()[0]}},{key:"GetLastPropertyKeyframeDataItem",value:function(e){var t=e.GetPropertyKeyframeData(),n=t.GetPropertyKeyframeDataItemArray()
|
||
return n[n.length-1]}},{key:"GetPropertyKeyFrameDataItemAtTime",value:function(e,t){var n=this._propertyKeyframeTimeMap.get(t)
|
||
if(n&&n.has(e))return n.get(e)
|
||
var r,a=t.GetPropertyKeyframeData(),i=_createForOfIteratorHelper(a.propertyKeyframeDataItems())
|
||
try{for(i.s();!(r=i.n()).done;){var s=r.value
|
||
if(s.GetTime()===e)return n||this._propertyKeyframeTimeMap.set(t,new Map),this._propertyKeyframeTimeMap.get(t).set(e,s),s}}catch(o){i.e(o)}finally{i.f()}}},{key:"GetFirstPropertyKeyFrameDataItemHigherThan",value:function(e,t){var n,r=t.GetPropertyKeyframeData(),a=_createForOfIteratorHelper(r.propertyKeyframeDataItems())
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
if(i.GetTime()>e)return i}}catch(s){a.e(s)}finally{a.f()}}},{key:"GetFirstPropertyKeyFrameDataItemHigherOrEqualThan",value:function(e,t){var n,r=t.GetPropertyKeyframeData(),a=_createForOfIteratorHelper(r.propertyKeyframeDataItems())
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
if(i.GetTime()>=e)return i}}catch(s){a.e(s)}finally{a.f()}}},{key:"GetFirstPropertyKeyFrameDataItemLowerOrEqualThan",value:function(e,t){var n,r=t.GetPropertyKeyframeData(),a=_createForOfIteratorHelper(r.propertyKeyframeDataItemsReverse())
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
if(i.GetTime()<=e)return i}}catch(s){a.e(s)}finally{a.f()}}},{key:"propertyTrackDataItems",value:_regeneratorRuntime().mark(function t(){var e,n,r
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=_createForOfIteratorHelper(this._propertyTrackDataItems),t.prev=1,e.s()
|
||
case 3:if((n=e.n()).done){t.next=9
|
||
break}return r=n.value,t.next=7,r
|
||
case 7:t.next=3
|
||
break
|
||
case 9:t.next=14
|
||
break
|
||
case 11:t.prev=11,t.t0=t["catch"](1),e.e(t.t0)
|
||
case 14:return t.prev=14,e.f(),t.finish(14)
|
||
case 17:case"end":return t.stop()}},t,this,[[1,11,14,17]])})},{key:"_SaveToJson",value:function(){return{propertyTrackDataItemsJson:this._propertyTrackDataItems.map(function(e){return e._SaveToJson()})}}},{key:"_LoadFromJson",value:function(e){e&&_C90.TimelineDataManager._LoadDataItemsFromJson(this._propertyTrackDataItems,e.propertyTrackDataItemsJson,PropertyTrackDataItem,this)}}]),e}()
|
||
var _C91=self.C3,TIME=0,EASE=1,ENABLE=2,TAGS=3,KeyframeDataItem=function(){function e(t,n){if(_classCallCheck(this,e),this._keyframeData=n,this._time=-1,this._ease="noease",this._enable=!1,this._tags=null,this._lowerTags=null,t){this._time=t[TIME],this._ease=t[EASE],this._enable=!!t[ENABLE]
|
||
var r=t[TAGS]
|
||
this._tags=r?r.split(" "):[],this._lowerTags=new Set(this._tags.map(function(e){return e.toLowerCase()}))}}return _createClass(e,[{key:"Release",value:function(){this._keyframeData=null,_C91.clearArray(this._tags),this._tags=null,this._lowerTags.clear(),this._lowerTags=null}},{key:"GetKeyframeData",value:function(){return this._keyframeData}},{key:"GetTime",value:function(){return this._time}},{key:"SetTime",value:function(e){this._time=e}},{key:"GetEase",value:function(){return this._ease}},{key:"SetEase",value:function(e){this._ease=e}},{key:"GetEnable",value:function(){return this._enable}},{key:"SetEnable",value:function(e){this._enable=!!e}},{key:"GetTags",value:function(){return this._tags}},{key:"SetTags",value:function(e){this._tags=e?e.split(" "):[],this._lowerTags=new Set(this._tags.map(function(e){return e.toLowerCase()}))}},{key:"GetLowerTags",value:function(){return this._lowerTags}},{key:"HasTag",value:function(e){return this._lowerTags.has(e.toLowerCase())}},{key:"_SaveToJson",value:function(){return{time:this._time,ease:this._ease,enable:this._enable,tags:this._tags}}},{key:"_LoadFromJson",value:function(e){e&&(this._time=e.time,this._ease=e.ease,this._enable=e.enable,this._tags=e.tags,this._lowerTags=new Set(this._tags.map(function(e){return e.toLowerCase()})))}}]),e}()
|
||
_C91.KeyframeData=function(){function e(t,n){_classCallCheck(this,e),this._trackDataItem=n,this._keyframeDataItems=[],_C91.TimelineDataManager._CreateDataItems(this._keyframeDataItems,t,KeyframeDataItem,this)}return _createClass(e,[{key:"Release",value:function(){this._trackDataItem=null
|
||
var e,t=_createForOfIteratorHelper(this._keyframeDataItems)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C91.clearArray(this._keyframeDataItems),this._keyframeDataItems=null}},{key:"GetTrackDataItem",value:function(){return this._trackDataItem}},{key:"GetKeyframeDataItemCount",value:function(){return this._keyframeDataItems.length}},{key:"GetKeyframeDataItemArray",value:function(){return this._keyframeDataItems}},{key:"AddEmptyKeyframeDataItem",value:function(){var e=new KeyframeDataItem(null,this)
|
||
return this._keyframeDataItems.push(e),e}},{key:"DeleteKeyframeDataItems",value:function(e){var t,n=_createForOfIteratorHelper(this._keyframeDataItems)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(e(r)){var a=this._keyframeDataItems.indexOf(r);-1!==a&&(r.Release(),this._keyframeDataItems.splice(a,1))}}}catch(i){n.e(i)}finally{n.f()}this.SortKeyframeDataItems()}},{key:"SortKeyframeDataItems",value:function(){this._keyframeDataItems.sort(function(e,t){return e.GetTime()-t.GetTime()})}},{key:"GetKeyframeDataItemIndex",value:function(e){return this._keyframeDataItems.indexOf(e)}},{key:"GetKeyframeDataItemFromIndex",value:function(e){return this._keyframeDataItems[e]}},{key:"keyframeDataItems",value:_regeneratorRuntime().mark(function t(){var e,n,r
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=_createForOfIteratorHelper(this._keyframeDataItems),t.prev=1,e.s()
|
||
case 3:if((n=e.n()).done){t.next=9
|
||
break}return r=n.value,t.next=7,r
|
||
case 7:t.next=3
|
||
break
|
||
case 9:t.next=14
|
||
break
|
||
case 11:t.prev=11,t.t0=t["catch"](1),e.e(t.t0)
|
||
case 14:return t.prev=14,e.f(),t.finish(14)
|
||
case 17:case"end":return t.stop()}},t,this,[[1,11,14,17]])})},{key:"keyframeDataItemsReverse",value:_regeneratorRuntime().mark(function n(){var e
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=this._keyframeDataItems.length-1
|
||
case 1:if(!(e>=0)){t.next=7
|
||
break}return t.next=4,this._keyframeDataItems[e]
|
||
case 4:e--,t.next=1
|
||
break
|
||
case 7:case"end":return t.stop()}},n,this)})},{key:"_SaveToJson",value:function(){return{keyframeDataItemsJson:this._keyframeDataItems.map(function(e){return e._SaveToJson()})}}},{key:"_LoadFromJson",value:function(e){e&&_C91.TimelineDataManager._LoadDataItemsFromJson(this._keyframeDataItems,e.keyframeDataItemsJson,KeyframeDataItem,this)}}]),e}()
|
||
var _C92=self.C3,VALUE_DATA=0,VALUE_DATA_VALUE=0,VALUE_DATA_ABSOLUTE_VALUE=1,VALUE_DATA_TYPE=2,_TIME=1,_EASE=2,_ENABLE=3,ADDONS=4,PropertyKeyframeDataItem=function(){function e(t,n){_classCallCheck(this,e),this._propertyKeyframeData=n,this._value=null,this._aValue=null,this._type="",this._time=NaN,this._ease="noease",this._enable=!1,this._addonData=null,t&&(this._value=t[VALUE_DATA][VALUE_DATA_VALUE],this._aValue=t[VALUE_DATA][VALUE_DATA_ABSOLUTE_VALUE],this._type=t[VALUE_DATA][VALUE_DATA_TYPE],this._time=t[_TIME],this._ease=t[_EASE],this._enable=!!t[_ENABLE],this._addonData=null,t[ADDONS]&&(this._addonData=new _C92.AddonData(t[ADDONS],this)))}return _createClass(e,[{key:"Release",value:function(){this._propertyKeyframeData=null,this._addonData&&(this._addonData.Release(),this._addonData=null)}},{key:"GetAddonData",value:function(){return this._addonData}},{key:"GetValue",value:function(){return this._value}},{key:"SetValue",value:function(e){"color"===this._type&&_C92.IsFiniteNumber(e)?(this._value[0]=_C92.GetRValue(e),this._value[1]=_C92.GetGValue(e),this._value[2]=_C92.GetBValue(e)):this._value=e}},{key:"GetAbsoluteValue",value:function(){return this._aValue}},{key:"SetAbsoluteValue",value:function(e){"color"===this._type&&_C92.IsFiniteNumber(e)?(this._aValue[0]=_C92.GetRValue(e),this._aValue[1]=_C92.GetGValue(e),this._aValue[2]=_C92.GetBValue(e)):this._aValue=e}},{key:"GetValueWithResultMode",value:function(){var e=this._propertyKeyframeData.GetPropertyTrackDataItem().GetResultMode()
|
||
return"relative"===e?this.GetValue():"absolute"===e?this.GetAbsoluteValue():void 0}},{key:"GetType",value:function(){return this._type}},{key:"SetType",value:function(e){this._type=e}},{key:"GetTime",value:function(){return this._time}},{key:"SetTime",value:function(e){this._time=e}},{key:"GetEase",value:function(){return this._ease}},{key:"SetEase",value:function(e){this._ease=e}},{key:"GetEnable",value:function(){return this._enable}},{key:"SetEnable",value:function(e){this._enable=!!e}},{key:"GetAddOn",value:function(e){if(this.GetAddonData()){var t,n=_createForOfIteratorHelper(this.GetAddonData().addonDataItems())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.GetId()===e)return r}}catch(a){n.e(a)}finally{n.f()}}}},{key:"_SaveToJson",value:function(){var e=this._addonData
|
||
return{addonDataJson:e?e._SaveToJson():e,value:this._value,aValue:this._aValue,type:this._type,time:this._time,ease:this._ease,enable:this._enable}}},{key:"_LoadFromJson",value:function(e){e&&(e.addonDataJson&&this._addonData._SetFromJson(e.addonDataJson),this._value=e.value,this._aValue=e.aValue,this._type=e.type,this._time=e.time,this._ease=e.ease,this._enable=e.enable)}}]),e}()
|
||
_C92.PropertyKeyframeData=function(){function e(t,n){_classCallCheck(this,e),this._propertyTrackDataItem=n,this._propertyKeyframeDataItems=[],_C92.TimelineDataManager._CreateDataItems(this._propertyKeyframeDataItems,t,PropertyKeyframeDataItem,this)}return _createClass(e,[{key:"Release",value:function(){this._propertyTrackDataItem=null
|
||
var e,t=_createForOfIteratorHelper(this._propertyKeyframeDataItems)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C92.clearArray(this._propertyKeyframeDataItems),this._propertyKeyframeDataItems=null}},{key:"AddEmptyPropertyKeyframeDataItem",value:function(){var e=new PropertyKeyframeDataItem(null,this)
|
||
return this._propertyKeyframeDataItems.push(e),e}},{key:"DeletePropertyKeyframeDataItems",value:function(e){var t,n=_createForOfIteratorHelper(this._propertyKeyframeDataItems)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(e(r)){var a=this._propertyKeyframeDataItems.indexOf(r);-1!==a&&(r.Release(),this._propertyKeyframeDataItems.splice(a,1))}}}catch(i){n.e(i)}finally{n.f()}this.SortPropertyKeyFrameDataItems()}},{key:"SortPropertyKeyFrameDataItems",value:function(){this._propertyKeyframeDataItems.sort(function(e,t){return e.GetTime()-t.GetTime()})}},{key:"GetPropertyTrackDataItem",value:function(){return this._propertyTrackDataItem}},{key:"GetPropertyKeyframeDataItemCount",value:function(){return this._propertyKeyframeDataItems.length}},{key:"GetPropertyKeyframeDataItemArray",value:function(){return this._propertyKeyframeDataItems}},{key:"propertyKeyframeDataItems",value:_regeneratorRuntime().mark(function t(){var e,n,r
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=_createForOfIteratorHelper(this._propertyKeyframeDataItems),t.prev=1,e.s()
|
||
case 3:if((n=e.n()).done){t.next=9
|
||
break}return r=n.value,t.next=7,r
|
||
case 7:t.next=3
|
||
break
|
||
case 9:t.next=14
|
||
break
|
||
case 11:t.prev=11,t.t0=t["catch"](1),e.e(t.t0)
|
||
case 14:return t.prev=14,e.f(),t.finish(14)
|
||
case 17:case"end":return t.stop()}},t,this,[[1,11,14,17]])})},{key:"propertyKeyframeDataItemsReverse",value:_regeneratorRuntime().mark(function n(){var e
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=this._propertyKeyframeDataItems.length-1
|
||
case 1:if(!(e>=0)){t.next=7
|
||
break}return t.next=4,this._propertyKeyframeDataItems[e]
|
||
case 4:e--,t.next=1
|
||
break
|
||
case 7:case"end":return t.stop()}},n,this)})},{key:"_SaveToJson",value:function(){return{propertyKeyframeDataItemsJson:this._propertyKeyframeDataItems.map(function(e){return e._SaveToJson()})}}},{key:"_LoadFromJson",value:function(e){e&&_C92.TimelineDataManager._LoadDataItemsFromJson(this._propertyKeyframeDataItems,e.propertyKeyframeDataItemsJson,PropertyKeyframeDataItem,this)}}]),e}()
|
||
var _C93=self.C3,ADDON_ID=0,ADDON_DATA=1,AddonDataItem=function(){function e(t,n){_classCallCheck(this,e),this._addonData=n,this._id=t[ADDON_ID],this._data=t[ADDON_DATA]}return _createClass(e,[{key:"Release",value:function(){this._addonData=null,this._data=null}},{key:"GetAddonData",value:function(){return this._addonData}},{key:"GetId",value:function(){return this._id}},{key:"_SaveToJson",value:function(){return{id:this._id,data:this._data}}},{key:"_LoadFromJson",value:function(e){e&&(this._id=e.id,this._data=e.data)}}]),e}(),START_ANCHOR=0,START_ENABLE=1,END_ANCHOR=2,END_ENABLE=3,AddonDataCubicBezierItem=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,r),a._startAnchor=a._data[START_ANCHOR],a._startEnable=!!a._data[START_ENABLE],a._endAnchor=a._data[END_ANCHOR],a._endEnable=!!a._data[END_ENABLE],a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetStartAnchor",value:function(){return this._startAnchor}},{key:"GetStartEnable",value:function(){return this._startEnable}},{key:"GetEndAnchor",value:function(){return this._endAnchor}},{key:"GetEndEnable",value:function(){return this._endEnable}},{key:"_SaveToJson",value:function(){return Object.assign(_get(_getPrototypeOf(t.prototype),"_SaveToJson",this).call(this),{startAnchor:this._startAnchor,startEnable:!!this._startEnable,endAnchor:this._endAnchor,endEnable:!!this._endEnable})}},{key:"_LoadFromJson",value:function(e){e&&(_get(_getPrototypeOf(t.prototype),"_LoadFromJson",this).call(this,e),this._startAnchor=e.startAnchor,this._startEnable=!!e.startEnable,this._endAnchor=e.endAnchor,this._endEnable=!!e.endEnable)}}]),t}(AddonDataItem),DIRECTION=0,REVOLUTIONS=1,AddonDataAngleItem=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,r),a._direction=a._data[DIRECTION],a._revolutions=a._data[REVOLUTIONS],a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetDirection",value:function(){return this._direction}},{key:"GetRevolutions",value:function(){return this._revolutions}},{key:"_SaveToJson",value:function(){return Object.assign(_get(_getPrototypeOf(t.prototype),"_SaveToJson",this).call(this),{direction:this._direction,revolutions:this._revolutions})}},{key:"_LoadFromJson",value:function(e){e&&(_get(_getPrototypeOf(t.prototype),"_LoadFromJson",this).call(this,e),this._direction=e.direction,this._revolutions=e.revolutions)}}]),t}(AddonDataItem)
|
||
_C93.AddonData=function(){function e(t,n){_classCallCheck(this,e),this._propertyKeyframeDataItem=n,this._addonDataItems=[],_C93.TimelineDataManager._CreateDataItems(this._addonDataItems,t,{prop:0,map:new Map([["cubic-bezier",AddonDataCubicBezierItem],["angle",AddonDataAngleItem]])},this)}return _createClass(e,[{key:"Release",value:function(){this._propertyKeyframeDataItem=null
|
||
var e,t=_createForOfIteratorHelper(this._addonDataItems)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C93.clearArray(this._addonDataItems),this._addonDataItems=null}},{key:"GetPropertyKeyframeDataItem",value:function(){return this._propertyKeyframeDataItem}},{key:"addonDataItems",value:_regeneratorRuntime().mark(function t(){var e,n,r
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=_createForOfIteratorHelper(this._addonDataItems),t.prev=1,e.s()
|
||
case 3:if((n=e.n()).done){t.next=9
|
||
break}return r=n.value,t.next=7,r
|
||
case 7:t.next=3
|
||
break
|
||
case 9:t.next=14
|
||
break
|
||
case 11:t.prev=11,t.t0=t["catch"](1),e.e(t.t0)
|
||
case 14:return t.prev=14,e.f(),t.finish(14)
|
||
case 17:case"end":return t.stop()}},t,this,[[1,11,14,17]])})},{key:"_SaveToJson",value:function(){return{addonDataItemsJson:this._addonDataItems.map(function(e){return e._SaveToJson()})}}},{key:"_LoadFromJson",value:function(e){e&&_C93.TimelineDataManager._LoadDataItemsFromJson(this._addonDataItems,e.addonDataItemsJson,{prop:"id",map:new Map([["cubic-bezier",AddonDataCubicBezierItem],["angle",AddonDataAngleItem]])},this)}}]),e}()
|
||
var _C94=self.C3,INITIAL_VALUE_MODE_START_VALUE="start-value",INITIAL_VALUE_MODE_CURRENT_STATE="current-state",createdTweens=0
|
||
_C94.Tween=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,"tween-".concat(createdTweens++),e,r),a._id="",a._destroyInstanceOnComplete=!1,a._initialValueMode=INITIAL_VALUE_MODE_START_VALUE,a._on_completed_callbacks=null,a._on_started_callbacks=null,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetInstance",value:function(){var e=this.GetTracks()
|
||
if(e&&e.length){var t=e[0]
|
||
if(t){var n=t.GetInstance()
|
||
return t.IsInstanceValid()?n:null}}}},{key:"AddStartedCallback",value:function(e){this._on_started_callbacks||(this._on_started_callbacks=[]),this._on_started_callbacks.push(e)}},{key:"AddCompletedCallback",value:function(e){this._on_completed_callbacks||(this._on_completed_callbacks=[]),this._on_completed_callbacks.push(e)}},{key:"RemoveStartedCallback",value:function(e){if(this._on_started_callbacks){var t=this._on_started_callbacks.indexOf(e);-1!==t&&this._on_started_callbacks.splice(t,1)}}},{key:"RemoveCompletedCallback",value:function(e){if(this._on_completed_callbacks){var t=this._on_completed_callbacks.indexOf(e);-1!==t&&this._on_completed_callbacks.splice(t,1)}}},{key:"SetStartValue",value:function(e,t){var n,r=_createForOfIteratorHelper(this._tracks)
|
||
try{for(r.s();!(n=r.n()).done;){var a,i=n.value,s=_createForOfIteratorHelper(i._propertyTracks)
|
||
try{for(s.s();!(a=s.n()).done;){var o=a.value
|
||
if(o.GetPropertyName()===t){var u=o.GetPropertyTrackData(),l=o.GetPropertyTrackDataItem(),c=u.GetFirstPropertyKeyframeDataItem(l)
|
||
c.SetValue(e),c.SetAbsoluteValue(e)}}}catch(h){s.e(h)}finally{s.f()}}}catch(h){r.e(h)}finally{r.f()}}},{key:"_GetPropertyTrackState",value:function(e){var t,n=_createForOfIteratorHelper(this._tracks)
|
||
try{for(n.s();!(t=n.n()).done;){var r,a=t.value,i=_createForOfIteratorHelper(a._propertyTracks)
|
||
try{for(i.s();!(r=i.n()).done;){var s=r.value
|
||
if(s.GetPropertyName()===e)return s}}catch(o){i.e(o)}finally{i.f()}}}catch(o){n.e(o)}finally{n.f()}}},{key:"BeforeSetEndValues",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=this._GetPropertyTrackState(r)
|
||
this.SetStartValue(a.GetCurrentState(),r)}}catch(i){n.e(i)}finally{n.f()}this.IsForwardPlayBack()?(this.SetTotalTime(this.GetTotalTime()-this.GetTime()),this._SetTime(0)):(this.SetTotalTime(this.GetTime()),this._SetTime(this.GetTotalTime())),this.SetInitialStateFromSetTime()}},{key:"SetEndValue",value:function(e,t){var n=this._GetPropertyTrackState(t),r=n.GetPropertyTrackData(),a=n.GetPropertyTrackDataItem(),i=r.GetLastPropertyKeyframeDataItem(a)
|
||
i.SetTime(this.GetTotalTime()),i.SetValue(e),i.SetAbsoluteValue(e)}},{key:"SetId",value:function(e){this._id=e}},{key:"GetId",value:function(){return this._id}},{key:"SetInitialValueMode",value:function(e){this._initialValueMode=e}},{key:"GetInitialValueMode",value:function(){return this._initialValueMode}},{key:"SetDestroyInstanceOnComplete",value:function(e){this._destroyInstanceOnComplete=e}},{key:"GetDestroyInstanceOnComplete",value:function(){return this._destroyInstanceOnComplete}},{key:"OnStarted",value:function(){if(this._on_started_callbacks){var e,t=_createForOfIteratorHelper(this._on_started_callbacks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n(this)}}catch(r){t.e(r)}finally{t.f()}}if(!this.IsComplete()){var a,i=_createForOfIteratorHelper(this._tracks)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
s.CompareSaveStateWithCurrent()}}catch(r){i.e(r)}finally{i.f()}}}},{key:"OnCompleted",value:function(){this._completedTick=this._runtime.GetTickCount()}},{key:"FinishTriggers",value:function(){if(!this._finishedTriggers&&(this._finishedTriggers=!0,this._on_completed_callbacks)){var e,t=_createForOfIteratorHelper(this._on_completed_callbacks)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n(this)}}catch(r){t.e(r)}finally{t.f()}}}},{key:"SetTime",value:function(e){this._DeleteIntermediateKeyframes(),_get(_getPrototypeOf(t.prototype),"SetTime",this).call(this,e)}},{key:"SetInitialState",value:function(e){if(!this.InitialStateSet()&&this.GetInitialValueMode()===INITIAL_VALUE_MODE_CURRENT_STATE){var n,r=_createForOfIteratorHelper(this._tracks)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
a.CompareInitialStateWithCurrent()}}catch(i){r.e(i)}finally{r.f()}}_get(_getPrototypeOf(t.prototype),"SetInitialState",this).call(this,e)}},{key:"Stop",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!1
|
||
if(_get(_getPrototypeOf(t.prototype),"Stop",this).call(this,e),!this.IsComplete()){var n,r=_createForOfIteratorHelper(this._tracks)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
a.SaveState()}}catch(i){r.e(i)}finally{r.f()}}}},{key:"Reset",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:!0,n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:!1
|
||
this._DeleteIntermediateKeyframes(),_get(_getPrototypeOf(t.prototype),"Reset",this).call(this,e,n)}},{key:"_DeleteIntermediateKeyframes",value:function(){var e,t=this,n=_createForOfIteratorHelper(this._tracks)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value,a=function(e){var n=e.GetTime(),r=t.GetTotalTime()
|
||
return 0!==n&&n!==r}
|
||
r.DeleteKeyframes(a),r.DeletePropertyKeyframes(a)}}catch(i){n.e(i)}finally{n.f()}}},{key:"_OnBeforeChangeLayout",value:function(){if(this.IsReleased())return!0
|
||
var e=this.GetInstance()
|
||
return e&&e.GetObjectClass().IsGlobal()?!1:(this._timelineManager.CompleteTimeline(this),this.ResetBeforeChangeLayout(),!0)}},{key:"MaybeTriggerKeyframeReachedConditions",value:function(){}},{key:"Tick",value:function(e,n){var r=this.GetInstance(),a=this.GetRuntime().GetDt(r)
|
||
_get(_getPrototypeOf(t.prototype),"Tick",this).call(this,a,1)}},{key:"_SaveToJson",value:function(){var e=_get(_getPrototypeOf(t.prototype),"_SaveToJson",this).call(this),n=this.GetTimelineDataItem()
|
||
return Object.assign(e,{tweenDataItemJson:n._SaveToJson(),id:this._id,destroyInstanceOnComplete:this._destroyInstanceOnComplete,initialValueMode:this._initialValueMode})}},{key:"_LoadFromJson",value:function(e){if(e){var n=this.GetTimelineDataItem()
|
||
n._LoadFromJson(e.tweenDataItemJson),_get(_getPrototypeOf(t.prototype),"_LoadFromJson",this).call(this,e),this._id=e.id,this._destroyInstanceOnComplete=e.destroyInstanceOnComplete,this._initialValueMode=e.initialValueMode}}}],[{key:"IsPlaying",value:function(e){return e.IsPlaying()}},{key:"IsPaused",value:function(e){return e.IsPaused()}},{key:"Build",value:function(e){var t=e.runtime.GetTimelineManager(),n=new _C94.TimelineDataItem
|
||
if(e.json){n._LoadFromJson(e.json.tweenDataItemJson)
|
||
var r=new _C94.Tween(n,t)
|
||
return r._LoadFromJson(e.json),r}var a=new _C94.Tween(n,t)
|
||
_C94.IsArray(e.propertyTracksConfig)||(e.propertyTracksConfig=[e.propertyTracksConfig]),a.SetId(e.id),a.SetTags(e.tags),a.SetInitialValueMode(e.initialValueMode),a.SetDestroyInstanceOnComplete(e.releaseOnComplete),a.SetLoop(e.loop),a.SetPingPong(e.pingPong),a.SetTotalTime(e.time),a.SetStep(0),a.SetInterpolationMode("default"),a.SetResultMode(e.propertyTracksConfig[0].resultMode)
|
||
var i=a.AddTrack()
|
||
i.SetInstanceUID(e.instance.GetUID()),i.SetInterpolationMode("default"),i.SetResultMode(e.propertyTracksConfig[0].resultMode),i.SetEnable(!0),i.SetObjectClassIndex(e.instance.GetObjectClass().GetIndex()),i.SetOriginalWidth(e.instance.GetWorldInfo().GetWidth()),i.SetOriginalHeight(e.instance.GetWorldInfo().GetHeight())
|
||
var s=i.AddKeyframe()
|
||
s.SetTime(0),s.SetEase("noease"),s.SetEnable(!0),s.SetTags("")
|
||
var o=i.AddKeyframe()
|
||
o.SetTime(e.time),o.SetEase("noease"),o.SetEnable(!0),o.SetTags("")
|
||
var u,l=_createForOfIteratorHelper(e.propertyTracksConfig)
|
||
try{for(l.s();!(u=l.n()).done;){var c=u.value,h=i.AddPropertyTrack()
|
||
h.SetSourceAdapterId(c.sourceId),h.SetSourceAdapterArgs(c.sourceArgs),h.SetPropertyName(c.property),h.SetPropertyType(c.type),h.SetMin(NaN),h.SetMax(NaN),h.SetInterpolationMode("default"),h.SetResultMode(c.resultMode),h.SetEnable(!0)
|
||
var _=h.AddPropertyKeyframe()
|
||
_.SetType(c.valueType),_.SetTime(0),_.SetEase(c.ease),_.SetEnable(!0),_.SetValue(c.startValue),_.SetAbsoluteValue(c.startValue)
|
||
var f=h.AddPropertyKeyframe()
|
||
f.SetType(c.valueType),f.SetTime(e.time),f.SetEase(c.ease),f.SetEnable(!0),f.SetValue(c.endValue),f.SetAbsoluteValue(c.endValue)}}catch(d){l.e(d)}finally{l.f()}return a}}]),t}(_C94.TimelineState)
|
||
var _C95=self.C3,_Ease=self.Ease,_NAME3=0,TRANSITION_KEYFRAMES=1
|
||
_C95.Transition=function(e){function t(e){var r
|
||
_classCallCheck(this,t),r=n.call(this),r._name=e[_NAME3],r._transitionKeyframes=[]
|
||
var a,i=_createForOfIteratorHelper(e[TRANSITION_KEYFRAMES])
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value,o=_C95.TransitionKeyframe.Create(_assertThisInitialized(r),s)
|
||
r._transitionKeyframes.push(o)}}catch(u){i.e(u)}finally{i.f()}return r._precalculatedSamples=new Map,r._transitionKeyframeCache=new Map,r._PreCalcSamples(),_Ease.AddCustomEase(r._name,function(e,t,n,a){return r.Interpolate(e,t,n,a)}),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){var e,t=_createForOfIteratorHelper(this._transitionKeyframes)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C95.clearArray(this._transitionKeyframes),this._transitionKeyframes=null,this._precalculatedSamples.clear(),this._precalculatedSamples=null,this._transitionKeyframeCache.clear(),this._transitionKeyframeCache=null}},{key:"GetTransitionKeyFrameAt",value:function(e){var t=this._transitionKeyframeCache.get(e)
|
||
if(t)return t
|
||
var n,r=_createForOfIteratorHelper(this._transitionKeyframes)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.GetValueX()===e)return this._transitionKeyframeCache.set(e,a),a}}catch(i){r.e(i)}finally{r.f()}}},{key:"GetFirstTransitionKeyFrameHigherThan",value:function(e){var t,n=_createForOfIteratorHelper(this._transitionKeyframes)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.GetValueX()>e)return r}}catch(a){n.e(a)}finally{n.f()}}},{key:"GetFirstTransitionKeyFrameHigherOrEqualThan",value:function(e){var t,n=_createForOfIteratorHelper(this._transitionKeyframes)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.GetValueX()>=e)return r}}catch(a){n.e(a)}finally{n.f()}}},{key:"GetFirstTransitionKeyFrameLowerOrEqualThan",value:function(e){for(var t=this._transitionKeyframes.length-1;t>=0;t--){var n=this._transitionKeyframes[t]
|
||
if(n.GetValueX()<=e)return n}}},{key:"Interpolate",value:function(e,t,n,r){var a=e/r,i=this.GetTransitionKeyFrameAt(a),s=null
|
||
i?s=this.GetFirstTransitionKeyFrameHigherThan(a):(i=this.GetFirstTransitionKeyFrameLowerOrEqualThan(a),s=this.GetFirstTransitionKeyFrameHigherOrEqualThan(a))
|
||
var o=s.GetValueX()-i.GetValueX(),u=_C95.mapToRange(a,i.GetValueX(),s.GetValueX(),0,o),l=i.GetValueX(),c=i.GetValueY(),h=i.GetValueX()+i.GetStartAnchorX(),_=i.GetValueY()+i.GetStartAnchorY(),f=s.GetValueX()+s.GetEndAnchorX(),d=s.GetValueY()+s.GetEndAnchorY(),p=s.GetValueX(),v=s.GetValueY(),m=_Ease.GetRuntimeEase("spline")(u,l,c,h,_,f,d,p,v,this._precalculatedSamples.get(i))
|
||
return m+=i.GetValueY(),(1-m)*t+m*(t+n)}},{key:"_PreCalcSamples",value:function(){this._precalculatedSamples.clear()
|
||
for(var e=0;e<this._transitionKeyframes.length-1;e++){var t=this._transitionKeyframes[e]
|
||
if(t.GetStartEnable()){var n=t,r=this._transitionKeyframes[e+1],a=n.GetValueX(),i=n.GetValueX()+n.GetStartAnchorX(),s=r.GetValueX()+r.GetEndAnchorX(),o=r.GetValueX()
|
||
this._precalculatedSamples.set(n,_Ease.GetBezierSamples(a,i,s,o))}}}}],[{key:"Create",value:function(e){return _C95.New(_C95.Transition,e)}}]),t}(_C95.DefendedBase)
|
||
var _C96=self.C3,VALUE_X=0,VALUE_Y=1,START_ANCHOR_X=2,START_ANCHOR_Y=3,END_ANCHOR_X=4,END_ANCHOR_Y=5,_START_ENABLE=6,_END_ENABLE=7
|
||
_C96.TransitionKeyframe=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._transition=e,a._valueX=r[VALUE_X],a._valueY=r[VALUE_Y],a._startAnchorX=r[START_ANCHOR_X],a._startAnchorY=r[START_ANCHOR_Y],a._endAnchorX=r[END_ANCHOR_X],a._endAnchorY=r[END_ANCHOR_Y],a._startEnable=r[_START_ENABLE],a._endEnable=r[_END_ENABLE],a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._transition=null}},{key:"GetValueX",value:function(){return this._valueX}},{key:"GetValueY",value:function(){return this._valueY}},{key:"GetStartAnchorX",value:function(){return this._startAnchorX}},{key:"GetStartAnchorY",value:function(){return this._startAnchorY}},{key:"GetEndAnchorX",value:function(){return this._endAnchorX}},{key:"GetEndAnchorY",value:function(){return this._endAnchorY}},{key:"GetStartEnable",value:function(){return this._startEnable}},{key:"GetEndEnable",value:function(){return this._endEnable}}],[{key:"Create",value:function(e,t){return _C96.New(_C96.TransitionKeyframe,e,t)}}]),t}(_C96.DefendedBase)
|
||
var _C97=self.C3
|
||
_C97.TransitionManager=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e,r._transitions=[],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){var e,t=_createForOfIteratorHelper(this._transitions)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C97.clearArray(this._transitions),this._transitions=null}},{key:"Create",value:function(e){this._transitions.push(_C97.Transition.Create(e))}}]),t}(_C97.DefendedBase)
|
||
var _C98=self.C3
|
||
_C98.SolStack=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._objectClass=e,r._stack=[],r._stack.push(_C98.New(_C98.Sol,_assertThisInitialized(r))),r._index=0,r._current=r._stack[0],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){var e,t=_createForOfIteratorHelper(this._stack)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C98.clearArray(this._stack),this._current=null,this._objectClass=null}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"GetCurrentSol",value:function(){return this._current}},{key:"Clear",value:function(){this.GetCurrentSol().Clear()}},{key:"PushClean",value:function(){var e=this._stack,t=++this._index
|
||
if(t===e.length){var n=_C98.New(_C98.Sol,this)
|
||
e.push(n),this._current=n}else{var r=e[t]
|
||
r.Reset(),this._current=r}}},{key:"PushCopy",value:function(){var e=this._stack,t=++this._index
|
||
t===e.length&&e.push(_C98.New(_C98.Sol,this))
|
||
var n=e[t]
|
||
n.Copy(e[t-1]),this._current=n}},{key:"Pop",value:function(){this._current=this._stack[--this._index]}},{key:"RemoveInstances",value:function(e){for(var t=this._stack,n=0,r=t.length;r>n;++n)t[n].RemoveInstances(e)}}]),t}(_C98.DefendedBase)
|
||
var _C99=self.C3
|
||
_C99.Sol=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._stack=e,r._objectClass=r._stack.GetObjectClass(),r._eventStack=r._objectClass.GetRuntime().GetEventStack(),r._selectAll=!0,r._instances=[],r._elseInstances=[],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.ClearArrays(),this._stack=null,this._objectClass=null,this._eventStack=null}},{key:"ClearArrays",value:function(){_C99.clearArray(this._instances),_C99.clearArray(this._elseInstances)}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"IsSelectAll",value:function(){return this._selectAll}},{key:"HasAnyInstances",value:function(){return this._selectAll?!!this._objectClass.GetInstanceCount():!!this._instances.length}},{key:"GetInstances",value:function(){return this._selectAll?this._objectClass.GetInstances():this._instances}},{key:"HasAnyElseInstances",value:function(){return!!this._elseInstances.length}},{key:"GetElseInstances",value:function(){return this._elseInstances}},{key:"GetExpressionInstances",value:function(){var e=this.GetInstances()
|
||
return e.length?e:this._elseInstances}},{key:"Reset",value:function(){this._selectAll=!0,_C99.clearArray(this._elseInstances)}},{key:"Clear",value:function(){this._selectAll=!0}},{key:"Copy",value:function(e){e.IsSelectAll()?this.Reset():(this._selectAll=!1,_C99.shallowAssignArray(this._instances,e._instances),_C99.clearArray(this._elseInstances))}},{key:"_PushInstance",value:function(e){this._instances.push(e)}},{key:"_PushElseInstance",value:function(e){this._elseInstances.push(e)}},{key:"_SetSelectAll",value:function(e){this._selectAll=!!e}},{key:"_GetOwnInstances",value:function(){return this._instances}},{key:"_GetOwnElseInstances",value:function(){return this._elseInstances}},{key:"SetSinglePicked",value:function(e){this._selectAll=!1,_C99.clearArray(this._instances),this._instances.push(e)}},{key:"SetArrayPicked",value:function(e){this._selectAll=!1,_C99.shallowAssignArray(this._instances,e)}},{key:"SetSetPicked",value:function(e){this._selectAll=!1,_C99.clearArray(this._instances)
|
||
var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
this._instances.push(r)}}catch(a){n.e(a)}finally{n.f()}}},{key:"AddElseInstances",value:function(e,t){var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
e.has(a)||this._elseInstances.push(a)}}catch(i){r.e(i)}finally{r.f()}}},{key:"TransferElseInstancesToOwn",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
this._instances.push(r)}}catch(a){n.e(a)}finally{n.f()}_C99.arrayRemoveAllInSet(this._elseInstances,e)}},{key:"PickOne",value:function(e){if(e)if(this._eventStack.GetCurrentStackFrame().GetCurrentEvent().IsOrBlock()){this.IsSelectAll()&&(_C99.clearArray(this._instances),_C99.shallowAssignArray(this._elseInstances,e.GetObjectClass().GetInstances()),this._selectAll=!1)
|
||
var t=this._elseInstances.indexOf(e);-1!==t&&(this._instances.push(this._elseInstances[t]),this._elseInstances.splice(t,1))}else this.SetSinglePicked(e)}},{key:"RemoveInstances",value:function(e){_C99.arrayRemoveAllInSet(this._instances,e),_C99.arrayRemoveAllInSet(this._elseInstances,e)}}]),t}(_C99.DefendedBase)
|
||
var _C100=self.C3
|
||
_C100.EventStack=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._eventSheetManager=e,r._runtime=r._eventSheetManager.GetRuntime(),r._stack=[],r._stack.push(_C100.New(_C100.EventStackFrame,_assertThisInitialized(r),null)),r._index=0,r._expFuncStack=[],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){var e,t=_createForOfIteratorHelper(this._stack)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C100.clearArray(this._stack),_C100.clearArray(this._expFuncStack),this._eventSheetManager=null,this._runtime=null}},{key:"GetEventSheetManager",value:function(){return this._eventSheetManager}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetCurrentStackFrame",value:function(){return this._stack[this._index]}},{key:"Push",value:function(e){var t=this._stack,n=++this._index
|
||
if(n===t.length){var r=_C100.New(_C100.EventStackFrame,this,e)
|
||
return t.push(r),r}var a=t[n]
|
||
return a.Reset(e),a}},{key:"Pop",value:function(){--this._index}},{key:"PushExpFunc",value:function(e){this._expFuncStack.push(e)}},{key:"PopExpFunc",value:function(){this._expFuncStack.pop()}},{key:"GetCurrentExpFuncStackFrame",value:function(){var e=this._expFuncStack
|
||
return 0===e.length?null:e[e.length-1]}}]),t}(_C100.DefendedBase)
|
||
var _C101=self.C3
|
||
_C101.EventStackFrame=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._stack=e,a._runtime=a._stack.GetRuntime(),a._currentEvent=r,a._cndIndex=0,a._actIndex=0,a._lastEventTrue=!1,a._elseBranchRan=!1,a._expressionObjectClass=null,a._functionReturnType=0,a._functionReturnValue=0,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.Reset(null),this._stack=null,this._runtime=null}},{key:"Reset",value:function(e){this._currentEvent=e,this._cndIndex=0,this._actIndex=0,this._lastEventTrue=!1,this._elseBranchRan=!1}},{key:"_Restore",value:function(e,t){this._currentEvent=e,this._cndIndex=0,this._actIndex=t}},{key:"ResetQuick",value:function(){this._cndIndex=0,this._actIndex=0}},{key:"GetCurrentEvent",value:function(){return this._currentEvent}},{key:"SetCurrentEvent",value:function(e){this._currentEvent=e}},{key:"GetConditionIndex",value:function(){return this._cndIndex}},{key:"SetConditionIndex",value:function(e){this._cndIndex=e}},{key:"GetActionIndex",value:function(){return this._actIndex}},{key:"SetActionIndex",value:function(e){this._actIndex=e}},{key:"SetLastEventTrue",value:function(e){this._lastEventTrue=!!e}},{key:"GetLastEventTrue",value:function(){return this._lastEventTrue}},{key:"SetElseBranchRan",value:function(e){this._elseBranchRan=!!e}},{key:"GetElseBranchRan",value:function(){return this._elseBranchRan}},{key:"SetExpressionObjectClass",value:function(e){this._expressionObjectClass=e}},{key:"GetExpressionObjectClass",value:function(){return this._expressionObjectClass}},{key:"InitCallFunctionExpression",value:function(e,t){this._functionReturnType=e,this._functionReturnValue=t}},{key:"GetFunctionReturnType",value:function(){return this._functionReturnType}},{key:"SetFunctionReturnValue",value:function(e){this._functionReturnValue=e}},{key:"GetFunctionReturnValue",value:function(){return this._functionReturnValue}},{key:"IsSolModifierAfterCnds",value:function(){var e=this._currentEvent
|
||
return e.IsSolWriterAfterCnds()?!0:this._cndIndex<e.GetConditionCount()-1?!!e.GetSolModifiers().length:!1}}]),t}(_C101.DefendedBase)
|
||
var _C102=self.C3
|
||
_C102.LocalVarStack=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._eventSheetManager=e,r._runtime=r._eventSheetManager.GetRuntime(),r._stack=[],r._index=-1,r._current=null,r._initialValues=[],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C102.clearArray(this._stack),this._eventSheetManager=null,this._runtime=null}},{key:"_SetInitialValues",value:function(e){this._initialValues=e
|
||
var t=this._initialValues.slice(0)
|
||
this._stack.push(t),this._index=0,this._current=t}},{key:"GetEventSheetManager",value:function(){return this._eventSheetManager}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetCurrent",value:function(){return this._current}},{key:"Push",value:function(){var e=++this._index,t=this._stack
|
||
e===t.length?t.push(this._initialValues.slice(0)):_C102.shallowAssignArray(t[e],this._initialValues),this._current=t[e]}},{key:"Pop",value:function(){this._current=this._stack[--this._index]}}]),t}(_C102.DefendedBase)
|
||
var _C103=self.C3
|
||
_C103.LoopStack=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._eventSheetManager=e,r._runtime=r._eventSheetManager.GetRuntime(),r._stack=[],r._index=-1,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C103.clearArray(this._stack),this._eventSheetManager=null,this._runtime=null}},{key:"GetEventSheetManager",value:function(){return this._eventSheetManager}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"IsInLoop",value:function(){return this._index>=0}},{key:"GetCurrent",value:function(){return this._stack[this._index]}},{key:"Push",value:function(){if(++this._index,this._index===this._stack.length){var e=_C103.New(_C103.Loop,this)
|
||
return this._stack.push(e),e}var t=this._stack[this._index]
|
||
return t.Reset(),t}},{key:"Pop",value:function(){--this._index}},{key:"FindByName",value:function(e){for(var t=this._stack,n=this._index;n>=0;--n){var r=t[n]
|
||
if(r.GetName()===e)return r}return null}},{key:"_GetStack",value:function(){return this._stack.slice(0,this._index+1)}}]),t}(_C103.DefendedBase)
|
||
var _C104=self.C3
|
||
_C104.Loop=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._loopStack=e,r._name="",r._index=0,r._isStopped=!1,r._end=NaN,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Reset",value:function(){this._name="",this._index=0,this._isStopped=!1,this._end=NaN}},{key:"SetName",value:function(e){this._name=e}},{key:"GetName",value:function(){return this._name}},{key:"SetIndex",value:function(e){this._index=e}},{key:"GetIndex",value:function(){return this._index}},{key:"Stop",value:function(){this._isStopped=!0}},{key:"IsStopped",value:function(){return this._isStopped}},{key:"SetEnd",value:function(e){this._end=e}},{key:"GetEnd",value:function(){return this._end}}]),t}(_C104.DefendedBase)
|
||
var _C105=self.C3
|
||
_C105.ArrayStack=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),e._stack=[],e._index=-1,e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C105.clearArray(this._stack)}},{key:"GetCurrent",value:function(){return this._stack[this._index]}},{key:"Push",value:function(){if(++this._index,this._index===this._stack.length){var e=[]
|
||
return this._stack.push(e),e}return this._stack[this._index]}},{key:"Pop",value:function(){--this._index}}]),t}(_C105.DefendedBase)
|
||
var SortSolArray=function(e,t){return e.GetIndex()-t.GetIndex()},IsSolArrayIdentical=function(e,t){for(var n=0,r=e.length;r>n;++n)if(e[n]!==t[n])return!1
|
||
return!0},_C106=self.C3,_assert7=self.assert
|
||
_C106.EventSheetManager=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e,r._allSheets=[],r._sheetsByName=new Map,r._allGroups=[],r._groupsByName=new Map,r._blocksBySid=new Map,r._cndsBySid=new Map,r._actsBySid=new Map,r._allUniqueSolModifiers=new Map,r._eventVarsBySid=new Map,r._nextLocalVarIndex=0,r._allGlobalVars=[],r._allLocalVars=[],r._localVarInitialValues=[],r._functionBlocksByName=new Map,r._eventStack=_C106.New(_C106.EventStack,_assertThisInitialized(r)),r._localVarStack=_C106.New(_C106.LocalVarStack,_assertThisInitialized(r)),r._loopStack=_C106.New(_C106.LoopStack,_assertThisInitialized(r)),r._triggersToPostInit=[],r._queuedTriggers=[],r._queuedDebugTriggers=[],r._runningEventsDepth=0,r._executingTriggerDepth=0,r._blockFlushingDepth=0,r._scheduledWaits=[],r._asyncActionPromises=[],self.c3_callFunction=function(e,t){return r._InvokeFunctionFromJS(e,t)},r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.ClearAllScheduledWaits(),this._eventStack.Release(),this._eventStack=null,this._localVarStack.Release(),this._localVarStack=null,_C106.clearArray(this._queuedTriggers),_C106.clearArray(this._queuedDebugTriggers),this._runtime=null,_C106.clearArray(this._allSheets),this._sheetsByName.clear()}},{key:"Create",value:function(e){var t=_C106.New(_C106.EventSheet,this,e)
|
||
this._allSheets.push(t),this._sheetsByName.set(t.GetName().toLowerCase(),t)}},{key:"_AddTriggerToPostInit",value:function(e){this._triggersToPostInit.push(e)}},{key:"_PostInit",value:function(){var e,t=_createForOfIteratorHelper(this._functionBlocksByName.values())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._PostInit(!1)}}catch(r){t.e(r)}finally{t.f()}var a,i=_createForOfIteratorHelper(this._allSheets)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
s._PostInit()}}catch(r){i.e(r)}finally{i.f()}var o,u=_createForOfIteratorHelper(this._allSheets)
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value
|
||
l._UpdateDeepIncludes()}}catch(r){u.e(r)}finally{u.f()}var c,h=_createForOfIteratorHelper(this._triggersToPostInit)
|
||
try{for(h.s();!(c=h.n()).done;){var _=c.value
|
||
_._PostInit(!1)}}catch(r){h.e(r)}finally{h.f()}_C106.clearArray(this._triggersToPostInit),this._localVarStack._SetInitialValues(this._localVarInitialValues)}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetEventSheetByName",value:function(e){return this._sheetsByName.get(e.toLowerCase())||null}},{key:"_RegisterGroup",value:function(e){this._allGroups.push(e),this._groupsByName.set(e.GetGroupName(),e)}},{key:"_RegisterEventBlock",value:function(e){this._blocksBySid.set(e.GetSID(),e)}},{key:"_RegisterCondition",value:function(e){this._cndsBySid.set(e.GetSID(),e)}},{key:"_RegisterAction",value:function(e){this._actsBySid.set(e.GetSID(),e)}},{key:"_RegisterFunctionBlock",value:function(e){this._functionBlocksByName.set(e.GetFunctionName().toLowerCase(),e)}},{key:"_RegisterEventVariable",value:function(e){this._eventVarsBySid.set(e.GetSID(),e),e.IsGlobal()?this._allGlobalVars.push(e):this._allLocalVars.push(e)}},{key:"_DeduplicateSolModifierList",value:function(e){e.length>=2&&e.sort(SortSolArray)
|
||
var t=this._allUniqueSolModifiers.get(e.length)
|
||
t||(t=[],this._allUniqueSolModifiers.set(e.length,t))
|
||
for(var n=0,r=t.length;r>n;++n){var a=t[n]
|
||
if(IsSolArrayIdentical(e,a))return a}return t.push(e),e}},{key:"_GetNextLocalVarIndex",value:function(e){return this._localVarInitialValues.push(e.GetInitialValue()),this._nextLocalVarIndex++}},{key:"GetEventStack",value:function(){return this._eventStack}},{key:"GetCurrentEventStackFrame",value:function(){return this.GetEventStack().GetCurrentStackFrame()}},{key:"GetCurrentEvent",value:function(){return this.GetCurrentEventStackFrame().GetCurrentEvent()}},{key:"GetCurrentCondition",value:function(){var e=this.GetCurrentEventStackFrame(),t=e.GetCurrentEvent()
|
||
return t.GetConditionAt(e.GetConditionIndex())}},{key:"GetCurrentAction",value:function(){var e=this.GetCurrentEventStackFrame(),t=e.GetCurrentEvent()
|
||
return t.GetActionAt(e.GetActionIndex())}},{key:"GetLocalVarStack",value:function(){return this._localVarStack}},{key:"GetLoopStack",value:function(){return this._loopStack}},{key:"GetAllLocalVariablesInScope",value:function(e){var t=[]
|
||
for(e=e.GetScopeParent();e;)_C106.appendArray(t,e._GetAllLocalVariablesInScope()),e=e.GetScopeParent()
|
||
return t}},{key:"_GetLocalVariablesScriptInterface",value:function(e){var t,n={},r=_createForOfIteratorHelper(this.GetAllLocalVariablesInScope(e))
|
||
try{for(r.s();!(t=r.n()).done;){var a=t.value
|
||
n[a.GetJsPropName()]=a._GetScriptInterfaceDescriptor()}}catch(i){r.e(i)}finally{r.f()}return Object.create(Object.prototype,n)}},{key:"GetEventVariableBySID",value:function(e){return this._eventVarsBySid.get(e)||null}},{key:"GetEventBlockBySID",value:function(e){return this._blocksBySid.get(e)||null}},{key:"GetConditionBySID",value:function(e){return this._cndsBySid.get(e)||null}},{key:"GetActionBySID",value:function(e){return this._actsBySid.get(e)||null}},{key:"GetFunctionBlockByName",value:function(e){return this._functionBlocksByName.get(e.toLowerCase())||null}},{key:"GetAllGlobalVariables",value:function(){return this._allGlobalVars}},{key:"GetAllLocalVariables",value:function(){return this._allLocalVars}},{key:"ResetAllGlobalsToInitialValue",value:function(){var e,t=_createForOfIteratorHelper(this._allGlobalVars)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.ResetToInitialValue()}}catch(r){t.e(r)}finally{t.f()}}},{key:"GetEventGroupByName",value:function(e){return this._groupsByName.get(e.toLowerCase())||null}},{key:"GetEventGroupBySID",value:function(e){var t=this._blocksBySid.get(e)
|
||
return t&&t.IsGroup()?t:null}},{key:"GetAllGroups",value:function(){return this._allGroups}},{key:"ResetAllGroupsInitialActivation",value:function(){var e,t=_createForOfIteratorHelper(this._allGroups)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.ResetInitialActivation()}}catch(r){t.e(r)}finally{t.f()}}},{key:"_ResetAllHasRunFlags",value:function(){var e,t=_createForOfIteratorHelper(this._allSheets)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._ResetHasRunFlag()}}catch(r){t.e(r)}finally{t.f()}}},{key:"RunEvents",value:function(e){this._ResetAllHasRunFlags(),this._runningEventsDepth++
|
||
var t,n=_createForOfIteratorHelper(e.runningLayouts())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=r.GetEventSheet()
|
||
a&&(this._runtime.PushCurrentLayout(r),a.Run(),this._runtime.PopCurrentLayout())}}catch(i){n.e(i)}finally{n.f()}this._runningEventsDepth--}},{key:"DebugRunEvents",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:this._ResetAllHasRunFlags(),this._runningEventsDepth++,t=_createForOfIteratorHelper(this._DebugRunEventsGen(e)),n.prev=3,t.s()
|
||
case 5:if((r=t.n()).done){n.next=11
|
||
break}return a=r.value,n.next=9,this._runtime.DebugBreak(a)
|
||
case 9:n.next=5
|
||
break
|
||
case 11:n.next=16
|
||
break
|
||
case 13:n.prev=13,n.t0=n["catch"](3),t.e(n.t0)
|
||
case 16:return n.prev=16,t.f(),n.finish(16)
|
||
case 19:this._runningEventsDepth--
|
||
case 20:case"end":return n.stop()}},n,this,[[3,13,16,19]])}))
|
||
return e}()},{key:"_DebugRunEventsGen",value:_regeneratorRuntime().mark(function r(e){var t,n,a,i
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:t=_createForOfIteratorHelper(e.runningLayouts()),r.prev=1,t.s()
|
||
case 3:if((n=t.n()).done){r.next=13
|
||
break}if(a=n.value,i=a.GetEventSheet()){r.next=8
|
||
break}return r.abrupt("continue",11)
|
||
case 8:return this._runtime.PushCurrentLayout(a),r.delegateYield(i.DebugRun(),"t0",10)
|
||
case 10:this._runtime.PopCurrentLayout()
|
||
case 11:r.next=3
|
||
break
|
||
case 13:r.next=18
|
||
break
|
||
case 15:r.prev=15,r.t1=r["catch"](1),t.e(r.t1)
|
||
case 18:return r.prev=18,t.f(),r.finish(18)
|
||
case 21:case"end":return r.stop()}},r,this,[[1,15,18,21]])})},{key:"_Trigger",value:function(e,t,n,r){var a=!1
|
||
if(!e.GetMainRunningLayout())return this.QueueTrigger(t,n,r)
|
||
this._executingTriggerDepth++
|
||
var i,s=_createForOfIteratorHelper(e.runningLayouts())
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value,u=o.GetEventSheet()
|
||
if(u){this._runtime.PushCurrentLayout(o)
|
||
var l,c=_createForOfIteratorHelper(u.deepIncludes())
|
||
try{for(c.s();!(l=c.n()).done;){var h=l.value,_=h._Trigger(t,n,r)
|
||
a=a||_}}catch(f){c.e(f)}finally{c.f()}var d=u._Trigger(t,n,r)
|
||
a=a||d,this._runtime.PopCurrentLayout()}}}catch(f){s.e(f)}finally{s.f()}return this._executingTriggerDepth--,a}},{key:"_DebugTrigger",value:_regeneratorRuntime().mark(function a(e,t,n,r){var i,s,o,u,l,c,h,_,f,d
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(i=!1,e.GetMainRunningLayout()){a.next=3
|
||
break}return a.abrupt("return",this.QueueTrigger(t,n,r))
|
||
case 3:this._executingTriggerDepth++,s=_createForOfIteratorHelper(e.runningLayouts()),a.prev=5,s.s()
|
||
case 7:if((o=s.n()).done){a.next=37
|
||
break}if(u=o.value,l=u.GetEventSheet()){a.next=12
|
||
break}return a.abrupt("continue",35)
|
||
case 12:this._runtime.PushCurrentLayout(u),c=_createForOfIteratorHelper(l.deepIncludes()),a.prev=14,c.s()
|
||
case 16:if((h=c.n()).done){a.next=23
|
||
break}return _=h.value,a.delegateYield(_._DebugTrigger(t,n,r),"t0",19)
|
||
case 19:f=a.t0,i=i||f
|
||
case 21:a.next=16
|
||
break
|
||
case 23:a.next=28
|
||
break
|
||
case 25:a.prev=25,a.t1=a["catch"](14),c.e(a.t1)
|
||
case 28:return a.prev=28,c.f(),a.finish(28)
|
||
case 31:return a.delegateYield(l._DebugTrigger(t,n,r),"t2",32)
|
||
case 32:d=a.t2,i=i||d,this._runtime.PopCurrentLayout()
|
||
case 35:a.next=7
|
||
break
|
||
case 37:a.next=42
|
||
break
|
||
case 39:a.prev=39,a.t3=a["catch"](5),s.e(a.t3)
|
||
case 42:return a.prev=42,s.f(),a.finish(42)
|
||
case 45:return this._executingTriggerDepth--,a.abrupt("return",i)
|
||
case 47:case"end":return a.stop()}},a,this,[[5,39,42,45],[14,25,28,31]])})},{key:"QueueTrigger",value:function(e,t,n){return this._queuedTriggers.push([e,t,n]),!1}},{key:"QueueDebugTrigger",value:function(e,t,n){var r=null,a=new Promise(function(e){return r=e})
|
||
return this._queuedDebugTriggers.push([e,t,n,r]),a}},{key:"_RunQueuedDebugTriggersGen",value:_regeneratorRuntime().mark(function i(){var e,t,n,r,a,s,o,u
|
||
return _regeneratorRuntime().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(!this._runtime.HitBreakpoint()){i.next=2
|
||
break}throw Error("should not be in breakpoint")
|
||
case 2:e=this._runtime.GetLayoutManager()
|
||
case 3:if(!this._queuedDebugTriggers.length){i.next=10
|
||
break}return t=this._queuedDebugTriggers.shift(),n=_slicedToArray(t,4),r=n[0],a=n[1],s=n[2],o=n[3],i.delegateYield(this._DebugTrigger(e,r,a,s),"t0",6)
|
||
case 6:u=i.t0,o(u),i.next=3
|
||
break
|
||
case 10:case"end":return i.stop()}},i,this)})},{key:"RunQueuedDebugTriggersAsync",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:e=_createForOfIteratorHelper(this._RunQueuedDebugTriggersGen()),n.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){n.next=9
|
||
break}return r=t.value,n.next=7,this._runtime.DebugBreak(r)
|
||
case 7:n.next=3
|
||
break
|
||
case 9:n.next=14
|
||
break
|
||
case 11:n.prev=11,n.t0=n["catch"](1),e.e(n.t0)
|
||
case 14:return n.prev=14,e.f(),n.finish(14)
|
||
case 17:case"end":return n.stop()}},n,this,[[1,11,14,17]])}))
|
||
return e}()},{key:"_FastTrigger",value:function(e,t,n,r){var a=!1,i=e.GetMainRunningLayout(),s=i.GetEventSheet()
|
||
if(s){this._executingTriggerDepth++,this._runtime.PushCurrentLayout(i)
|
||
for(var o=s.deepIncludes(),u=0,l=o.length;l>u;++u){var c=o[u]._FastTrigger(t,n,r)
|
||
a=a||c}var h=s._FastTrigger(t,n,r)
|
||
return a=a||h,this._runtime.PopCurrentLayout(),this._executingTriggerDepth--,a}}},{key:"_DebugFastTrigger",value:_regeneratorRuntime().mark(function s(e,t,n,r){var a,i,o,u,l,c,h,_
|
||
return _regeneratorRuntime().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(a=!1,i=e.GetMainRunningLayout(),o=i.GetEventSheet()){s.next=5
|
||
break}return s.abrupt("return")
|
||
case 5:this._executingTriggerDepth++,this._runtime.PushCurrentLayout(i),u=o.deepIncludes(),l=0,c=u.length
|
||
case 9:if(!(c>l)){s.next=16
|
||
break}return s.delegateYield(u[l]._DebugFastTrigger(t,n,r),"t0",11)
|
||
case 11:h=s.t0,a=a||h
|
||
case 13:++l,s.next=9
|
||
break
|
||
case 16:return s.delegateYield(o._DebugFastTrigger(t,n,r),"t1",17)
|
||
case 17:return _=s.t1,a=a||_,this._runtime.PopCurrentLayout(),this._executingTriggerDepth--,s.abrupt("return",a)
|
||
case 22:case"end":return s.stop()}},s,this)})},{key:"GetTriggerDepth",value:function(){return this._executingTriggerDepth}},{key:"IsInTrigger",value:function(){return this.GetTriggerDepth()>0}},{key:"_IncTriggerDepth",value:function(){return++this._executingTriggerDepth}},{key:"_DecTriggerDepth",value:function(){--this._executingTriggerDepth}},{key:"IsRunningEvents",value:function(){return this._runningEventsDepth>0}},{key:"IsInEventEngine",value:function(){return this.IsRunningEvents()||this.IsInTrigger()}},{key:"_RunQueuedTriggers",value:function(e){var t,n=_createForOfIteratorHelper(this._queuedTriggers)
|
||
try{for(n.s();!(t=n.n()).done;){var r=_slicedToArray(t.value,3),a=r[0],i=r[1],s=r[2]
|
||
this._Trigger(e,a,i,s)}}catch(o){n.e(o)}finally{n.f()}_C106.clearArray(this._queuedTriggers)}},{key:"BlockFlushingInstances",value:function(e){e?this._blockFlushingDepth++:this._blockFlushingDepth--}},{key:"IsFlushingBlocked",value:function(){return this._blockFlushingDepth>0}},{key:"ClearSol",value:function(e){for(var t=0,n=e.length;n>t;++t)e[t].GetSolStack().Clear()}},{key:"PushCleanSol",value:function(e){for(var t=0,n=e.length;n>t;++t)e[t].GetSolStack().PushClean()}},{key:"PushCopySol",value:function(e){for(var t=0,n=e.length;n>t;++t)e[t].GetSolStack().PushCopy()}},{key:"PopSol",value:function(e){for(var t=0,n=e.length;n>t;++t)e[t].GetSolStack().Pop()}},{key:"AddScheduledWait",value:function(){var e=_C106.New(_C106.ScheduledWait,this)
|
||
return this._scheduledWaits.push(e),e}},{key:"scheduledWaits",value:function(){return this._scheduledWaits}},{key:"RunScheduledWaits",value:function(){if(this._scheduledWaits.length){var e=this.GetCurrentEventStackFrame(),t=!1
|
||
this._runningEventsDepth++
|
||
for(var n=0,r=this._scheduledWaits.length;r>n;++n){var a=this._scheduledWaits[n]
|
||
a._ShouldRun()&&a._Run(e),a.ShouldRelease()&&(t=!0)}t&&this._FilterScheduledWaitsToRelease(),this._runningEventsDepth--}}},{key:"DebugRunScheduledWaits",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this._scheduledWaits.length){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:e=this.GetCurrentEventStackFrame(),t=!1,this._runningEventsDepth++,r=0,a=this._scheduledWaits.length
|
||
case 6:if(!(a>r)){n.next=15
|
||
break}if(i=this._scheduledWaits[r],!i._ShouldRun()){n.next=11
|
||
break}return n.next=11,i._DebugRun(e)
|
||
case 11:i.ShouldRelease()&&(t=!0)
|
||
case 12:++r,n.next=6
|
||
break
|
||
case 15:t&&this._FilterScheduledWaitsToRelease(),this._runningEventsDepth--
|
||
case 17:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_FilterScheduledWaitsToRelease",value:function(){var e,t=_C106.arrayFilterOut(this._scheduledWaits,function(e){return e.ShouldRelease()}),n=_createForOfIteratorHelper(t)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
r.Release()}}catch(a){n.e(a)}finally{n.f()}}},{key:"ClearAllScheduledWaits",value:function(){var e,t=_createForOfIteratorHelper(this._scheduledWaits)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C106.clearArray(this._scheduledWaits)}},{key:"RemoveInstancesFromScheduledWaits",value:function(e){var t,n=_createForOfIteratorHelper(this._scheduledWaits)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.RemoveInstances(e)}}catch(a){n.e(a)}finally{n.f()}}},{key:"AddAsyncActionPromise",value:function(e){this._asyncActionPromises.push(e)}},{key:"ClearAsyncActionPromises",value:function(){_C106.clearArray(this._asyncActionPromises)}},{key:"GetPromiseForAllAsyncActions",value:function(){var e=Promise.all(this._asyncActionPromises)
|
||
return this._asyncActionPromises=[],e}},{key:"_SaveToJson",value:function(){return{groups:this._SaveGroupsToJson(),cnds:this._SaveCndsToJson(),acts:this._SaveActsToJson(),vars:this._SaveVarsToJson(),waits:this._SaveScheduledWaitsToJson()}}},{key:"_LoadFromJson",value:function(e){this._LoadGroupsFromJson(e.groups),this._LoadCndsFromJson(e.cnds),this._LoadActsFromJson(e.acts),this._LoadVarsFromJson(e.vars),this._LoadScheduledWaitsFromJson(e.waits)}},{key:"_SaveGroupsToJson",value:function(){var e,t={},n=_createForOfIteratorHelper(this.GetAllGroups())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
t[""+r.GetSID()]=r.IsGroupActive()}}catch(a){n.e(a)}finally{n.f()}return t}},{key:"_LoadGroupsFromJson",value:function(e){for(var t=0,n=Object.entries(e);t<n.length;t++){var r=_slicedToArray(n[t],2),a=r[0],i=r[1],s=parseInt(a,10),o=this.GetEventGroupBySID(s)
|
||
o&&o.SetGroupActive(i)}}},{key:"_SaveCndsToJson",value:function(){var e,t={},n=_createForOfIteratorHelper(this._cndsBySid)
|
||
try{for(n.s();!(e=n.n()).done;){var r=_slicedToArray(e.value,2),a=r[0],i=r[1],s=i._SaveToJson()
|
||
s&&(t[""+a]=s)}}catch(o){n.e(o)}finally{n.f()}return t}},{key:"_LoadCndsFromJson",value:function(e){for(var t=new Map,n=0,r=Object.entries(e);n<r.length;n++){var a=_slicedToArray(r[n],2),i=a[0],s=a[1]
|
||
t.set(parseInt(i,10),s)}var o,u=_createForOfIteratorHelper(this._cndsBySid)
|
||
try{for(u.s();!(o=u.n()).done;){var l=_slicedToArray(o.value,2),c=l[0],h=l[1]
|
||
h._LoadFromJson(t.get(c)||null)}}catch(_){u.e(_)}finally{u.f()}}},{key:"_SaveActsToJson",value:function(){var e,t={},n=_createForOfIteratorHelper(this._actsBySid)
|
||
try{for(n.s();!(e=n.n()).done;){var r=_slicedToArray(e.value,2),a=r[0],i=r[1],s=i._SaveToJson()
|
||
s&&(t[""+a]=s)}}catch(o){n.e(o)}finally{n.f()}return t}},{key:"_LoadActsFromJson",value:function(e){for(var t=new Map,n=0,r=Object.entries(e);n<r.length;n++){var a=_slicedToArray(r[n],2),i=a[0],s=a[1]
|
||
t.set(parseInt(i,10),s)}var o,u=_createForOfIteratorHelper(this._actsBySid)
|
||
try{for(u.s();!(o=u.n()).done;){var l=_slicedToArray(o.value,2),c=l[0],h=l[1]
|
||
h._LoadFromJson(t.get(c)||null)}}catch(_){u.e(_)}finally{u.f()}}},{key:"_SaveVarsToJson",value:function(){var e,t={},n=_createForOfIteratorHelper(this._eventVarsBySid)
|
||
try{for(n.s();!(e=n.n()).done;){var r=_slicedToArray(e.value,2),a=r[0],i=r[1]
|
||
i.IsConstant()||!i.IsGlobal()&&!i.IsStatic()||(t[""+a]=i.GetValue())}}catch(s){n.e(s)}finally{n.f()}return t}},{key:"_LoadVarsFromJson",value:function(e){for(var t=0,n=Object.entries(e);t<n.length;t++){var r=_slicedToArray(n[t],2),a=r[0],i=r[1],s=parseInt(a,10),o=this.GetEventVariableBySID(s)
|
||
o&&o.SetValue(i)}}},{key:"_SaveScheduledWaitsToJson",value:function(){return this._scheduledWaits.filter(function(e){return!e.IsPromise()}).map(function(e){return e._SaveToJson()})}},{key:"_LoadScheduledWaitsFromJson",value:function(e){this.ClearAllScheduledWaits()
|
||
var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=_C106.ScheduledWait._CreateFromJson(this,r)
|
||
a&&this._scheduledWaits.push(a)}}catch(i){n.e(i)}finally{n.f()}}},{key:"_GetPerfRecords",value:function(){return _toConsumableArray(this._runtime.GetLayoutManager().runningLayouts()).map(function(e){return e.GetEventSheet()}).filter(function(e){return e}).map(function(e){return e._GetPerfRecord()})}},{key:"FindFirstFunctionBlockParent",value:function(e){for(;e;){var t=e.GetScopeParent()
|
||
if(t instanceof _C106.FunctionBlock)return t
|
||
e=e.GetParent()}return null}},{key:"_InvokeFunctionFromJS",value:function(e,t){Array.isArray(t)||(t=[])
|
||
var n=this.GetFunctionBlockByName(e.toLowerCase())
|
||
if(!n)return null
|
||
if(!n.IsEnabled())return n.GetDefaultReturnValue()
|
||
var r=n.GetFunctionParameters()
|
||
if(t.length<r.length){t=t.slice(0)
|
||
do t.push(r[t.length].GetInitialValue())
|
||
while(t.length<r.length)}var a=n.GetEventBlock()
|
||
return a.RunAsExpressionFunctionCall.apply(a,[a.GetSolModifiersIncludingParents(),n.GetReturnType(),n.GetDefaultReturnValue()].concat(_toConsumableArray(t)))}}]),t}(_C106.DefendedBase)
|
||
var _C107=self.C3
|
||
_C107.EventSheet=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this),a._eventSheetManager=e,a._runtime=e.GetRuntime(),a._name=r[0],a._events=[],a._triggers=new Map,a._fastTriggers=new Map,a._eventsByDisplayNumber=new Map,a._hasRun=!1,a._shallowIncludes=[],a._deepIncludes=[],a._alreadyIncludedSheets=new Set
|
||
var i,s=_createForOfIteratorHelper(r[1])
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
a._CreateEvent(o,null,a._events)}}catch(u){s.e(u)}finally{s.f()}return a._perfRecord=a._runtime.IsDebug()?{type:"sheet",name:a._name,totalTimeCounter:0,children:[]}:null,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._eventSheetManager=null,this._runtime=null}},{key:"_CreateEvent",value:function(e,t,n){switch(e[0]){case 0:case 3:this._CreateEventBlock(e,t,n)
|
||
break
|
||
case 1:this._CreateEventVariable(e,t,n)
|
||
break
|
||
case 2:this._CreateInclude(e,t,n)
|
||
break
|
||
case 4:this._CreateFunctionBlock(e,t)
|
||
break
|
||
case 5:this._CreateScriptBlock(e,t,n)
|
||
break
|
||
default:throw Error("invalid event type")}}},{key:"_CreateEventBlock",value:function(e,t,n){var r=_C107.EventBlock.Create(this,t,e)
|
||
if(r.IsOrBlock()){n.push(r)
|
||
for(var a=r.GetConditions(),i=0,s=a.length;s>i;++i)a[i].IsTrigger()&&this._InitTrigger(r,i)}else r.IsTrigger()?this._InitTrigger(r,0):n.push(r)}},{key:"_CreateFunctionBlock",value:function(e,t){var n=_C107.FunctionBlock.Create(this,t,e)
|
||
this._eventSheetManager._RegisterFunctionBlock(n)}},{key:"_CreateEventVariable",value:function(e,t,n){var r=_C107.EventVariable.Create(this,t,e)
|
||
n.push(r)}},{key:"_CreateInclude",value:function(e,t,n){var r=_C107.EventInclude.Create(this,t,e)
|
||
n.push(r)}},{key:"_CreateScriptBlock",value:function(e,t,n){var r=_C107.EventScript.Create(this,t,e)
|
||
n.push(r)}},{key:"_InitTrigger",value:function(e,t){e.IsOrBlock()||this._eventSheetManager._AddTriggerToPostInit(e)
|
||
var n=e.GetConditionAt(t),r=n._GetFunc(),a=n.GetObjectClass()
|
||
if(n.IsFastTrigger()){var i=this._fastTriggers.get(a)
|
||
i||(i=new Map,this._fastTriggers.set(a,i))
|
||
var s=n.GetFastTriggerValue().toLowerCase(),o=i.get(r)
|
||
o||(o=new Map,i.set(r,o))
|
||
var u=o.get(s)
|
||
u||(u=[],o.set(s,u)),u.push([e,t])}else{var l=this._triggers.get(a)
|
||
l||(l={methodMap:new Map,behaviors:new Map},this._triggers.set(a,l))
|
||
var c,h=n.GetBehaviorType()
|
||
h?(c=l.behaviors.get(h),c||(c=new Map,l.behaviors.set(h,c))):c=l.methodMap
|
||
var _=c.get(r)
|
||
_||(_=[],c.set(r,_)),_.push([e,t])}}},{key:"_PostInit",value:function(){for(var e=this._events,t=0,n=e.length;n>t;++t){var r=n-1>t&&e[t+1]instanceof _C107.EventBlock&&e[t+1].IsElseBlock()
|
||
e[t]._PostInit(r)}}},{key:"_AddShallowInclude",value:function(e){this._shallowIncludes.push(e)}},{key:"_UpdateDeepIncludes",value:function(){_C107.clearArray(this._deepIncludes),this._AddDeepIncludes(this),this._alreadyIncludedSheets.clear()}},{key:"_AddDeepIncludes",value:function(e){var t,n=e._deepIncludes,r=e._alreadyIncludedSheets,a=_createForOfIteratorHelper(this._shallowIncludes)
|
||
try{for(a.s();!(t=a.n()).done;){var i=t.value,s=i.GetIncludeSheet()
|
||
i.IsActive()&&e!==s&&!r.has(s)&&(r.add(s),s._AddDeepIncludes(e),n.push(s))}}catch(o){a.e(o)}finally{a.f()}}},{key:"deepIncludes",value:function(){return this._deepIncludes}},{key:"GetEventSheetManager",value:function(){return this._eventSheetManager}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetName",value:function(){return this._name}},{key:"_RegisterEventByDisplayNumber",value:function(e,t){this._eventsByDisplayNumber.set(t,e)}},{key:"_GetEventByDisplayNumber",value:function(e){return this._eventsByDisplayNumber.get(e)||null}},{key:"_ResetHasRunFlag",value:function(){this._hasRun=!1}},{key:"Run",value:function(){if(!this._hasRun){var e=this._runtime,t=e.IsCPUProfiling(),n=t?performance.now():0
|
||
this._hasRun=!0
|
||
var r,a=this.GetEventSheetManager(),i=a.GetCurrentEventStackFrame(),s=_createForOfIteratorHelper(this._events)
|
||
try{for(s.s();!(r=s.n()).done;){var o=r.value
|
||
o.Run(i),a.ClearSol(o.GetSolModifiers()),a.ClearAsyncActionPromises(),e.FlushPendingInstances()}}catch(u){s.e(u)}finally{s.f()}i.Reset(null),t&&(this._perfRecord.totalTimeCounter+=performance.now()-n)}}},{key:"DebugRun",value:_regeneratorRuntime().mark(function r(){var e,t,n,a,i,s
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(!this._hasRun){r.next=2
|
||
break}return r.abrupt("return")
|
||
case 2:this._hasRun=!0,e=this._runtime,t=this.GetEventSheetManager(),n=t.GetCurrentEventStackFrame(),a=_createForOfIteratorHelper(this._events),r.prev=7,a.s()
|
||
case 9:if((i=a.n()).done){r.next=17
|
||
break}return s=i.value,r.delegateYield(s.DebugRun(n),"t0",12)
|
||
case 12:t.ClearSol(s.GetSolModifiers()),t.ClearAsyncActionPromises(),e.FlushPendingInstances()
|
||
case 15:r.next=9
|
||
break
|
||
case 17:r.next=22
|
||
break
|
||
case 19:r.prev=19,r.t1=r["catch"](7),a.e(r.t1)
|
||
case 22:return r.prev=22,a.f(),r.finish(22)
|
||
case 25:n.Reset(null)
|
||
case 26:case"end":return r.stop()}},r,this,[[7,19,22,25]])})},{key:"_Trigger",value:function(e,t,n){if(!t)return this._TriggerForClass(e,t,null,null)
|
||
var r=t.GetObjectClass(),a=!1,i=this._TriggerForClass(e,t,r,n)
|
||
a=a||i
|
||
var s,o=_createForOfIteratorHelper(r.GetFamilies())
|
||
try{for(o.s();!(s=o.n()).done;){var u=s.value
|
||
i=this._TriggerForClass(e,t,u,n),a=a||i}}catch(l){o.e(l)}finally{o.f()}}},{key:"_TriggerForClass",value:function(e,t,n,r){var a=this._triggers.get(n)
|
||
if(!a)return!1
|
||
var i=r?a.behaviors.get(r):a.methodMap
|
||
if(!i)return!1
|
||
var s=i.get(e)
|
||
if(!s)return!1
|
||
var o,u=!1,l=_createForOfIteratorHelper(s)
|
||
try{for(l.s();!(o=l.n()).done;){var c=_slicedToArray(o.value,2),h=c[0],_=c[1],f=this._ExecuteTrigger(t,h,_)
|
||
u=u||f}}catch(d){l.e(d)}finally{l.f()}return u}},{key:"_DebugTrigger",value:_regeneratorRuntime().mark(function a(e,t,n){var r,i,s,o,u,l
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(!t){a.next=26
|
||
break}return r=t.GetObjectClass(),i=!1,a.delegateYield(this._DebugTriggerForClass(e,t,r,n),"t0",4)
|
||
case 4:s=a.t0,i=i||s,o=_createForOfIteratorHelper(r.GetFamilies()),a.prev=7,o.s()
|
||
case 9:if((u=o.n()).done){a.next=16
|
||
break}return l=u.value,a.delegateYield(this._DebugTriggerForClass(e,t,l,n),"t1",12)
|
||
case 12:s=a.t1,i=i||s
|
||
case 14:a.next=9
|
||
break
|
||
case 16:a.next=21
|
||
break
|
||
case 18:a.prev=18,a.t2=a["catch"](7),o.e(a.t2)
|
||
case 21:return a.prev=21,o.f(),a.finish(21)
|
||
case 24:a.next=28
|
||
break
|
||
case 26:return a.delegateYield(this._DebugTriggerForClass(e,t,null,null),"t3",27)
|
||
case 27:return a.abrupt("return",a.t3)
|
||
case 28:case"end":return a.stop()}},a,this,[[7,18,21,24]])})},{key:"_DebugTriggerForClass",value:_regeneratorRuntime().mark(function i(e,t,n,r){var a,s,o,u,l,c,h,_,f,d
|
||
return _regeneratorRuntime().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(a=this._triggers.get(n)){i.next=3
|
||
break}return i.abrupt("return",!1)
|
||
case 3:if(s=r?a.behaviors.get(r):a.methodMap){i.next=6
|
||
break}return i.abrupt("return",!1)
|
||
case 6:if(o=s.get(e)){i.next=9
|
||
break}return i.abrupt("return",!1)
|
||
case 9:u=!1,l=_createForOfIteratorHelper(o),i.prev=11,l.s()
|
||
case 13:if((c=l.n()).done){i.next=25
|
||
break}if(h=_slicedToArray(c.value,2),_=h[0],f=h[1],d=void 0,!_.DebugCanRunFast()){i.next=20
|
||
break}d=this._ExecuteTrigger(t,_,f),i.next=22
|
||
break
|
||
case 20:return i.delegateYield(this._DebugExecuteTrigger(t,_,f),"t0",21)
|
||
case 21:d=i.t0
|
||
case 22:u=u||d
|
||
case 23:i.next=13
|
||
break
|
||
case 25:i.next=30
|
||
break
|
||
case 27:i.prev=27,i.t1=i["catch"](11),l.e(i.t1)
|
||
case 30:return i.prev=30,l.f(),i.finish(30)
|
||
case 33:return i.abrupt("return",u)
|
||
case 34:case"end":return i.stop()}},i,this,[[11,27,30,33]])})},{key:"_FastTrigger",value:function(e,t,n){var r=t.GetObjectClass(),a=this._fastTriggers.get(r)
|
||
if(!a)return!1
|
||
var i=a.get(e)
|
||
if(!i)return!1
|
||
var s=i.get(n)
|
||
if(!s)return!1
|
||
for(var o=!1,u=0,l=s.length;l>u;++u){var c=s[u],h=this._ExecuteTrigger(null,c[0],c[1])
|
||
o=o||h}return o}},{key:"_DebugFastTrigger",value:_regeneratorRuntime().mark(function s(e,t,n){var r,a,i,o,u,l,c,h,_,f,d
|
||
return _regeneratorRuntime().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(r=t.GetObjectClass(),a=this._fastTriggers.get(r)){s.next=4
|
||
break}return s.abrupt("return",!1)
|
||
case 4:if(i=a.get(e)){s.next=7
|
||
break}return s.abrupt("return",!1)
|
||
case 7:if(o=i.get(n)){s.next=10
|
||
break}return s.abrupt("return",!1)
|
||
case 10:u=!1,l=0,c=o.length
|
||
case 12:if(!(c>l)){s.next=27
|
||
break}if(h=o[l],_=h[0],f=h[1],d=void 0,!_.DebugCanRunFast()){s.next=21
|
||
break}d=this._ExecuteTrigger(null,_,f),s.next=23
|
||
break
|
||
case 21:return s.delegateYield(this._DebugExecuteTrigger(null,_,f),"t0",22)
|
||
case 22:d=s.t0
|
||
case 23:u=u||d
|
||
case 24:++l,s.next=12
|
||
break
|
||
case 27:return s.abrupt("return",u)
|
||
case 28:case"end":return s.stop()}},s,this)})},{key:"_ExecuteTrigger",value:function(e,t,n){var r=this._runtime,a=this._eventSheetManager,i=a.GetCurrentEvent(),s=a.GetEventStack(),o=a.GetTriggerDepth(),u=!1
|
||
i&&a.PushCleanSol(i.GetSolModifiersIncludingParents()),a.PushCleanSol(t.GetSolModifiersIncludingParents())
|
||
var l=o>1
|
||
l&&a.GetLocalVarStack().Push()
|
||
var c=s.Push(t)
|
||
if(e){var h=t.GetConditions()[n].GetObjectClass(),_=h.GetCurrentSol()
|
||
_.SetSinglePicked(e),e.IsInContainer()&&e.SetSiblingsSinglePicked()}var f=!0
|
||
if(t.GetParent())for(var d=t.GetTriggerParents(),p=0,v=d.length;v>p;++p)if(!d[p].RunPreTrigger(c)){f=!1
|
||
break}return f&&(r.IncrementExecCount(),t.IsOrBlock()?t.RunOrBlockTrigger(c,n):t.Run(c),u=c.GetLastEventTrue()),s.Pop(),l&&a.GetLocalVarStack().Pop(),a.PopSol(t.GetSolModifiersIncludingParents()),i&&a.PopSol(i.GetSolModifiersIncludingParents()),i||1!==o||a.IsFlushingBlocked()||r.FlushPendingInstances(),u}},{key:"_DebugExecuteTrigger",value:_regeneratorRuntime().mark(function o(e,t,n){var r,a,i,s,u,l,c,h,_,f,d,p,v,m
|
||
return _regeneratorRuntime().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:if(r=this._runtime,a=this._eventSheetManager,i=a.GetCurrentEvent(),s=a.GetEventStack(),u=a.GetTriggerDepth(),l=!1,i&&a.PushCleanSol(i.GetSolModifiersIncludingParents()),a.PushCleanSol(t.GetSolModifiersIncludingParents()),c=u>1,c&&a.GetLocalVarStack().Push(),h=s.Push(t),e&&(_=t.GetConditions()[n].GetObjectClass(),f=_.GetCurrentSol(),f.SetSinglePicked(e),e.IsInContainer()&&e.SetSiblingsSinglePicked()),d=!0,!t.GetParent()){o.next=24
|
||
break}p=t.GetTriggerParents(),v=0,m=p.length
|
||
case 16:if(!(m>v)){o.next=24
|
||
break}return o.delegateYield(p[v].DebugRunPreTrigger(h),"t0",18)
|
||
case 18:if(o.t0){o.next=21
|
||
break}return d=!1,o.abrupt("break",24)
|
||
case 21:++v,o.next=16
|
||
break
|
||
case 24:if(!d){o.next=32
|
||
break}if(r.IncrementExecCount(),!t.IsOrBlock()){o.next=30
|
||
break}return o.delegateYield(t.DebugRunOrBlockTrigger(h,n),"t1",28)
|
||
case 28:o.next=31
|
||
break
|
||
case 30:return o.delegateYield(t.DebugRun(h),"t2",31)
|
||
case 31:l=h.GetLastEventTrue()
|
||
case 32:return s.Pop(),c&&a.GetLocalVarStack().Pop(),a.PopSol(t.GetSolModifiersIncludingParents()),i&&a.PopSol(i.GetSolModifiersIncludingParents()),i||1!==u||a.IsFlushingBlocked()||r.FlushPendingInstances(),o.abrupt("return",l)
|
||
case 38:case"end":return o.stop()}},o,this)})},{key:"_GetPerfRecord",value:function(){return this._perfRecord}}]),t}(_C107.DefendedBase)
|
||
var NoActions=function(e,t){return!0},DebugNoActions=_regeneratorRuntime().mark(function d(e,t){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt("return",!0)
|
||
case 1:case"end":return e.stop()}},d)}),_C108=self.C3,EMPTY_ARRAY=[]
|
||
_C108.EventBlock=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this),i._eventSheet=e,i._runtime=e.GetRuntime(),i._parent=r,i._scopeParent=null,i._eventStack=i._runtime.GetEventSheetManager().GetEventStack(),i._solModifiers=[],i._solModifiersIncludingParents=[],i._hasGotSolModifiersIncludingParents=!1,i._isSolWriterAfterCnds=!1,i._isTopLevelGroup=!1,i._hasElseBlock=!1,i._isOrBlock=!!a[2],i._isElseBlock=!1,i._triggerParents=null,i._conditions=[],i._actions=[],i._subEvents=[],i._RunActions=NoActions,i._DebugRunActions=DebugNoActions,i._isGroup=!1,i._isInitiallyActive=!1,i._groupName="",i._isGroupActive=!1,i._containedIncludes=null,i._perfRecord=null,i._sid=a[4],i._displayNumber=a[5],i._eventSheet._RegisterEventByDisplayNumber(_assertThisInitialized(i),i._displayNumber),i._debugData=i._runtime.IsDebug()?{isBreakpoint:a[3][0],isBreakable:a[3][1],canRunAllConditionsFast:!1,canRunAllActionsFast:!1,canRunAllSubEventsFast:!1,canRunSelfFast:!1}:null,i.GetEventSheetManager()._RegisterEventBlock(_assertThisInitialized(i)),3===a[0]&&i._InitGroup(a[1])
|
||
var s,o=0,u=_createForOfIteratorHelper(a[6])
|
||
try{for(u.s();!(s=u.n()).done;){var l=s.value,c=_C108.Condition.Create(_assertThisInitialized(i),l,o++)
|
||
i._conditions.push(c),i._AddSolModifier(c.GetObjectClass())}}catch(h){u.e(h)}finally{u.f()}o=0
|
||
var _,f=_createForOfIteratorHelper(a[7])
|
||
try{for(f.s();!(_=f.n()).done;){var d=_.value,p=_C108.Action.Create(_assertThisInitialized(i),d,o++)
|
||
i._actions.push(p)}}catch(h){f.e(h)}finally{f.f()}if(9===a.length){var v,m=a[8],y=_createForOfIteratorHelper(m)
|
||
try{for(y.s();!(v=y.n()).done;){var g=v.value
|
||
i._eventSheet._CreateEvent(g,_assertThisInitialized(i),i._subEvents)}}catch(h){y.e(h)}finally{y.f()}}return i._conditions.length&&(i._isElseBlock=null===i._conditions[0].GetObjectClass()&&i._conditions[0]._GetFunc()===_C108.Plugins.System.Cnds.Else),0===i._conditions.length&&(i._conditions=EMPTY_ARRAY),0===i._actions.length&&(i._actions=EMPTY_ARRAY),0===i._subEvents.length&&(i._subEvents=EMPTY_ARRAY),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_InitGroup",value:function(e){this._isGroup=!0,this._isInitiallyActive=!!e[0],this._isGroupActive=this._isInitiallyActive,this._groupName=e[1].toLowerCase(),this._containedIncludes=[],this.GetEventSheetManager()._RegisterGroup(this),this._runtime.IsDebug()&&(this._perfRecord={type:"group",name:e[1],totalTimeCounter:0,children:[]})}},{key:"_AddContainedInclude",value:function(e){this._containedIncludes.push(e)}},{key:"_AddContainerSolModifierToList",value:function(e,t){var n,r=_createForOfIteratorHelper(e.GetContainer().objectTypes())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
t.includes(a)||t.push(a)}}catch(i){r.e(i)}finally{r.f()}}},{key:"_AddSolModifierToList",value:function(e,t){if(e)if(t.includes(e)||t.push(e),e.IsFamily()){var n,r=_createForOfIteratorHelper(e.GetFamilyMembers())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
a.IsInContainer()&&this._AddContainerSolModifierToList(a,t)}}catch(i){r.e(i)}finally{r.f()}}else e.IsInContainer()&&this._AddContainerSolModifierToList(e,t)}},{key:"_AddSolModifier",value:function(e){this._AddSolModifierToList(e,this._solModifiers)}},{key:"_AddParentSolModifier",value:function(e){this._AddSolModifierToList(e,this._solModifiersIncludingParents)}},{key:"SetAllSolModifiers",value:function(){this._solModifiers=this._runtime.GetAllObjectClasses()}},{key:"_PostInit",value:function(e){this._hasElseBlock=!!e,this._IdentifyTopLevelGroup(),this._IdentifyTriggerParents()
|
||
var t,n=_createForOfIteratorHelper(this._conditions)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r._PostInit()}}catch(a){n.e(a)}finally{n.f()}if(this._actions.length>0){var i,s=!1,o=_createForOfIteratorHelper(this._actions)
|
||
try{for(o.s();!(i=o.n()).done;){var u=i.value
|
||
u._PostInit(),u.HasReturnType()&&(s=!0)}}catch(a){o.e(a)}finally{o.f()}s?(this._RunActions=this._RunActions_ReturnValue,this._DebugRunActions=this._DebugRunActions_ReturnValue):(this._RunActions=this._RunActions_Fast,this._DebugRunActions=this._DebugRunActions_Fast)}for(var l=this._subEvents,c=0,h=l.length;h>c;++c){var _=h-1>c&&l[c+1]instanceof _C108.EventBlock&&l[c+1].IsElseBlock()
|
||
l[c]._PostInit(_)}this._debugData&&this._UpdateCanRunFast(),this._perfRecord&&this._GetPerfRecordParent()._GetPerfRecord().children.push(this._perfRecord)}},{key:"_GetPerfRecord",value:function(){return this._perfRecord}},{key:"_GetPerfRecordParent",value:function(){for(var e=this.GetParent();e;){if(e.IsGroup())return e
|
||
e=e.GetParent()}return this._eventSheet}},{key:"_UpdateCanRunFast",value:function(){var e=this._debugData
|
||
e.canRunAllConditionsFast=this._conditions.every(function(e){return e.DebugCanRunFast()}),e.canRunAllActionsFast=this._actions.every(function(e){return e.DebugCanRunFast()}),e.canRunAllSubEventsFast=this._subEvents.every(function(e){return e.DebugCanRunFast()}),e.canRunSelfFast=e.canRunAllConditionsFast&&e.canRunAllActionsFast&&e.canRunAllSubEventsFast}},{key:"_UpdateCanRunFastRecursive",value:function(){var e=this
|
||
do e._UpdateCanRunFast(),e=e.GetParent()
|
||
while(e)}},{key:"_IdentifyTopLevelGroup",value:function(){if(this.IsGroup()){var e=this.GetParent()
|
||
for(this._isTopLevelGroup=!0;e;){if(!e.IsGroup()){this._isTopLevelGroup=!1
|
||
break}e=e.GetParent()}}}},{key:"_IdentifySolModifiersIncludingParents",value:function(){var e=this._runtime.GetAllObjectClasses()
|
||
if(this._solModifiers===e)this._solModifiersIncludingParents=e
|
||
else{this._solModifiersIncludingParents=_C108.cloneArray(this._solModifiers)
|
||
for(var t=this.GetParent();t;){var n,r=_createForOfIteratorHelper(t._solModifiers)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
this._AddParentSolModifier(a)}}catch(i){r.e(i)}finally{r.f()}t=t.GetParent()}var s=this.GetEventSheetManager()
|
||
this._solModifiers=s._DeduplicateSolModifierList(this._solModifiers),this._solModifiersIncludingParents=s._DeduplicateSolModifierList(this._solModifiersIncludingParents)}}},{key:"_IdentifyTriggerParents",value:function(){if(this.HasAnyTriggeredCondition()){this._triggerParents=[]
|
||
for(var e=this.GetParent();e;)this._triggerParents.push(e),e=e.GetParent()
|
||
this._triggerParents.reverse()}}},{key:"SetSolWriterAfterCnds",value:function(){this._isSolWriterAfterCnds=!0,this._parent&&this._parent.SetSolWriterAfterCnds()}},{key:"IsSolWriterAfterCnds",value:function(){return this._isSolWriterAfterCnds}},{key:"GetSolModifiers",value:function(){return this._solModifiers}},{key:"GetSolModifiersIncludingParents",value:function(){return this._hasGotSolModifiersIncludingParents||(this._hasGotSolModifiersIncludingParents=!0,this._IdentifySolModifiersIncludingParents()),this._solModifiersIncludingParents}},{key:"HasSolModifier",value:function(e){return this._solModifiers.includes(e)}},{key:"GetTriggerParents",value:function(){return this._triggerParents}},{key:"GetEventSheet",value:function(){return this._eventSheet}},{key:"GetEventSheetManager",value:function(){return this._eventSheet.GetEventSheetManager()}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetParent",value:function(){return this._parent}},{key:"_SetScopeParent",value:function(e){this._scopeParent=e}},{key:"GetScopeParent",value:function(){return this._scopeParent||this._parent}},{key:"GetDisplayNumber",value:function(){return this._displayNumber}},{key:"IsDebugBreakable",value:function(){return this._debugData&&this._debugData.isBreakable}},{key:"IsDebugBreakpoint",value:function(){return this.IsDebugBreakable()&&this._debugData.isBreakpoint}},{key:"_SetDebugBreakpoint",value:function(e){this._debugData.isBreakpoint=!!e,this._UpdateCanRunFastRecursive()}},{key:"IsGroup",value:function(){return this._isGroup}},{key:"IsTopLevelGroup",value:function(){return this._isTopLevelGroup}},{key:"IsElseBlock",value:function(){return this._isElseBlock}},{key:"HasElseBlock",value:function(){return this._hasElseBlock}},{key:"GetGroupName",value:function(){return this._groupName}},{key:"IsGroupActive",value:function(){return this._isGroupActive}},{key:"ResetInitialActivation",value:function(){this.SetGroupActive(this._isInitiallyActive)}},{key:"SetGroupActive",value:function(e){if(e=!!e,!this._isGroup)throw Error("not a group")
|
||
if(this._isGroupActive!==e){this._isGroupActive=e
|
||
var t,n=_createForOfIteratorHelper(this._containedIncludes)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.UpdateActive()}}catch(a){n.e(a)}finally{n.f()}if(this._containedIncludes.length){var i=this._runtime.GetCurrentLayout(),s=i.GetEventSheet()
|
||
s&&s._UpdateDeepIncludes()}}}},{key:"GetSID",value:function(){return this._sid}},{key:"IsOrBlock",value:function(){return this._isOrBlock}},{key:"IsTrigger",value:function(){return this._conditions.length&&this._conditions[0].IsTrigger()}},{key:"IsForFunctionBlock",value:function(){return this._scopeParent&&this._scopeParent instanceof _C108.FunctionBlock}},{key:"HasAnyTriggeredCondition",value:function(){return this.IsForFunctionBlock()||this._conditions.some(function(e){return e.IsTrigger()})}},{key:"GetConditions",value:function(){return this._conditions}},{key:"GetConditionCount",value:function(){return this._conditions.length}},{key:"GetConditionAt",value:function(e){if(e=Math.floor(e),0>e||e>=this._conditions.length)throw new RangeError("invalid condition index")
|
||
return this._conditions[e]}},{key:"GetConditionByDebugIndex",value:function(e){return this.GetConditionAt(e)}},{key:"IsFirstConditionOfType",value:function(e){var t=e.GetIndex()
|
||
if(0===t)return!0
|
||
for(--t;t>=0;--t)if(this._conditions[t].GetObjectClass()===e.GetObjectClass())return!1
|
||
return!0}},{key:"GetActions",value:function(){return this._actions}},{key:"GetActionCount",value:function(){return this._actions.length}},{key:"GetActionAt",value:function(e){if(e=Math.floor(e),0>e||e>=this._actions.length)throw new RangeError("invalid action index")
|
||
return this._actions[e]}},{key:"GetActionByDebugIndex",value:function(e){e=Math.floor(e)
|
||
var t=this._actions.find(function(t){return t.GetDebugIndex()===e})
|
||
if(!t)throw new RangeError("invalid action debug index")
|
||
return t}},{key:"_HasActionIndex",value:function(e){return e=Math.floor(e),e>=0&&e<this._actions.length}},{key:"GetSubEvents",value:function(){return this._subEvents}},{key:"_GetAllLocalVariablesInScope",value:function(){return this._subEvents.filter(function(e){return e instanceof _C108.EventVariable})}},{key:"RunPreTrigger",value:function(e){e.SetCurrentEvent(this)
|
||
for(var t=!1,n=this._conditions,r=0,a=n.length;a>r;++r){var i=n[r]
|
||
if(e.SetConditionIndex(r),i.IsLooping())throw Error("trigger cannot be used as sub-event to a loop")
|
||
if(i.Run())t=!0
|
||
else if(!this._isOrBlock)return!1}return this._isOrBlock?t:!0}},{key:"RunOrBlockTrigger",value:function(e,t){e.SetCurrentEvent(this),this._conditions[t].Run()&&(this._RunActions(e,0)&&this._RunSubEvents(e),e.SetLastEventTrue(!0))}},{key:"DebugRunPreTrigger",value:_regeneratorRuntime().mark(function r(e){var t,n,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e.SetCurrentEvent(this),t=!1,n=this._conditions,a=0,i=n.length
|
||
case 4:if(!(i>a)){r.next=25
|
||
break}if(s=n[a],e.SetConditionIndex(a),!s.IsLooping()){r.next=9
|
||
break}throw Error("trigger cannot be used as sub-event to a loop")
|
||
case 9:if(o=void 0,!s.DebugCanRunFast()){r.next=14
|
||
break}o=s.Run(),r.next=16
|
||
break
|
||
case 14:return r.delegateYield(s.DebugRun(),"t0",15)
|
||
case 15:o=r.t0
|
||
case 16:if(!o){r.next=20
|
||
break}t=!0,r.next=22
|
||
break
|
||
case 20:if(this._isOrBlock){r.next=22
|
||
break}return r.abrupt("return",!1)
|
||
case 22:++a,r.next=4
|
||
break
|
||
case 25:return r.abrupt("return",this._isOrBlock?t:!0)
|
||
case 26:case"end":return r.stop()}},r,this)})},{key:"DebugRunOrBlockTrigger",value:_regeneratorRuntime().mark(function a(e,t){var n,r,i
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(e.SetCurrentEvent(this),n=this._conditions[t],!n.DebugCanRunFast()){a.next=6
|
||
break}r=n.Run(),a.next=8
|
||
break
|
||
case 6:return a.delegateYield(n.DebugRun(),"t0",7)
|
||
case 7:r=a.t0
|
||
case 8:if(!r){a.next=22
|
||
break}if(!this.DebugCanRunActionsFast()){a.next=13
|
||
break}i=this._RunActions(e,0),a.next=15
|
||
break
|
||
case 13:return a.delegateYield(this._DebugRunActions(e,0),"t1",14)
|
||
case 14:i=a.t1
|
||
case 15:if(!i){a.next=21
|
||
break}if(!this.DebugCanRunSubEventsFast()){a.next=20
|
||
break}this._RunSubEvents(),a.next=21
|
||
break
|
||
case 20:return a.delegateYield(this._DebugRunSubEvents(),"t2",21)
|
||
case 21:e.SetLastEventTrue(!0)
|
||
case 22:case"end":return a.stop()}},a,this)})},{key:"Run",value:function(e){e.SetCurrentEvent(this),this._isElseBlock||e.SetElseBranchRan(!1),this._isOrBlock?this._RunOrBlock(e):this._RunAndBlock(e)}},{key:"DebugRun",value:_regeneratorRuntime().mark(function i(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!this.IsDebugBreakpoint()&&!this._runtime.DebugBreakNext()){t.next=3
|
||
break}return t.next=3,this
|
||
case 3:if(e.SetCurrentEvent(this),this._isElseBlock||e.SetElseBranchRan(!1),!this._isOrBlock){t.next=9
|
||
break}return t.delegateYield(this._DebugRunOrBlock(e),"t0",7)
|
||
case 7:t.next=10
|
||
break
|
||
case 9:return t.delegateYield(this._DebugRunAndBlock(e),"t1",10)
|
||
case 10:case"end":return t.stop()}},i,this)})},{key:"_RunOrBlock",value:function(e){for(var t=this._conditions,n=0===t.length,r=0,a=t.length;a>r;++r){var i=t[r]
|
||
if(!i.IsTrigger()){e.SetConditionIndex(r)
|
||
var s=i.Run()
|
||
n=n||s}}e.SetLastEventTrue(n),n&&(this._RunActions(e,0)&&this._RunSubEvents(e),this._hasElseBlock&&e.SetElseBranchRan(!0))}},{key:"_DebugRunOrBlock",value:_regeneratorRuntime().mark(function s(e){var t,n,r,a,i,o,u
|
||
return _regeneratorRuntime().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:t=this._conditions,n=0===t.length,r=0,a=t.length
|
||
case 3:if(!(a>r)){s.next=19
|
||
break}if(i=t[r],!i.IsTrigger()){s.next=7
|
||
break}return s.abrupt("continue",16)
|
||
case 7:if(e.SetConditionIndex(r),o=void 0,!i.DebugCanRunFast()){s.next=13
|
||
break}o=i.Run(),s.next=15
|
||
break
|
||
case 13:return s.delegateYield(i.DebugRun(),"t0",14)
|
||
case 14:o=s.t0
|
||
case 15:n=n||o
|
||
case 16:++r,s.next=3
|
||
break
|
||
case 19:if(e.SetLastEventTrue(n),!n){s.next=34
|
||
break}if(!this.DebugCanRunActionsFast()){s.next=25
|
||
break}u=this._RunActions(e,0),s.next=27
|
||
break
|
||
case 25:return s.delegateYield(this._DebugRunActions(e,0),"t1",26)
|
||
case 26:u=s.t1
|
||
case 27:if(!u){s.next=33
|
||
break}if(!this.DebugCanRunSubEventsFast()){s.next=32
|
||
break}this._RunSubEvents(),s.next=33
|
||
break
|
||
case 32:return s.delegateYield(this._DebugRunSubEvents(),"t2",33)
|
||
case 33:this._hasElseBlock&&e.SetElseBranchRan(!0)
|
||
case 34:case"end":return s.stop()}},s,this)})},{key:"_RunAndBlock",value:function(e){for(var t=this._conditions,n=0,r=t.length;r>n;++n){var a=t[n]
|
||
e.SetConditionIndex(n)
|
||
var i=a.Run()
|
||
if(!i)return void e.SetLastEventTrue(!1)}e.SetLastEventTrue(!0),this._RunActions(e,0)&&this._RunSubEvents(e),e.GetLastEventTrue()&&this._hasElseBlock&&e.SetElseBranchRan(!0)}},{key:"_DebugRunAndBlock",value:_regeneratorRuntime().mark(function o(e){var t,n,r,a,i,s
|
||
return _regeneratorRuntime().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:t=this._conditions,n=0,r=t.length
|
||
case 2:if(!(r>n)){o.next=18
|
||
break}if(a=t[n],e.SetConditionIndex(n),i=void 0,!a.DebugCanRunFast()){o.next=10
|
||
break}i=a.Run(),o.next=12
|
||
break
|
||
case 10:return o.delegateYield(a.DebugRun(),"t0",11)
|
||
case 11:i=o.t0
|
||
case 12:if(i){o.next=15
|
||
break}return e.SetLastEventTrue(!1),o.abrupt("return")
|
||
case 15:++n,o.next=2
|
||
break
|
||
case 18:if(e.SetLastEventTrue(!0),!this.DebugCanRunActionsFast()){o.next=23
|
||
break}s=this._RunActions(e,0),o.next=25
|
||
break
|
||
case 23:return o.delegateYield(this._DebugRunActions(e,0),"t1",24)
|
||
case 24:s=o.t1
|
||
case 25:if(!s){o.next=31
|
||
break}if(!this.DebugCanRunSubEventsFast()){o.next=30
|
||
break}this._RunSubEvents(),o.next=31
|
||
break
|
||
case 30:return o.delegateYield(this._DebugRunSubEvents(),"t2",31)
|
||
case 31:e.GetLastEventTrue()&&this._hasElseBlock&&e.SetElseBranchRan(!0)
|
||
case 32:case"end":return o.stop()}},o,this)})},{key:"_RunActions_Fast",value:function(e,t){for(var n=this._actions,r=t,a=n.length;a>r;++r){var i=n[r]
|
||
e.SetActionIndex(r),i.Run()}return!0}},{key:"_DebugRunActions_Fast",value:_regeneratorRuntime().mark(function u(e,t){var n,r,a,i
|
||
return _regeneratorRuntime().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:n=this._actions,r=t,a=n.length
|
||
case 2:if(!(a>r)){s.next=13
|
||
break}if(i=n[r],e.SetActionIndex(r),!i.DebugCanRunFast()){s.next=9
|
||
break}i.Run(),s.next=10
|
||
break
|
||
case 9:return s.delegateYield(i.DebugRun(),"t0",10)
|
||
case 10:++r,s.next=2
|
||
break
|
||
case 13:return s.abrupt("return",!0)
|
||
case 14:case"end":return s.stop()}},u,this)})},{key:"_RunActions_ReturnValue",value:function(e,t){for(var n=this.GetEventSheetManager(),r=this._actions,a=t,i=r.length;i>a;++a){var s=r[a]
|
||
e.SetActionIndex(a)
|
||
var o=s.Run()
|
||
if(s.CanBailOut()&&o===!0)return!1
|
||
s.IsAsync()&&o instanceof Promise&&n.AddAsyncActionPromise(o)}return!0}},{key:"_DebugRunActions_ReturnValue",value:_regeneratorRuntime().mark(function l(e,t){var n,r,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:n=this.GetEventSheetManager(),r=this._actions,a=t,i=r.length
|
||
case 3:if(!(i>a)){u.next=21
|
||
break}if(s=r[a],e.SetActionIndex(a),o=void 0,!s.DebugCanRunFast()){u.next=11
|
||
break}o=s.Run(),u.next=13
|
||
break
|
||
case 11:return u.delegateYield(s.DebugRun(),"t0",12)
|
||
case 12:o=u.t0
|
||
case 13:if(!s.CanBailOut()||o!==!0){u.next=17
|
||
break}return u.abrupt("return",!1)
|
||
case 17:s.IsAsync()&&o instanceof Promise&&n.AddAsyncActionPromise(o)
|
||
case 18:++a,u.next=3
|
||
break
|
||
case 21:return u.abrupt("return",!0)
|
||
case 22:case"end":return u.stop()}},l,this)})},{key:"_ResumeActionsAndSubEvents",value:function(e){this._RunActions(e,e.GetActionIndex())&&this._RunSubEvents()}},{key:"_DebugResumeActionsAndSubEvents",value:_regeneratorRuntime().mark(function c(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.delegateYield(this._DebugRunActions(e,e.GetActionIndex()),"t0",1)
|
||
case 1:if(!t.t0){t.next=3
|
||
break}return t.delegateYield(this._DebugRunSubEvents(),"t1",3)
|
||
case 3:case"end":return t.stop()}},c,this)})},{key:"_RunSubEvents",value:function(){if(this._subEvents.length){var e=this.IsGroup()&&this._runtime.IsCPUProfiling(),t=e?performance.now():0,n=this._eventStack,r=n.Push(this)
|
||
this._isSolWriterAfterCnds?this._RunSubEvents_SolWriterAfterCnds(r):this._RunSubEvents_Fast(r),n.Pop(),e&&(this._perfRecord.totalTimeCounter+=performance.now()-t)}}},{key:"_RunSubEvents_SolWriterAfterCnds",value:function(e){for(var t=this._isGroup,n=this._isTopLevelGroup,r=this.GetEventSheetManager(),a=this._subEvents,i=0,s=a.length,o=s-1;s>i;++i){var u=a[i],l=u.GetSolModifiers(),c=!n||!t&&o>i
|
||
c&&r.PushCopySol(l),u.Run(e),c?r.PopSol(l):r.ClearSol(l)}}},{key:"_RunSubEvents_Fast",value:function(e){for(var t=this._subEvents,n=0,r=t.length;r>n;++n)t[n].Run(e)}},{key:"_DebugRunSubEvents",value:_regeneratorRuntime().mark(function h(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this._subEvents.length){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:if(e=this._eventStack,t=e.Push(this),!this._isSolWriterAfterCnds){n.next=8
|
||
break}return n.delegateYield(this._DebugRunSubEvents_SolWriterAfterCnds(t),"t0",6)
|
||
case 6:n.next=9
|
||
break
|
||
case 8:return n.delegateYield(this._DebugRunSubEvents_Fast(t),"t1",9)
|
||
case 9:e.Pop()
|
||
case 10:case"end":return n.stop()}},h,this)})},{key:"_DebugRunSubEvents_SolWriterAfterCnds",value:_regeneratorRuntime().mark(function _(e){var t,n,r,a,i,s,o,u,l,c
|
||
return _regeneratorRuntime().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:t=this._isGroup,n=this._isTopLevelGroup,r=this.GetEventSheetManager(),a=this._subEvents,i=0,s=a.length,o=s-1
|
||
case 5:if(!(s>i)){h.next=15
|
||
break}return u=a[i],l=u.GetSolModifiers(),c=!n||!t&&o>i,c&&r.PushCopySol(l),h.delegateYield(u.DebugRun(e),"t0",11)
|
||
case 11:c?r.PopSol(l):r.ClearSol(l)
|
||
case 12:++i,h.next=5
|
||
break
|
||
case 15:case"end":return h.stop()}},_,this)})},{key:"_DebugRunSubEvents_Fast",value:_regeneratorRuntime().mark(function f(e){var t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:t=this._subEvents,n=0,r=t.length
|
||
case 2:if(!(r>n)){a.next=7
|
||
break}return a.delegateYield(t[n].DebugRun(e),"t0",4)
|
||
case 4:++n,a.next=2
|
||
break
|
||
case 7:case"end":return a.stop()}},f,this)})},{key:"Retrigger",value:function(e,t){this._runtime.IncrementExecCount(),t.ResetQuick()
|
||
var n=this._conditions
|
||
if(!this.IsOrBlock())for(var r=e.GetConditionIndex()+1,a=n.length;a>r;++r){var i=n[r]
|
||
t.SetConditionIndex(r)
|
||
var s=i.Run()
|
||
if(!s)return!1}return this._RunActions(t,0)&&this._RunSubEvents(t),!0}},{key:"DebugRetrigger",value:_regeneratorRuntime().mark(function d(e,t){var n,r,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(this._runtime.IncrementExecCount(),t.ResetQuick(),n=this._conditions,this.IsOrBlock()){u.next=20
|
||
break}r=e.GetConditionIndex()+1,a=n.length
|
||
case 5:if(!(a>r)){u.next=20
|
||
break}if(i=n[r],t.SetConditionIndex(r),s=void 0,!i.DebugCanRunFast()){u.next=13
|
||
break}s=i.Run(),u.next=15
|
||
break
|
||
case 13:return u.delegateYield(i.DebugRun(),"t0",14)
|
||
case 14:s=u.t0
|
||
case 15:if(s){u.next=17
|
||
break}return u.abrupt("return",!1)
|
||
case 17:++r,u.next=5
|
||
break
|
||
case 20:if(!this.DebugCanRunActionsFast()){u.next=24
|
||
break}o=this._RunActions(t,0),u.next=26
|
||
break
|
||
case 24:return u.delegateYield(this._DebugRunActions(t,0),"t1",25)
|
||
case 25:o=u.t1
|
||
case 26:if(!o){u.next=32
|
||
break}if(!this.DebugCanRunSubEventsFast()){u.next=31
|
||
break}this._RunSubEvents(),u.next=32
|
||
break
|
||
case 31:return u.delegateYield(this._DebugRunSubEvents(),"t2",32)
|
||
case 32:return u.abrupt("return",!0)
|
||
case 33:case"end":return u.stop()}},d,this)})},{key:"DebugCanRunFast",value:function(){return!this.IsDebugBreakpoint()&&!this._runtime.DebugBreakNext()&&this._debugData.canRunSelfFast}},{key:"DebugCanRunActionsFast",value:function(){return!this._runtime.DebugBreakNext()&&this._debugData.canRunAllActionsFast}},{key:"DebugCanRunSubEventsFast",value:function(){return!this._runtime.DebugBreakNext()&&this._debugData.canRunAllSubEventsFast}},{key:"_CheckParentsOKToRun",value:function(e){if(this.GetParent())for(var t=this.GetTriggerParents(),n=0,r=t.length;r>n;++n)if(!t[n].RunPreTrigger(e))return!1
|
||
return!0}},{key:"_DebugCheckParentsOKToRun",value:_regeneratorRuntime().mark(function p(e){var t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(!this.GetParent()){a.next=10
|
||
break}t=this.GetTriggerParents(),n=0,r=t.length
|
||
case 3:if(!(r>n)){a.next=10
|
||
break}return a.delegateYield(t[n].DebugRunPreTrigger(e),"t0",5)
|
||
case 5:if(a.t0){a.next=7
|
||
break}return a.abrupt("return",!1)
|
||
case 7:++n,a.next=3
|
||
break
|
||
case 10:return a.abrupt("return",!0)
|
||
case 11:case"end":return a.stop()}},p,this)})},{key:"_EvaluateFunctionCallParameters",value:function(e,t,n){if(t.length>0)if(n){var r=t.map(function(e){return e.Get(0)})
|
||
e.GetLocalVarStack().Push(),this._scopeParent.SetFunctionParameters(r)}else this._scopeParent.EvaluateFunctionParameters(t)
|
||
else n&&e.GetLocalVarStack().Push()}},{key:"RunAsFunctionCall",value:function(e,t){var n,r,a=e.length>0,i=this._runtime,s=this._eventStack,o=i.GetEventSheetManager(),u=o._IncTriggerDepth(),l=u>1
|
||
this._EvaluateFunctionCallParameters(o,t,l),a&&o.PushCleanSol(e)
|
||
var c=s.Push(this)
|
||
if(this._CheckParentsOKToRun(c)){i.IncrementExecCount(),c.SetCurrentEvent(this)
|
||
var h=this._scopeParent.IsAsync()
|
||
if(h){var _=this._scopeParent.StartAsyncFunctionCall(),f=_slicedToArray(_,2)
|
||
r=f[0],n=f[1]}this._RunAndBlock(c),h&&this._scopeParent.MaybeFinishAsyncFunctionCall(r)}return s.Pop(),l&&o.GetLocalVarStack().Pop(),a&&o.PopSol(e),o._DecTriggerDepth(),n}},{key:"DebugRunAsFunctionCall",value:_regeneratorRuntime().mark(function v(e,t){var n,r,a,i,s,o,u,l,c,h,_,f
|
||
return _regeneratorRuntime().wrap(function(d){for(;;)switch(d.prev=d.next){case 0:if(!this.IsDebugBreakpoint()&&!this._runtime.DebugBreakNext()){d.next=3
|
||
break}return d.next=3,this
|
||
case 3:return a=e.length>0,i=this._runtime,s=this._eventStack,o=i.GetEventSheetManager(),u=o._IncTriggerDepth(),l=u>1,this._EvaluateFunctionCallParameters(o,t,l),a&&o.PushCleanSol(e),c=s.Push(this),d.delegateYield(this._DebugCheckParentsOKToRun(c),"t0",13)
|
||
case 13:if(!d.t0){d.next=20
|
||
break}return i.IncrementExecCount(),c.SetCurrentEvent(this),h=this._scopeParent.IsAsync(),h&&(_=this._scopeParent.StartAsyncFunctionCall(),f=_slicedToArray(_,2),r=f[0],n=f[1]),d.delegateYield(this._DebugRunAndBlock(c),"t1",19)
|
||
case 19:h&&this._scopeParent.MaybeFinishAsyncFunctionCall(r)
|
||
case 20:return s.Pop(),l&&o.GetLocalVarStack().Pop(),a&&o.PopSol(e),o._DecTriggerDepth(),d.abrupt("return",n)
|
||
case 25:case"end":return d.stop()}},v,this)})},{key:"RunAsMappedFunctionCall",value:function(e){var t=this.GetSolModifiersIncludingParents(),n=t.length>0,r=this._runtime,a=this._eventStack,i=r.GetEventSheetManager(),s=i._IncTriggerDepth(),o=s>1
|
||
o&&i.GetLocalVarStack().Push(),this._scopeParent.SetFunctionParameters(e),n&&i.PushCleanSol(t)
|
||
var u=a.Push(this)
|
||
this._CheckParentsOKToRun(u)&&(r.IncrementExecCount(),u.SetCurrentEvent(this),this._RunAndBlock(u)),a.Pop(),o&&i.GetLocalVarStack().Pop(),n&&i.PopSol(t),i._DecTriggerDepth()}},{key:"DebugRunAsMappedFunctionCall",value:_regeneratorRuntime().mark(function m(e){var t,n,r,a,i,s,o,u
|
||
return _regeneratorRuntime().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(!this.IsDebugBreakpoint()&&!this._runtime.DebugBreakNext()){l.next=3
|
||
break}return l.next=3,this
|
||
case 3:return t=this.GetSolModifiersIncludingParents(),n=t.length>0,r=this._runtime,a=this._eventStack,i=r.GetEventSheetManager(),s=i._IncTriggerDepth(),o=s>1,o&&i.GetLocalVarStack().Push(),this._scopeParent.SetFunctionParameters(e),n&&i.PushCleanSol(t),u=a.Push(this),l.delegateYield(this._DebugCheckParentsOKToRun(u),"t0",15)
|
||
case 15:if(!l.t0){l.next=19
|
||
break}return r.IncrementExecCount(),u.SetCurrentEvent(this),l.delegateYield(this._DebugRunAndBlock(u),"t1",19)
|
||
case 19:a.Pop(),o&&i.GetLocalVarStack().Pop(),n&&i.PopSol(t),i._DecTriggerDepth()
|
||
case 23:case"end":return l.stop()}},m,this)})},{key:"RunAsExpressionFunctionCall",value:function(e,t,n){var r,a,i=e.length>0,s=this._runtime,o=this._eventStack,u=s.GetEventSheetManager(),l=u._IncTriggerDepth(),c=l>1
|
||
c&&u.GetLocalVarStack().Push()
|
||
for(var h=arguments.length,_=Array(h>3?h-3:0),f=3;h>f;f++)_[f-3]=arguments[f]
|
||
_.length>0&&this._scopeParent.SetFunctionParameters(_),i&&u.PushCleanSol(e)
|
||
var d=o.Push(this)
|
||
if(d.InitCallFunctionExpression(t,n),o.PushExpFunc(d),s.SetDebuggingEnabled(!1),this._CheckParentsOKToRun(d)){s.IncrementExecCount(),d.SetCurrentEvent(this)
|
||
var p=this._scopeParent.IsAsync()
|
||
if(p){var v=this._scopeParent.StartAsyncFunctionCall(),m=_slicedToArray(v,2)
|
||
a=m[0],r=m[1]}this._RunAndBlock(d),p&&this._scopeParent.MaybeFinishAsyncFunctionCall(a)}return s.SetDebuggingEnabled(!0),o.Pop(),o.PopExpFunc(),c&&u.GetLocalVarStack().Pop(),i&&u.PopSol(e),u._DecTriggerDepth(),r||d.GetFunctionReturnValue()}}],[{key:"Create",value:function(e,t,n){return _C108.New(_C108.EventBlock,e,t,n)}}]),t}(_C108.DefendedBase)
|
||
var _C109=self.C3,EMPTY_SOL_MODIFIERS=[],hadUserScriptException=!1
|
||
_C109.EventScript=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this)
|
||
var s=e.GetRuntime(),o=e.GetEventSheetManager()
|
||
i._eventSheet=e,i._eventSheetManager=o,i._runtime=e.GetRuntime(),i._parent=r
|
||
var u=s.GetObjectReference(a[1])
|
||
return i._func=u,i._displayNumber=a[2],i._eventSheet._RegisterEventByDisplayNumber(_assertThisInitialized(i),i._displayNumber),i._debugData=s.IsDebug()?{isBreakpoint:a[3][0],isBreakable:a[3][1]}:null,i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){var e=this._func,t=this._runtime.GetEventSheetManager()._GetLocalVariablesScriptInterface(this)
|
||
this._func=e.bind(null,this._runtime.GetIRuntime(),t)}},{key:"GetParent",value:function(){return this._parent}},{key:"GetScopeParent",value:function(){return this._parent}},{key:"GetEventSheet",value:function(){return this._eventSheet}},{key:"GetDisplayNumber",value:function(){return this._displayNumber}},{key:"IsDebugBreakable",value:function(){return this._debugData&&this._debugData.isBreakable}},{key:"IsDebugBreakpoint",value:function(){return this.IsDebugBreakable()&&this._debugData.isBreakpoint}},{key:"_SetDebugBreakpoint",value:function(e){this._debugData.isBreakpoint=!!e}},{key:"IsElseBlock",value:function(){return!1}},{key:"GetSolModifiers",value:function(){return EMPTY_SOL_MODIFIERS}},{key:"GetSolModifiersIncludingParents",value:function(){return this._parent?this._parent.GetSolModifiersIncludingParents():EMPTY_SOL_MODIFIERS}},{key:"Run",value:function(e){e.SetCurrentEvent(this),this._eventSheetManager.AddAsyncActionPromise(this._RunUserScript())}},{key:"_RunUserScript",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this._func()
|
||
case 3:e.next=10
|
||
break
|
||
case 5:e.prev=5,e.t0=e["catch"](0),console.error("Unhandled exception running script %c".concat(this.GetEventSheet().GetName(),", event ").concat(this.GetDisplayNumber(),":"),"font-size: 1.2em; font-weight: bold;",e.t0),self.C3Debugger&&self.C3Debugger._SetLastErrorScript(this),hadUserScriptException||(console.info("%cTip:%c run this to highlight in Construct the last script that had an error: %cgoToLastErrorScript()","font-weight: bold; text-decoration: underline","","font-weight: bold"),hadUserScriptException=!0)
|
||
case 10:case"end":return e.stop()}},n,this,[[0,5]])}))
|
||
return e}()},{key:"DebugRun",value:_regeneratorRuntime().mark(function r(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(e.SetCurrentEvent(this),!this.IsDebugBreakpoint()&&!this._runtime.DebugBreakNext()){t.next=4
|
||
break}return t.next=4,this
|
||
case 4:this.Run(e)
|
||
case 5:case"end":return t.stop()}},r,this)})},{key:"DebugCanRunFast",value:function(){return!this.IsDebugBreakpoint()&&!this._runtime.DebugBreakNext()}}],[{key:"Create",value:function(e,t,n){return _C109.New(_C109.EventScript,e,t,n)}},{key:"HadUserScriptException",value:function(){return hadUserScriptException}},{key:"SetHadUserScriptException",value:function(){hadUserScriptException=!0}}]),t}(_C109.DefendedBase)
|
||
var _C110=self.C3,_assert8=self.assert
|
||
_C110.FunctionBlock=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this),i._eventSheet=e,i._runtime=e.GetRuntime(),i._parent=r
|
||
var s=a[1]
|
||
return i._functionName=s[0],i._returnType=s[1],i._functionParameters=s[2].map(function(t){return _C110.EventVariable.Create(e,_assertThisInitialized(i),t)}),i._isEnabled=s[3],i._isAsync=s[4],i._nextAsyncId=0,i._currentAsyncId=-1,i._asyncMap=new Map,i._eventBlock=_C110.EventBlock.Create(e,r,a),i._eventBlock._SetScopeParent(_assertThisInitialized(i)),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){var e,t=_createForOfIteratorHelper(this._functionParameters)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._PostInit()}}catch(r){t.e(r)}finally{t.f()}this._eventBlock._PostInit(!1)}},{key:"_GetAllLocalVariablesInScope",value:function(){return this._functionParameters}},{key:"GetFunctionParameters",value:function(){return this._functionParameters}},{key:"GetFunctionParameterCount",value:function(){return this._functionParameters.length}},{key:"EvaluateFunctionParameters",value:function(e){for(var t=this._functionParameters,n=0,r=t.length;r>n;++n)t[n].SetValue(e[n].Get(0))}},{key:"SetFunctionParameters",value:function(e){for(var t=this._functionParameters,n=0,r=t.length;r>n;++n)t[n].SetValue(e[n])}},{key:"CaptureFunctionParameters",value:function(){return this._functionParameters.map(function(e){return e.GetValue()})}},{key:"GetParent",value:function(){return this._parent}},{key:"GetScopeParent",value:function(){return this._parent}},{key:"GetFunctionName",value:function(){return this._functionName}},{key:"GetReturnType",value:function(){return this._returnType}},{key:"IsEnabled",value:function(){return this._isEnabled}},{key:"GetDefaultReturnValue",value:function(){switch(this._returnType){case 0:return null
|
||
case 2:return""
|
||
default:return 0}}},{key:"GetEventBlock",value:function(){return this._eventBlock}},{key:"IsAsync",value:function(){return this._isAsync}},{key:"StartAsyncFunctionCall",value:function(){var e=this._nextAsyncId++
|
||
this._currentAsyncId=e
|
||
var t,n=new Promise(function(e){return t=e})
|
||
return this._asyncMap.set(e,{resolve:t,pauseCount:0}),[e,n]}},{key:"MaybeFinishAsyncFunctionCall",value:function(e){var t=this._asyncMap.get(e)
|
||
0===t.pauseCount&&(t.resolve(),this._asyncMap["delete"](e)),this._currentAsyncId=-1}},{key:"PauseCurrentAsyncFunction",value:function(){var e=this._asyncMap.get(this._currentAsyncId)
|
||
return e.pauseCount++,this._currentAsyncId}},{key:"ResumeAsyncFunction",value:function(e){this._currentAsyncId=e
|
||
var t=this._asyncMap.get(e)
|
||
t.pauseCount--}}],[{key:"Create",value:function(e,t,n){return _C110.New(_C110.FunctionBlock,e,t,n)}}]),t}(_C110.DefendedBase)
|
||
var _C111=self.C3,_EMPTY_SOL_MODIFIERS=[]
|
||
_C111.EventVariable=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this)
|
||
var s=e.GetEventSheetManager()
|
||
return i._eventSheet=e,i._eventSheetManager=s,i._runtime=e.GetRuntime(),i._parent=r,i._localVarStack=s.GetLocalVarStack(),i._name=a[1],i._type=a[2],i._initialValue=a[3],i._isStatic=!!a[4],i._isConstant=!!a[5],i._isFunctionParameter=r instanceof _C111.FunctionBlock,i._sid=a[6],i._jsPropName=i._runtime.GetJsPropName(a[8]),i._scriptSetter=function(e){return i.SetValue(e)},i._scriptGetter=function(){return i.GetValue()},i._hasSingleValue=!i._parent||i._isStatic||i._isConstant,i._value=i._initialValue,i._localIndex=-1,i.IsBoolean()&&(i._value=i._value?1:0),!i.IsLocal()||i.IsStatic()||i.IsConstant()||(i._localIndex=s._GetNextLocalVarIndex(_assertThisInitialized(i))),s._RegisterEventVariable(_assertThisInitialized(i)),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){}},{key:"GetName",value:function(){return this._name}},{key:"GetJsPropName",value:function(){return this._jsPropName}},{key:"GetParent",value:function(){return this._parent}},{key:"IsGlobal",value:function(){return!this.GetParent()}},{key:"IsLocal",value:function(){return!this.IsGlobal()}},{key:"IsFunctionParameter",value:function(){return this._isFunctionParameter}},{key:"IsStatic",value:function(){return this._isStatic}},{key:"IsConstant",value:function(){return this._isConstant}},{key:"IsNumber",value:function(){return 0===this._type}},{key:"IsString",value:function(){return 1===this._type}},{key:"IsBoolean",value:function(){return 2===this._type}},{key:"IsElseBlock",value:function(){return!1}},{key:"GetSID",value:function(){return this._sid}},{key:"GetInitialValue",value:function(){return this._initialValue}},{key:"GetSolModifiers",value:function(){return _EMPTY_SOL_MODIFIERS}},{key:"Run",value:function(e){!this.IsLocal()||this.IsStatic()||this.IsConstant()||this.SetValue(this.GetInitialValue())}},{key:"DebugCanRunFast",value:function(){return!0}},{key:"DebugRun",value:_regeneratorRuntime().mark(function r(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:this.Run(e)
|
||
case 1:case"end":return t.stop()}},r,this)})},{key:"SetValue",value:function(e){this.IsNumber()?"number"!=typeof e&&(e=parseFloat(e)):this.IsString()?"string"!=typeof e&&(e=""+e):this.IsBoolean()&&(e=e?1:0),this._hasSingleValue?this._value=e:this._localVarStack.GetCurrent()[this._localIndex]=e}},{key:"GetValue",value:function(){return this._hasSingleValue?this._value:this._localVarStack.GetCurrent()[this._localIndex]}},{key:"GetTypedValue",value:function(){var e=this.GetValue()
|
||
return this.IsBoolean()&&(e=!!e),e}},{key:"ResetToInitialValue",value:function(){this._value=this._initialValue}},{key:"_GetScriptInterfaceDescriptor",value:function(){return{configurable:!1,enumerable:!0,get:this._scriptGetter,set:this._scriptSetter}}}],[{key:"Create",value:function(e,t,n){return _C111.New(_C111.EventVariable,e,t,n)}}]),t}(_C111.DefendedBase)
|
||
var _C112=self.C3,_assert9=self.assert,_EMPTY_SOL_MODIFIERS2=[]
|
||
_C112.EventInclude=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this)
|
||
var s=e.GetEventSheetManager()
|
||
return i._eventSheet=e,i._eventSheetManager=s,i._runtime=e.GetRuntime(),i._parent=r,i._includeSheet=null,i._includeSheetName=a[1],i._isActive=!0,i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){this._includeSheet=this._eventSheetManager.GetEventSheetByName(this._includeSheetName),this._eventSheet._AddShallowInclude(this)
|
||
for(var e=this.GetParent();e;)e instanceof _C112.EventBlock&&e.IsGroup()&&e._AddContainedInclude(this),e=e.GetParent()
|
||
this.UpdateActive(),this._runtime.IsDebug()&&this._eventSheet._GetPerfRecord().children.push(this._includeSheet._GetPerfRecord())}},{key:"GetParent",value:function(){return this._parent}},{key:"GetSolModifiers",value:function(){return _EMPTY_SOL_MODIFIERS2}},{key:"GetIncludeSheet",value:function(){return this._includeSheet}},{key:"Run",value:function(e){var t=!!this.GetParent(),n=this._runtime.GetAllObjectClasses()
|
||
t&&this._eventSheetManager.PushCleanSol(n),this._includeSheet.Run(),t&&this._eventSheetManager.PopSol(n)}},{key:"DebugRun",value:_regeneratorRuntime().mark(function r(e){var t,n
|
||
return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=!!this.GetParent(),n=this._runtime.GetAllObjectClasses(),t&&this._eventSheetManager.PushCleanSol(n),e.delegateYield(this._includeSheet.DebugRun(),"t0",4)
|
||
case 4:t&&this._eventSheetManager.PopSol(n)
|
||
case 5:case"end":return e.stop()}},r,this)})},{key:"DebugCanRunFast",value:function(){return!1}},{key:"IsActive",value:function(){return this._isActive}},{key:"UpdateActive",value:function(){for(var e=this.GetParent();e;){if(e instanceof _C112.EventBlock&&e.IsGroup()&&!e.IsGroupActive())return void(this._isActive=!1)
|
||
e=e.GetParent()}this._isActive=!0}}],[{key:"Create",value:function(e,t,n){return _C112.New(_C112.EventInclude,e,t,n)}}]),t}(_C112.DefendedBase)
|
||
var WrapIndex=function(e,t){return e>=t?e%t:0>e?(-t>=e&&(e%=t),0>e&&(e+=t),e):e},_C113=self.C3,_assert10=self.assert
|
||
_C113.ExpNode=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._owner=e,r._runtime=e.GetRuntime(),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){}}],[{key:"CreateNode",value:function(e,t){var n=t[0],r=[BehaviorExpressionNode,ObjectExpressionNode,InstVarExpressionNode,EventVarExpNode,SystemExpressionExpNode,CallFunctionExpressionExpNode]
|
||
return _C113.New(r[n],e,t)}}]),t}(_C113.DefendedBase)
|
||
var SystemExpressionExpNode=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._systemPlugin=a._runtime.GetSystemPlugin(),a._func=a._runtime.GetObjectReference(r[1]),(a._func===_C113.Plugins.System.Exps.random||a._func===_C113.Plugins.System.Exps.choose)&&a._owner.SetVariesPerInstance(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetBoundMethod",value:function(){return this._systemPlugin._GetBoundACEMethod(this._func,this._systemPlugin)}}]),t}(_C113.ExpNode),CallFunctionExpressionExpNode=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._functionBlock=null,a._functionName=r[1],a._owner.SetVariesPerInstance(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){var e=this._runtime.GetEventSheetManager()
|
||
this._functionBlock=e.GetFunctionBlockByName(this._functionName),this._functionName=null
|
||
var t=this._owner.GetEventBlock(),n=this._functionBlock.GetEventBlock()
|
||
this._combinedSolModifiers=_toConsumableArray(new Set([].concat(_toConsumableArray(t.GetSolModifiersIncludingParents()),_toConsumableArray(n.GetSolModifiersIncludingParents())))),this._combinedSolModifiers=e._DeduplicateSolModifierList(this._combinedSolModifiers)}},{key:"GetBoundMethod",value:function(){var e=this._functionBlock
|
||
if(e.IsEnabled()){var t=e.GetEventBlock()
|
||
return _C113.EventBlock.prototype.RunAsExpressionFunctionCall.bind(t,this._combinedSolModifiers,e.GetReturnType(),e.GetDefaultReturnValue())}var n=e.GetDefaultReturnValue()
|
||
return function(){return n}}}]),t}(_C113.ExpNode),ObjectExpressionNode=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._objectClass=a._runtime.GetObjectClassByIndex(r[1]),a._func=a._runtime.GetObjectReference(r[2]),a._returnsString=!!r[3],a._eventStack=a._runtime.GetEventSheetManager().GetEventStack(),a._owner._MaybeVaryFor(a._objectClass),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetBoundMethod",value:function(){return this._objectClass.GetPlugin()._GetBoundACEMethod(this._func,this._objectClass.GetSingleGlobalInstance().GetSdkInstance())}},{key:"ExpObject",value:function(){var e=this._objectClass,t=e.GetCurrentSol().GetExpressionInstances(),n=t.length
|
||
if(0===n)return this._returnsString?"":0
|
||
var r=WrapIndex(this._owner.GetSolIndex(),n)
|
||
this._eventStack.GetCurrentStackFrame().SetExpressionObjectClass(e)
|
||
for(var a=arguments.length,i=Array(a),s=0;a>s;s++)i[s]=arguments[s]
|
||
return this._func.apply(t[r].GetSdkInstance(),i)}},{key:"ExpObject_InstExpr",value:function(e){var t=this._objectClass,n=t.GetInstances(),r=n.length
|
||
if(0===r)return this._returnsString?"":0
|
||
var a=WrapIndex(e,r)
|
||
this._eventStack.GetCurrentStackFrame().SetExpressionObjectClass(t)
|
||
for(var i=arguments.length,s=Array(i>1?i-1:0),o=1;i>o;o++)s[o-1]=arguments[o]
|
||
return this._func.apply(n[a].GetSdkInstance(),s)}}]),t}(_C113.ExpNode),InstVarExpressionNode=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._objectClass=a._runtime.GetObjectClassByIndex(r[1]),a._varIndex=r[3],a._returnsString=!!r[2],a._owner._MaybeVaryFor(a._objectClass),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"ExpInstVar",value:function(){var e=this._objectClass.GetCurrentSol().GetExpressionInstances(),t=e.length
|
||
if(0===t)return this._returnsString?"":0
|
||
var n=WrapIndex(this._owner.GetSolIndex(),t)
|
||
return e[n]._GetInstanceVariableValueUnchecked(this._varIndex)}},{key:"ExpInstVar_Family",value:function(){var e=this._objectClass,t=e.GetCurrentSol().GetExpressionInstances(),n=t.length
|
||
if(0===n)return this._returnsString?"":0
|
||
var r=WrapIndex(this._owner.GetSolIndex(),n),a=t[r],i=a.GetObjectClass().GetFamilyInstanceVariableOffset(e.GetFamilyIndex())
|
||
return a._GetInstanceVariableValueUnchecked(this._varIndex+i)}},{key:"ExpInstVar_InstExpr",value:function(e){var t=this._objectClass,n=t.GetInstances(),r=n.length
|
||
if(0===r)return this._returnsString?"":0
|
||
var a=WrapIndex(e,r),i=n[a],s=0
|
||
return t.IsFamily()&&(s=i.GetObjectClass().GetFamilyInstanceVariableOffset(t.GetFamilyIndex())),i._GetInstanceVariableValueUnchecked(this._varIndex+s)}}]),t}(_C113.ExpNode),BehaviorExpressionNode=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._objectClass=a._runtime.GetObjectClassByIndex(r[1]),a._behaviorType=a._objectClass.GetBehaviorTypeByName(r[2]),a._behaviorIndex=a._objectClass.GetBehaviorIndexByName(r[2]),a._func=a._runtime.GetObjectReference(r[3]),a._returnsString=!!r[4],a._eventStack=a._runtime.GetEventSheetManager().GetEventStack(),a._owner._MaybeVaryFor(a._objectClass),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"ExpBehavior",value:function(){var e=this._objectClass,t=e.GetCurrentSol().GetExpressionInstances(),n=t.length
|
||
if(0===n)return this._returnsString?"":0
|
||
var r=WrapIndex(this._owner.GetSolIndex(),n)
|
||
this._eventStack.GetCurrentStackFrame().SetExpressionObjectClass(e)
|
||
var a=t[r],i=0
|
||
e.IsFamily()&&(i=a.GetObjectClass().GetFamilyBehaviorOffset(e.GetFamilyIndex()))
|
||
for(var s=arguments.length,o=Array(s),u=0;s>u;u++)o[u]=arguments[u]
|
||
return this._func.apply(a.GetBehaviorInstances()[this._behaviorIndex+i].GetSdkInstance(),o)}},{key:"ExpBehavior_InstExpr",value:function(e){var t=this._objectClass,n=t.GetInstances(),r=n.length
|
||
if(0===r)return this._returnsString?"":0
|
||
var a=WrapIndex(e,r)
|
||
this._eventStack.GetCurrentStackFrame().SetExpressionObjectClass(t)
|
||
var i=n[a],s=0
|
||
t.IsFamily()&&(s=i.GetObjectClass().GetFamilyBehaviorOffset(t.GetFamilyIndex()))
|
||
for(var o=arguments.length,u=Array(o>1?o-1:0),l=1;o>l;l++)u[l-1]=arguments[l]
|
||
return this._func.apply(i.GetBehaviorInstances()[this._behaviorIndex+s].GetSdkInstance(),u)}}]),t}(_C113.ExpNode),EventVarExpNode=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._eventVar=null,a._eventVarSid=r[1],a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){this._eventVar=this._runtime.GetEventSheetManager().GetEventVariableBySID(this._eventVarSid)}},{key:"GetVar",value:function(){return this._eventVar}}]),t}(_C113.ExpNode),GetExpressionFunc=function(e){var t=self.C3_ExpressionFuncs[e]
|
||
if(!t)throw Error("invalid expression number")
|
||
return t},_C114=self.C3,_assert11=self.assert
|
||
_C114.Parameter=function(e){function t(e,r,a){var i
|
||
return _classCallCheck(this,t),i=n.call(this),i._owner=e,i._index=a,i._type=r,i.Get=null,i._variesPerInstance=!1,i._isConstant=!1,i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){}},{key:"SetVariesPerInstance",value:function(){this._variesPerInstance=!0}},{key:"_MaybeVaryFor",value:function(e){this._variesPerInstance||e&&(e.GetPlugin().IsSingleGlobal()||(this._variesPerInstance=!0))}},{key:"VariesPerInstance",value:function(){return this._variesPerInstance}},{key:"GetIndex",value:function(){return this._index}},{key:"GetRuntime",value:function(){return this._owner.GetRuntime()}},{key:"GetEventBlock",value:function(){return this._owner.GetEventBlock()}},{key:"IsConstant",value:function(){return this._isConstant}}],[{key:"Create",value:function(e,t,n){var r=t[0],a=[ExpressionParameter,StringExpressionParameter,FileParameter,ComboParameter,ObjectParameter,LayerExpressionParameter,LayoutParameter,ExpressionParameter,ComboParameter,ComboParameter,InstVarParameter,EventVarParameter,FileParameter,VariadicParameter,StringExpressionParameter,TimelineParameter,BooleanParameter,FunctionParameter,EaseParameter]
|
||
return _C114.New(a[r],e,r,n,t)}}]),t}(_C114.DefendedBase)
|
||
var ExpressionParameter=function(e){function t(e,r,a,i){var s
|
||
_classCallCheck(this,t),s=n.call(this,e,r,a),s._solIndex=0
|
||
var o=i[1]
|
||
s._expressionNumber=o[0],s._numberedNodes=[],s._expressionFunc=null
|
||
for(var u=1,l=o.length;l>u;++u)s._numberedNodes.push(_C114.ExpNode.CreateNode(_assertThisInitialized(s),o[u]))
|
||
return s._numberedNodes.length?s.Get=s.GetExpression:(s.Get=GetExpressionFunc(s._expressionNumber),s._isConstant=!0),s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_GetNode",value:function(e){if(0>e||e>=this._numberedNodes.length)throw new RangeError("invalid numbered node")
|
||
return this._numberedNodes[e]}},{key:"_PostInit",value:function(){var e,t=_createForOfIteratorHelper(this._numberedNodes)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._PostInit()}}catch(r){t.e(r)}finally{t.f()}var a=GetExpressionFunc(this._expressionNumber)
|
||
this._numberedNodes.length?this._expressionFunc=a(this):this._expressionFunc=a}},{key:"GetSolIndex",value:function(){return this._solIndex}},{key:"GetExpression",value:function(e){return this._solIndex=e,this._expressionFunc()}}]),t}(_C114.Parameter),StringExpressionParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a,i),s.Get=s.GetStringExpression,14===r&&(s.GetEventBlock().SetAllSolModifiers(),s._owner instanceof _C114.Action&&s.GetEventBlock().SetSolWriterAfterCnds()),s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetStringExpression",value:function(e){this._solIndex=e
|
||
var t=this._expressionFunc()
|
||
return"string"==typeof t?t:""}},{key:"_GetFastTriggerValue",value:function(){return GetExpressionFunc(this._expressionNumber)()}}]),t}(ExpressionParameter),LayerExpressionParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a,i),s.Get=s.GetLayer,s._isConstant=!1,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetLayer",value:function(e){this._solIndex=e
|
||
var t=this._expressionFunc(),n=this.GetRuntime().GetCurrentLayout()
|
||
return n.GetLayer(t)}}]),t}(ExpressionParameter),ComboParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a),s._combo=i[1],s.Get=s.GetCombo,s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetCombo",value:function(){return this._combo}}]),t}(_C114.Parameter),BooleanParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a),s._bool=i[1],s.Get=s.GetBoolean,s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetBoolean",value:function(){return this._bool}}]),t}(_C114.Parameter),ObjectParameter=function(e){function t(e,r,a,i){var s
|
||
_classCallCheck(this,t),s=n.call(this,e,r,a),s._objectClass=s.GetRuntime().GetObjectClassByIndex(i[1]),s.Get=s.GetObjectClass
|
||
var o=s.GetEventBlock()
|
||
return o._AddSolModifier(s._objectClass),s._owner instanceof _C114.Action?o.SetSolWriterAfterCnds():o.GetParent()&&o.GetParent().SetSolWriterAfterCnds(),s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetObjectClass",value:function(){return this._objectClass}}]),t}(_C114.Parameter),LayoutParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a),s._layout=s.GetRuntime().GetLayoutManager().GetLayoutByName(i[1]),s.Get=s.GetLayout,s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetLayout",value:function(){return this._layout}}]),t}(_C114.Parameter),TimelineParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a),s._timeline=s.GetRuntime().GetTimelineManager().GetTimelineByName(i[1]),s.Get=s.GetTimeline,s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetTimeline",value:function(){return this._timeline}}]),t}(_C114.Parameter),FileParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a),s._fileInfo=i[1],s.Get=s.GetFile,s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetFile",value:function(){return this._fileInfo}}]),t}(_C114.Parameter),InstVarParameter=function(e){function t(e,r,a,i){var s
|
||
_classCallCheck(this,t),s=n.call(this,e,r,a),s._instVarIndex=i[1]
|
||
var o=s._owner.GetObjectClass()
|
||
return o&&o.IsFamily()?(s.Get=s.GetFamilyInstanceVariable,s.SetVariesPerInstance()):(s.Get=s.GetInstanceVariable,s._isConstant=!0),s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetInstanceVariable",value:function(){return this._instVarIndex}},{key:"GetFamilyInstanceVariable",value:function(e){e=e||0
|
||
var t=this._owner.GetObjectClass(),n=t.GetCurrentSol(),r=n.GetInstances(),a=null
|
||
if(r.length)a=r[e%r.length].GetObjectClass()
|
||
else if(n.HasAnyElseInstances()){var i=n.GetElseInstances()
|
||
a=i[e%i.length].GetObjectClass()}else{if(!(t.GetInstanceCount()>0))return 0
|
||
var s=t.GetInstances()
|
||
a=s[e%s.length].GetObjectClass()}return this._instVarIndex+a.GetFamilyInstanceVariableOffset(t.GetFamilyIndex())}}]),t}(_C114.Parameter),EventVarParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a),s._eventVarSid=i[1],s._eventVar=null,s.Get=s.GetEventVariable,s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){this._eventVar=this.GetRuntime().GetEventSheetManager().GetEventVariableBySID(this._eventVarSid)}},{key:"GetEventVariable",value:function(){return this._eventVar}}]),t}(_C114.Parameter),FunctionParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a),s._functionBlockName=i[1],s._functionBlock=null,s.Get=s.GetFunction,s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){this._functionBlock=this.GetRuntime().GetEventSheetManager().GetFunctionBlockByName(this._functionBlockName),this._functionBlockName=null}},{key:"GetFunction",value:function(){return this._functionBlock}}]),t}(_C114.Parameter),VariadicParameter=function(e){function t(e,r,a,i){var s
|
||
_classCallCheck(this,t),s=n.call(this,e,r,a),s._subParams=[],s._variadicRet=[],s._isConstant=!0
|
||
for(var o=1,u=i.length;u>o;++o){var l=_C114.Parameter.Create(s._owner,i[o],0)
|
||
s._subParams.push(l),s._variadicRet.push(0),l.IsConstant()||(s._isConstant=!1)}return s.Get=s.GetVariadic,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){var e,t=_createForOfIteratorHelper(this._subParams)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._PostInit()}}catch(r){t.e(r)}finally{t.f()}}},{key:"GetVariadic",value:function(){for(var e=this._subParams,t=this._variadicRet,n=0,r=e.length;r>n;++n)t[n]=e[n].Get(0)
|
||
return t}}]),t}(_C114.Parameter),EaseParameter=function(e){function t(e,r,a,i){var s
|
||
return _classCallCheck(this,t),s=n.call(this,e,r,a),s._easeIndex=i[1],s.Get=s.GetEase,s._isConstant=!0,s}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"GetEase",value:function(){return this._easeIndex}}]),t}(_C114.Parameter),EvalParams=function(e,t){for(var n=0,r=e.length;r>n;++n)t[n]=e[n].Get(0)},_C115=self.C3,_assert12=self.assert,EMPTY_PARAMS_ARRAY=[],noop=function(){}
|
||
_C115.Condition=function(e){function t(e,r,a){var i
|
||
if(_classCallCheck(this,t),i=n.call(this),i._eventBlock=e,i._runtime=e.GetRuntime(),i._index=a,i._func=i._runtime.GetObjectReference(r[1]),i._isTrigger=r[3]>0,i._isFastTrigger=2===r[3],i._isLooping=!!r[4],i._isInverted=!!r[5],i._isStatic=!!r[6],i._sid=r[7],i._isInOrBlock=i._eventBlock.IsOrBlock(),i._objectClass=null,i._behaviorType=null,i._behaviorIndex=-1,i._systemPlugin=null,i.Run=noop,i.DebugRun=noop,i._parameters=[],i._results=[],i._anyParamVariesPerInstance=!1,i._savedData=null,i._unsavedData=null,i._debugData=i._runtime.IsDebug()?{isBreakpoint:r[8][0],canDebug:r[8][1]}:null,-1===r[0]?i._systemPlugin=i._runtime.GetSystemPlugin():(i._objectClass=i._runtime.GetObjectClassByIndex(r[0]),r[2]&&(i._behaviorType=i._objectClass.GetBehaviorTypeByName(r[2]),i._behaviorIndex=i._objectClass.GetBehaviorIndexByName(r[2])),i._eventBlock.GetParent()&&i._eventBlock.GetParent().SetSolWriterAfterCnds()),10===r.length){var s,o=r[9],u=_createForOfIteratorHelper(o)
|
||
try{for(u.s();!(s=u.n()).done;){var l=s.value
|
||
i._parameters.push(_C115.Parameter.Create(_assertThisInitialized(i),l,i._parameters.length)),i._results.push(0)}}catch(c){u.e(c)}finally{u.f()}}return 0===i._parameters.length&&(i._parameters=EMPTY_PARAMS_ARRAY,i._results=EMPTY_PARAMS_ARRAY),i._eventBlock.GetEventSheetManager()._RegisterCondition(_assertThisInitialized(i)),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){var e,t=_createForOfIteratorHelper(this._parameters)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._PostInit(),n.VariesPerInstance()&&(this._anyParamVariesPerInstance=!0)}}catch(r){t.e(r)}finally{t.f()}this._isFastTrigger?(this.Run=this._RunFastTrigger,this.DebugRun=this._DebugRunFastTrigger):this._systemPlugin?(this._SetSystemRunMethod(),this.DebugRun=this._DebugRunSystem):this._objectClass.GetPlugin().IsSingleGlobal()?(this._SetSingleGlobalRunMethod(),this.DebugRun=this._DebugRunSingleGlobal):this._isStatic?(this.Run=this._RunStatic,this.DebugRun=this._DebugRunStatic):(this.Run=this._RunObject,this.DebugRun=this._DebugRunObject)}},{key:"_SetSystemRunMethod",value:function(){var e=this._systemPlugin,t=this._systemPlugin
|
||
this._SetRunMethodForBoundFunc(e,t,this._RunSystem)}},{key:"_SetSingleGlobalRunMethod",value:function(){var e=this._objectClass.GetPlugin(),t=this._objectClass.GetSingleGlobalInstance().GetSdkInstance()
|
||
this._SetRunMethodForBoundFunc(e,t,this._RunSingleGlobal)}},{key:"_SetRunMethodForBoundFunc",value:function(e,t,n){var r=this._func,a=this._isInverted,i=this._parameters
|
||
if(0===i.length){var s=e._GetBoundACEMethod(r,t)
|
||
a?this.Run=function(){return _C115.xor(s(),a)}:this.Run=s}else if(1===i.length){var o=i[0]
|
||
if(!a&&o.IsConstant())this.Run=e._GetBoundACEMethod_1param(r,t,o.Get(0))
|
||
else{var u=e._GetBoundACEMethod(r,t)
|
||
this.Run=function(){return _C115.xor(u(o.Get(0)),a)}}}else if(2===i.length){var l=i[0],c=i[1]
|
||
if(!a&&l.IsConstant()&&c.IsConstant())this.Run=e._GetBoundACEMethod_2params(r,t,l.Get(0),c.Get(0))
|
||
else{var h=e._GetBoundACEMethod(r,t)
|
||
this.Run=function(){return _C115.xor(h(l.Get(0),c.Get(0)),a)}}}else if(3===i.length){var _=i[0],f=i[1],d=i[2]
|
||
if(!a&&_.IsConstant()&&f.IsConstant()&&d.IsConstant())this.Run=e._GetBoundACEMethod_3params(r,t,_.Get(0),f.Get(0),d.Get(0))
|
||
else{var p=e._GetBoundACEMethod(r,t)
|
||
this.Run=function(){return _C115.xor(p(_.Get(0),f.Get(0),d.Get(0)),a)}}}else this.Run=n}},{key:"GetSID",value:function(){return this._sid}},{key:"_GetFunc",value:function(){return this._func}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"GetBehaviorType",value:function(){return this._behaviorType}},{key:"GetEventBlock",value:function(){return this._eventBlock}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetIndex",value:function(){return this._index}},{key:"GetDebugIndex",value:function(){return this.GetIndex()}},{key:"IsTrigger",value:function(){return this._isTrigger}},{key:"IsFastTrigger",value:function(){return this._isFastTrigger}},{key:"IsInverted",value:function(){return this._isInverted}},{key:"IsLooping",value:function(){return this._isLooping}},{key:"IsBreakpoint",value:function(){return this._debugData.isBreakpoint}},{key:"_SetBreakpoint",value:function(e){this._debugData.isBreakpoint=!!e,this._eventBlock._UpdateCanRunFastRecursive()}},{key:"_DebugReturnsGenerator",value:function(){return this._debugData.canDebug}},{key:"DebugCanRunFast",value:function(){return!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()&&!this._DebugReturnsGenerator()}},{key:"GetSavedDataMap",value:function(){return this._savedData||(this._savedData=new Map),this._savedData}},{key:"GetUnsavedDataMap",value:function(){return this._unsavedData||(this._unsavedData=new Map),this._unsavedData}},{key:"_RunSystem",value:function(){var e=this._results
|
||
return EvalParams(this._parameters,e),_C115.xor(this._func.apply(this._systemPlugin,e),this._isInverted)}},{key:"_DebugRunSystem",value:_regeneratorRuntime().mark(function r(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){n.next=3
|
||
break}return n.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){n.next=13
|
||
break}if(e=this._results,EvalParams(this._parameters,e),t=this._func.apply(this._systemPlugin,e),!_C115.IsIterator(t)){n.next=10
|
||
break}return n.delegateYield(t,"t0",9)
|
||
case 9:t=n.t0
|
||
case 10:return n.abrupt("return",_C115.xor(t,this._isInverted))
|
||
case 13:return n.abrupt("return",this.Run())
|
||
case 14:case"end":return n.stop()}},r,this)})},{key:"_RunSingleGlobal",value:function(){var e=this._results
|
||
EvalParams(this._parameters,e)
|
||
var t=this._objectClass.GetSingleGlobalInstance().GetSdkInstance()
|
||
return _C115.xor(this._func.apply(t,e),this._isInverted)}},{key:"_DebugRunSingleGlobal",value:_regeneratorRuntime().mark(function a(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){r.next=3
|
||
break}return r.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){r.next=14
|
||
break}if(e=this._results,EvalParams(this._parameters,e),t=this._objectClass.GetSingleGlobalInstance().GetSdkInstance(),n=this._func.apply(t,e),!_C115.IsIterator(n)){r.next=11
|
||
break}return r.delegateYield(n,"t0",10)
|
||
case 10:n=r.t0
|
||
case 11:return r.abrupt("return",_C115.xor(n,this._isInverted))
|
||
case 14:return r.abrupt("return",this.Run())
|
||
case 15:case"end":return r.stop()}},a,this)})},{key:"_RunFastTrigger",value:function(){return!0}},{key:"_DebugRunFastTrigger",value:_regeneratorRuntime().mark(function i(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){e.next=3
|
||
break}return e.next=3,this
|
||
case 3:return e.abrupt("return",!0)
|
||
case 4:case"end":return e.stop()}},i,this)})},{key:"_RunStatic",value:function(){var e=this._results
|
||
EvalParams(this._parameters,e)
|
||
var t=this._func.apply(this._behaviorType||this._objectClass,e)
|
||
return this._objectClass.ApplySolToContainer(),t}},{key:"_DebugRunStatic",value:_regeneratorRuntime().mark(function s(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){n.next=3
|
||
break}return n.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){n.next=14
|
||
break}if(e=this._results,EvalParams(this._parameters,e),t=this._func.apply(this._behaviorType||this._objectClass,e),!_C115.IsIterator(t)){n.next=10
|
||
break}return n.delegateYield(t,"t0",9)
|
||
case 9:t=n.t0
|
||
case 10:return this._objectClass.ApplySolToContainer(),n.abrupt("return",t)
|
||
case 14:return n.abrupt("return",this.Run())
|
||
case 15:case"end":return n.stop()}},s,this)})},{key:"_RunObject",value:function(){for(var e=this._parameters,t=this._results,n=this._objectClass.GetCurrentSol(),r=0,a=e.length;a>r;++r){var i=e[r]
|
||
i.VariesPerInstance()||(t[r]=i.Get(0))}return n.IsSelectAll()?this._RunObject_FirstFilter(n):this._RunObject_NextFilter(n)}},{key:"_DebugRunObject",value:_regeneratorRuntime().mark(function o(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){e.next=3
|
||
break}return e.next=3,this
|
||
case 3:return e.abrupt("return",this._RunObject())
|
||
case 4:case"end":return e.stop()}},o,this)})},{key:"_EvaluateVaryingParameters",value:function(e){for(var t=this._parameters,n=this._results,r=0,a=t.length;a>r;++r){var i=t[r]
|
||
i.VariesPerInstance()&&(n[r]=i.Get(e))}}},{key:"_RunObject_FirstFilter",value:function(e){var t=this._objectClass,n=t.IsFamily(),r=t.GetFamilyIndex(),a=this._behaviorIndex,i=a>=0,s=t.GetInstances(),o=this._anyParamVariesPerInstance,u=this._results,l=this._func,c=this._isInverted,h=this._isInOrBlock&&!this._isTrigger
|
||
e.ClearArrays()
|
||
for(var _=0,f=s.length;f>_;++_){var d=s[_]
|
||
o&&this._EvaluateVaryingParameters(_)
|
||
var p=void 0
|
||
if(i){var v=n?d.GetObjectClass().GetFamilyBehaviorOffset(r):0
|
||
p=l.apply(d.GetBehaviorInstances()[a+v].GetSdkInstance(),u)}else p=l.apply(d.GetSdkInstance(),u)
|
||
_C115.xor(p,c)?e._PushInstance(d):h&&e._PushElseInstance(d)}return t.FinishCondition(!0),e._SetSelectAll(!1),t.ApplySolToContainer(),e.HasAnyInstances()}},{key:"_RunObject_NextFilter",value:function(e){for(var t=this._objectClass,n=t.IsFamily(),r=t.GetFamilyIndex(),a=t.IsInContainer(),i=this._behaviorIndex,s=i>=0,o=this._anyParamVariesPerInstance,u=this._results,l=this._func,c=this._isInverted,h=this._isInOrBlock&&!this._isTrigger,_=e._GetOwnInstances(),f=e._GetOwnElseInstances(),d=h&&!this._eventBlock.IsFirstConditionOfType(this),p=d?f:_,v=0,m=!1,y=0,g=p.length;g>y;++y){var C=p[y]
|
||
o&&this._EvaluateVaryingParameters(y)
|
||
var S=void 0
|
||
if(s){var k=n?C.GetObjectClass().GetFamilyBehaviorOffset(r):0
|
||
S=l.apply(C.GetBehaviorInstances()[i+k].GetSdkInstance(),u)}else S=l.apply(C.GetSdkInstance(),u)
|
||
_C115.xor(S,c)?(m=!0,d?(_.push(C),a&&C._PushSiblingsToSolInstances()):(p[v]=C,a&&C._SetSiblingsToSolInstancesIndex(v),++v)):d?(p[v]=C,a&&C._SetSiblingsToSolElseInstancesIndex(v),++v):h&&(f.push(C),a&&C._PushSiblingsToSolElseInstances())}_C115.truncateArray(p,v),a&&t._TruncateContainerSols(d,v)
|
||
var I=m
|
||
return d&&!m&&(m=this._OrBlockCheckInstances(_)),t.FinishCondition(I||h),h?m:e.HasAnyInstances()}},{key:"_OrBlockCheckInstances",value:function(e){for(var t=this._objectClass,n=t.IsFamily(),r=t.GetFamilyIndex(),a=this._anyParamVariesPerInstance,i=this._behaviorIndex,s=i>=0,o=this._results,u=this._func,l=this._isInverted,c=0,h=e.length;h>c;++c){var _=e[c]
|
||
a&&this._EvaluateVaryingParameters(c)
|
||
var f=void 0
|
||
if(s){var d=n?_.GetObjectClass().GetFamilyBehaviorOffset(r):0
|
||
f=u.apply(_.GetBehaviorInstances()[i+d].GetSdkInstance(),o)}else f=u.apply(_.GetSdkInstance(),o)
|
||
if(_C115.xor(f,l))return!0}return!1}},{key:"ReevaluateParameter",value:function(e,t){return this._parameters[e].Get(t)}},{key:"GetFastTriggerValue",value:function(){var e=this._parameters
|
||
if(!e.length)throw Error("no parameters")
|
||
return e[0]._GetFastTriggerValue()}},{key:"_SaveToJson",value:function(){if(!this._savedData||!this._savedData.size)return null
|
||
var e,t={},n=_createForOfIteratorHelper(this._savedData.entries())
|
||
try{for(n.s();!(e=n.n()).done;){var r=_slicedToArray(e.value,2),a=r[0],i=r[1],s=i
|
||
"collmemory"===a&&(s=_toConsumableArray(i.entries()).map(function(e){return[e[0].GetUID(),e[1].GetUID(),e[2]]})),t[a]=s}}catch(o){n.e(o)}finally{n.f()}return{ex:t}}},{key:"_LoadFromJson",value:function(e){if(this._savedData&&(this._savedData.clear(),this._savedData=null),e){var t=this._runtime,n=e.ex
|
||
if(n){var r=this.GetSavedDataMap()
|
||
r.clear()
|
||
for(var a=0,i=Object.entries(n);a<i.length;a++){var s=_slicedToArray(i[a],2),o=s[0],u=s[1],l=u
|
||
"collmemory"===o&&(l=_C115.New(_C115.PairMap,u.map(function(e){return[t.GetInstanceByUID(e[0]),t.GetInstanceByUID(e[1]),e[2]]}).filter(function(e){return e[0]&&e[1]}))),r.set(o,l)}}}}}],[{key:"Create",value:function(e,t,n){return _C115.New(_C115.Condition,e,t,n)}}]),t}(_C115.DefendedBase)
|
||
var _EvalParams=function(e,t){for(var n=0,r=e.length;r>n;++n)t[n]=e[n].Get(0)},_C116=self.C3,_assert13=self.assert,_EMPTY_PARAMS_ARRAY=[],_noop=function(){},noopGenerator=_regeneratorRuntime().mark(function p(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},p)})
|
||
_C116.Action=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this),i._eventBlock=e
|
||
var s=e.GetRuntime()
|
||
i._runtime=s,i._index=a,i._sid=r.length>=4?r[3]:-1,i._actionReturnType=r.length>=5?r[4]:0,i._func=null,i._objectClass=null,i._behaviorType=null,i._behaviorIndex=-1,i._systemPlugin=null,i._callFunctionName="",i._callEventBlock=null,i._combinedSolModifiers=null,i.Run=_noop,i.DebugRun=_noop,i._parameters=[],i._results=[],i._anyParamVariesPerInstance=!1,i._savedData=null,i._unsavedData=null
|
||
var o=-3===r[0],u=o?r[2]:r[5]
|
||
if(i._debugData=s.IsDebug()||o?{isBreakpoint:u[0],canDebug:u[1],index:u[2]}:null,-1===r[0])i._systemPlugin=s.GetSystemPlugin(),i._func=s.GetObjectReference(r[1])
|
||
else if(-2===r[0])i._callFunctionName=r[1]
|
||
else if(o){var l=s.GetObjectReference(r[1])
|
||
i._func=l,i.Run=i.RunUserScript,i.DebugRun=i.DebugRunUserScript,i._actionReturnType=1}else i._func=s.GetObjectReference(r[1]),i._objectClass=s.GetObjectClassByIndex(r[0]),r[2]&&(i._behaviorType=i._objectClass.GetBehaviorTypeByName(r[2]),i._behaviorIndex=i._objectClass.GetBehaviorIndexByName(r[2]))
|
||
if(7===r.length){var c,h=r[6],_=_createForOfIteratorHelper(h)
|
||
try{for(_.s();!(c=_.n()).done;){var f=c.value
|
||
i._parameters.push(_C116.Parameter.Create(_assertThisInitialized(i),f,i._parameters.length)),i._results.push(0)}}catch(d){_.e(d)}finally{_.f()}}return 0===i._parameters.length&&(i._parameters=_EMPTY_PARAMS_ARRAY,i._results=_EMPTY_PARAMS_ARRAY),i._eventBlock.GetEventSheetManager()._RegisterAction(_assertThisInitialized(i)),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_PostInit",value:function(){var e,t=_createForOfIteratorHelper(this._parameters)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._PostInit(),n.VariesPerInstance()&&(this._anyParamVariesPerInstance=!0)}}catch(r){t.e(r)}finally{t.f()}if(this._systemPlugin)this._SetSystemRunMethod(),this.DebugRun=this._DebugRunSystem
|
||
else if(this._callFunctionName)this._SetCallFunctionRunMethod(),this._callFunctionName=""
|
||
else if(this.Run===this.RunUserScript){var a=this._func,i=this._runtime.GetEventSheetManager()._GetLocalVariablesScriptInterface(this._eventBlock)
|
||
this._func=a.bind(null,this._runtime.GetIRuntime(),i)}else this._behaviorType?this.IsAsync()?(this.Run=this._RunBehavior_Async,this.DebugRun=this._DebugRunBehavior_Async):(this.Run=this._RunBehavior,this.DebugRun=this._DebugRunBehavior):this._objectClass.GetPlugin().IsSingleGlobal()?(this._SetSingleGlobalRunMethod(),this.DebugRun=this._DebugRunSingleGlobal):this.IsAsync()?(this.Run=this._RunObject_Async,this.DebugRun=this._DebugRunObject_Async):this._parameters.length?this._parameters.every(function(e){return e.VariesPerInstance()})?(this.Run=this._RunObject_AllParamsVary,this.DebugRun=this._DebugRunObject_AllParamsVary):this._anyParamVariesPerInstance?(this.Run=this._RunObject_SomeParamsVary,this.DebugRun=this._DebugRunObject_SomeParamsVary):this._parameters.every(function(e){return e.IsConstant()})?(_EvalParams(this._parameters,this._results),this.Run=this._RunObject_ParamsConst,this.DebugRun=this._DebugRunObject_ParamsConst):(this.Run=this._RunObject_ParamsDontVary,this.DebugRun=this._DebugRunObject_ParamsDontVary):(this.Run=this._RunObject_ParamsConst,this.DebugRun=this._DebugRunObject_ParamsConst)}},{key:"_SetSystemRunMethod",value:function(){var e=this._systemPlugin,t=this._systemPlugin
|
||
this._SetRunMethodForBoundFunc(e,t,this._RunSystem)}},{key:"_SetSingleGlobalRunMethod",value:function(){var e=this._objectClass.GetPlugin(),t=this._objectClass.GetSingleGlobalInstance().GetSdkInstance()
|
||
this._SetRunMethodForBoundFunc(e,t,this._RunSingleGlobal)}},{key:"_SetCallFunctionRunMethod",value:function(){var e=this._eventBlock.GetEventSheetManager(),t=e.GetFunctionBlockByName(this._callFunctionName)
|
||
t.IsEnabled()?(this._callEventBlock=t.GetEventBlock(),this._combinedSolModifiers=_toConsumableArray(new Set([].concat(_toConsumableArray(this._eventBlock.GetSolModifiersIncludingParents()),_toConsumableArray(this._callEventBlock.GetSolModifiersIncludingParents())))),this._combinedSolModifiers=e._DeduplicateSolModifierList(this._combinedSolModifiers),this.Run=_C116.EventBlock.prototype.RunAsFunctionCall.bind(this._callEventBlock,this._combinedSolModifiers,this._parameters),this.DebugRun=this._DebugRunCallFunction):(this.Run=_noop,this.DebugRun=noopGenerator)}},{key:"_SetRunMethodForBoundFunc",value:function(e,t,n){var r=this._func,a=this._parameters
|
||
if(0===a.length)this.Run=e._GetBoundACEMethod(r,t)
|
||
else if(1===a.length){var i=a[0]
|
||
if(i.IsConstant())this.Run=e._GetBoundACEMethod_1param(r,t,i.Get(0))
|
||
else{var s=e._GetBoundACEMethod(r,t)
|
||
this.Run=function(){return s(i.Get(0))}}}else if(2===a.length){var o=a[0],u=a[1]
|
||
if(o.IsConstant()&&u.IsConstant())this.Run=e._GetBoundACEMethod_2params(r,t,o.Get(0),u.Get(0))
|
||
else{var l=e._GetBoundACEMethod(r,t)
|
||
this.Run=function(){return l(o.Get(0),u.Get(0))}}}else if(3===a.length){var c=a[0],h=a[1],_=a[2]
|
||
if(c.IsConstant()&&h.IsConstant()&&_.IsConstant())this.Run=e._GetBoundACEMethod_3params(r,t,c.Get(0),h.Get(0),_.Get(0))
|
||
else{var f=e._GetBoundACEMethod(r,t)
|
||
this.Run=function(){return f(c.Get(0),h.Get(0),_.Get(0))}}}else this.Run=n}},{key:"GetSID",value:function(){return this._sid}},{key:"IsAsync",value:function(){return 1===this._actionReturnType}},{key:"CanBailOut",value:function(){return 2===this._actionReturnType}},{key:"HasReturnType",value:function(){return 0!==this._actionReturnType}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"GetEventBlock",value:function(){return this._eventBlock}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetIndex",value:function(){return this._index}},{key:"GetDebugIndex",value:function(){return this._debugData.index}},{key:"GetCombinedSolModifiers",value:function(){return this._combinedSolModifiers}},{key:"IsBreakpoint",value:function(){return this._debugData.isBreakpoint}},{key:"_SetBreakpoint",value:function(e){this._debugData.isBreakpoint=!!e,this._eventBlock._UpdateCanRunFastRecursive()}},{key:"_DebugReturnsGenerator",value:function(){return this._debugData.canDebug}},{key:"DebugCanRunFast",value:function(){return!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()&&!this._DebugReturnsGenerator()}},{key:"GetSavedDataMap",value:function(){return this._savedData||(this._savedData=new Map),this._savedData}},{key:"GetUnsavedDataMap",value:function(){return this._unsavedData||(this._unsavedData=new Map),this._unsavedData}},{key:"_RunSystem",value:function(){var e=this._results
|
||
return _EvalParams(this._parameters,e),this._func.apply(this._systemPlugin,e)}},{key:"_DebugRunSystem",value:_regeneratorRuntime().mark(function r(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){n.next=3
|
||
break}return n.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){n.next=11
|
||
break}return e=this._results,_EvalParams(this._parameters,e),n.delegateYield(this._func.apply(this._systemPlugin,e),"t0",7)
|
||
case 7:return t=n.t0,n.abrupt("return",t)
|
||
case 11:return n.abrupt("return",this.Run())
|
||
case 12:case"end":return n.stop()}},r,this)})},{key:"_DebugRunCallFunction",value:_regeneratorRuntime().mark(function a(){var e
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){t.next=3
|
||
break}return t.next=3,this
|
||
case 3:return t.delegateYield(this._callEventBlock.DebugRunAsFunctionCall(this._combinedSolModifiers,this._parameters),"t0",4)
|
||
case 4:return e=t.t0,t.abrupt("return",e)
|
||
case 6:case"end":return t.stop()}},a,this)})},{key:"_RunSingleGlobal",value:function(){var e=this._results
|
||
return _EvalParams(this._parameters,e),this._func.apply(this._objectClass.GetSingleGlobalInstance().GetSdkInstance(),e)}},{key:"_DebugRunSingleGlobal",value:_regeneratorRuntime().mark(function i(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){n.next=3
|
||
break}return n.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){n.next=11
|
||
break}return e=this._results,_EvalParams(this._parameters,e),n.delegateYield(this._func.apply(this._objectClass.GetSingleGlobalInstance().GetSdkInstance(),e),"t0",7)
|
||
case 7:return t=n.t0,n.abrupt("return",t)
|
||
case 11:return n.abrupt("return",this.Run())
|
||
case 12:case"end":return n.stop()}},i,this)})},{key:"_RunObject_ParamsConst",value:function(){for(var e=this._results,t=this._objectClass.GetCurrentSol().GetInstances(),n=0,r=t.length;r>n;++n)this._func.apply(t[n].GetSdkInstance(),e)}},{key:"_DebugRunObject_ParamsConst",value:_regeneratorRuntime().mark(function s(){var e,t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){a.next=3
|
||
break}return a.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){a.next=14
|
||
break}e=this._results,t=this._objectClass.GetCurrentSol().GetInstances(),n=0,r=t.length
|
||
case 7:if(!(r>n)){a.next=12
|
||
break}return a.delegateYield(this._func.apply(t[n].GetSdkInstance(),e),"t0",9)
|
||
case 9:++n,a.next=7
|
||
break
|
||
case 12:a.next=15
|
||
break
|
||
case 14:this._RunObject_ParamsConst()
|
||
case 15:case"end":return a.stop()}},s,this)})},{key:"_RunObject_ParamsDontVary",value:function(){var e=this._results
|
||
_EvalParams(this._parameters,e)
|
||
for(var t=this._objectClass.GetCurrentSol().GetInstances(),n=0,r=t.length;r>n;++n)this._func.apply(t[n].GetSdkInstance(),e)}},{key:"_DebugRunObject_ParamsDontVary",value:_regeneratorRuntime().mark(function o(){var e,t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){a.next=3
|
||
break}return a.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){a.next=15
|
||
break}e=this._results,_EvalParams(this._parameters,e),t=this._objectClass.GetCurrentSol().GetInstances(),n=0,r=t.length
|
||
case 8:if(!(r>n)){a.next=13
|
||
break}return a.delegateYield(this._func.apply(t[n].GetSdkInstance(),e),"t0",10)
|
||
case 10:++n,a.next=8
|
||
break
|
||
case 13:a.next=16
|
||
break
|
||
case 15:this._RunObject_ParamsDontVary()
|
||
case 16:case"end":return a.stop()}},o,this)})},{key:"_RunObject_AllParamsVary",value:function(){for(var e=this._parameters,t=this._results,n=this._func,r=this._objectClass.GetCurrentSol().GetInstances(),a=0,i=r.length;i>a;++a){for(var s=r[a],o=0,u=e.length;u>o;++o)t[o]=e[o].Get(a)
|
||
n.apply(s.GetSdkInstance(),t)}}},{key:"_DebugRunObject_AllParamsVary",value:_regeneratorRuntime().mark(function u(){var e,t,n,r,a,i,s,o,l
|
||
return _regeneratorRuntime().wrap(function(u){for(;;)switch(u.prev=u.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){u.next=3
|
||
break}return u.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){u.next=18
|
||
break}e=this._parameters,t=this._results,n=this._func,r=this._objectClass.GetCurrentSol().GetInstances(),a=0,i=r.length
|
||
case 9:if(!(i>a)){u.next=16
|
||
break}for(s=r[a],o=0,l=e.length;l>o;++o)t[o]=e[o].Get(a)
|
||
return u.delegateYield(n.apply(s.GetSdkInstance(),t),"t0",13)
|
||
case 13:++a,u.next=9
|
||
break
|
||
case 16:u.next=19
|
||
break
|
||
case 18:this._RunObject_AllParamsVary()
|
||
case 19:case"end":return u.stop()}},u,this)})},{key:"_RunObject_SomeParamsVary",value:function(){for(var e=this._parameters,t=this._results,n=this._func,r=this._objectClass.GetCurrentSol().GetInstances(),a=0,i=e.length;i>a;++a){var s=e[a]
|
||
s.VariesPerInstance()||(t[a]=s.Get(0))}for(var o=0,u=r.length;u>o;++o){for(var l=r[o],c=0,h=e.length;h>c;++c){var _=e[c]
|
||
_.VariesPerInstance()&&(t[c]=_.Get(o))}n.apply(l.GetSdkInstance(),t)}}},{key:"_DebugRunObject_SomeParamsVary",value:_regeneratorRuntime().mark(function l(){var e,t,n,r,a,i,s,o,u,c,h,_,f
|
||
return _regeneratorRuntime().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){l.next=3
|
||
break}return l.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){l.next=19
|
||
break}for(e=this._parameters,t=this._results,n=this._func,r=this._objectClass.GetCurrentSol().GetInstances(),a=0,i=e.length;i>a;++a)s=e[a],s.VariesPerInstance()||(t[a]=s.Get(0))
|
||
o=0,u=r.length
|
||
case 10:if(!(u>o)){l.next=17
|
||
break}for(c=r[o],h=0,_=e.length;_>h;++h)f=e[h],f.VariesPerInstance()&&(t[h]=f.Get(o))
|
||
return l.delegateYield(n.apply(c.GetSdkInstance(),t),"t0",14)
|
||
case 14:++o,l.next=10
|
||
break
|
||
case 17:l.next=20
|
||
break
|
||
case 19:this._RunObject_SomeParamsVary()
|
||
case 20:case"end":return l.stop()}},l,this)})},{key:"_RunBehavior",value:function(){for(var e=this._objectClass,t=e.IsFamily(),n=e.GetFamilyIndex(),r=this._parameters,a=this._anyParamVariesPerInstance,i=this._results,s=this._func,o=this._behaviorIndex,u=e.GetCurrentSol().GetInstances(),l=0,c=r.length;c>l;++l){var h=r[l]
|
||
h.VariesPerInstance()||(i[l]=h.Get(0))}for(var _=0,f=u.length;f>_;++_){var d=u[_]
|
||
if(a)for(var p=0,v=r.length;v>p;++p){var m=r[p]
|
||
m.VariesPerInstance()&&(i[p]=m.Get(_))}var y=t?d.GetObjectClass().GetFamilyBehaviorOffset(n):0
|
||
s.apply(d.GetBehaviorInstances()[o+y].GetSdkInstance(),i)}}},{key:"_DebugRunBehavior",value:_regeneratorRuntime().mark(function c(){var e,t,n,r,a,i,s,o,u,l,h,_,f,d,p,v,m,y,g
|
||
return _regeneratorRuntime().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){c.next=3
|
||
break}return c.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){c.next=25
|
||
break}for(e=this._objectClass,t=e.IsFamily(),n=e.GetFamilyIndex(),r=this._parameters,a=this._anyParamVariesPerInstance,i=this._results,s=this._func,o=this._behaviorIndex,u=e.GetCurrentSol().GetInstances(),l=0,h=r.length;h>l;++l)_=r[l],_.VariesPerInstance()||(i[l]=_.Get(0))
|
||
f=0,d=u.length
|
||
case 15:if(!(d>f)){c.next=23
|
||
break}if(p=u[f],a)for(v=0,m=r.length;m>v;++v)y=r[v],y.VariesPerInstance()&&(i[v]=y.Get(f))
|
||
return g=t?p.GetObjectClass().GetFamilyBehaviorOffset(n):0,c.delegateYield(s.apply(p.GetBehaviorInstances()[o+g].GetSdkInstance(),i),"t0",20)
|
||
case 20:++f,c.next=15
|
||
break
|
||
case 23:c.next=26
|
||
break
|
||
case 25:this._RunBehavior()
|
||
case 26:case"end":return c.stop()}},c,this)})},{key:"_RunObject_Async",value:function(){for(var e=this._parameters,t=this._results,n=this._func,r=this._objectClass.GetCurrentSol().GetInstances(),a=[],i=0,s=r.length;s>i;++i){for(var o=r[i],u=0,l=e.length;l>u;++u)t[u]=e[u].Get(i)
|
||
a.push(n.apply(o.GetSdkInstance(),t))}return Promise.all(a)}},{key:"_DebugRunObject_Async",value:_regeneratorRuntime().mark(function h(){var e,t,n,r,a,i,s,o,u,l
|
||
return _regeneratorRuntime().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){c.next=3
|
||
break}return c.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){c.next=23
|
||
break}e=this._parameters,t=this._results,n=this._func,r=this._objectClass.GetCurrentSol().GetInstances(),a=[],i=0,s=r.length
|
||
case 10:if(!(s>i)){c.next=20
|
||
break}for(o=r[i],u=0,l=e.length;l>u;++u)t[u]=e[u].Get(i)
|
||
return c.t0=a,c.delegateYield(n.apply(o.GetSdkInstance(),t),"t1",15)
|
||
case 15:c.t2=c.t1,c.t0.push.call(c.t0,c.t2)
|
||
case 17:++i,c.next=10
|
||
break
|
||
case 20:return c.abrupt("return",Promise.all(a))
|
||
case 23:return c.abrupt("return",this._RunObject_Async())
|
||
case 24:case"end":return c.stop()}},h,this)})},{key:"_RunBehavior_Async",value:function(){for(var e=this._objectClass,t=e.IsFamily(),n=e.GetFamilyIndex(),r=this._parameters,a=this._results,i=this._func,s=this._behaviorIndex,o=e.GetCurrentSol().GetInstances(),u=[],l=0,c=o.length;c>l;++l){for(var h=o[l],_=0,f=r.length;f>_;++_)a[_]=r[_].Get(l)
|
||
var d=t?h.GetObjectClass().GetFamilyBehaviorOffset(n):0
|
||
u.push(i.apply(h.GetBehaviorInstances()[s+d].GetSdkInstance(),a))}return Promise.all(u)}},{key:"_DebugRunBehavior_Async",value:_regeneratorRuntime().mark(function _(){var e,t,n,r,a,i,s,o,u,l,c,h,f,d,p
|
||
return _regeneratorRuntime().wrap(function(_){for(;;)switch(_.prev=_.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){_.next=3
|
||
break}return _.next=3,this
|
||
case 3:if(!this._DebugReturnsGenerator()){_.next=28
|
||
break}e=this._objectClass,t=e.IsFamily(),n=e.GetFamilyIndex(),r=this._parameters,a=this._results,i=this._func,s=this._behaviorIndex,o=e.GetCurrentSol().GetInstances(),u=[],l=0,c=o.length
|
||
case 14:if(!(c>l)){_.next=25
|
||
break}for(h=o[l],f=0,d=r.length;d>f;++f)a[f]=r[f].Get(l)
|
||
return p=t?h.GetObjectClass().GetFamilyBehaviorOffset(n):0,_.t0=u,_.delegateYield(i.apply(h.GetBehaviorInstances()[s+p].GetSdkInstance(),a),"t1",20)
|
||
case 20:_.t2=_.t1,_.t0.push.call(_.t0,_.t2)
|
||
case 22:++l,_.next=14
|
||
break
|
||
case 25:return _.abrupt("return",Promise.all(u))
|
||
case 28:return _.abrupt("return",this._RunBehavior_Async())
|
||
case 29:case"end":return _.stop()}},_,this)})},{key:"RunUserScript",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.prev=0,e.next=3,this._func()
|
||
case 3:e.next=10
|
||
break
|
||
case 5:e.prev=5,e.t0=e["catch"](0),console.error("Unhandled exception running script %c".concat(this._eventBlock.GetEventSheet().GetName(),", event ").concat(this._eventBlock.GetDisplayNumber(),", action ").concat(this.GetDebugIndex()+1,":"),"font-size: 1.2em; font-weight: bold;",e.t0),self.C3Debugger&&self.C3Debugger._SetLastErrorScript(this),_C116.EventScript.HadUserScriptException()||(console.info("%cTip:%c run this to highlight in Construct the last script that had an error: %cgoToLastErrorScript()","font-weight: bold; text-decoration: underline","","font-weight: bold"),_C116.EventScript.SetHadUserScriptException())
|
||
case 10:case"end":return e.stop()}},n,this,[[0,5]])}))
|
||
return e}()},{key:"DebugRunUserScript",value:_regeneratorRuntime().mark(function f(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.IsBreakpoint()&&!this._runtime.DebugBreakNext()){e.next=3
|
||
break}return e.next=3,this
|
||
case 3:return e.abrupt("return",this.RunUserScript())
|
||
case 4:case"end":return e.stop()}},f,this)})},{key:"_SaveToJson",value:function(){return this._savedData&&this._savedData.size?{ex:_C116.ToSuperJSON(this._savedData)}:null}},{key:"_LoadFromJson",value:function(e){if(this._savedData&&(this._savedData.clear(),this._savedData=null),e){var t=e.ex
|
||
t&&(this._savedData=_C116.FromSuperJSON(t))}}}],[{key:"Create",value:function(e,t,n){return _C116.New(_C116.Action,e,t,n)}}]),t}(_C116.DefendedBase)
|
||
var CompareX=function(e,t){return _C117.compare(this.GetWorldInfo().GetX(),e,t)},CompareY=function(e,t){return _C117.compare(this.GetWorldInfo().GetY(),e,t)},IsOnScreen=function(){var e=this.GetWorldInfo()
|
||
return e.IsInViewport(e.GetLayer().GetViewport())},IsOutsideLayout=function(){var e=this.GetWorldInfo(),t=e.GetLayout(),n=e.GetBoundingBox()
|
||
return n.getRight()<0||n.getBottom()<0||n.getLeft()>t.GetWidth()||n.getTop()>t.GetHeight()},PickDistance=function(e,t,n){var r=this.GetCurrentSol(),a=r.GetInstances()
|
||
if(!a.length)return!1
|
||
for(var i=a[0],s=i.GetWorldInfo(),o=i,u=_C117.distanceSquared(s.GetX(),s.GetY(),t,n),l=1,c=a.length;c>l;++l){i=a[l],s=i.GetWorldInfo()
|
||
var h=_C117.distanceSquared(s.GetX(),s.GetY(),t,n);(0===e&&u>h||1===e&&h>u)&&(u=h,o=i)}return r.PickOne(o),!0},SetX=function(e){var t=this.GetWorldInfo()
|
||
t.GetX()!==e&&(t.SetX(e),t.SetBboxChanged())},SetY=function(e){var t=this.GetWorldInfo()
|
||
t.GetY()!==e&&(t.SetY(e),t.SetBboxChanged())},SetPos=function(e,t){var n=this.GetWorldInfo()
|
||
n.EqualsXY(e,t)||(n.SetXY(e,t),n.SetBboxChanged())},SetPosToObject=function(e,t){if(e){var n=e.GetPairedInstance(this._inst)
|
||
if(n){var r=n.GetImagePoint(t),a=_slicedToArray(r,2),i=a[0],s=a[1],o=this.GetWorldInfo();(o.GetX()!==i||o.GetY()!==s)&&(o.SetXY(i,s),o.SetBboxChanged())}}},MoveForward=function(e){if(0!==e){var t=this.GetWorldInfo()
|
||
t.OffsetXY(t.GetCosAngle()*e,t.GetSinAngle()*e),t.SetBboxChanged()}},MoveAtAngle=function(e,t){if(0!==t){var n=this.GetWorldInfo()
|
||
e=_C117.toRadians(e),n.OffsetXY(Math.cos(e)*t,Math.sin(e)*t),n.SetBboxChanged()}},GetX=function(){return this.GetWorldInfo().GetX()},GetY=function(){return this.GetWorldInfo().GetY()},GetDt=function(){return this._runtime.GetDt(this._inst)},CompareWidth=function(e,t){return _C117.compare(this.GetWorldInfo().GetWidth(),e,t)},CompareHeight=function(e,t){return _C117.compare(this.GetWorldInfo().GetHeight(),e,t)},SetWidth=function(e){var t=this.GetWorldInfo()
|
||
t.GetWidth()!==e&&(t.SetWidth(e),t.SetBboxChanged())},SetHeight=function(e){var t=this.GetWorldInfo()
|
||
t.GetHeight()!==e&&(t.SetHeight(e),t.SetBboxChanged())},SetSize=function(e,t){var n=this.GetWorldInfo();(n.GetWidth()!==e||n.GetHeight()!==t)&&(n.SetSize(e,t),n.SetBboxChanged())},GetWidth=function(){return this.GetWorldInfo().GetWidth()},GetHeight=function(){return this.GetWorldInfo().GetHeight()},GetBboxLeft=function(){return this.GetWorldInfo().GetBoundingBox().getLeft()},GetBboxTop=function(){return this.GetWorldInfo().GetBoundingBox().getTop()},GetBboxRight=function(){return this.GetWorldInfo().GetBoundingBox().getRight()},GetBboxBottom=function(){return this.GetWorldInfo().GetBoundingBox().getBottom()},IsAngleWithin=function(e,t){return _C117.angleDiff(this.GetWorldInfo().GetAngle(),_C117.toRadians(t))<=_C117.toRadians(e)},IsAngleClockwiseFrom=function(e){return _C117.angleClockwise(this.GetWorldInfo().GetAngle(),_C117.toRadians(e))},IsBetweenAngles=function(e,t){var n=_C117.toRadians(e),r=_C117.toRadians(t),a=this.GetWorldInfo().GetAngle(),i=!_C117.angleClockwise(r,n)
|
||
return i?!(!_C117.angleClockwise(a,n)&&_C117.angleClockwise(a,r)):_C117.angleClockwise(a,n)&&!_C117.angleClockwise(a,r)},SetAngle=function(e){var t=this.GetWorldInfo(),n=_C117.clampAngle(_C117.toRadians(e))
|
||
isNaN(n)||t.GetAngle()===n||(t.SetAngle(n),t.SetBboxChanged())},RotateClockwise=function(e){if(!isNaN(e)&&0!==e){var t=this.GetWorldInfo()
|
||
t.SetAngle(t.GetAngle()+_C117.toRadians(e)),t.SetBboxChanged()}},RotateCounterclockwise=function(e){if(!isNaN(e)&&0!==e){var t=this.GetWorldInfo()
|
||
t.SetAngle(t.GetAngle()-_C117.toRadians(e)),t.SetBboxChanged()}},RotateTowardAngle=function(e,t){var n=this.GetWorldInfo(),r=n.GetAngle(),a=_C117.angleRotate(r,_C117.toRadians(t),_C117.toRadians(e))
|
||
isNaN(a)||r===a||(n.SetAngle(a),n.SetBboxChanged())},RotateTowardPosition=function(e,t,n){var r=this.GetWorldInfo(),a=r.GetAngle(),i=t-r.GetX(),s=n-r.GetY(),o=Math.atan2(s,i),u=_C117.angleRotate(a,o,_C117.toRadians(e))
|
||
isNaN(u)||a===u||(r.SetAngle(u),r.SetBboxChanged())},SetTowardPosition=function(e,t){var n=this.GetWorldInfo(),r=n.GetAngle(),a=e-n.GetX(),i=t-n.GetY(),s=Math.atan2(i,a)
|
||
isNaN(s)||r===s||(n.SetAngle(s),n.SetBboxChanged())},GetAngle=function(){return _C117.toDegrees(this.GetWorldInfo().GetAngle())},CompareOpacity=function(e,t){return _C117.compare(_C117.round6dp(100*this.GetWorldInfo().GetOpacity()),e,t)},IsVisible=function(){return this.GetWorldInfo().IsVisible()},SetVisible=function(e){var t=this.GetWorldInfo()
|
||
e=2===e?!t.IsVisible():0!==e,t.IsVisible()!==e&&(t.SetVisible(e),this._runtime.UpdateRender())},SetOpacity=function(e){var t=_C117.clamp(e/100,0,1),n=this.GetWorldInfo()
|
||
n.GetOpacity()!==t&&(n.SetOpacity(t),this._runtime.UpdateRender())},SetDefaultColor=function(e){_tempColor2.setFromRgbValue(e)
|
||
var t=this.GetWorldInfo()
|
||
t.GetUnpremultipliedColor().equalsIgnoringAlpha(_tempColor2)||(t.SetUnpremultipliedColor(_tempColor2),this._runtime.UpdateRender())},GetColor=function(){var e=this.GetWorldInfo().GetUnpremultipliedColor()
|
||
return _C117.PackRGBAEx(e.getR(),e.getG(),e.getB(),e.getA())},GetOpacity=function(){return _C117.round6dp(100*this.GetWorldInfo().GetOpacity())},IsOnLayer=function(e){return e?this.GetWorldInfo().GetLayer()===e:!1},PickTopBottom=function(e){var t=this.GetCurrentSol(),n=t.GetInstances()
|
||
if(!n.length)return!1
|
||
for(var r=n[0],a=r,i=1,s=n.length;s>i;++i){var o=n[i],u=o.GetWorldInfo(),l=a.GetWorldInfo(),c=u.GetLayer().GetIndex(),h=l.GetLayer().GetIndex()
|
||
0===e?(c>h||c===h&&u.GetZIndex()>l.GetZIndex())&&(a=o):(h>c||c===h&&u.GetZIndex()<l.GetZIndex())&&(a=o)}return t.PickOne(a),!0},CompareZElevation=function(e,t,n){var r=this.GetWorldInfo(),a=0===e?r.GetZElevation():r.GetTotalZElevation()
|
||
return _C117.compare(a,t,n)},MoveToTop=function(){this.GetWorldInfo().ZOrderMoveToTop()},MoveToBottom=function(){this.GetWorldInfo().ZOrderMoveToBottom()},MoveToLayer=function(e){e&&this.GetWorldInfo().ZOrderMoveToLayer(e)},ZMoveToObject=function(e,t){var n=0===e
|
||
if(t){var r=t.GetFirstPicked(this.GetInstance())
|
||
r&&this.GetWorldInfo().ZOrderMoveAdjacentToInstance(r,n)}},SetZElevation=function(e){var t=this.GetWorldInfo()
|
||
t.GetZElevation()!==e&&(t.SetZElevation(e),this._runtime.UpdateRender())},LayerNumber=function(){return this.GetWorldInfo().GetLayer().GetIndex()},LayerName=function(){return this.GetWorldInfo().GetLayer().GetName()},ZIndex=function(){return this.GetWorldInfo().GetZIndex()},ZElevation=function(){return this.GetWorldInfo().GetZElevation()},TotalZElevation=function(){return this.GetWorldInfo().GetTotalZElevation()},SetEffectEnabled=function(e,t){var n=this.GetObjectClass().GetEffectList().GetEffectTypeByName(t)
|
||
if(n){var r=n.GetIndex(),a=1===e,i=this.GetWorldInfo().GetInstanceEffectList()
|
||
i.IsEffectIndexActive(r)!==a&&(i.SetEffectIndexActive(r,a),i.UpdateActiveEffects(),this._runtime.UpdateRender())}},SetEffectParam=function(e,t,n){var r=this.GetObjectClass().GetEffectList().GetEffectTypeByName(e)
|
||
if(r){var a=r.GetIndex(),i=this.GetWorldInfo().GetInstanceEffectList(),s=i.GetEffectParametersForIndex(a)
|
||
if(t=Math.floor(t),!(0>t||t>=s.length)){var o=r.GetShaderProgram().GetParameterType(t)
|
||
if("color"===o){_tempColor2.setFromRgbValue(n)
|
||
var u=s[t]
|
||
if(_tempColor2.equalsIgnoringAlpha(u))return
|
||
u.copyRgb(_tempColor2)}else{if("percent"===o&&(n/=100),s[t]===n)return
|
||
s[t]=n}i.IsEffectIndexActive(a)&&this._runtime.UpdateRender()}}},HasParent=function(){return this.GetWorldInfo().HasParent()},HasChildren=function(){return this.GetWorldInfo().HasChildren()},PickParent=function(e,t){var n=this.GetCurrentSol(),r=n.GetInstances()
|
||
if(0===r.length)return!1
|
||
var a=e.GetCurrentSol(),i=a.GetInstances()
|
||
if(0===i.length)return!1
|
||
for(var s=new Set(i),o=new Set,u=0,l=r.length;l>u;++u){var c=r[u]
|
||
if(1===t){var h,_=_createForOfIteratorHelper(c.parents())
|
||
try{for(_.s();!(h=_.n()).done;){var f=h.value
|
||
f.BelongsToObjectClass(e)&&s.has(f)&&o.add(f)}}catch(d){_.e(d)}finally{_.f()}}else{var p=void 0
|
||
if(0===t){if(p=c.GetParent(),null===p)continue}else p=c.GetTopParent()
|
||
p.BelongsToObjectClass(e)&&s.has(p)&&o.add(p)}}return 0===o.size?!1:(a.SetSetPicked(o),e.ApplySolToContainer(),!0)},PickChildren=function(e,t){var n=this.GetCurrentSol(),r=n.GetInstances()
|
||
if(0===r.length)return!1
|
||
var a=e.GetCurrentSol(),i=a.GetInstances()
|
||
if(0===i.length)return!1
|
||
for(var s=new Set(i),o=new Set,u=0,l=r.length;l>u;++u){var c=r[u]
|
||
2===t&&!c.HasChildren()&&c.BelongsToObjectClass(e)&&s.has(c)&&o.add(c)
|
||
var h,_=_createForOfIteratorHelper(0===t?c.children():c.allChildren())
|
||
try{for(_.s();!(h=_.n()).done;){var f=h.value
|
||
2===t&&f.HasChildren()||f.BelongsToObjectClass(e)&&s.has(f)&&o.add(f)}}catch(d){_.e(d)}finally{_.f()}}return 0===o.size?!1:(a.SetSetPicked(o),e.ApplySolToContainer(),!0)},PickNthChild=function(e,t){var n=this.GetCurrentSol(),r=n.GetInstances()
|
||
if(0===r.length)return!1
|
||
var a=e.GetCurrentSol(),i=a.GetInstances()
|
||
if(0===i.length)return!1
|
||
for(var s=new Set(i),o=[],u=0,l=r.length;l>u;++u){var c=r[u],h=c.GetChildAt(t)
|
||
null!==h&&h.BelongsToObjectClass(e)&&s.has(h)&&o.push(h)}return 0===o.length?!1:(a.SetArrayPicked(o),e.ApplySolToContainer(),!0)},CompareChildCount=function(e,t){return _C117.compare(this._inst.GetChildCount(),e,t)},AddChild=function(e,t,n,r,a,i,s,o){var u,l=this._inst,c=this._runtime.GetCurrentAction().GetObjectClass(),h=_createForOfIteratorHelper(e.allCorrespondingInstances(l,c))
|
||
try{for(h.s();!(u=h.n()).done;){var _=u.value
|
||
if(!_.GetPlugin().SupportsSceneGraph())return
|
||
l.AddChild(_,{transformX:t,transformY:n,transformWidth:r,transformHeight:a,transformAngle:i,transformZElevation:s,destroyWithParent:o})}}catch(f){h.e(f)}finally{h.f()}},RemoveChild=function(e){var t,n=this._inst,r=this._runtime.GetCurrentAction().GetObjectClass(),a=_createForOfIteratorHelper(e.allCorrespondingInstances(n,r))
|
||
try{for(a.s();!(t=a.n()).done;){var i=t.value
|
||
n.RemoveChild(i)}}catch(s){a.e(s)}finally{a.f()}},RemoveFromParent=function(){if(this._inst.HasParent()){var e=this._inst.GetParent()
|
||
e.RemoveChild(this._inst)}},ChildCount=function(){return this._inst.GetChildCount()},SetMeshSize=function(e,t){e=Math.floor(e),t=Math.floor(t)
|
||
var n=this.GetWorldInfo()
|
||
2>e||2>t||!isFinite(e)||!isFinite(t)?(n.ReleaseMesh(),n.SetBboxChanged()):n.CreateMesh(e,t)},SetMeshPoint=function(e,t,n,r,a,i,s){var o=this.GetWorldInfo(),u=o.SetMeshPoint(e,t,{mode:0===n?"absolute":"relative",x:r,y:a,u:i,v:s})
|
||
u&&o.SetBboxChanged()},MeshColumns=function(){var e=this.GetWorldInfo()
|
||
return e.HasMesh()?e.GetSourceMesh().GetHSize():0},MeshRows=function(){var e=this.GetWorldInfo()
|
||
return e.HasMesh()?e.GetSourceMesh().GetVSize():0},SetElementVisible=function(e){var t=this.GetWorldInfo()
|
||
e=2===e?!t.IsVisible():0!==e,t.IsVisible()!==e&&t.SetVisible(e)},SetElementCSSStyle=function(e,t){this.SetElementCSSStyle(e,t)},SetElementAttribute=function(e,t){this.SetElementAttribute(e,""+t)},RemoveElementAttribute=function(e){this.RemoveElementAttribute(e)},SetElementFocus=function(){this.FocusElement()},SetElementBlur=function(){this.BlurElement()},IsElementFocused=function(){return this.IsElementFocused()},SetElementEnabled=function(e){this._SetEnabled(0!==e)},IsElementEnabled=function(){return this._IsEnabled()},CompareInstanceVar=function(e,t,n){return _C117.compare(this.GetInstance().GetInstanceVariableValue(e),t,n)},IsBoolInstanceVarSet=function(e){return!!this.GetInstance().GetInstanceVariableValue(e)},PickInstVarHiLow=function(e,t){var n=this.GetCurrentSol(),r=n.GetInstances()
|
||
if(!r.length)return!1
|
||
for(var a=r[0],i=a,s=a.GetInstanceVariableValue(t),o=1,u=r.length;u>o;++o){a=r[o]
|
||
var l=a.GetInstanceVariableValue(t);(0===e&&s>l||1===e&&l>s)&&(s=l,i=a)}return n.PickOne(i),!0},PickByUID=function(e){return this._runtime.GetCurrentCondition().IsInverted()?PickByUID_Inverted(this,e):PickByUID_Normal(this,e)},PickByUID_Normal=function(e,t){var n=e.GetRuntime().GetInstanceByUID(t)
|
||
if(!n)return!1
|
||
var r=e.GetCurrentSol()
|
||
if(!r.IsSelectAll()&&!r._GetOwnInstances().includes(n))return!1
|
||
if(e.IsFamily()){if(n.GetObjectClass().BelongsToFamily(e))return r.PickOne(n),e.ApplySolToContainer(),!0}else if(n.GetObjectClass()===e)return r.PickOne(n),e.ApplySolToContainer(),!0
|
||
return!1},PickByUID_Inverted=function(e,t){var n=e.GetCurrentSol()
|
||
if(n.IsSelectAll()){n._SetSelectAll(!1),n.ClearArrays()
|
||
for(var r=e.GetInstances(),a=0,i=r.length;i>a;++a){var s=r[a]
|
||
s.GetUID()===t?n._PushElseInstance(s):n._PushInstance(s)}return e.ApplySolToContainer(),!!n._GetOwnInstances().length}for(var o=n._GetOwnInstances(),u=0,l=0,c=o.length;c>l;++l){var h=o[l]
|
||
o[u]=h,h.GetUID()===t?n._PushElseInstance(h):++u}return _C117.truncateArray(o,u),e.ApplySolToContainer(),!!o.length},Destroy=function(){this._runtime.DestroyInstance(this._inst)},OnCreated=function(){return!0},OnDestroyed=function(){return!0},SetInstanceVar=function(e,t){this.GetInstance().SetInstanceVariableValue(e,t)},AddInstanceVar=function(e,t){var n=this.GetInstance(),r=n.GetInstanceVariableValue(e)
|
||
"number"==typeof r&&"number"!=typeof t?t=parseFloat(t):"string"==typeof r&&"string"!=typeof t&&(t=""+t),n.SetInstanceVariableValue(e,r+t)},SubInstanceVar=function(e,t){var n=this.GetInstance(),r=n.GetInstanceVariableValue(e)
|
||
"number"==typeof r&&("number"!=typeof t&&(t=parseFloat(t)),n.SetInstanceVariableValue(e,r-t))},SetBoolInstanceVar=function(e,t){this.GetInstance().SetInstanceVariableValue(e,t?1:0)},ToggleBoolInstanceVar=function(e){var t=this.GetInstance()
|
||
t.SetInstanceVariableValue(e,0===t.GetInstanceVariableValue(e)?1:0)},LoadFromJsonString=function(e){var t
|
||
try{t=JSON.parse(e)}catch(n){return void console.error("Failed to load from JSON string: ",n)}this.GetInstance().LoadFromJson(t,"state")},AsJSON=function(){return JSON.stringify(this.GetInstance().SaveToJson("state"))},ObjectTypeName=function(){return this.GetInstance().GetObjectClass().GetName()},Count=function(){var e,t=this._runtime.GetCurrentEventStackFrame().GetExpressionObjectClass(),n=t.GetInstanceCount(),r=this._runtime._GetInstancesPendingCreate(),a=_createForOfIteratorHelper(r)
|
||
try{for(a.s();!(e=a.n()).done;){var i=e.value
|
||
t.IsFamily()?i.GetObjectClass().BelongsToFamily(t)&&++n:i.GetObjectClass()===t&&++n}}catch(s){a.e(s)}finally{a.f()}return n},PickedCount=function(){return this._runtime.GetCurrentEventStackFrame().GetExpressionObjectClass().GetCurrentSol().GetInstances().length},GetIID=function(){return this._inst.GetIID()},GetUID=function(){return this._inst.GetUID()},_C117=self.C3,_tempColor2=new _C117.Color
|
||
_C117.AddCommonACEs=function(e,t){var n=e[1],r=e[3],a=e[4],i=e[5],s=e[6],o=e[7],u=e[8],l=e[10],c=e[11],h=e[12],_=e[13],f=e[14],d=t.Cnds,p=t.Acts,v=t.Exps
|
||
r&&(d.CompareX=CompareX,d.CompareY=CompareY,d.IsOnScreen=IsOnScreen,d.IsOutsideLayout=IsOutsideLayout,d.PickDistance=PickDistance,p.SetX=SetX,p.SetY=SetY,p.SetPos=SetPos,p.SetPosToObject=SetPosToObject,p.MoveForward=MoveForward,p.MoveAtAngle=MoveAtAngle,v.X=GetX,v.Y=GetY,v.dt=GetDt),a&&(d.CompareWidth=CompareWidth,d.CompareHeight=CompareHeight,p.SetWidth=SetWidth,p.SetHeight=SetHeight,p.SetSize=SetSize,v.Width=GetWidth,v.Height=GetHeight,v.BBoxLeft=GetBboxLeft,v.BBoxTop=GetBboxTop,v.BBoxRight=GetBboxRight,v.BBoxBottom=GetBboxBottom),i&&(d.AngleWithin=IsAngleWithin,d.IsClockwiseFrom=IsAngleClockwiseFrom,d.IsBetweenAngles=IsBetweenAngles,p.SetAngle=SetAngle,p.RotateClockwise=RotateClockwise,p.RotateCounterclockwise=RotateCounterclockwise,p.RotateTowardAngle=RotateTowardAngle,p.RotateTowardPosition=RotateTowardPosition,p.SetTowardPosition=SetTowardPosition,v.Angle=GetAngle),s&&(d.IsVisible=IsVisible,d.CompareOpacity=CompareOpacity,p.SetVisible=SetVisible,p.SetOpacity=SetOpacity,p.SetDefaultColor=SetDefaultColor,v.Opacity=GetOpacity,v.ColorValue=GetColor),o&&(d.IsOnLayer=IsOnLayer,d.PickTopBottom=PickTopBottom,d.CompareZElevation=CompareZElevation,p.MoveToTop=MoveToTop,p.MoveToBottom=MoveToBottom,p.MoveToLayer=MoveToLayer,p.ZMoveToObject=ZMoveToObject,p.SetZElevation=SetZElevation,v.LayerNumber=LayerNumber,v.LayerName=LayerName,v.ZIndex=ZIndex,v.ZElevation=ZElevation,v.TotalZElevation=TotalZElevation),u&&(p.SetEffectEnabled=SetEffectEnabled,p.SetEffectParam=SetEffectParam),_&&(d.HasParent=HasParent,d.HasChildren=HasChildren,d.PickParent=PickParent,d.PickChildren=PickChildren,d.PickNthChild=PickNthChild,d.CompareChildCount=CompareChildCount,p.AddChild=AddChild,p.RemoveChild=RemoveChild,p.RemoveFromParent=RemoveFromParent,v.ChildCount=ChildCount),f&&(p.SetMeshSize=SetMeshSize,p.SetMeshPoint=SetMeshPoint,v.MeshColumns=MeshColumns,v.MeshRows=MeshRows),l&&(d.IsVisible=IsVisible,p.SetVisible=SetElementVisible,p.SetCSSStyle=SetElementCSSStyle,p.SetElemAttribute=SetElementAttribute,p.RemoveElemAttribute=RemoveElementAttribute),c&&(d.IsFocused=IsElementFocused,p.SetFocus=SetElementFocus,p.SetBlur=SetElementBlur),h&&(d.IsEnabled=IsElementEnabled,p.SetEnabled=SetElementEnabled),n||(d.CompareInstanceVar=CompareInstanceVar,d.IsBoolInstanceVarSet=IsBoolInstanceVarSet,d.PickInstVarHiLow=PickInstVarHiLow,d.PickByUID=PickByUID,p.SetInstanceVar=SetInstanceVar,p.AddInstanceVar=AddInstanceVar,p.SubInstanceVar=SubInstanceVar,p.SetBoolInstanceVar=SetBoolInstanceVar,p.ToggleBoolInstanceVar=ToggleBoolInstanceVar,d.OnCreated=OnCreated,d.OnDestroyed=OnDestroyed,p.Destroy=Destroy,p.LoadFromJsonString||(p.LoadFromJsonString=LoadFromJsonString),v.AsJSON||(v.AsJSON=AsJSON),v.Count=Count,v.PickedCount=PickedCount,v.IID=GetIID,v.UID=GetUID,v.ObjectTypeName=ObjectTypeName)}
|
||
var _C118=self.C3
|
||
_C118.ScheduledWait=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._eventSheetManager=e,r._type="",r._time=-1,r._signalTag="",r._isSignalled=!1,r._event=null,r._actIndex=0,r._solModifiers=[],r._sols=new Map,r._callingFunctionBlock=null,r._asyncId=-1,r._functionParameters=null,r._shouldRelease=!1,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._type="",this._time=-1,this._signalTag="",this._event=null,this._callingFunctionBlock=null,this._functionParameters=null,this._asyncId=-1,_C118.clearArray(this._solModifiers)
|
||
var e,t=_createForOfIteratorHelper(this._sols.values())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}this._sols.clear()}},{key:"_Init",value:function(){var e=this._eventSheetManager,t=e.GetRuntime().GetAllObjectClasses(),n=e.GetCurrentEventStackFrame()
|
||
this._event=n.GetCurrentEvent(),this._actIndex=n.GetActionIndex()+1
|
||
var r=e.FindFirstFunctionBlockParent(this._event)
|
||
r&&(this._callingFunctionBlock=r,this._functionParameters=r.CaptureFunctionParameters(),r.IsAsync()&&(this._asyncId=r.PauseCurrentAsyncFunction()))
|
||
var a,i=_createForOfIteratorHelper(t)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value,o=s.GetCurrentSol();(!o.IsSelectAll()||this._event.HasSolModifier(s))&&(this._solModifiers.push(s),this._sols.set(s,_C118.New(_C118.SolState,o)))}}catch(u){i.e(u)}finally{i.f()}}},{key:"InitTimer",value:function(e){this._type="timer",this._Init(),this._time=this._eventSheetManager.GetRuntime().GetGameTime()+e}},{key:"InitSignal",value:function(e){this._type="signal",this._Init(),this._signalTag=e.toLowerCase()}},{key:"InitPromise",value:function(e){var t=this
|
||
this._type="promise",this._Init(),e.then(function(){return t.SetSignalled()})["catch"](function(e){console.warn("[C3 runtime] Promise rejected in 'Wait for previous actions to complete': ",e),t.SetSignalled()})}},{key:"IsTimer",value:function(){return"timer"===this._type}},{key:"IsSignal",value:function(){return"signal"===this._type}},{key:"IsPromise",value:function(){return"promise"===this._type}},{key:"GetSignalTag",value:function(){return this._signalTag}},{key:"IsSignalled",value:function(){return this._isSignalled}},{key:"SetSignalled",value:function(){this._isSignalled=!0}},{key:"_ShouldRun",value:function(){return this.IsTimer()?this._time<=this._eventSheetManager.GetRuntime().GetGameTime():this.IsSignalled()}},{key:"_RestoreState",value:function(e){e._Restore(this._event,this._actIndex)
|
||
var t,n=_createForOfIteratorHelper(this._sols.entries())
|
||
try{for(n.s();!(t=n.n()).done;){var r=_slicedToArray(t.value,2),a=r[0],i=r[1],s=a.GetCurrentSol()
|
||
i._Restore(s)}}catch(o){n.e(o)}finally{n.f()}var u=this._callingFunctionBlock
|
||
u&&(u.SetFunctionParameters(this._functionParameters),u.IsAsync()&&u.ResumeAsyncFunction(this._asyncId))}},{key:"_Run",value:function(e){this._RestoreState(e),this._event._ResumeActionsAndSubEvents(e),this._callingFunctionBlock&&this._callingFunctionBlock.IsAsync()&&this._callingFunctionBlock.MaybeFinishAsyncFunctionCall(this._asyncId),this._eventSheetManager.ClearSol(this._solModifiers),this._shouldRelease=!0}},{key:"_DebugRun",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:this._RestoreState(e),t=_createForOfIteratorHelper(this._event._DebugResumeActionsAndSubEvents(e)),n.prev=2,t.s()
|
||
case 4:if((r=t.n()).done){n.next=10
|
||
break}return a=r.value,n.next=8,this._eventSheetManager.GetRuntime().DebugBreak(a)
|
||
case 8:n.next=4
|
||
break
|
||
case 10:n.next=15
|
||
break
|
||
case 12:n.prev=12,n.t0=n["catch"](2),t.e(n.t0)
|
||
case 15:return n.prev=15,t.f(),n.finish(15)
|
||
case 18:this._callingFunctionBlock&&this._callingFunctionBlock.IsAsync()&&this._callingFunctionBlock.MaybeFinishAsyncFunctionCall(this._asyncId),this._eventSheetManager.ClearSol(this._solModifiers),this._shouldRelease=!0
|
||
case 21:case"end":return n.stop()}},n,this,[[2,12,15,18]])}))
|
||
return e}()},{key:"ShouldRelease",value:function(){return this._shouldRelease}},{key:"RemoveInstances",value:function(e){var t,n=_createForOfIteratorHelper(this._sols.values())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.RemoveInstances(e)}}catch(a){n.e(a)}finally{n.f()}}},{key:"_SaveToJson",value:function(){var e={},t={t:this._time,st:this._signalTag,s:this._isSignalled,ev:this._event.GetSID(),sm:this._solModifiers.map(function(e){return e.GetSID()}),sols:e}
|
||
this._event._HasActionIndex(this._actIndex)&&(t.act=this._event.GetActionAt(this._actIndex).GetSID())
|
||
var n,r=_createForOfIteratorHelper(this._sols)
|
||
try{for(r.s();!(n=r.n()).done;){var a=_slicedToArray(n.value,2),i=a[0],s=a[1]
|
||
e[""+i.GetSID()]=s._SaveToJson()}}catch(o){r.e(o)}finally{r.f()}return t}}],[{key:"_CreateFromJson",value:function(e,t){var n=e.GetRuntime(),r=e.GetEventBlockBySID(t.ev)
|
||
if(!r)return null
|
||
var a=0
|
||
if(t.hasOwnProperty("act")){var i=e.GetActionBySID(t.act)
|
||
if(!i)return null
|
||
a=i.GetIndex()}var s=_C118.New(_C118.ScheduledWait,e)
|
||
s._time=t.t,s._type=-1===s._time?"signal":"timer",s._signalTag=t.st,s._isSignalled=t.s,s._event=r,s._actIndex=a
|
||
var o,u=_createForOfIteratorHelper(t.sm)
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value,c=n.GetObjectClassBySID(l)
|
||
c&&s._solModifiers.push(c)}}catch(h){u.e(h)}finally{u.f()}for(var _=0,f=Object.entries(t.sols);_<f.length;_++){var d=_slicedToArray(f[_],2),p=d[0],v=d[1],m=parseInt(p,10),y=n.GetObjectClassBySID(m)
|
||
if(y){var g=_C118.New(_C118.SolState,null)
|
||
g._LoadFromJson(e,v),s._sols.set(y,g)}}return s}}]),t}(_C118.DefendedBase)
|
||
var _C119=self.C3
|
||
_C119.SolState=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._objectClass=null,r._isSelectAll=!0,r._instances=[],e&&(r._objectClass=e.GetObjectClass(),r._isSelectAll=e.IsSelectAll(),_C119.shallowAssignArray(r._instances,e._GetOwnInstances())),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._objectClass=null,_C119.clearArray(this._instances)}},{key:"_Restore",value:function(e){e._SetSelectAll(this._isSelectAll),_C119.shallowAssignArray(e._GetOwnInstances(),this._instances)}},{key:"RemoveInstances",value:function(e){_C119.arrayRemoveAllInSet(this._instances,e)}},{key:"_SaveToJson",value:function(){return{sa:this._isSelectAll,insts:this._instances.map(function(e){return e.GetUID()})}}},{key:"_LoadFromJson",value:function(e,t){var n=e.GetRuntime()
|
||
this._isSelectAll=!!t.sa,_C119.clearArray(this._instances)
|
||
var r,a=_createForOfIteratorHelper(t.insts)
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value,s=n.GetInstanceByUID(i)
|
||
s&&this._instances.push(s)}}catch(o){a.e(o)}finally{a.f()}}}]),t}(_C119.DefendedBase)
|
||
var GetNextParamMap=function(e,t){var n=e.get(t)
|
||
return n||(n=new Map,e.set(t,n)),n},_C120=self.C3
|
||
_C120.SDKPluginBase=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e.runtime,r._isSingleGlobal=!!e.isSingleGlobal,r._isWorldType=!!e.isWorld,r._isRotatable=!!e.isRotatable,r._mustPredraw=!!e.mustPredraw,r._hasEffects=!!e.hasEffects,r._supportsSceneGraph=!!e.supportsSceneGraph,r._supportsMesh=!!e.supportsMesh,r._singleGlobalObjectClass=null,r._boundACEMethodCache=new Map,r._boundACEMethodCache_1param=new Map,r._boundACEMethodCache_2params=new Map,r._boundACEMethodCache_3params=new Map,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._runtime=null}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"OnCreate",value:function(){}},{key:"IsSingleGlobal",value:function(){return this._isSingleGlobal}},{key:"IsWorldType",value:function(){return this._isWorldType}},{key:"IsRotatable",value:function(){return this._isRotatable}},{key:"MustPreDraw",value:function(){return this._mustPredraw}},{key:"HasEffects",value:function(){return this._hasEffects}},{key:"SupportsSceneGraph",value:function(){return this._supportsSceneGraph}},{key:"SupportsMesh",value:function(){return this._supportsMesh}},{key:"_GetBoundACEMethod",value:function(e,t){if(!t)throw Error("missing 'this' binding")
|
||
var n=this._boundACEMethodCache.get(e)
|
||
return n?n:(n=e.bind(t),this._boundACEMethodCache.set(e,n),n)}},{key:"_GetBoundACEMethod_1param",value:function(e,t,n){if(!t)throw Error("missing 'this' binding")
|
||
var r=GetNextParamMap(this._boundACEMethodCache_1param,e),a=r.get(n)
|
||
return a?a:(a=e.bind(t,n),r.set(n,a),a)}},{key:"_GetBoundACEMethod_2params",value:function(e,t,n,r){if(!t)throw Error("missing 'this' binding")
|
||
var a=GetNextParamMap(this._boundACEMethodCache_2params,e),i=GetNextParamMap(a,n),s=i.get(r)
|
||
return s?s:(s=e.bind(t,n,r),i.set(r,s),s)}},{key:"_GetBoundACEMethod_3params",value:function(e,t,n,r,a){if(!t)throw Error("missing 'this' binding")
|
||
var i=GetNextParamMap(this._boundACEMethodCache_3params,e),s=GetNextParamMap(i,n),o=GetNextParamMap(s,r),u=o.get(a)
|
||
return u?u:(u=e.bind(t,n,r,a),o.set(a,u),u)}},{key:"_SetSingleGlobalObjectClass",value:function(e){if(!this.IsSingleGlobal())throw Error("must be single-global plugin")
|
||
this._singleGlobalObjectClass=e}},{key:"GetSingleGlobalObjectClass",value:function(){if(!this.IsSingleGlobal())throw Error("must be single-global plugin")
|
||
return this._singleGlobalObjectClass}},{key:"GetSingleGlobalInstance",value:function(){if(!this.IsSingleGlobal())throw Error("must be single-global plugin")
|
||
return this._singleGlobalObjectClass.GetSingleGlobalInstance()}}]),t}(_C120.DefendedBase)
|
||
var _C121=self.C3
|
||
_C121.SDKDOMPluginBase=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._domComponentId=r,a._nextElementId=0,a._instMap=new Map,a.AddElementMessageHandler("elem-focused",function(e){return e._OnElemFocused()}),a.AddElementMessageHandler("elem-blurred",function(e){e&&e._OnElemBlurred()}),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_AddElement",value:function(e){var t=this._nextElementId++
|
||
return this._instMap.set(t,e),t}},{key:"_RemoveElement",value:function(e){this._instMap["delete"](e)}},{key:"AddElementMessageHandler",value:function(e,t){var n=this
|
||
this._runtime.AddDOMComponentMessageHandler(this._domComponentId,e,function(e){var r=n._instMap.get(e.elementId)
|
||
t(r,e)})}}]),t}(_C121.SDKPluginBase)
|
||
var _C122=self.C3
|
||
_C122.SDKTypeBase=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._objectClass=e,r._runtime=e.GetRuntime(),r._plugin=e.GetPlugin(),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._objectClass=null,this._runtime=null,this._plugin=null}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetPlugin",value:function(){return this._plugin}},{key:"GetImageInfo",value:function(){return this._objectClass.GetImageInfo()}},{key:"FinishCondition",value:function(e){}},{key:"LoadTextures",value:function(e){}},{key:"ReleaseTextures",value:function(){}},{key:"OnDynamicTextureLoadComplete",value:function(){}},{key:"PreloadTexturesWithInstances",value:function(e){}},{key:"LoadTilemapData",value:function(){}},{key:"GetScriptInterfaceClass",value:function(){return null}}]),t}(_C122.DefendedBase)
|
||
var _C123=self.C3
|
||
_C123.SDKInstanceBase=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._inst=e,a._domComponentId=r,a._runtime=e.GetRuntime(),a._objectClass=a._inst.GetObjectClass(),a._sdkType=a._objectClass.GetSdkType(),a._tickFunc=null,a._tick2Func=null,a._isTicking=!1,a._isTicking2=!1,a._disposables=null,a._wasReleased=!1,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._wasReleased=!0,this._StopTicking(),this._StopTicking2(),this._tickFunc=null,this._tick2Func=null,this._disposables&&(this._disposables.Release(),this._disposables=null),this._inst=null,this._runtime=null,this._objectClass=null,this._sdkType=null}},{key:"WasReleased",value:function(){return this._wasReleased}},{key:"GetInstance",value:function(){return this._inst}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"GetPlugin",value:function(){return this._sdkType.GetPlugin()}},{key:"GetSdkType",value:function(){return this._sdkType}},{key:"GetScriptInterface",value:function(){return this._inst.GetInterfaceClass()}},{key:"Trigger",value:function(e){return this._runtime.Trigger(e,this._inst,null)}},{key:"DebugTrigger",value:function(e){return this._runtime.DebugTrigger(e,this._inst,null)}},{key:"TriggerAsync",value:function(e){return this._runtime.TriggerAsync(e,this._inst,null)}},{key:"FastTrigger",value:function(e,t){return this._runtime.FastTrigger(e,this._inst,t)}},{key:"DebugFastTrigger",value:function(e,t){return this._runtime.DebugFastTrigger(e,this._inst,t)}},{key:"ScheduleTriggers",value:function(e){return this._runtime.ScheduleTriggers(e)}},{key:"AddDOMMessageHandler",value:function(e,t){this._runtime.AddDOMComponentMessageHandler(this._domComponentId,e,t)}},{key:"AddDOMMessageHandlers",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=_slicedToArray(t.value,2),a=r[0],i=r[1]
|
||
this.AddDOMMessageHandler(a,i)}}catch(s){n.e(s)}finally{n.f()}}},{key:"PostToDOM",value:function(e,t){this._runtime.PostComponentMessageToDOM(this._domComponentId,e,t)}},{key:"PostToDOMAsync",value:function(e,t){return this._runtime.PostComponentMessageToDOMAsync(this._domComponentId,e,t)}},{key:"_PostToDOMMaybeSync",value:function(e,t){return this._runtime.IsInWorker()?void this.PostToDOM(e,t):window.c3_runtimeInterface._OnMessageFromRuntime({type:"event",component:this._domComponentId,handler:e,data:t,responseId:null})}},{key:"GetCurrentImageInfo",value:function(){return null}},{key:"GetCurrentSurfaceSize",value:function(){var e=this.GetCurrentImageInfo()
|
||
if(e){var t=e.GetTexture()
|
||
if(t)return[t.GetWidth(),t.GetHeight()]}return[100,100]}},{key:"GetCurrentTexRect",value:function(){var e=this.GetCurrentImageInfo()
|
||
return e?e.GetTexRect():null}},{key:"GetImagePoint",value:function(e){var t=this._inst.GetWorldInfo()
|
||
return[t.GetX(),t.GetY()]}},{key:"Tick",value:function(){}},{key:"Tick2",value:function(){}},{key:"_StartTicking",value:function(){var e=this
|
||
this._isTicking||(this._tickFunc||(this._tickFunc=function(){return e.Tick()}),this._runtime.Dispatcher().addEventListener("tick",this._tickFunc),this._isTicking=!0)}},{key:"_StopTicking",value:function(){this._isTicking&&(this._runtime.Dispatcher().removeEventListener("tick",this._tickFunc),this._isTicking=!1)}},{key:"IsTicking",value:function(){return this._isTicking}},{key:"_StartTicking2",value:function(){var e=this
|
||
this._isTicking2||(this._tick2Func||(this._tick2Func=function(){return e.Tick2()}),this._runtime.Dispatcher().addEventListener("tick2",this._tick2Func),this._isTicking2=!0)}},{key:"_StopTicking2",value:function(){this._isTicking2&&(this._runtime.Dispatcher().removeEventListener("tick2",this._tick2Func),this._isTicking2=!1)}},{key:"IsTicking2",value:function(){return this._isTicking2}},{key:"GetDebuggerProperties",value:function(){return[]}},{key:"SaveToJson",value:function(){return null}},{key:"LoadFromJson",value:function(e){}},{key:"LoadTilemapData",value:function(e,t,n){}},{key:"TestPointOverlapTile",value:function(e,t){}},{key:"GetPropertyValueByIndex",value:function(e){}},{key:"SetPropertyValueByIndex",value:function(e,t){}},{key:"OffsetPropertyValueByIndex",value:function(e,t){if(0!==t){var n=this.GetPropertyValueByIndex(e)
|
||
if("number"!=typeof n)throw Error("expected number")
|
||
this.SetPropertyValueByIndex(e,n+t)}}},{key:"SetPropertyColorOffsetValueByIndex",value:function(e,t,n,r){}},{key:"CallAction",value:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
e.call.apply(e,[this].concat(n))}},{key:"CallExpression",value:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
return e.call.apply(e,[this].concat(n))}},{key:"GetScriptInterfaceClass",value:function(){return null}}]),t}(_C123.DefendedBase)
|
||
var _C124=self.C3
|
||
_C124.SDKWorldInstanceBase=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,r),a._worldInfo=e.GetWorldInfo(),a._webglcontextlost_handler=null,a._webglcontextrestored_handler=null,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){if(this._webglcontextlost_handler){var e=this._runtime.Dispatcher()
|
||
e.removeEventListener("webglcontextlost",this._webglcontextlost_handler),e.removeEventListener("webglcontextrestored",this._webglcontextrestored_handler),this._webglcontextlost_handler=null,this._webglcontextrestored_handler=null}this._worldInfo=null,_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"HandleWebGLContextLoss",value:function(){var e=this
|
||
if(!this._webglcontextlost_handler){this._webglcontextlost_handler=function(){return e.OnWebGLContextLost()},this._webglcontextrestored_handler=function(){return e.OnWebGLContextRestored()}
|
||
var t=this._runtime.Dispatcher()
|
||
t.addEventListener("webglcontextlost",this._webglcontextlost_handler),t.addEventListener("webglcontextrestored",this._webglcontextrestored_handler)}}},{key:"OnWebGLContextLost",value:function(){}},{key:"OnWebGLContextRestored",value:function(){}},{key:"GetWorldInfo",value:function(){return this._worldInfo}}]),t}(_C124.SDKInstanceBase)
|
||
var _C125=self.C3,tempRect=_C125.New(_C125.Rect)
|
||
_C125.SDKDOMInstanceBase=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e,r),a._elementId=a.GetPlugin()._AddElement(_assertThisInitialized(a)),a._isElementShowing=!0,a._elemHasFocus=!1,a._autoFontSize=!1,a._lastRect=_C125.New(_C125.Rect,0,0,-1,-1)
|
||
var i=a._runtime.GetCanvasManager()
|
||
return a._lastWindowWidth=i.GetLastWidth(),a._lastWindowHeight=i.GetLastHeight(),a._isPendingUpdateState=!1,a._StartTicking(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.GetPlugin()._RemoveElement(this._elementId),this.PostToDOMElement("destroy"),this._elementId=-1,_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_GetElementInDOMMode",value:function(){if(this._runtime.IsInWorker())throw Error("not valid in worker mode")
|
||
return this._PostToDOMElementMaybeSync("get-element")}},{key:"PostToDOMElement",value:function(e,t){t||(t={}),t.elementId=this._elementId,this.PostToDOM(e,t)}},{key:"_PostToDOMElementMaybeSync",value:function(e,t){return t||(t={}),t.elementId=this._elementId,this._PostToDOMMaybeSync(e,t)}},{key:"PostToDOMElementAsync",value:function(e,t){return t||(t={}),t.elementId=this._elementId,this.PostToDOMAsync(e,t)}},{key:"CreateElement",value:function(e){e||(e={})
|
||
var t=this.GetWorldInfo().IsVisible()
|
||
e.elementId=this._elementId,e.isVisible=t,Object.assign(e,this.GetElementState()),this._isElementShowing=!!e.isVisible,this._PostToDOMMaybeSync("create",e),this._UpdatePosition(!0)}},{key:"SetElementVisible",value:function(e){e=!!e,this._isElementShowing!==e&&(this._isElementShowing=e,this.PostToDOMElement("set-visible",{isVisible:e}))}},{key:"Tick",value:function(){this._UpdatePosition(!1)}},{key:"_ShouldPreserveElement",value:function(){var e=this._runtime.GetCanvasManager().GetFullscreenMode()
|
||
return"Android"===_C125.Platform.OS&&("scale-inner"===e||"scale-outer"===e||"crop"===e)}},{key:"_UpdatePosition",value:function(e){var t=this.GetWorldInfo(),n=t.GetLayer(),r=t.GetX(),a=t.GetY(),i=n.LayerToCanvasCss(r,a),s=_slicedToArray(i,2),o=s[0],u=s[1],l=n.LayerToCanvasCss(r+t.GetWidth(),a+t.GetHeight()),c=_slicedToArray(l,2),h=c[0],_=c[1],f=this._runtime.GetCanvasManager(),d=f.GetCssWidth(),p=f.GetCssHeight()
|
||
if(!t.IsVisible()||!n.IsVisible())return void this.SetElementVisible(!1)
|
||
if(!this._ShouldPreserveElement()){if(0>=h||0>=_||o>=d||u>=p)return void this.SetElementVisible(!1)
|
||
1>o&&(o=1),1>u&&(u=1),h>=d&&(h=d-1),_>=p&&(_=p-1)}tempRect.set(o,u,h,_)
|
||
var v=f.GetLastWidth(),m=f.GetLastHeight()
|
||
if(!e&&tempRect.equals(this._lastRect)&&this._lastWindowWidth===v&&this._lastWindowHeight===m)return void this.SetElementVisible(!0)
|
||
this._lastRect.copy(tempRect),this._lastWindowWidth=v,this._lastWindowHeight=m,this.SetElementVisible(!0)
|
||
var y=null
|
||
this._autoFontSize&&(y=n.GetDisplayScale()-.2),this.PostToDOMElement("update-position",{left:Math.round(this._lastRect.getLeft())+f.GetCanvasClientX(),top:Math.round(this._lastRect.getTop())+f.GetCanvasClientY(),width:Math.round(this._lastRect.width()),height:Math.round(this._lastRect.height()),fontSize:y})}},{key:"FocusElement",value:function(){this._PostToDOMElementMaybeSync("focus",{focus:!0})}},{key:"BlurElement",value:function(){this._PostToDOMElementMaybeSync("focus",{focus:!1})}},{key:"_OnElemFocused",value:function(){this._elemHasFocus=!0}},{key:"_OnElemBlurred",value:function(){this._elemHasFocus=!1}},{key:"IsElementFocused",value:function(){return this._elemHasFocus}},{key:"SetElementCSSStyle",value:function(e,t){this.PostToDOMElement("set-css-style",{prop:_C125.CSSToCamelCase(e),val:t})}},{key:"SetElementAttribute",value:function(e,t){this.PostToDOMElement("set-attribute",{name:e,val:t})}},{key:"RemoveElementAttribute",value:function(e){this.PostToDOMElement("remove-attribute",{name:e})}},{key:"UpdateElementState",value:function(){var e=this
|
||
this._isPendingUpdateState||(this._isPendingUpdateState=!0,Promise.resolve().then(function(){e._isPendingUpdateState=!1,e.PostToDOMElement("update-state",e.GetElementState())}))}},{key:"GetElementState",value:function(){}},{key:"GetElementId",value:function(){return this._elementId}}]),t}(_C125.SDKWorldInstanceBase)
|
||
var _C126=self.C3,IBehavior=self.IBehavior
|
||
_C126.SDKBehaviorBase=function(e){function t(e){var r
|
||
_classCallCheck(this,t),r=n.call(this),r._runtime=e.runtime,r._myObjectClasses=_C126.New(_C126.ArraySet),r._myInstances=_C126.New(_C126.ArraySet),r._iBehavior=null
|
||
var a=e.scriptInterfaceClass
|
||
if(a){if(r._iBehavior=new a(_assertThisInitialized(r)),!(r._iBehavior instanceof IBehavior))throw new TypeError("script interface class must derive from IBehavior")}else r._iBehavior=new IBehavior(_assertThisInitialized(r))
|
||
return r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._myInstances.Release(),this._myObjectClasses.Release(),this._runtime=null}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"OnCreate",value:function(){}},{key:"_AddObjectClass",value:function(e){this._myObjectClasses.Add(e)}},{key:"GetObjectClasses",value:function(){return this._myObjectClasses.GetArray()}},{key:"_AddInstance",value:function(e){this._myInstances.Add(e)}},{key:"_RemoveInstance",value:function(e){this._myInstances.Delete(e)}},{key:"GetInstances",value:function(){return this._myInstances.GetArray()}},{key:"GetIBehavior",value:function(){return this._iBehavior}}]),t}(_C126.DefendedBase)
|
||
var _C127=self.C3
|
||
_C127.SDKBehaviorTypeBase=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e.GetRuntime(),r._behaviorType=e,r._objectClass=e.GetObjectClass(),r._behavior=e.GetBehavior(),r._behavior._AddObjectClass(r._objectClass),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._runtime=null,this._behaviorType=null,this._objectClass=null,this._behavior=null}},{key:"GetBehaviorType",value:function(){return this._behaviorType}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetBehavior",value:function(){return this._behavior}}]),t}(_C127.DefendedBase)
|
||
var _C128=self.C3
|
||
_C128.SDKBehaviorInstanceBase=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._behInst=e,a._domComponentId=r,a._inst=e.GetObjectInstance(),a._runtime=e.GetRuntime(),a._behaviorType=e.GetBehaviorType(),a._sdkType=a._behaviorType.GetSdkType(),a._isTicking=!1,a._isTicking2=!1,a._isPostTicking=!1,a._disposables=null,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._StopTicking(),this._StopTicking2(),this._StopPostTicking(),this._disposables&&(this._disposables.Release(),this._disposables=null),this._behInst=null,this._inst=null,this._runtime=null,this._behaviorType=null,this._sdkType=null}},{key:"GetBehavior",value:function(){return this._behaviorType.GetBehavior()}},{key:"GetBehaviorInstance",value:function(){return this._behInst}},{key:"GetObjectInstance",value:function(){return this._inst}},{key:"GetObjectClass",value:function(){return this._inst.GetObjectClass()}},{key:"GetWorldInfo",value:function(){return this._inst.GetWorldInfo()}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetBehaviorType",value:function(){return this._behaviorType}},{key:"GetSdkType",value:function(){return this._sdkType}},{key:"GetScriptInterface",value:function(){return this._behInst.GetScriptInterface()}},{key:"Trigger",value:function(e){return this._runtime.Trigger(e,this._inst,this._behaviorType)}},{key:"DebugTrigger",value:function(e){return this._runtime.DebugTrigger(e,this._inst,this._behaviorType)}},{key:"TriggerAsync",value:function(e){return this._runtime.TriggerAsync(e,this._inst,this._behaviorType)}},{key:"PostCreate",value:function(){}},{key:"Tick",value:function(){}},{key:"Tick2",value:function(){}},{key:"PostTick",value:function(){}},{key:"_StartTicking",value:function(){this._isTicking||(this._runtime._AddBehInstToTick(this),this._isTicking=!0)}},{key:"_StopTicking",value:function(){this._isTicking&&(this._runtime._RemoveBehInstToTick(this),this._isTicking=!1)}},{key:"IsTicking",value:function(){return this._isTicking}},{key:"_StartTicking2",value:function(){this._isTicking2||(this._runtime._AddBehInstToTick2(this),this._isTicking2=!0)}},{key:"_StopTicking2",value:function(){this._isTicking2&&(this._runtime._RemoveBehInstToTick2(this),this._isTicking2=!1)}},{key:"IsTicking2",value:function(){return this._isTicking2}},{key:"_StartPostTicking",value:function(){this._isPostTicking||(this._runtime._AddBehInstToPostTick(this),this._isPostTicking=!0)}},{key:"_StopPostTicking",value:function(){this._isPostTicking&&(this._runtime._RemoveBehInstToPostTick(this),this._isPostTicking=!1)}},{key:"IsPostTicking",value:function(){return this._isPostTicking}},{key:"GetDebuggerProperties",value:function(){return[]}},{key:"AddDOMMessageHandler",value:function(e,t){this._runtime.AddDOMComponentMessageHandler(this._domComponentId,e,t)}},{key:"OnSpriteFrameChanged",value:function(e,t){}},{key:"SaveToJson",value:function(){return null}},{key:"LoadFromJson",value:function(e){}},{key:"GetPropertyValueByIndex",value:function(e){}},{key:"SetPropertyValueByIndex",value:function(e,t){}},{key:"OffsetPropertyValueByIndex",value:function(e,t){if(0!==t){var n=this.GetPropertyValueByIndex(e)
|
||
if("number"!=typeof n)throw Error("expected number")
|
||
this.SetPropertyValueByIndex(e,n+t)}}},{key:"SetPropertyColorOffsetValueByIndex",value:function(e,t,n,r){}},{key:"CallAction",value:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
e.call.apply(e,[this].concat(n))}},{key:"CallExpression",value:function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;t>r;r++)n[r-1]=arguments[r]
|
||
return e.call.apply(e,[this].concat(n))}},{key:"GetScriptInterfaceClass",value:function(){return null}}]),t}(_C128.DefendedBase)
|
||
var _C129=self.C3
|
||
_C129.Plugins={},_C129.Behaviors={},_C129.PluginManager=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e,r._allPlugins=[],r._pluginsByCtor=new Map,r._systemPlugin=null,r._allBehaviors=[],r._behaviorsByCtor=new Map,r._solidBehavior=null,r._jumpthruBehavior=null,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"CreatePlugin",value:function(e){var t=this._runtime.GetObjectReference(e[0])
|
||
if(!t)throw Error("missing plugin")
|
||
_C129.AddCommonACEs(e,t)
|
||
var n=_C129.New(t,{runtime:this._runtime,isSingleGlobal:e[1],isWorld:e[2],isRotatable:e[5],hasEffects:e[8],mustPredraw:e[9],supportsSceneGraph:e[13],supportsMesh:e[14]})
|
||
n.OnCreate(),this._allPlugins.push(n),this._pluginsByCtor.set(t,n)}},{key:"CreateSystemPlugin",value:function(){this._systemPlugin=_C129.New(_C129.Plugins.System,{runtime:this._runtime,isSingleGlobal:!0}),this._systemPlugin.OnCreate()}},{key:"CreateBehavior",value:function(e){var t=this._runtime.GetObjectReference(e[1])
|
||
if(!t)throw Error("missing behavior")
|
||
var n=_C129.New(t,{runtime:this._runtime})
|
||
n.OnCreate(),this._allBehaviors.push(n),this._behaviorsByCtor.set(t,n),!this._solidBehavior&&_C129.Behaviors.solid&&n instanceof _C129.Behaviors.solid?this._solidBehavior=n:!this._jumpthruBehavior&&_C129.Behaviors.jumpthru&&n instanceof _C129.Behaviors.jumpthru&&(this._jumpthruBehavior=n)}},{key:"GetPluginByConstructorFunction",value:function(e){return this._pluginsByCtor.get(e)||null}},{key:"HasBehaviorByConstructorFunction",value:function(e){return this._behaviorsByCtor.has(e)}},{key:"GetBehaviorByConstructorFunction",value:function(e){return this._behaviorsByCtor.get(e)||null}},{key:"GetSystemPlugin",value:function(){return this._systemPlugin}},{key:"GetSolidBehavior",value:function(){return this._solidBehavior}},{key:"GetJumpthruBehavior",value:function(){return this._jumpthruBehavior}}]),t}(_C129.DefendedBase)
|
||
var _C130=self.C3,allImageInfos=new Set
|
||
_C130.ImageInfo=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),e._url="",e._size=0,e._pixelFormat=0,e._offsetX=0,e._offsetY=0,e._width=0,e._height=0,e._hasMetaData=!1,e._imageAsset=null,e._textureState="",e._rcTex=_C130.New(_C130.Rect),allImageInfos.add(_assertThisInitialized(e)),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.ReleaseTexture(),this._imageAsset=null,allImageInfos["delete"](this)}},{key:"LoadData",value:function(e){this._url=e[0],this._size=e[1],this._pixelFormat=e[2],this._offsetX=e[3],this._offsetY=e[4],this._width=e[5],this._height=e[6],this._hasMetaData=!0}},{key:"LoadAnimationFrameData",value:function(e){this._url=e[0],this._size=e[1],this._offsetX=e[2],this._offsetY=e[3],this._width=e[4],this._height=e[5],this._pixelFormat=e[11],this._hasMetaData=!0}},{key:"LoadDynamicAsset",value:function(e,t){if(this._imageAsset)throw Error("already loaded asset")
|
||
this._url=t
|
||
var n={}
|
||
return _C130.IsAbsoluteURL(t)&&(n.loadPolicy="remote"),this.LoadAsset(e,n),this._imageAsset.Load()}},{key:"ReplaceWith",value:function(e){if(e===this)throw Error("cannot replace with self")
|
||
this.ReleaseTexture(),this._url=e._url,this._size=e._size,this._pixelFormat=e._pixelFormat,this._offsetX=e._offsetX,this._offsetY=e._offsetY,this._width=e._width,this._height=e._height,this._hasMetaData=e._hasMetaData,this._imageAsset=e._imageAsset,this._textureState=e._textureState,this._rcTex=e._rcTex}},{key:"GetURL",value:function(){return this._url}},{key:"GetSize",value:function(){return this._size}},{key:"GetPixelFormat",value:function(){return this._pixelFormat}},{key:"GetOffsetX",value:function(){return this._offsetX}},{key:"GetOffsetY",value:function(){return this._offsetY}},{key:"GetWidth",value:function(){return this._width}},{key:"GetHeight",value:function(){return this._height}},{key:"GetSheetWidth",value:function(){return this._imageAsset.GetWidth()}},{key:"GetSheetHeight",value:function(){return this._imageAsset.GetHeight()}},{key:"LoadAsset",value:function(e,t){if(this._imageAsset)throw Error("already got asset")
|
||
t=Object.assign({},t,{url:this.GetURL(),size:this.GetSize()}),this._imageAsset=e.LoadImage(t)}},{key:"IsLoaded",value:function(){return this._imageAsset&&this._imageAsset.IsLoaded()}},{key:"LoadStaticTexture",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this._imageAsset){n.next=2
|
||
break}throw Error("no asset")
|
||
case 2:if(!this._textureState){n.next=4
|
||
break}throw Error("already loaded texture")
|
||
case 4:return this._textureState="loading",n.next=7,this._imageAsset.LoadStaticTexture(e,t)
|
||
case 7:if(r=n.sent){n.next=11
|
||
break}return this._textureState="",n.abrupt("return",null)
|
||
case 11:return this._textureState="loaded",this._hasMetaData||(this._width=r.GetWidth(),this._height=r.GetHeight(),this._hasMetaData=!0),this._rcTex.set(this._offsetX,this._offsetY,this._offsetX+this._width,this._offsetY+this._height),this._rcTex.divide(r.GetWidth(),r.GetHeight()),n.abrupt("return",r)
|
||
case 16:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"ReleaseTexture",value:function(){this._textureState&&(this._imageAsset&&this._imageAsset.ReleaseTexture(),this._textureState="",this._rcTex.set(0,0,0,0))}},{key:"GetTexture",value:function(){return this._imageAsset?this._imageAsset.GetTexture():null}},{key:"GetTexRect",value:function(){return this._rcTex}},{key:"ExtractImageToCanvas",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this._imageAsset.LoadToDrawable()
|
||
case 2:return e=n.sent,t=_C130.CreateCanvas(this._width,this._height),r=t.getContext("2d"),r.drawImage(e,this._offsetX,this._offsetY,this._width,this._height,0,0,this._width,this._height),n.abrupt("return",t)
|
||
case 7:case"end":return n.stop()}},n,this)}))
|
||
return e}()}],[{key:"OnWebGLContextLost",value:function(){var e,t=_createForOfIteratorHelper(allImageInfos)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n._textureState="",n._rcTex.set(0,0,0,0)}}catch(r){t.e(r)}finally{t.f()}}}]),t}(_C130.DefendedBase)
|
||
var _C131=self.C3
|
||
_C131.AnimationInfo=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._name=e[0],r._speed=e[1],r._isLooping=!!e[2],r._repeatCount=e[3],r._repeatTo=e[4],r._isPingPong=!!e[5],r._sid=e[6],r._frames=e[7].map(function(e){return _C131.New(_C131.AnimationFrameInfo,e)}),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){var e,t=_createForOfIteratorHelper(this._frames)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C131.clearArray(this._frames)}},{key:"LoadAllAssets",value:function(e){var t,n=_createForOfIteratorHelper(this._frames)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.GetImageInfo().LoadAsset(e)}}catch(a){n.e(a)}finally{n.f()}}},{key:"LoadAllTextures",value:function(e,t){return Promise.all(this._frames.map(function(n){return n.GetImageInfo().LoadStaticTexture(e,t)}))}},{key:"ReleaseAllTextures",value:function(){var e,t=_createForOfIteratorHelper(this._frames)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.GetImageInfo().ReleaseTexture()}}catch(r){t.e(r)}finally{t.f()}}},{key:"GetName",value:function(){return this._name}},{key:"GetSID",value:function(){return this._sid}},{key:"GetFrameCount",value:function(){return this._frames.length}},{key:"GetFrames",value:function(){return this._frames}},{key:"GetFrameAt",value:function(e){if(e=Math.floor(e),0>e||e>=this._frames.length)throw new RangeError("invalid frame")
|
||
return this._frames[e]}},{key:"GetSpeed",value:function(){return this._speed}},{key:"IsLooping",value:function(){return this._isLooping}},{key:"GetRepeatCount",value:function(){return this._repeatCount}},{key:"GetRepeatTo",value:function(){return this._repeatTo}},{key:"IsPingPong",value:function(){return this._isPingPong}}]),t}(_C131.DefendedBase)
|
||
var _C132=self.C3
|
||
_C132.AnimationFrameInfo=function(e){function t(e){var r
|
||
_classCallCheck(this,t),r=n.call(this),r._imageInfo=_C132.New(_C132.ImageInfo),r._imageInfo.LoadAnimationFrameData(e),r._duration=e[6],r._origin=_C132.New(_C132.Vector2,e[7],e[8]),r._imagePoints=e[9].map(function(e){return _C132.New(_C132.ImagePoint,_assertThisInitialized(r),e)}),r._imagePointsByName=new Map
|
||
var a,i=_createForOfIteratorHelper(r._imagePoints)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
r._imagePointsByName.set(s.GetName().toLowerCase(),s)}}catch(o){i.e(o)}finally{i.f()}r._collisionPoly=null
|
||
var u=e[10]
|
||
return u.length>=6&&(r._collisionPoly=_C132.New(_C132.CollisionPoly,u)),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._collisionPoly&&(this._collisionPoly.Release(),this._collisionPoly=null),this._imageInfo.Release(),this._imageInfo=null}},{key:"GetImageInfo",value:function(){return this._imageInfo}},{key:"GetDuration",value:function(){return this._duration}},{key:"GetOriginX",value:function(){return this._origin.getX()}},{key:"GetOriginY",value:function(){return this._origin.getY()}},{key:"GetCollisionPoly",value:function(){return this._collisionPoly}},{key:"GetImagePointByName",value:function(e){return this._imagePointsByName.get(e.toLowerCase())||null}},{key:"GetImagePointByIndex",value:function(e){return e=Math.floor(e),0>e||e>=this._imagePoints.length?null:this._imagePoints[e]}},{key:"GetImagePointCount",value:function(){return this._imagePoints.length}}]),t}(_C132.DefendedBase)
|
||
var _C133=self.C3
|
||
_C133.ImagePoint=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._afi=e,a._name=r[0],a._pos=_C133.New(_C133.Vector2,r[1],r[2]),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){}},{key:"GetName",value:function(){return this._name}},{key:"GetX",value:function(){return this._pos.getX()}},{key:"GetY",value:function(){return this._pos.getY()}},{key:"GetVec2",value:function(){return this._pos}}]),t}(_C133.DefendedBase)
|
||
var _C134=self.C3,_C3Debugger=self.C3Debugger,IObjectClass=self.IObjectClass,_assert14=self.assert
|
||
_C134.ObjectClass=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this)
|
||
var s=e.GetObjectReference(a[1])
|
||
if(i._runtime=e,i._plugin=e.GetPluginManager().GetPluginByConstructorFunction(s),i._sdkType=null,i._instSdkCtor=s.Instance,i._index=r,i._sid=a[11],i._name=a[0],i._jsPropName=i._runtime.GetJsPropName(a[14]),i._isGlobal=!!a[9],i._isFamily=!!a[2],i._isOnLoaderLayout=!!a[10],i._instVars=a[3].map(function(t){return{sid:t[0],type:t[1],name:t[2],jsPropName:e.GetJsPropName(t[3])}}),i._behaviorsCount=a[4],i._effectsCount=a[5],i._isWorldType=i._plugin.IsWorldType(),i._effectList=null,i._collisionGrid=_C134.New(_C134.SparseGrid,e.GetOriginalViewportWidth(),e.GetOriginalViewportHeight()),i._anyCollisionCellChanged=!0,i._anyInstanceParallaxed=!1,i._familyMembers=null,i._familyMembersSet=null,i._familyIndex=-1,i._families=null,i._familiesSet=null,i._familyInstVarMap=null,i._familyBehaviorMap=null,i._familyEffectMap=null,i._isInContainer=!1,i._container=null,i._behaviorTypes=a[8].map(function(e){return _C134.BehaviorType.Create(_assertThisInitialized(i),e)}),i._behaviorTypesIncludingInherited=[],i._behaviorsByName=new Map,i._behaviorNameToIndex=new Map,i._usedBehaviorCtors=new Set,i._solStack=_C134.New(_C134.SolStack,_assertThisInitialized(i)),i._defaultInstanceData=null,i._defaultLayerIndex=0,i._isContained=!1,i._container=null,i._imageInfo=null,i._animations=null,i._animationsByName=null,i._animationsBySid=null,i._textureRefCount=0,i._savedData=new Map,i._unsavedData=new Map,i._instances=[],i._iidsStale=!0,i._plugin.HasEffects()&&(i._effectList=_C134.New(_C134.EffectList,_assertThisInitialized(i),a[12])),a[6]&&(i._imageInfo=_C134.New(_C134.ImageInfo),i._imageInfo.LoadData(a[6])),a[7]){i._animations=a[7].map(function(e){return _C134.New(_C134.AnimationInfo,e)}),i._animationsByName=new Map,i._animationsBySid=new Map
|
||
var o,u=_createForOfIteratorHelper(i._animations)
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value
|
||
i._animationsByName.set(l.GetName().toLowerCase(),l),i._animationsBySid.set(l.GetSID(),l)}}catch(c){u.e(c)}finally{u.f()}}i._isFamily?(i._familyMembers=[],i._familyMembersSet=new Set,i._familyIndex=i._runtime._GetNextFamilyIndex()):(i._families=[],i._familiesSet=new Set,i._familyInstVarMap=[],i._familyBehaviorMap=[],i._familyEffectMap=[]),i._sdkType=_C134.New(s.Type,_assertThisInitialized(i),a[15]),i._iObjectClass=null,i._instanceUserScriptClass=null,i._userScriptDispatcher=_C134.New(_C134.Event.Dispatcher)
|
||
var h=i._sdkType.GetScriptInterfaceClass()
|
||
if(h){if(i._iObjectClass=new h(_assertThisInitialized(i)),!(i._iObjectClass instanceof IObjectClass))throw new TypeError("script interface class must derive from IObjectClass")}else i._iObjectClass=new IObjectClass(_assertThisInitialized(i))
|
||
if(a[13]){var _=a[13]
|
||
if(_){var f=_[0],d=_[1]
|
||
i._sdkType.LoadTilemapData(f,d)}}return(!i._runtime.UsesLoaderLayout()||i._isFamily||i._isOnLoaderLayout||!i._isWorldType)&&i.OnCreate(),i._plugin.IsSingleGlobal()&&(i._plugin._SetSingleGlobalObjectClass(_assertThisInitialized(i)),i._CreateSingleGlobalInstance(a)),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){if(this._imageInfo&&(this._imageInfo.Release(),this._imageInfo=null),this._animations){var e,t=_createForOfIteratorHelper(this._animations)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C134.clearArray(this._animations),this._animationsByName.clear(),this._animationsBySid.clear()}this._solStack.Release(),this._solStack=null,this._savedData.clear(),this._unsavedData.clear(),this._container=null,this._runtime=null}},{key:"_LoadFamily",value:function(e){for(var t=1,n=e.length;n>t;++t){var r=this._runtime.GetObjectClassByIndex(e[t])
|
||
this._familyMembers.push(r),this._familyMembersSet.add(r),r._families.push(this),r._familiesSet.add(this)}}},{key:"_SetContainer",value:function(e){this._isInContainer=!0,this._container=e}},{key:"IsInContainer",value:function(){return this._isInContainer}},{key:"GetContainer",value:function(){return this._container}},{key:"_OnAfterCreate",value:function(){var e=0
|
||
if(!this._isFamily){var t,n=_createForOfIteratorHelper(this._families)
|
||
try{for(n.s();!(t=n.n()).done;){var r,a=t.value,i=_createForOfIteratorHelper(a.GetBehaviorTypes())
|
||
try{for(i.s();!(r=i.n()).done;){var s=r.value,o=s.GetName().toLowerCase()
|
||
this._behaviorsByName.set(o,s),this._behaviorNameToIndex.set(o,e),this._behaviorTypesIncludingInherited.push(s),++e}}catch(u){i.e(u)}finally{i.f()}}}catch(u){n.e(u)}finally{n.f()}}var l,c=_createForOfIteratorHelper(this.GetBehaviorTypes())
|
||
try{for(c.s();!(l=c.n()).done;){var h=l.value,_=h.GetName().toLowerCase()
|
||
this._behaviorsByName.set(_,h),this._behaviorNameToIndex.set(_,e),this._behaviorTypesIncludingInherited.push(h),++e}}catch(u){c.e(u)}finally{c.f()}var f,d=_createForOfIteratorHelper(this._behaviorTypesIncludingInherited)
|
||
try{for(d.s();!(f=d.n()).done;){var p=f.value
|
||
this._usedBehaviorCtors.add(p.GetBehavior().constructor)}}catch(u){d.e(u)}finally{d.f()}if(!this._isFamily&&this._families.length){var v=this._runtime.GetFamilyCount()
|
||
_C134.extendArray(this._familyInstVarMap,v,0),_C134.extendArray(this._familyBehaviorMap,v,0),_C134.extendArray(this._familyEffectMap,v,0)
|
||
var m,y=[],g=0,C=0,S=0,k=_createForOfIteratorHelper(this._families)
|
||
try{for(k.s();!(m=k.n()).done;){var I=m.value,T=I.GetFamilyIndex()
|
||
this._familyInstVarMap[T]=g,g+=I.GetInstanceVariablesCount(),this._familyBehaviorMap[T]=C,C+=I.GetBehaviorTypesCount(),this._familyEffectMap[T]=S,S+=I.GetEffectTypesCount()
|
||
var G=I.GetEffectList()
|
||
if(G&&this._effectList){var b,A=_createForOfIteratorHelper(G.GetAllEffectTypes())
|
||
try{for(A.s();!(b=A.n()).done;){var E=b.value
|
||
y.push(E.Clone(this._effectList))}}catch(u){A.e(u)}finally{A.f()}}}}catch(u){k.e(u)}finally{k.f()}this._effectList&&this._effectList.PrependEffectTypes(y)}}},{key:"_CreateSingleGlobalInstance",value:function(e){var t=this._runtime._GetNewUID(),n=_C134.New(_C134.Instance,{runtime:this._runtime,objectType:this,uid:t})
|
||
n._CreateSdkInstance(e[16],[]),this._runtime._MapInstanceByUID(t,n),this._instances.push(n)}},{key:"GetSdkType",value:function(){return this._sdkType}},{key:"IsOnLoaderLayout",value:function(){return this._isOnLoaderLayout}},{key:"OnCreate",value:function(){this._isFamily||this._sdkType.OnCreate()}},{key:"HasLoadedTextures",value:function(){return this._textureRefCount>0}},{key:"LoadTextures",value:function(e){return this._isFamily?Promise.resolve():(this._textureRefCount++,1===this._textureRefCount?this._sdkType.LoadTextures(e)||Promise.resolve():Promise.resolve())}},{key:"ReleaseTextures",value:function(){if(!this._isFamily){if(this._textureRefCount--,this._textureRefCount<0)throw Error("released textures too many times")
|
||
0===this._textureRefCount&&this._sdkType.ReleaseTextures()}}},{key:"OnDynamicTextureLoadComplete",value:function(){if(this._isFamily)throw Error("not applicable to family")
|
||
this._sdkType.OnDynamicTextureLoadComplete()}},{key:"PreloadTexturesWithInstances",value:function(e){return this._isFamily?Promise.resolve():this._sdkType.PreloadTexturesWithInstances(e)}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetPlugin",value:function(){return this._plugin}},{key:"GetInstanceSdkCtor",value:function(){return this._instSdkCtor}},{key:"GetName",value:function(){return this._name}},{key:"GetJsPropName",value:function(){return this._jsPropName}},{key:"GetIndex",value:function(){return this._index}},{key:"GetSID",value:function(){return this._sid}},{key:"IsFamily",value:function(){return this._isFamily}},{key:"IsGlobal",value:function(){return this._isGlobal}},{key:"IsWorldType",value:function(){return this._isWorldType}},{key:"GetFamilyIndex",value:function(){return this._familyIndex}},{key:"GetBehaviorTypes",value:function(){return this._behaviorTypes}},{key:"GetBehaviorTypesCount",value:function(){return this._behaviorsCount}},{key:"UsesBehaviorByCtor",value:function(e){return e&&this._usedBehaviorCtors.has(e)}},{key:"GetInstanceVariablesCount",value:function(){return this._instVars.length}},{key:"GetInstanceVariableSIDs",value:function(){return this._instVars.map(function(e){return e.sid})}},{key:"GetInstanceVariableIndexBySID",value:function(e){return this._instVars.findIndex(function(t){return t.sid===e})}},{key:"GetInstanceVariableIndexByName",value:function(e){return this._instVars.findIndex(function(t){return t.name===e})}},{key:"_GetAllInstanceVariableNames",value:function(){return this._instVars.map(function(e){return e.name})}},{key:"_GetAllInstanceVariableJsPropNames",value:function(){return this._instVars.map(function(e){return e.jsPropName})}},{key:"GetInstanceVariableType",value:function(e){if(e=Math.floor(e),0>e||e>=this._instVars.length)throw new RangeError("invalid instance variable index")
|
||
return this._instVars[e].type}},{key:"GetInstanceVariableName",value:function(e){if(e=Math.floor(e),0>e||e>=this._instVars.length)throw new RangeError("invalid instance variable index")
|
||
return this._instVars[e].name}},{key:"GetEffectTypesCount",value:function(){return this._effectsCount}},{key:"GetBehaviorTypesIncludingInherited",value:function(){return this._behaviorTypesIncludingInherited}},{key:"GetBehaviorTypeByName",value:function(e){return this._behaviorsByName.get(e.toLowerCase())||null}},{key:"GetBehaviorIndexByName",value:function(e){var t=this._behaviorNameToIndex.get(e.toLowerCase())
|
||
return void 0===t?-1:t}},{key:"GetEffectList",value:function(){return this._effectList}},{key:"HasEffects",value:function(){return this._plugin.HasEffects()}},{key:"UsesEffects",value:function(){return this._effectList&&this._effectList.HasAnyEffectType()}},{key:"GetSolStack",value:function(){return this._solStack}},{key:"GetCurrentSol",value:function(){return this._solStack.GetCurrentSol()}},{key:"GetImageInfo",value:function(){return this._imageInfo}},{key:"SetDefaultInstanceData",value:function(e){this._defaultInstanceData=e}},{key:"GetDefaultInstanceData",value:function(){return this._defaultInstanceData}},{key:"_SetDefaultLayerIndex",value:function(e){this._defaultLayerIndex=e}},{key:"GetDefaultLayerIndex",value:function(){return this._defaultLayerIndex}},{key:"GetAnimations",value:function(){return this._animations}},{key:"GetAnimationCount",value:function(){return this._animations.length}},{key:"GetFamilies",value:function(){return this._families}},{key:"BelongsToFamily",value:function(e){return this._familiesSet.has(e)}},{key:"GetFamilyMembers",value:function(){return this._familyMembers}},{key:"FamilyHasMember",value:function(e){return this._familyMembersSet.has(e)}},{key:"GetFamilyBehaviorOffset",value:function(e){return this._familyBehaviorMap[e]}},{key:"GetFamilyInstanceVariableOffset",value:function(e){return this._familyInstVarMap[e]}},{key:"GetAnimationByName",value:function(e){if(!this._animations)throw Error("no animations")
|
||
return this._animationsByName.get(e.toLowerCase())||null}},{key:"GetAnimationBySID",value:function(e){if(!this._animations)throw Error("no animations")
|
||
return this._animationsBySid.get(e)||null}},{key:"GetFirstAnimationFrame",value:function(){if(!this._animations)throw Error("no animations")
|
||
return this._animations[0].GetFrameAt(0)}},{key:"GetDefaultInstanceSize",value:function(){if(this._animations){var e=this.GetFirstAnimationFrame().GetImageInfo()
|
||
return[e.GetWidth(),e.GetHeight()]}return this._imageInfo?[this._imageInfo.GetWidth(),this._imageInfo.GetHeight()]:[100,100]}},{key:"GetSingleGlobalInstance",value:function(){if(!this._plugin.IsSingleGlobal())throw Error("not a single-global plugin")
|
||
return this._instances[0]}},{key:"GetInstances",value:function(){return this._instances}},{key:"instances",value:_regeneratorRuntime().mark(function r(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.delegateYield(this._instances,"t0",1)
|
||
case 1:case"end":return e.stop()}},r,this)})},{key:"instancesIncludingPendingCreate",value:_regeneratorRuntime().mark(function a(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:return r.delegateYield(this._instances,"t0",1)
|
||
case 1:e=_createForOfIteratorHelper(this._runtime._GetInstancesPendingCreate()),r.prev=2,e.s()
|
||
case 4:if((t=e.n()).done){r.next=11
|
||
break}if(n=t.value,n.GetObjectClass()!==this){r.next=9
|
||
break}return r.next=9,n
|
||
case 9:r.next=4
|
||
break
|
||
case 11:r.next=16
|
||
break
|
||
case 13:r.prev=13,r.t1=r["catch"](2),e.e(r.t1)
|
||
case 16:return r.prev=16,e.f(),r.finish(16)
|
||
case 19:case"end":return r.stop()}},a,this,[[2,13,16,19]])})},{key:"GetInstanceCount",value:function(){return this._instances.length}},{key:"_AddInstance",value:function(e){this._instances.push(e)}},{key:"_SetIIDsStale",value:function(){this._iidsStale=!0}},{key:"_UpdateIIDs",value:function(){if(this._iidsStale&&!this._isFamily){for(var e=this._instances,t=0,n=e.length;n>t;++t)e[t]._SetIID(t)
|
||
var r,a=this._runtime._GetInstancesPendingCreate(),i=_createForOfIteratorHelper(a)
|
||
try{for(i.s();!(r=i.n()).done;){var s=r.value
|
||
s.GetObjectClass()===this&&s._SetIID(t++)}}catch(o){i.e(o)}finally{i.f()}this._iidsStale=!1}}},{key:"GetInstanceByIID",value:function(e){var t=this._instances
|
||
if(e<t.length)return t[e]
|
||
e-=t.length
|
||
var n,r=this._runtime._GetInstancesPendingCreate(),a=_createForOfIteratorHelper(r)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
if(i.GetObjectClass()===this){if(0===e)return i;--e}}}catch(s){a.e(s)}finally{a.f()}return null}},{key:"GetFirstPicked",value:function(e){if(e&&e.IsInContainer()&&e.GetObjectClass()!==this){var t,n=_createForOfIteratorHelper(e.siblings())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.GetObjectClass()===this)return r}}catch(a){n.e(a)}finally{n.f()}}var i=this.GetCurrentSol().GetInstances()
|
||
return i.length?i[0]:null}},{key:"GetPairedInstance",value:function(e){var t=this.GetCurrentSol().GetInstances()
|
||
return t.length?t[e.GetIID()%t.length]:null}},{key:"allCorrespondingInstances",value:_regeneratorRuntime().mark(function i(e,t){var n,r,a,s,o,u,l,c,h,_,f,d
|
||
return _regeneratorRuntime().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:n=this.GetCurrentSol().GetInstances(),r=n.length,a=t.GetCurrentSol(),s=t.GetCurrentSol().GetInstances(),o=s.length,u=e.GetIID(),(t.IsFamily()||!a.IsSelectAll())&&(u=s.indexOf(e)),l=Math.ceil(r/o),c=r%o,h=0,_=0,0===c||c>u?(h=u*l,_=l):(h=c*l+(u-c)*(l-1),_=l-1),f=h,d=h+_
|
||
case 13:if(!(d>f)){i.next=19
|
||
break}return i.next=16,n[f]
|
||
case 16:++f,i.next=13
|
||
break
|
||
case 19:case"end":return i.stop()}},i,this)})},{key:"FinishCondition",value:function(e){this._sdkType.FinishCondition(e)}},{key:"ApplySolToContainer",value:function(){if(this._isInContainer&&!this._isFamily){this._UpdateIIDs()
|
||
var e,t=this.GetCurrentSol(),n=t._GetOwnInstances(),r=t.IsSelectAll(),a=this._runtime.GetCurrentEventStackFrame(),i=a&&a.GetCurrentEvent()&&a.GetCurrentEvent().IsOrBlock(),s=_createForOfIteratorHelper(this._container.objectTypes())
|
||
try{for(s.s();!(e=s.n()).done;){var o=e.value
|
||
if(o!==this){o._UpdateIIDs()
|
||
var u=o.GetCurrentSol()
|
||
if(u._SetSelectAll(r),!r){var l=u._GetOwnInstances()
|
||
_C134.clearArray(l)
|
||
var c,h=_createForOfIteratorHelper(n)
|
||
try{for(h.s();!(c=h.n()).done;){var _=c.value
|
||
l.push(o.GetInstanceByIID(_.GetIID()))}}catch(f){h.e(f)}finally{h.f()}if(i){var d=t._GetOwnElseInstances(),p=u._GetOwnElseInstances()
|
||
_C134.clearArray(p)
|
||
var v,m=_createForOfIteratorHelper(d)
|
||
try{for(m.s();!(v=m.n()).done;){var y=v.value
|
||
p.push(o.GetInstanceByIID(y.GetIID()))}}catch(f){m.e(f)}finally{m.f()}}}}}}catch(f){s.e(f)}finally{s.f()}}}},{key:"_TruncateContainerSols",value:function(e,t){var n,r=_createForOfIteratorHelper(this.GetContainer().objectTypes())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value,i=a.GetCurrentSol()
|
||
e?_C134.truncateArray(i._GetOwnElseInstances(),t):_C134.truncateArray(i._GetOwnInstances(),t)}}catch(s){r.e(s)}finally{r.f()}}},{key:"_GetCollisionCellGrid",value:function(){return this._collisionGrid}},{key:"_SetAnyCollisionCellChanged",value:function(e){this._anyCollisionCellChanged=!!e}},{key:"_SetAnyInstanceParallaxed",value:function(e){this._anyInstanceParallaxed=!!e}},{key:"IsAnyInstanceParallaxed",value:function(){return this._anyInstanceParallaxed}},{key:"_UpdateAllCollisionCells",value:function(){if(this._anyCollisionCellChanged&&this._isWorldType){var e,t=_createForOfIteratorHelper(this._instances)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.GetWorldInfo()._UpdateCollisionCell()}}catch(r){t.e(r)}finally{t.f()}var a,i=_createForOfIteratorHelper(this._runtime._GetInstancesPendingCreate())
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
s.GetObjectClass()===this&&s.GetWorldInfo()._UpdateCollisionCell()}}catch(r){i.e(r)}finally{i.f()}this._anyCollisionCellChanged=!1}}},{key:"GetSavedDataMap",value:function(){return this._savedData||(this._savedData=new Map),this._savedData}},{key:"GetUnsavedDataMap",value:function(){return this._unsavedData||(this._unsavedData=new Map),this._unsavedData}},{key:"HasSolidBehavior",value:function(){return this.UsesBehaviorByCtor(_C134.Behaviors.solid)}},{key:"HasNoSaveBehavior",value:function(){return this.UsesBehaviorByCtor(_C134.Behaviors.NoSave)}},{key:"HasPersistBehavior",value:function(){return this.UsesBehaviorByCtor(_C134.Behaviors.Persist)}},{key:"_SaveToJson",value:function(){var e={instances:this._instances.map(function(e){return e.SaveToJson()})}
|
||
return this._savedData&&this._savedData.size&&(e.ex=_C134.ToSuperJSON(this._savedData)),e}},{key:"_LoadFromJson",value:function(e){this._savedData&&(this._savedData.clear(),this._savedData=null)
|
||
var t=e.ex
|
||
t&&(this._savedData=_C134.FromSuperJSON(t))
|
||
for(var n=this._instances,r=e.instances,a=0,i=Math.min(n.length,r.length);i>a;++a)n[a].LoadFromJson(r[a])
|
||
for(var s=r.length,o=n.length;o>s;++s)this._runtime.DestroyInstance(n[s])
|
||
for(var u=n.length,l=r.length;l>u;++u){var c=r[u],h=null
|
||
if(!this.IsWorldType()||(h=this._runtime.GetMainRunningLayout().GetLayerBySID(c.w.l))){var _=this._runtime.CreateInstanceFromData(this._defaultInstanceData||this,h,!1,0,0,!0)
|
||
_.LoadFromJson(c)}}this._SetIIDsStale()}},{key:"GetIObjectClass",value:function(){return this._iObjectClass}},{key:"UserScriptDispatcher",value:function(){return this._userScriptDispatcher}},{key:"_GetUserScriptInstanceClass",value:function(){return this._instanceUserScriptClass}},{key:"_SetUserScriptInstanceClass",value:function(e){this._instanceUserScriptClass=e}},{key:"DispatchUserScriptEvent",value:function(e){var t=this._runtime,n=t.IsDebug()&&!t.GetEventSheetManager().IsInEventEngine()
|
||
n&&_C3Debugger.StartMeasuringScriptTime(),this._userScriptDispatcher.dispatchEvent(e),n&&_C3Debugger.AddScriptTime()}}],[{key:"Create",value:function(e,t,n){return _C134.New(_C134.ObjectClass,e,t,n)}}]),t}(_C134.DefendedBase)
|
||
var _C135=self.C3
|
||
_C135.Container=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this),a._runtime=e,a._objectTypes=r
|
||
var i,s=_createForOfIteratorHelper(a._objectTypes)
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
o._SetContainer(_assertThisInitialized(a))}}catch(u){s.e(u)}finally{s.f()}return a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._runtime=null}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetObjectTypes",value:function(){return this._objectTypes}},{key:"objectTypes",value:function(){return this._objectTypes}},{key:"HasAnyWorldType",value:function(){return this._objectTypes.some(function(e){return e.IsWorldType()})}}]),t}(_C135.DefendedBase)
|
||
var _C136=self.C3,_C3Debugger2=self.C3Debugger,_IInstance2=self.IInstance,_EMPTY_ARRAY=[],nextPuid=0,savedDataMaps=new WeakMap,unsavedDataMaps=new WeakMap,FLAG_DESTROYED=1,FLAG_TILEMAP=2,FLAG_MUST_PREDRAW=4,FLAG_SOLID_ENABLED=8,FLAG_JUMPTHRU_ENABLED=16
|
||
_C136.Instance=function(e){function t(e){var r
|
||
_classCallCheck(this,t),r=n.call(this),r._runtime=e.runtime,r._objectType=e.objectType,r._worldInfo=null,r._sdkInst=null,r._iScriptInterface=null,r._iid=0,r._uid=e.uid,r._puid=nextPuid++,r._flags=0,r._instVarValues=_EMPTY_ARRAY,r._behaviorInstances=_EMPTY_ARRAY
|
||
var a=r._objectType.GetBehaviorTypesIncludingInherited()
|
||
a.length>0&&(r._behaviorInstances=a.map(function(e,t){return _C136.New(_C136.BehaviorInstance,{runtime:r._runtime,behaviorType:e,instance:_assertThisInitialized(r),index:t})})),r._siblings=r._objectType.IsInContainer()?[]:null,r._timeScale=-1,r._dispatcher=null
|
||
var i=r.GetPlugin()
|
||
if(i.MustPreDraw()&&(r._flags|=FLAG_MUST_PREDRAW),i.IsWorldType())if(r._worldInfo=_C136.New(_C136.WorldInfo,_assertThisInitialized(r),e.layer),e.worldData)r._worldInfo.Init(e.worldData)
|
||
else{r._worldInfo.InitNoData()
|
||
var s=r._objectType.GetDefaultInstanceSize(),o=_slicedToArray(s,2),u=o[0],l=o[1]
|
||
r._worldInfo.SetSize(u,l),r.GetObjectClass().UsesEffects()&&r._worldInfo.GetInstanceEffectList().LoadDefaultEffectParameters()}return e.instVarData?r._LoadInstanceVariableData(e.instVarData):r._LoadDefaultInstanceVariables(),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){if(this._iScriptInterface&&(this._iScriptInterface._Release(),this._iScriptInterface=null),this._behaviorInstances.length>0){var e,t=_createForOfIteratorHelper(this._behaviorInstances)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Release()}}catch(r){t.e(r)}finally{t.f()}_C136.clearArray(this._behaviorInstances)}this._sdkInst.Release(),this._sdkInst=null
|
||
var a=savedDataMaps.get(this)
|
||
a&&(a.clear(),savedDataMaps["delete"](this))
|
||
var i=unsavedDataMaps.get(this)
|
||
i&&(i.clear(),unsavedDataMaps["delete"](this)),this._siblings&&_C136.clearArray(this._siblings),this._dispatcher&&(this._dispatcher.Release(),this._dispatcher=null),this._runtime=null,this._objectType=null,this._instVarValues.length>0&&_C136.clearArray(this._instVarValues),this._worldInfo&&(this._worldInfo.Release(),this._worldInfo=null)}},{key:"_LoadInstanceVariableData",value:function(e){e.length>0&&(this._instVarValues=[],_C136.shallowAssignArray(this._instVarValues,e))}},{key:"_LoadDefaultInstanceVariables",value:function(){var e=this._objectType.GetInstanceVariablesCount()
|
||
if(0!==e){this._instVarValues=[]
|
||
for(var t=[0,0,""],n=0;e>n;++n)this._instVarValues.push(t[this._objectType.GetInstanceVariableType(n)])}}},{key:"_CreateSdkInstance",value:function(e,t){if(this._sdkInst)throw Error("already got sdk instance")
|
||
for(var n=0,r=this._behaviorInstances.length;r>n;++n){var a=this._behaviorInstances[n]
|
||
a._CreateSdkInstance(t?t[n]:null)}if(this._sdkInst=_C136.New(this._objectType.GetInstanceSdkCtor(),this,e),!(this._sdkInst instanceof _C136.SDKInstanceBase))throw Error("sdk type must derive from SDKInstanceBase")
|
||
for(var i=0,s=this._behaviorInstances.length;s>i;++i)this._behaviorInstances[i].PostCreate()
|
||
this._objectType._GetUserScriptInstanceClass()&&this._InitUserScriptInterface()}},{key:"GetSdkInstance",value:function(){return this._sdkInst}},{key:"GetWorldInfo",value:function(){return this._worldInfo}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetTimeScale",value:function(){return this._timeScale}},{key:"GetActiveTimeScale",value:function(){var e=this._timeScale
|
||
return-1===e?this.GetRuntime().GetTimeScale():e}},{key:"SetTimeScale",value:function(e){e=+e,(0>e||!isFinite(e))&&(e=0),this._timeScale=e}},{key:"RestoreTimeScale",value:function(){this._timeScale=-1}},{key:"Dispatcher",value:function(){return this._dispatcher||(this._dispatcher=_C136.New(_C136.Event.Dispatcher)),this._dispatcher}},{key:"Draw",value:function(e){this._sdkInst.Draw(e)}},{key:"OnCreate",value:function(e){this._sdkInst.OnCreate(e)}},{key:"_SetHasTilemap",value:function(){this._flags|=FLAG_TILEMAP}},{key:"HasTilemap",value:function(){return 0!==(this._flags&FLAG_TILEMAP)}},{key:"_MarkDestroyed",value:function(){this._flags|=FLAG_DESTROYED}},{key:"IsDestroyed",value:function(){return 0!==(this._flags&FLAG_DESTROYED)}},{key:"MustPreDraw",value:function(){return 0!==(this._flags&FLAG_MUST_PREDRAW)}},{key:"_IsSolidEnabled",value:function(){return 0!==(this._flags&FLAG_SOLID_ENABLED)}},{key:"_SetSolidEnabled",value:function(e){e?this._flags|=FLAG_SOLID_ENABLED:this._flags&=~FLAG_SOLID_ENABLED}},{key:"_IsJumpthruEnabled",value:function(){return 0!==(this._flags&FLAG_JUMPTHRU_ENABLED)}},{key:"_SetJumpthruEnabled",value:function(e){e?this._flags|=FLAG_JUMPTHRU_ENABLED:this._flags&=~FLAG_JUMPTHRU_ENABLED}},{key:"SetFlag",value:function(e,t){e<<=16,t?this._flags|=e:this._flags&=~e}},{key:"GetFlag",value:function(e){return 0!==(this._flags&e<<16)}},{key:"GetCurrentImageInfo",value:function(){return this._sdkInst.GetCurrentImageInfo()}},{key:"GetCurrentSurfaceSize",value:function(){return this._sdkInst.GetCurrentSurfaceSize()}},{key:"GetCurrentTexRect",value:function(){return this._sdkInst.GetCurrentTexRect()}},{key:"GetImagePoint",value:function(e){return this._sdkInst.GetImagePoint(e)}},{key:"GetObjectClass",value:function(){return this._objectType}},{key:"BelongsToObjectClass",value:function(e){return e.IsFamily()?e.FamilyHasMember(this.GetObjectClass()):this.GetObjectClass()===e}},{key:"VerifySupportsSceneGraph",value:function(){if(!this.GetPlugin().SupportsSceneGraph())throw Error("object does not support scene graph")}},{key:"HasParent",value:function(){return null!==this.GetParent()}},{key:"GetParent",value:function(){var e=this.GetWorldInfo()
|
||
if(!e)return null
|
||
var t=e.GetParent()
|
||
return t?t.GetInstance():null}},{key:"GetTopParent",value:function(){var e=this.GetWorldInfo()
|
||
if(!e)return null
|
||
var t=e.GetTopParent()
|
||
return t?t.GetInstance():null}},{key:"parents",value:_regeneratorRuntime().mark(function r(){var e,t,n,a
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(e=this.GetWorldInfo()){r.next=3
|
||
break}return r.abrupt("return")
|
||
case 3:t=_createForOfIteratorHelper(e.parents()),r.prev=4,t.s()
|
||
case 6:if((n=t.n()).done){r.next=12
|
||
break}return a=n.value,r.next=10,a.GetInstance()
|
||
case 10:r.next=6
|
||
break
|
||
case 12:r.next=17
|
||
break
|
||
case 14:r.prev=14,r.t0=r["catch"](4),t.e(r.t0)
|
||
case 17:return r.prev=17,t.f(),r.finish(17)
|
||
case 20:case"end":return r.stop()}},r,this,[[4,14,17,20]])})},{key:"HasChildren",value:function(){var e=this.GetWorldInfo()
|
||
return e?e.HasChildren():!1}},{key:"GetChildren",value:function(){var e=this.GetWorldInfo()
|
||
return e?e.GetChildren().map(function(e){return e.GetInstance()}):[]}},{key:"children",value:_regeneratorRuntime().mark(function a(){var e,t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(e=this.GetWorldInfo()){a.next=3
|
||
break}return a.abrupt("return")
|
||
case 3:t=_createForOfIteratorHelper(e.children()),a.prev=4,t.s()
|
||
case 6:if((n=t.n()).done){a.next=12
|
||
break}return r=n.value,a.next=10,r.GetInstance()
|
||
case 10:a.next=6
|
||
break
|
||
case 12:a.next=17
|
||
break
|
||
case 14:a.prev=14,a.t0=a["catch"](4),t.e(a.t0)
|
||
case 17:return a.prev=17,t.f(),a.finish(17)
|
||
case 20:case"end":return a.stop()}},a,this,[[4,14,17,20]])})},{key:"allChildren",value:_regeneratorRuntime().mark(function i(){var e,t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(e=this.GetWorldInfo()){a.next=3
|
||
break}return a.abrupt("return")
|
||
case 3:t=_createForOfIteratorHelper(e.allChildren()),a.prev=4,t.s()
|
||
case 6:if((n=t.n()).done){a.next=12
|
||
break}return r=n.value,a.next=10,r.GetInstance()
|
||
case 10:a.next=6
|
||
break
|
||
case 12:a.next=17
|
||
break
|
||
case 14:a.prev=14,a.t0=a["catch"](4),t.e(a.t0)
|
||
case 17:return a.prev=17,t.f(),a.finish(17)
|
||
case 20:case"end":return a.stop()}},i,this,[[4,14,17,20]])})},{key:"GetChildCount",value:function(){var e=this.GetWorldInfo()
|
||
return e?e.GetChildCount():0}},{key:"GetChildAt",value:function(e){var t=this.GetWorldInfo()
|
||
if(!t)return null
|
||
var n=t.GetChildAt(e)
|
||
return n?n.GetInstance():null}},{key:"AddChild",value:function(e,t){this.VerifySupportsSceneGraph(),e.VerifySupportsSceneGraph(),this.GetWorldInfo().AddChild(e.GetWorldInfo(),t||{})}},{key:"RemoveChild",value:function(e){var t=this.GetWorldInfo()
|
||
t&&t.RemoveChild(e.GetWorldInfo())}},{key:"GetDestroyWithParent",value:function(){var e=this.GetWorldInfo()
|
||
return e?e.GetDestroyWithParent():!1}},{key:"SetupInitialSceneGraphConnections",value:function(){var e=this.GetWorldInfo()
|
||
if(e){var t=e.GetSceneGraphChildrenExportData()
|
||
if(t){var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value,i=this._runtime.GetInstanceByUID(a[2])
|
||
if(i){var s=a[3]
|
||
this.AddChild(i,{transformX:!!(s>>0&1),transformY:!!(s>>1&1),transformWidth:!!(s>>2&1),transformHeight:!!(s>>3&1),transformAngle:!!(s>>4&1),destroyWithParent:!!(s>>5&1),transformZElevation:!!(s>>6&1)})}}}catch(o){r.e(o)}finally{r.f()}}}}},{key:"IsInContainer",value:function(){return null!==this._siblings}},{key:"_AddSibling",value:function(e){this._siblings.push(e)}},{key:"GetSiblings",value:function(){return this._siblings}},{key:"HasSibling",value:function(e){return!!this.GetSibling(e)}},{key:"GetSibling",value:function(e){var t=this.siblings()
|
||
if(null===t||0===t.length)return!1
|
||
var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.GetObjectClass()===e)return a}}catch(i){r.e(i)}finally{r.f()}return null}},{key:"siblings",value:function(){return this._siblings}},{key:"SetSiblingsSinglePicked",value:function(){var e,t=_createForOfIteratorHelper(this.siblings())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.GetObjectClass().GetCurrentSol().SetSinglePicked(n)}}catch(r){t.e(r)}finally{t.f()}}},{key:"_PushSiblingsToSolInstances",value:function(){var e,t=_createForOfIteratorHelper(this.siblings())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.GetObjectClass().GetCurrentSol()._PushInstance(n)}}catch(r){t.e(r)}finally{t.f()}}},{key:"_SetSiblingsToSolInstancesIndex",value:function(e){var t,n=_createForOfIteratorHelper(this.siblings())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.GetObjectClass().GetCurrentSol()._GetOwnInstances()[e]=r}}catch(a){n.e(a)}finally{n.f()}}},{key:"_PushSiblingsToSolElseInstances",value:function(){var e,t=_createForOfIteratorHelper(this.siblings())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.GetObjectClass().GetCurrentSol()._PushElseInstance(n)}}catch(r){t.e(r)}finally{t.f()}}},{key:"_SetSiblingsToSolElseInstancesIndex",value:function(e){var t,n=_createForOfIteratorHelper(this.siblings())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
r.GetObjectClass().GetCurrentSol()._GetOwnElseInstances()[e]=r}}catch(a){n.e(a)}finally{n.f()}}},{key:"GetPlugin",value:function(){return this._objectType.GetPlugin()}},{key:"_SetIID",value:function(e){this._iid=e}},{key:"GetIID",value:function(){return this._objectType._UpdateIIDs(),this._iid}},{key:"GetUID",value:function(){return this._uid}},{key:"GetPUID",value:function(){return this._puid}},{key:"GetBehaviorInstances",value:function(){return this._behaviorInstances}},{key:"GetBehaviorInstanceFromCtor",value:function(e){if(!e)return null
|
||
var t,n=_createForOfIteratorHelper(this._behaviorInstances)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r.GetBehavior()instanceof e)return r}}catch(a){n.e(a)}finally{n.f()}return null}},{key:"GetBehaviorSdkInstanceFromCtor",value:function(e){if(!e)return null
|
||
var t=this.GetBehaviorInstanceFromCtor(e)
|
||
return t?t.GetSdkInstance():null}},{key:"GetBehaviorIndexBySID",value:function(e){for(var t=this._behaviorInstances,n=0,r=t.length;r>n;++n)if(t[n].GetBehaviorType().GetSID()===e)return n
|
||
return-1}},{key:"GetAllInstanceVariableValues",value:function(){return this._instVarValues}},{key:"_GetAllInstanceVariableNames",value:function(){return this._objectType._GetAllInstanceVariableNames()}},{key:"GetInstanceVariableCount",value:function(){return this._instVarValues.length}},{key:"GetInstanceVariableValue",value:function(e){e=0|e
|
||
var t=this._instVarValues
|
||
if(0>e||e>=t.length)throw new RangeError("invalid instance variable")
|
||
return t[e]}},{key:"_GetInstanceVariableValueUnchecked",value:function(e){return this._instVarValues[e]}},{key:"_GetInstanceVariableTypedValue",value:function(e){var t=this._instVarValues[e]
|
||
return 0===this._objectType.GetInstanceVariableType(e)?!!t:t}},{key:"SetInstanceVariableValue",value:function(e,t){e=0|e
|
||
var n=this._instVarValues
|
||
if(0>e||e>=n.length)throw new RangeError("invalid instance variable")
|
||
var r=this._objectType.GetInstanceVariableType(e)
|
||
switch(r){case 0:n[e]=t?1:0
|
||
break
|
||
case 1:n[e]="number"==typeof t?t:parseFloat(t)
|
||
break
|
||
case 2:n[e]="string"==typeof t?t:""+t
|
||
break
|
||
default:throw Error("unknown instance variable type")}}},{key:"SetInstanceVariableOffset",value:function(e,t){if(0!==t){e=0|e
|
||
var n=this._instVarValues
|
||
if(0>e||e>=n.length)throw new RangeError("invalid instance variable")
|
||
var r=n[e]
|
||
if("number"!=typeof r)throw"boolean"==typeof r?Error("can not set offset of boolean variable"):"string"==typeof r?Error("can not set offset of string variable"):Error("unknown instance variable type")
|
||
"number"==typeof t?n[e]+=t:n[e]+=parseFloat(t)}}},{key:"GetSavedDataMap",value:function(){var e=savedDataMaps.get(this)
|
||
return e?e:(e=new Map,savedDataMaps.set(this,e),e)}},{key:"GetUnsavedDataMap",value:function(){var e=unsavedDataMaps.get(this)
|
||
return e?e:(e=new Map,unsavedDataMaps.set(this,e),e)}},{key:"_HasAnyCreateDestroyHandler",value:function(e){var t=this.GetObjectClass()
|
||
if(t.UserScriptDispatcher().HasAnyHandlerFor(e))return!0
|
||
var n,r=_createForOfIteratorHelper(t.GetFamilies())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.UserScriptDispatcher().HasAnyHandlerFor(e))return!0}}catch(i){r.e(i)}finally{r.f()}return this._runtime.UserScriptDispatcher().HasAnyHandlerFor(e)?!0:!1}},{key:"_TriggerOnCreatedOnSelfAndRelated",value:function(){this._TriggerOnCreated()
|
||
var e=this.GetWorldInfo(),t=new Set
|
||
if(e&&e.HasChildren()){var n,r=_createForOfIteratorHelper(this.allChildren())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(t.add(a),a.IsInContainer()){var i,s=_createForOfIteratorHelper(a.siblings())
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
t.add(o)}}catch(u){s.e(u)}finally{s.f()}}}}catch(u){r.e(u)}finally{r.f()}}if(this.IsInContainer()){var l,c=_createForOfIteratorHelper(this.siblings())
|
||
try{for(c.s();!(l=c.n()).done;){var h=l.value
|
||
t.add(h)}}catch(u){c.e(u)}finally{c.f()}}var _,f=_createForOfIteratorHelper(t.values())
|
||
try{for(f.s();!(_=f.n()).done;){var d=_.value
|
||
d._TriggerOnCreated()}}catch(u){f.e(u)}finally{f.f()}}},{key:"_TriggerOnCreated",value:function(){if(this._HasAnyCreateDestroyHandler("instancecreate")){var e=this.GetObjectClass(),t=new _C136.Event("instancecreate")
|
||
t.instance=this.GetInterfaceClass(),e.DispatchUserScriptEvent(t)
|
||
var n,r=_createForOfIteratorHelper(e.GetFamilies())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
a.DispatchUserScriptEvent(t)}}catch(i){r.e(i)}finally{r.f()}this._runtime.DispatchUserScriptEvent(t)}this._runtime.Trigger(this.GetPlugin().constructor.Cnds.OnCreated,this,null)}},{key:"_TriggerOnDestroyed",value:function(){this._runtime.Trigger(this.GetPlugin().constructor.Cnds.OnDestroyed,this,null)}},{key:"_FireDestroyedScriptEvents",value:function(e){if(this._iScriptInterface){var t=new _C136.Event("destroy")
|
||
t.isEndingLayout=e,this.DispatchUserScriptEvent(t)}if(this._HasAnyCreateDestroyHandler("instancedestroy")){var n=this.GetObjectClass(),r=new _C136.Event("instancedestroy")
|
||
r.instance=this.GetInterfaceClass(),r.isEndingLayout=e,n.DispatchUserScriptEvent(r)
|
||
var a,i=_createForOfIteratorHelper(n.GetFamilies())
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
s.DispatchUserScriptEvent(r)}}catch(o){i.e(o)}finally{i.f()}this._runtime.DispatchUserScriptEvent(r)}}},{key:"_GetDebuggerProperties",value:function(){return this._sdkInst.GetDebuggerProperties()}},{key:"SaveToJson",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"full",t={}
|
||
if("full"===e?t.uid=this.GetUID():t.c3=!0,"visual-state"!==e){var n=savedDataMaps.get(this)
|
||
if(n&&n.size&&(t.ex=_C136.ToSuperJSON(n)),-1!==this.GetTimeScale()&&(t.mts=this.GetTimeScale()),this._objectType.GetInstanceVariablesCount()>0){for(var r={},a=this._objectType.GetInstanceVariableSIDs(),i=0,s=this._instVarValues.length;s>i;++i)r[""+a[i]]=this._instVarValues[i]
|
||
t.ivs=r}if(this._behaviorInstances.length){var o,u={},l=_createForOfIteratorHelper(this._behaviorInstances)
|
||
try{for(l.s();!(o=l.n()).done;){var c=o.value,h=c.SaveToJson()
|
||
h&&(u[""+c.GetBehaviorType().GetSID()]=h)}}catch(_){l.e(_)}finally{l.f()}t.behs=u}}this._worldInfo&&(t.w=this._worldInfo._SaveToJson())
|
||
var f=this._sdkInst.SaveToJson()
|
||
return f&&(t.data=f),t}},{key:"LoadFromJson",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"full"
|
||
if("full"===t)this._uid=e.uid
|
||
else if(!e.c3)return
|
||
if("visual-state"!==t){var n=savedDataMaps.get(this)
|
||
n&&(n.clear(),savedDataMaps["delete"](this))
|
||
var r=e.ex
|
||
r&&(n=_C136.FromSuperJSON(r),savedDataMaps.set(this,n)),this._timeScale=e.hasOwnProperty("mts")?e.mts:-1
|
||
var a=e.ivs
|
||
if(a)for(var i=0,s=Object.entries(a);i<s.length;i++){var o=_slicedToArray(s[i],2),u=o[0],l=o[1],c=parseInt(u,10),h=this._objectType.GetInstanceVariableIndexBySID(c)
|
||
if(!(0>h||h>=this._instVarValues.length)){var _=l
|
||
null===_&&(_=NaN),this._instVarValues[h]=_}}}if(this.GetPlugin().IsWorldType()){var f=e.w,d=f.l
|
||
if(this._worldInfo.GetLayer().GetSID()!==d){var p=this._worldInfo.GetLayer(),v=p.GetLayout().GetLayerBySID(d)
|
||
v?(this._worldInfo._SetLayer(v),p._RemoveInstance(this,!0),v._AddInstance(this,!0),v.SetZIndicesChanged(),this._worldInfo.SetBboxChanged()):"full"===t&&this._runtime.DestroyInstance(this)}this._worldInfo._LoadFromJson(f)}if("visual-state"!==t){var m=e.behs
|
||
if(m)for(var y=0,g=Object.entries(m);y<g.length;y++){var C=_slicedToArray(g[y],2),S=C[0],k=C[1],I=parseInt(S,10),T=this.GetBehaviorIndexBySID(I)
|
||
0>T||T>=this._behaviorInstances.length||this._behaviorInstances[T].LoadFromJson(k)}}var G=e.data
|
||
G&&this._sdkInst.LoadFromJson(G)}},{key:"GetInterfaceClass",value:function(){return this._iScriptInterface||this._InitUserScriptInterface()}},{key:"_InitUserScriptInterface",value:function(){var e=this._worldInfo?self.IWorldInstance:_IInstance2,t=this._sdkInst.GetScriptInterfaceClass(),n=this._objectType._GetUserScriptInstanceClass(),r=n||t||e
|
||
if(_IInstance2._Init(this),this._iScriptInterface=new r,_IInstance2._Init(null),t&&!(this._iScriptInterface instanceof e))throw new TypeError("script interface class '".concat(t.name,"' does not extend the right base class '").concat(e.name,"'"))
|
||
if(n){var a=t||e
|
||
if(!(this._iScriptInterface instanceof a))throw new TypeError("setInstanceClass(): class '".concat(n.name,"' does not extend the right base class '").concat(a.name,"'"))}return this._iScriptInterface}},{key:"_GetInstVarsScriptDescriptor",value:function(e){if(0!==this._instVarValues.length){for(var t={},n=this._objectType._GetAllInstanceVariableJsPropNames(),r=0,a=n.length;a>r;++r)t[n[r]]={configurable:!1,enumerable:!0,get:_C136.Instance.prototype._GetInstanceVariableTypedValue.bind(this,r),set:_C136.Instance.prototype.SetInstanceVariableValue.bind(this,r)}
|
||
var i=Object.create(Object.prototype,t)
|
||
e.instVars={value:i,writable:!1}}}},{key:"_GetBehaviorsScriptDescriptor",value:function(e){var t=this._behaviorInstances
|
||
if(0!==t.length){var n,r={},a=_createForOfIteratorHelper(t)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value
|
||
r[i.GetBehaviorType().GetJsPropName()]={value:i.GetScriptInterface(),writable:!1}}}catch(s){a.e(s)}finally{a.f()}var o=Object.create(Object.prototype,r)
|
||
e.behaviors={value:o,writable:!1}}}},{key:"DispatchUserScriptEvent",value:function(e){e.instance=this.GetInterfaceClass()
|
||
var t=this._runtime,n=t.IsDebug()&&!t.GetEventSheetManager().IsInEventEngine()
|
||
n&&_C3Debugger2.StartMeasuringScriptTime(),this.GetInterfaceClass().dispatchEvent(e),n&&_C3Debugger2.AddScriptTime()}}]),t}(_C136.DefendedBase)
|
||
var _C137=self.C3
|
||
_C137.SceneGraphInfo=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._owner=e,r._parent=null,r._children=[],r._myStartWidth=e.GetWidth(),r._myStartHeight=e.GetHeight(),r._parentStartAngle=0,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._parent=null,_C137.clearArray(this._children)}},{key:"SetParent",value:function(e){this._parent=e,this._parentStartAngle=e?e.GetAngle():0}},{key:"GetParent",value:function(){return this._parent}},{key:"HasChildren",value:function(){return this._children.length>0}},{key:"GetChildren",value:function(){return this._children}},{key:"_GetStartWidth",value:function(){return this._myStartWidth}},{key:"_GetStartHeight",value:function(){return this._myStartHeight}},{key:"GetParentScaleX",value:function(){return this._owner.GetTransformWithParentWidth()?this._parent.GetWidth()/this._parent._GetSceneGraphInfo()._GetStartWidth():1}},{key:"GetParentScaleY",value:function(){return this._owner.GetTransformWithParentHeight()?this._parent.GetHeight()/this._parent._GetSceneGraphInfo()._GetStartHeight():1}},{key:"GetParentStartAngle",value:function(){return this._parentStartAngle}},{key:"_SaveToJson",value:function(){return{sw:this._myStartWidth,sh:this._myStartHeight,psa:this._parentStartAngle,c:this._children.map(function(e){var t=""
|
||
return e.GetTransformWithParentX()&&(t+="x"),e.GetTransformWithParentY()&&(t+="y"),e.GetTransformWithParentWidth()&&(t+="w"),e.GetTransformWithParentHeight()&&(t+="h"),e.GetTransformWithParentAngle()&&(t+="a"),e.GetTransformWithParentZElevation()&&(t+="z"),e.GetDestroyWithParent()&&(t+="d"),{uid:e.GetInstance().GetUID(),f:t}})}}},{key:"_LoadFromJson",value:function(e){this._myStartWidth=e.sw,this._myStartHeight=e.sh,this._parentStartAngle=e.psa}},{key:"_OnAfterLoad",value:function(e){var t,n=this._owner,r=n.GetRuntime(),a=_createForOfIteratorHelper(e.c)
|
||
try{for(a.s();!(t=a.n()).done;){var i=t.value,s=i.uid,o=r.GetInstanceByUID(s),u=o.GetWorldInfo(),l=i.f,c={}
|
||
c.transformX=l.includes("x"),c.transformY=l.includes("y"),c.transformWidth=l.includes("w"),c.transformHeight=l.includes("h"),c.transformAngle=l.includes("a"),c.transformZElevation=l.includes("z"),c.destroyWithParent=l.includes("d"),n.AddChild(u,c)}}catch(h){a.e(h)}finally{a.f()}}}]),t}(_C137.DefendedBase)
|
||
var _C138=self.C3,_tempRect=_C138.New(_C138.Rect),_tempQuad2=_C138.New(_C138.Quad),bboxChangeEvent=_C138.New(_C138.Event,"bboxchange",!1),_tempColor3=_C138.New(_C138.Color,0,0,0,0),tempCollisionPoly=_C138.New(_C138.CollisionPoly),DEFAULT_COLOR=_C138.New(_C138.Color,1,1,1,1),DEFAULT_RENDER_CELLS=_C138.New(_C138.Rect,0,0,-1,-1),DEFAULT_COLLISION_CELLS=_C138.New(_C138.Rect,0,0,-1,-1),VALID_SET_MESH_POINT_MODES=new Set(["absolute","relative"]),_EMPTY_ARRAY2=[],enableUpdateRendererStateGroup=!0,FLAG_IS_VISIBLE=1,FLAG_BBOX_CHANGED=2,FLAG_ENABLE_BBOX_CHANGED_EVENT=4,FLAG_COLLISION_ENABLED=8,FLAG_COLLISION_CELL_CHANGED=16,FLAG_SOLID_FILTER_INCLUSIVE=32,FLAG_HAS_ANY_ACTIVE_EFFECT=64,FLAG_IS_ROTATABLE=128,FLAG_DESTROY_WITH_PARENT=256,FLAG_TRANSFORM_WITH_PARENT_X=512,FLAG_TRANSFORM_WITH_PARENT_Y=1024,FLAG_TRANSFORM_WITH_PARENT_W=2048,FLAG_TRANSFORM_WITH_PARENT_H=4096,FLAG_TRANSFORM_WITH_PARENT_A=8192,FLAG_TRANSFORM_WITH_PARENT_Z_ELEVATION=16384,MASK_ALL_SCENE_GRAPH_FLAGS=FLAG_DESTROY_WITH_PARENT|FLAG_TRANSFORM_WITH_PARENT_X|FLAG_TRANSFORM_WITH_PARENT_Y|FLAG_TRANSFORM_WITH_PARENT_W|FLAG_TRANSFORM_WITH_PARENT_H|FLAG_TRANSFORM_WITH_PARENT_A|FLAG_TRANSFORM_WITH_PARENT_Z_ELEVATION,FLAG_MESH_CHANGED=32768,FLAG_PHYSICS_BODY_CHANGED=65536,FLAG_SIN_COS_ANGLE_CHANGED=1<<17,FLAG_BLEND_MODE_BIT_OFFSET=26,FLAG_BLEND_MODE_MASK=31<<FLAG_BLEND_MODE_BIT_OFFSET
|
||
_C138.WorldInfo=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._inst=e,a._objectClass=e.GetObjectClass(),a._runtime=e.GetRuntime(),a._layer=r,a._zIndex=-1,a._flags=FLAG_IS_VISIBLE|FLAG_BBOX_CHANGED|FLAG_COLLISION_ENABLED|FLAG_COLLISION_CELL_CHANGED|FLAG_MESH_CHANGED|FLAG_PHYSICS_BODY_CHANGED,a._objectClass.GetPlugin().IsRotatable()&&(a._flags|=FLAG_IS_ROTATABLE),a._x=NaN,a._y=NaN,a._zElevation=NaN,a._w=NaN,a._h=NaN,a._a=NaN,a._sinA=NaN,a._cosA=NaN,a._ox=NaN,a._oy=NaN,a._boundingBox=_C138.New(_C138.Rect),a._boundingQuad=_C138.New(_C138.Quad),a._collisionCells=DEFAULT_COLLISION_CELLS,a._renderCells=DEFAULT_RENDER_CELLS,a._sourceCollisionPoly=null,a._transformedPolyInfo=null,a._solidFilterTags=null,a._color=DEFAULT_COLOR,a._colorPremultiplied=DEFAULT_COLOR,a._stateGroup=null,a._instanceEffectList=null,a._inst.GetObjectClass().UsesEffects()&&(a._instanceEffectList=_C138.New(_C138.InstanceEffectList,a._inst,_assertThisInitialized(a))),a._sceneGraphInfo=null,a._sceneGraphFlagsExportData=NaN,a._sceneGraphChildrenExportData=null,a._meshInfo=null,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){if(this._stateGroup&&(this._runtime.GetRenderer().ReleaseStateGroup(this._stateGroup),this._stateGroup=null),this._sourceCollisionPoly=null,this._transformedPolyInfo&&(this._transformedPolyInfo.poly.Release(),this._transformedPolyInfo=null),this._solidFilterTags&&(this._solidFilterTags.clear(),this._solidFilterTags=null),this.ReleaseMesh(),this.HasParent()&&this.GetParent().RemoveChild(this),this.HasChildren()){var e,t=_toConsumableArray(this.GetChildren()),n=_createForOfIteratorHelper(t)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
this.RemoveChild(r)}}catch(a){n.e(a)}finally{n.f()}}this._ReleaseSceneGraphInfo(),this._inst=null,this._objectClass=null,this._runtime=null,this._layer=null}},{key:"Init",value:function(e){enableUpdateRendererStateGroup=!1,this.SetXY(e[0],e[1]),this.SetZElevation(e[2]),this.SetSize(e[3],e[4]),this.IsRotatable()?this.SetAngle(e[6]):this._a=0,_tempColor3.setFromJSON(e[7]),this._SetColor(_tempColor3),this.SetOriginX(e[8]),this.SetOriginY(e[9]),this.SetBlendMode(e[10]),this._instanceEffectList&&this._instanceEffectList._LoadEffectParameters(e[12]),e[14]&&(this._sceneGraphFlagsExportData=e[14][0],this._sceneGraphChildrenExportData=e[14][1]),enableUpdateRendererStateGroup=!0,this._UpdateRendererStateGroup()}},{key:"InitNoData",value:function(){this._x=0,this._y=0,this._zElevation=0,this._w=0,this._h=0,this._a=0,this._sinA=0,this._cosA=1,this._ox=0,this._oy=0,this._UpdateRendererStateGroup()}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"GetInstance",value:function(){return this._inst}},{key:"_GetParentOffsetAngle",value:function(){return this.GetTransformWithParentAngle()?this.GetParent().GetAngle()-this._sceneGraphInfo.GetParentStartAngle():0}},{key:"SetX",value:function(e){if(e=+e,this.GetTransformWithParentX()){var t=this._sceneGraphInfo,n=e-this.GetX(),r=-this._GetParentOffsetAngle()
|
||
0===r?this._x+=n/t.GetParentScaleX():(this._x+=Math.cos(r)*n/t.GetParentScaleX(),this.GetTransformWithParentY()&&(this._y+=Math.sin(r)*n/t.GetParentScaleY()))}else this._x=e}},{key:"OffsetX",value:function(e){e=+e,this.GetTransformWithParentX()?this.SetX(this.GetX()+e):this._x+=e}},{key:"GetX",value:function(){if(this.GetTransformWithParentX()){var e=this._x,t=this._sceneGraphInfo,n=this.GetParent(),r=this._GetParentOffsetAngle()
|
||
return 0===r?e*=t.GetParentScaleX():(e=e*t.GetParentScaleX()*Math.cos(r),this.GetTransformWithParentY()&&(e-=this._y*t.GetParentScaleY()*Math.sin(r))),n.GetX()+e}return this._x}},{key:"SetY",value:function(e){if(e=+e,this.GetTransformWithParentY()){var t=this._sceneGraphInfo,n=e-this.GetY(),r=-this._GetParentOffsetAngle()
|
||
0===r?this._y+=n/t.GetParentScaleY():(this.GetTransformWithParentX()&&(this._x-=Math.sin(r)*n/t.GetParentScaleX()),this._y+=Math.cos(r)*n/t.GetParentScaleY())}else this._y=e}},{key:"OffsetY",value:function(e){e=+e,this.GetTransformWithParentY()?this.SetY(this.GetY()+e):this._y+=e}},{key:"GetY",value:function(){if(this.GetTransformWithParentY()){var e=this._y,t=this._sceneGraphInfo,n=this.GetParent(),r=this._GetParentOffsetAngle()
|
||
return 0===r?e*=t.GetParentScaleY():(e=e*t.GetParentScaleY()*Math.cos(r),this.GetTransformWithParentX()&&(e+=this._x*t.GetParentScaleX()*Math.sin(r))),n.GetY()+e}return this._y}},{key:"SetXY",value:function(e,t){if(e=+e,t=+t,this.GetTransformWithParentXOrY()){var n=this.GetTransformWithParentX(),r=this.GetTransformWithParentY(),a=this._sceneGraphInfo,i=e-this.GetX(),s=t-this.GetY(),o=-this._GetParentOffsetAngle()
|
||
if(0===o)n?this._x+=i/a.GetParentScaleX():this._x=e,r?this._y+=s/a.GetParentScaleY():this._y=t
|
||
else{var u=Math.sin(o),l=Math.cos(o)
|
||
n?r?this._x+=(l*i-u*s)/a.GetParentScaleX():this._x+=l*i/a.GetParentScaleX():this._x=e,r?n?this._y+=(u*i+l*s)/a.GetParentScaleY():this._y+=l*s/a.GetParentScaleY():this._y=t}}else this._x=e,this._y=t}},{key:"OffsetXY",value:function(e,t){e=+e,t=+t,this.GetTransformWithParentXOrY()?this.SetXY(this.GetX()+e,this.GetY()+t):(this._x+=e,this._y+=t)}},{key:"EqualsXY",value:function(e,t){return this.GetX()===e&&this.GetY()===t}},{key:"SetZElevation",value:function(e){if(e=+e,this.GetTransformWithParentZElevation()&&(e-=this.GetParent().GetZElevation()),this._zElevation!==e){this._zElevation=e,this._UpdateZElevation()
|
||
var t=this.GetLayer()
|
||
0!==this._zElevation&&t._SetAnyInstanceZElevated(),t.SetZIndicesChanged()}}},{key:"_UpdateZElevation",value:function(){if(this._UpdateRendererStateGroup(),this.HasChildren())for(var e=this.GetChildren(),t=0,n=e.length;n>t;t++){var r=e[t]
|
||
r.GetTransformWithParentZElevation()&&r._UpdateZElevation()}}},{key:"OffsetZElevation",value:function(e){this.SetZElevation(this.GetZElevation()+e)}},{key:"GetZElevation",value:function(){return this.GetTransformWithParentZElevation()?this.GetParent().GetZElevation()+this._zElevation:this._zElevation}},{key:"GetTotalZElevation",value:function(){return this.GetLayer().GetZElevation()+this.GetZElevation()}},{key:"SetWidth",value:function(e){e=+e,this.GetTransformWithParentWidth()?this._w*=e/this.GetWidth():this._w=e}},{key:"OffsetWidth",value:function(e){e=+e,this.GetTransformWithParentWidth()?this.SetWidth(this.GetWidth()+e):this._w+=e}},{key:"GetWidth",value:function(){return this.GetTransformWithParentWidth()?this.GetParent().GetWidth()*this._w:this._w}},{key:"SetHeight",value:function(e){e=+e,this.GetTransformWithParentHeight()?this._h*=e/this.GetHeight():this._h=e}},{key:"OffsetHeight",value:function(e){e=+e,this.GetTransformWithParentHeight()?this.SetHeight(this.GetHeight()+e):this._h+=e}},{key:"GetHeight",value:function(){return this.GetTransformWithParentHeight()?this.GetParent().GetHeight()*this._h:this._h}},{key:"SetSize",value:function(e,t){e=+e,t=+t,this.GetTransformWithParentWidth()?this._w*=e/this.GetWidth():this._w=e,this.GetTransformWithParentHeight()?this._h*=t/this.GetHeight():this._h=t}},{key:"GetSceneGraphScale",value:function(){if(this.HasParent()){var e=this._sceneGraphInfo
|
||
return Math.min(e.GetParentScaleX(),e.GetParentScaleY())}return 1}},{key:"IsRotatable",value:function(){return 0!==(this._flags&FLAG_IS_ROTATABLE)}},{key:"SetAngle",value:function(e){e=+e,this.IsRotatable()&&(this.GetTransformWithParentAngle()&&(e-=this.GetParent().GetAngle()),e=_C138.clampAngle(e),this._a!==e&&(this._a=e,this._MarkSinCosAngleChanged()))}},{key:"OffsetAngle",value:function(e){e=+e,0!==e&&this.IsRotatable()&&(this._a=_C138.clampAngle(this._a+e),this._MarkSinCosAngleChanged())}},{key:"_MarkSinCosAngleChanged",value:function(){if(this._flags|=FLAG_SIN_COS_ANGLE_CHANGED,this.HasChildren())for(var e=this.GetChildren(),t=0,n=e.length;n>t;t++)e[t]._MarkSinCosAngleChanged()}},{key:"GetAngle",value:function(){return this.GetTransformWithParentAngle()?_C138.clampAngle(this.GetParent().GetAngle()+this._a):this._a}},{key:"_MaybeUpdateSinCosAngle",value:function(){var e=this._flags
|
||
if(0!==(e&FLAG_SIN_COS_ANGLE_CHANGED)){var t=this.GetAngle()
|
||
this._sinA=Math.sin(t),this._cosA=Math.cos(t),this._flags=e&~FLAG_SIN_COS_ANGLE_CHANGED}}},{key:"GetSinAngle",value:function(){return this._MaybeUpdateSinCosAngle(),this._sinA}},{key:"GetCosAngle",value:function(){return this._MaybeUpdateSinCosAngle(),this._cosA}},{key:"SetOriginX",value:function(e){this._ox=+e}},{key:"OffsetOriginX",value:function(e){this._ox+=+e}},{key:"GetOriginX",value:function(){return this._ox}},{key:"SetOriginY",value:function(e){this._oy=+e}},{key:"OffsetOriginY",value:function(e){this._oy+=+e}},{key:"GetOriginY",value:function(){return this._oy}},{key:"_SetColor",value:function(e){this._color.equals(e)||(this._color===DEFAULT_COLOR?(this._color=_C138.New(_C138.Color,e),this._colorPremultiplied=_C138.New(_C138.Color,e),this._colorPremultiplied.premultiply()):e.equalsRgba(1,1,1,1)?(this._color=DEFAULT_COLOR,this._colorPremultiplied=DEFAULT_COLOR):(this._color.set(e),this._colorPremultiplied.set(e),this._colorPremultiplied.premultiply()),this._UpdateRendererStateGroup())}},{key:"SetOpacity",value:function(e){e=_C138.clamp(+e,0,1),this._color.a!==e&&(_tempColor3.copyRgb(this._color),_tempColor3.a=e,this._SetColor(_tempColor3))}},{key:"OffsetOpacity",value:function(e){this.SetOpacity(this.GetOpacity()+e)}},{key:"GetOpacity",value:function(){return this._color.a}},{key:"SetUnpremultipliedColor",value:function(e){this._color.equalsIgnoringAlpha(e)||(_tempColor3.copyRgb(e),_tempColor3.a=this._color.a,this._SetColor(_tempColor3))}},{key:"SetUnpremultipliedColorRGB",value:function(e,t,n){_tempColor3.setRgb(e,t,n),this.SetUnpremultipliedColor(_tempColor3)}},{key:"OffsetUnpremultipliedColorRGB",value:function(e,t,n){(0!==e||0!==t||0!==n)&&(_tempColor3.copyRgb(this._color),_tempColor3.r+=e,_tempColor3.g+=t,_tempColor3.b+=n,this.SetUnpremultipliedColor(_tempColor3))}},{key:"GetUnpremultipliedColor",value:function(){return this._color}},{key:"GetPremultipliedColor",value:function(){return this._colorPremultiplied}},{key:"GetDestroyWithParent",value:function(){return 0!==(this._flags&FLAG_DESTROY_WITH_PARENT)}},{key:"SetDestroyWithParent",value:function(e){this._SetFlag(FLAG_DESTROY_WITH_PARENT,e)}},{key:"GetTransformWithParentX",value:function(){return 0!==(this._flags&FLAG_TRANSFORM_WITH_PARENT_X)}},{key:"SetTransformWithParentX",value:function(e){this._SetFlag(FLAG_TRANSFORM_WITH_PARENT_X,e)}},{key:"GetTransformWithParentY",value:function(){return 0!==(this._flags&FLAG_TRANSFORM_WITH_PARENT_Y)}},{key:"GetTransformWithParentXOrY",value:function(){return 0!==(this._flags&(FLAG_TRANSFORM_WITH_PARENT_X|FLAG_TRANSFORM_WITH_PARENT_Y))}},{key:"SetTransformWithParentY",value:function(e){this._SetFlag(FLAG_TRANSFORM_WITH_PARENT_Y,e)}},{key:"GetTransformWithParentWidth",value:function(){return 0!==(this._flags&FLAG_TRANSFORM_WITH_PARENT_W)}},{key:"SetTransformWithParentWidth",value:function(e){this._SetFlag(FLAG_TRANSFORM_WITH_PARENT_W,e)}},{key:"GetTransformWithParentHeight",value:function(){return 0!==(this._flags&FLAG_TRANSFORM_WITH_PARENT_H)}},{key:"SetTransformWithParentHeight",value:function(e){this._SetFlag(FLAG_TRANSFORM_WITH_PARENT_H,e)}},{key:"GetTransformWithParentAngle",value:function(){return 0!==(this._flags&FLAG_TRANSFORM_WITH_PARENT_A)}},{key:"SetTransformWithParentAngle",value:function(e){this._SetFlag(FLAG_TRANSFORM_WITH_PARENT_A,e)}},{key:"GetTransformWithParentZElevation",value:function(){return 0!==(this._flags&FLAG_TRANSFORM_WITH_PARENT_Z_ELEVATION)}},{key:"SetTransformWithParentZElevation",value:function(e){this._SetFlag(FLAG_TRANSFORM_WITH_PARENT_Z_ELEVATION,e)}},{key:"_ClearAllSceneGraphFlags",value:function(){this._flags&=~MASK_ALL_SCENE_GRAPH_FLAGS}},{key:"AddChild",value:function(e,t){if(e!==this&&!e.HasParent()&&!this._HasChildRecursive(e)&&!this._HasAnyParent(e)){var n=e.GetX(),r=e.GetY(),a=e.GetWidth(),i=e.GetHeight(),s=e.GetAngle(),o=e.GetZElevation()
|
||
e._SetParent(this),e.SetTransformWithParentX(t.transformX),e.SetTransformWithParentY(t.transformY),e.SetTransformWithParentWidth(t.transformWidth),e.SetTransformWithParentHeight(t.transformHeight),e.SetTransformWithParentAngle(t.transformAngle),e.SetTransformWithParentZElevation(t.transformZElevation),e.SetDestroyWithParent(t.destroyWithParent),t.transformX&&(e._x=n-this.GetX()),t.transformY&&(e._y=r-this.GetY()),t.transformWidth&&(e._w=a/this.GetWidth()),t.transformHeight&&(e._h=i/this.GetHeight()),t.transformAngle&&(e._a=s-this.GetAngle()),t.transformZElevation&&(e._zElevation=o-this.GetZElevation()),this._AddChildToSceneGraphInfo(e),this.SetBboxChanged()}}},{key:"RemoveChild",value:function(e){if(e.GetParent()===this){var t=e.GetX(),n=e.GetY(),r=e.GetWidth(),a=e.GetHeight(),i=e.GetAngle(),s=e.GetZElevation()
|
||
e._SetParent(null),e._ClearAllSceneGraphFlags(),e.SetXY(t,n),e.SetSize(r,a),e.SetAngle(i),e.SetZElevation(s),this._RemoveChildFromSceneGraphInfo(e),this.SetBboxChanged()}}},{key:"_ResetAllSceneGraphState",value:function(){var e,t=_createForOfIteratorHelper(this.children())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
this.RemoveChild(n)}}catch(r){t.e(r)}finally{t.f()}var a=this.GetParent()
|
||
a&&a.RemoveChild(this),this._ClearAllSceneGraphFlags()}},{key:"HasParent",value:function(){return null!==this.GetParent()}},{key:"GetParent",value:function(){var e=this._sceneGraphInfo
|
||
return null!==e?e.GetParent():null}},{key:"GetTopParent",value:function(){for(var e=this;e.HasParent();)e=e.GetParent()
|
||
return e}},{key:"parents",value:_regeneratorRuntime().mark(function r(){var e
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:e=this.GetParent()
|
||
case 1:if(!e){t.next=7
|
||
break}return t.next=4,e
|
||
case 4:e=e.GetParent(),t.next=1
|
||
break
|
||
case 7:case"end":return t.stop()}},r,this)})},{key:"HasChild",value:function(e){return this.GetChildren().includes(e)}},{key:"HasChildren",value:function(){var e=this._sceneGraphInfo
|
||
return null!==e?e.HasChildren():!1}},{key:"GetChildren",value:function(){var e=this._sceneGraphInfo
|
||
return null!==e?e.GetChildren():_EMPTY_ARRAY2}},{key:"children",value:function(){return this.GetChildren()}},{key:"allChildren",value:_regeneratorRuntime().mark(function a(){var e,t,n
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(this.children()),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=10
|
||
break}return n=t.value,r.next=7,n
|
||
case 7:return r.delegateYield(n.allChildren(),"t0",8)
|
||
case 8:r.next=3
|
||
break
|
||
case 10:r.next=15
|
||
break
|
||
case 12:r.prev=12,r.t1=r["catch"](1),e.e(r.t1)
|
||
case 15:return r.prev=15,e.f(),r.finish(15)
|
||
case 18:case"end":return r.stop()}},a,this,[[1,12,15,18]])})},{key:"GetChildCount",value:function(){return this.GetChildren().length}},{key:"GetChildAt",value:function(e){var t=this.GetChildren()
|
||
return e=Math.floor(+e),0>e||e>=t.length?null:t[e]}},{key:"_CreateSceneGraphInfo",value:function(e){this._sceneGraphInfo||(this._sceneGraphInfo=_C138.New(_C138.SceneGraphInfo,this)),e&&this._sceneGraphInfo.SetParent(e)}},{key:"_GetSceneGraphInfo",value:function(){return this._sceneGraphInfo}},{key:"_ReleaseSceneGraphInfo",value:function(){this._sceneGraphInfo&&(this._sceneGraphInfo.Release(),this._sceneGraphInfo=null)}},{key:"_SetParent",value:function(e){e?(e._CreateSceneGraphInfo(null),this._CreateSceneGraphInfo(e)):(this._sceneGraphInfo&&this._sceneGraphInfo.SetParent(null),this.HasChildren()||this._ReleaseSceneGraphInfo())}},{key:"_HasAnyParent",value:function(e){if(!this.HasParent())return!1
|
||
var t=this.GetParent()
|
||
return t===e?!0:t._HasAnyParent(e)}},{key:"_HasChildRecursive",value:function(e){if(this.HasChild(e))return!0
|
||
var t,n=_createForOfIteratorHelper(this.GetChildren())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(r._HasChildRecursive(e))return!0}}catch(a){n.e(a)}finally{n.f()}return!1}},{key:"_AddChildToSceneGraphInfo",value:function(e){this._sceneGraphInfo.GetChildren().push(e)}},{key:"_RemoveChildFromSceneGraphInfo",value:function(e){var t=this._sceneGraphInfo.GetChildren(),n=t.indexOf(e);-1!==n&&t.splice(n,1),0!==t.length||this.HasParent()||this._ReleaseSceneGraphInfo(),e.HasChildren()||e._ReleaseSceneGraphInfo()}},{key:"GetSceneGraphChildrenExportData",value:function(){return this._sceneGraphChildrenExportData}},{key:"_UpdateRendererStateGroup",value:function(){if(enableUpdateRendererStateGroup){var e=this._runtime.GetRenderer()
|
||
this._stateGroup&&e.ReleaseStateGroup(this._stateGroup),this._stateGroup=e.AcquireStateGroup(e.GetTextureFillShaderProgram()||"<default>",this.GetBlendMode(),this._colorPremultiplied,this.GetZElevation())}}},{key:"GetRendererStateGroup",value:function(){return this._stateGroup}},{key:"HasDefaultColor",value:function(){return this._color===DEFAULT_COLOR}},{key:"SetBlendMode",value:function(e){if(e=0|e,0>e||e>31)throw new RangeError("invalid blend mode")
|
||
this.GetBlendMode()!==e&&(this._flags=this._flags&~FLAG_BLEND_MODE_MASK|e<<FLAG_BLEND_MODE_BIT_OFFSET,this._UpdateRendererStateGroup())}},{key:"GetBlendMode",value:function(){return(this._flags&FLAG_BLEND_MODE_MASK)>>FLAG_BLEND_MODE_BIT_OFFSET}},{key:"_SetLayer",value:function(e){this._layer=e,0!==this.GetZElevation()&&this._layer._SetAnyInstanceZElevated()}},{key:"GetLayer",value:function(){return this._layer}},{key:"GetLayout",value:function(){return this.GetLayer().GetLayout()}},{key:"_SetZIndex",value:function(e){this._zIndex=0|e}},{key:"GetZIndex",value:function(){return this._layer._UpdateZIndices(),this._zIndex}},{key:"_GetLastCachedZIndex",value:function(){return this._zIndex}},{key:"_SetFlag",value:function(e,t){t?this._flags|=e:this._flags&=~e}},{key:"IsVisible",value:function(){return 0!==(this._flags&FLAG_IS_VISIBLE)}},{key:"SetVisible",value:function(e){this._SetFlag(FLAG_IS_VISIBLE,e)}},{key:"IsCollisionEnabled",value:function(){return 0!==(this._flags&FLAG_COLLISION_ENABLED)}},{key:"SetCollisionEnabled",value:function(e){e=!!e,this.IsCollisionEnabled()!==e&&(this._SetFlag(FLAG_COLLISION_ENABLED,e),e?this.SetBboxChanged():this._RemoveFromCollisionCells())}},{key:"SetSolidCollisionFilter",value:function(e,t){if(this._SetFlag(FLAG_SOLID_FILTER_INCLUSIVE,e),this._solidFilterTags&&this._solidFilterTags.clear(),!t.trim())return void(this._solidFilterTags=null)
|
||
this._solidFilterTags||(this._solidFilterTags=new Set)
|
||
var n,r=_createForOfIteratorHelper(t.split(" "))
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
a&&this._solidFilterTags.add(a.toLowerCase())}}catch(i){r.e(i)}finally{r.f()}}},{key:"IsSolidCollisionAllowed",value:function(e){var t=0!==(this._flags&FLAG_SOLID_FILTER_INCLUSIVE),n=this._solidFilterTags
|
||
if(!e||!n)return!t
|
||
var r,a=_createForOfIteratorHelper(n)
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
if(e.has(i))return t}}catch(s){a.e(s)}finally{a.f()}return!t}},{key:"SetBboxChanged",value:function(){if(this._flags|=FLAG_BBOX_CHANGED|FLAG_COLLISION_CELL_CHANGED|FLAG_MESH_CHANGED,this._objectClass._SetAnyCollisionCellChanged(!0),this._runtime.UpdateRender(),this._layer.UsesRenderCells()&&(this.CalculateBbox(this._boundingBox,this._boundingQuad,!0),this._flags&=~FLAG_BBOX_CHANGED,this._UpdateRenderCell()),0!==(this._flags&FLAG_ENABLE_BBOX_CHANGED_EVENT)&&this._inst.Dispatcher().dispatchEvent(bboxChangeEvent),null!==this._sceneGraphInfo)for(var e=this._sceneGraphInfo.GetChildren(),t=0,n=e.length;n>t;++t)e[t].SetBboxChanged()}},{key:"CalculateBbox",value:function(e,t,n){var r=this.GetX(),a=this.GetY(),i=this.GetWidth(),s=this.GetHeight(),o=this.GetAngle()
|
||
e.setWH(r-this._ox*i,a-this._oy*s,i,s),n&&this.HasMesh()&&this._ExpandBboxForMesh(e),0===o?t.setFromRect(e):(e.offset(-r,-a),t.setFromRotatedRectPrecalc(e,this.GetSinAngle(),this.GetCosAngle()),t.offset(r,a),t.getBoundingBox(e)),e.normalize()}},{key:"_UpdateBbox",value:function(){var e=this._flags
|
||
0!==(e&FLAG_BBOX_CHANGED)&&(this.CalculateBbox(this._boundingBox,this._boundingQuad,!0),this._flags=e&~FLAG_BBOX_CHANGED)}},{key:"GetBoundingBox",value:function(){return this._UpdateBbox(),this._boundingBox}},{key:"GetBoundingQuad",value:function(){return this._UpdateBbox(),this._boundingQuad}},{key:"PixelRoundQuad",value:function(e){var t=this.GetX(),n=this.GetY(),r=Math.round(t)-t,a=Math.round(n)-n
|
||
return 0===r&&0===a?e:(_tempQuad2.copy(e),_tempQuad2.offset(r,a),_tempQuad2)}},{key:"OverwriteBoundingBox",value:function(e){this._boundingBox.copy(e),this._boundingQuad.setFromRect(this._boundingBox),this._flags&=~FLAG_BBOX_CHANGED,this._UpdateCollisionCell(),this._UpdateRenderCell()}},{key:"SetBboxChangeEventEnabled",value:function(e){this._SetFlag(FLAG_ENABLE_BBOX_CHANGED_EVENT,e)}},{key:"IsBboxChangeEventEnabled",value:function(){return 0!==(this._flags&FLAG_ENABLE_BBOX_CHANGED_EVENT)}},{key:"IsInViewport",value:function(e){return 0===this.GetZElevation()?e.intersectsRect(this.GetBoundingBox()):this._IsInViewport_ZElevated()}},{key:"_IsInViewport_ZElevated",value:function(){var e=this.GetLayer(),t=this.GetTotalZElevation()
|
||
return t>=e.GetCameraZ()?!1:(e.GetViewportForZ(t,_tempRect),_tempRect.intersectsRect(this.GetBoundingBox()))}},{key:"SetSourceCollisionPoly",value:function(e){this._sourceCollisionPoly=e,this._DiscardTransformedCollisionPoly(),this.HasMesh()&&(this._meshInfo.meshPoly=null)}},{key:"GetSourceCollisionPoly",value:function(){return this._sourceCollisionPoly}},{key:"HasOwnCollisionPoly",value:function(){return null!==this._sourceCollisionPoly||this.HasMesh()}},{key:"GetTransformedCollisionPoly",value:function(){return this._GetCustomTransformedCollisionPolyPrecalc(this.GetWidth(),this.GetHeight(),this.GetAngle(),this.GetSinAngle(),this.GetCosAngle())}},{key:"GetCustomTransformedCollisionPoly",value:function(e,t,n){var r=0,a=1
|
||
return 0!==n&&(r=Math.sin(n),a=Math.cos(n)),this._GetCustomTransformedCollisionPolyPrecalc(e,t,n,r,a)}},{key:"_GetCustomTransformedCollisionPolyPrecalc",value:function(e,t,n,r,a){var i=this._transformedPolyInfo
|
||
null===i&&(i={poly:_C138.New(_C138.CollisionPoly),width:NaN,height:NaN,angle:NaN},this._transformedPolyInfo=i)
|
||
var s=i.poly
|
||
if(i.width===e&&i.height===t&&i.angle===n)return s
|
||
var o=this._sourceCollisionPoly
|
||
if(this.HasMesh()){var u=this.GetOriginX(),l=this.GetOriginY(),c=this.GetSourceMesh(),h=this._meshInfo.meshPoly
|
||
h||(o?(tempCollisionPoly.copy(o),tempCollisionPoly.offset(u,l)):tempCollisionPoly.setDefaultPoints(),h=c.InsertPolyMeshVertices(tempCollisionPoly),this._meshInfo.meshPoly=h),c.TransformCollisionPoly(h,s),s.offset(-u,-l),s.transformPrecalc(e,t,r,a)}else o?(s.copy(o),s.transformPrecalc(e,t,r,a)):s.setFromQuad(this.GetBoundingQuad(),-this.GetX(),-this.GetY())
|
||
return i.width=e,i.height=t,i.angle=n,s}},{key:"_DiscardTransformedCollisionPoly",value:function(){this.SetPhysicsBodyChanged(!0)
|
||
var e=this._transformedPolyInfo
|
||
null!==e&&(e.width=NaN)}},{key:"CreateMesh",value:function(e,t){if(e=Math.floor(e),t=Math.floor(t),!this.GetInstance().GetPlugin().SupportsMesh())throw Error("object does not support mesh")
|
||
this.ReleaseMesh(),this._meshInfo={sourceMesh:_C138.New(_C138.Gfx.Mesh,e,t),transformedMesh:_C138.New(_C138.Gfx.Mesh,e,t),meshPoly:null}}},{key:"HasMesh",value:function(){return null!==this._meshInfo}},{key:"GetSourceMesh",value:function(){if(!this.HasMesh())throw Error("no mesh")
|
||
return this._meshInfo.sourceMesh}},{key:"GetTransformedMesh",value:function(){if(!this.HasMesh())throw Error("no mesh")
|
||
return this._meshInfo.transformedMesh}},{key:"SetMeshChanged",value:function(e){this._SetFlag(FLAG_MESH_CHANGED,e)}},{key:"IsMeshChanged",value:function(){return 0!==(this._flags&FLAG_MESH_CHANGED)}},{key:"SetPhysicsBodyChanged",value:function(e){this._SetFlag(FLAG_PHYSICS_BODY_CHANGED,e)}},{key:"IsPhysicsBodyChanged",value:function(){return 0!==(this._flags&FLAG_PHYSICS_BODY_CHANGED)}},{key:"_ExpandBboxForMesh",value:function(e){var t=this._meshInfo.sourceMesh,n=Math.min(t.GetMinX(),0),r=Math.min(t.GetMinY(),0),a=Math.max(t.GetMaxX(),1),i=Math.max(t.GetMaxY(),1),s=e.width(),o=e.height()
|
||
e.offsetLeft(n*s),e.offsetTop(r*o),e.offsetRight((a-1)*s),e.offsetBottom((i-1)*o)}},{key:"ReleaseMesh",value:function(){this._meshInfo&&(this._meshInfo.sourceMesh.Release(),this._meshInfo.transformedMesh.Release(),this._meshInfo=null,this._DiscardTransformedCollisionPoly())}},{key:"SetMeshPoint",value:function(e,t,n){e=Math.floor(e),t=Math.floor(t)
|
||
var r=n.mode||"absolute"
|
||
if(!VALID_SET_MESH_POINT_MODES.has(r))throw Error("invalid mode")
|
||
var a="relative"===r,i=n.x,s=n.y,o="number"==typeof n.u?n.u:a?0:-1,u="number"==typeof n.v?n.v:a?0:-1
|
||
if(!this.HasMesh())return!1
|
||
var l=this.GetSourceMesh(),c=l.GetMeshPointAt(e,t)
|
||
return null===c?!1:(a&&(i+=e/(l.GetHSize()-1),s+=t/(l.GetVSize()-1)),-1!==o||a?(a&&(o+=e/(l.GetHSize()-1)),o=_C138.clamp(o,0,1)):o=c.GetU(),-1!==u||a?(a&&(u+=t/(l.GetVSize()-1)),u=_C138.clamp(u,0,1)):u=c.GetV(),c.GetX()===i&&c.GetY()===s&&c.GetU()===o&&c.GetV()===u?!1:(c.SetX(i),c.SetY(s),c.SetU(o),c.SetV(u),this._DiscardTransformedCollisionPoly(),!0))}},{key:"HasTilemap",value:function(){return this._inst.HasTilemap()}},{key:"ContainsPoint",value:function(e,t){return this.GetBoundingBox().containsPoint(e,t)&&this.GetBoundingQuad().containsPoint(e,t)?this.HasTilemap()?this._inst.GetSdkInstance().TestPointOverlapTile(e,t):this.HasOwnCollisionPoly()?this.GetTransformedCollisionPoly().containsPoint(e-this.GetX(),t-this.GetY()):!0:!1}},{key:"_IsCollisionCellChanged",value:function(){return 0!==(this._flags&FLAG_COLLISION_CELL_CHANGED)}},{key:"_UpdateCollisionCell",value:function(){if(this._IsCollisionCellChanged()&&this.IsCollisionEnabled()){var e=this.GetBoundingBox(),t=this._objectClass._GetCollisionCellGrid(),n=this._collisionCells
|
||
if(_tempRect.set(t.XToCell(e.getLeft()),t.YToCell(e.getTop()),t.XToCell(e.getRight()),t.YToCell(e.getBottom())),!n.equals(_tempRect)){var r=this._inst
|
||
n===DEFAULT_COLLISION_CELLS?(t.Update(r,null,_tempRect),this._collisionCells=_C138.New(_C138.Rect,_tempRect)):(t.Update(r,n,_tempRect),n.copy(_tempRect)),this._flags&=~FLAG_COLLISION_CELL_CHANGED}}}},{key:"_RemoveFromCollisionCells",value:function(){var e=this._collisionCells
|
||
e!==DEFAULT_COLLISION_CELLS&&(this._objectClass._GetCollisionCellGrid().Update(this._inst,e,null),this._collisionCells=DEFAULT_COLLISION_CELLS)}},{key:"_UpdateRenderCell",value:function(){var e=this.GetLayer()
|
||
if(e.UsesRenderCells()){var t=e.GetRenderGrid(),n=this.GetBoundingBox(),r=this._renderCells
|
||
if(_tempRect.set(t.XToCell(n.getLeft()),t.YToCell(n.getTop()),t.XToCell(n.getRight()),t.YToCell(n.getBottom())),!r.equals(_tempRect)){var a=this._inst
|
||
r===DEFAULT_RENDER_CELLS?(t.Update(a,null,_tempRect),this._renderCells=_C138.New(_C138.Rect,_tempRect)):(t.Update(a,r,_tempRect),r.copy(_tempRect)),e.SetRenderListStale()}}}},{key:"_RemoveFromRenderCells",value:function(){var e=this._renderCells
|
||
e!==DEFAULT_RENDER_CELLS&&(this.GetLayer().GetRenderGrid().Update(this._inst,e,null),this._renderCells=DEFAULT_RENDER_CELLS)}},{key:"GetRenderCellRange",value:function(){return this._renderCells}},{key:"ZOrderMoveToTop",value:function(){var e=this._inst,t=this._layer,n=t._GetInstances()
|
||
n.length&&n[n.length-1]===e||(t._RemoveInstance(e,!1),t._AddInstance(e,!1),this._runtime.UpdateRender())}},{key:"ZOrderMoveToBottom",value:function(){var e=this._inst,t=this._layer,n=t._GetInstances()
|
||
n.length&&n[0]===e||(t._RemoveInstance(e,!1),t._PrependInstance(e,!1),this._runtime.UpdateRender())}},{key:"ZOrderMoveToLayer",value:function(e){var t=this._inst,n=this._layer
|
||
if(n.GetLayout()!==e.GetLayout())throw Error("layer from different layout")
|
||
e!==n&&(n._RemoveInstance(t,!0),this._SetLayer(e),e._AddInstance(t,!0),this._runtime.UpdateRender())}},{key:"ZOrderMoveAdjacentToInstance",value:function(e,t){var n=this._inst,r=this._layer
|
||
if(e.GetUID()!==n.GetUID()){var a=e.GetWorldInfo()
|
||
if(!a)throw Error("expected world instance")
|
||
var i=a.GetLayer(),s=!1
|
||
r.GetIndex()!==i.GetIndex()&&(r._RemoveInstance(n,!0),this._SetLayer(i),i._AddInstance(n,!0),s=!0)
|
||
var o=i.MoveInstanceAdjacent(n,e,!!t);(s||o)&&this._runtime.UpdateRender()}}},{key:"GetInstanceEffectList",value:function(){return this._instanceEffectList}},{key:"_SetHasAnyActiveEffect",value:function(e){this._SetFlag(FLAG_HAS_ANY_ACTIVE_EFFECT,e)}},{key:"HasAnyActiveEffect",value:function(){return 0!==(this._flags&FLAG_HAS_ANY_ACTIVE_EFFECT)}},{key:"_SaveToJson",value:function(){var e={x:this.GetX(),y:this.GetY(),w:this.GetWidth(),h:this.GetHeight(),l:this.GetLayer().GetSID(),zi:this.GetZIndex()}
|
||
0!==this.GetZElevation()&&(e.ze=this.GetZElevation()),0!==this.GetAngle()&&(e.a=this.GetAngle()),this.HasDefaultColor()||(e.c=this._color.toJSON()),.5!==this.GetOriginX()&&(e.oX=this.GetOriginX()),.5!==this.GetOriginY()&&(e.oY=this.GetOriginY()),0!==this.GetBlendMode()&&(e.bm=this.GetBlendMode()),this.IsVisible()||(e.v=this.IsVisible()),this.IsCollisionEnabled()||(e.ce=this.IsCollisionEnabled()),this.IsBboxChangeEventEnabled()&&(e.be=this.IsBboxChangeEventEnabled()),this._instanceEffectList&&(e.fx=this._instanceEffectList._SaveToJson())
|
||
var t=0!==(this._flags&FLAG_SOLID_FILTER_INCLUSIVE)
|
||
return t&&(e.sfi=t),this._solidFilterTags&&(e.sft=_toConsumableArray(this._solidFilterTags).join(" ")),this._sceneGraphInfo&&(e.sgi=this._sceneGraphInfo._SaveToJson()),e}},{key:"_LoadFromJson",value:function(e){if(enableUpdateRendererStateGroup=!1,this._ResetAllSceneGraphState(),this.SetX(e.x),this.SetY(e.y),this.SetWidth(e.w),this.SetHeight(e.h),this._SetZIndex(e.zi),this.SetZElevation(e.hasOwnProperty("ze")?e.ze:0),this.SetAngle(e.hasOwnProperty("a")?e.a:0),e.hasOwnProperty("c")?_tempColor3.setFromJSON(e.c):e.hasOwnProperty("o")?(_tempColor3.copyRgb(this._color),_tempColor3.a=e.o):_tempColor3.setRgba(1,1,1,1),this._SetColor(_tempColor3),this.SetOriginX(e.hasOwnProperty("oX")?e.oX:.5),this.SetOriginY(e.hasOwnProperty("oY")?e.oY:.5),this.SetBlendMode(e.hasOwnProperty("bm")?e.bm:0),this.SetVisible(e.hasOwnProperty("v")?e.v:!0),this.SetCollisionEnabled(e.hasOwnProperty("ce")?e.ce:!0),this.SetBboxChangeEventEnabled(e.hasOwnProperty("be")?e.be:!1),this.SetSolidCollisionFilter(e.hasOwnProperty("sfi")?e.sfi:!1,e.hasOwnProperty("sft")?e.sft:""),this._instanceEffectList&&e.hasOwnProperty("fx")&&this._instanceEffectList._LoadFromJson(e.fx),e.hasOwnProperty("sgi")){this._CreateSceneGraphInfo(null)
|
||
var t=this._sceneGraphInfo,n=e.sgi
|
||
t._LoadFromJson(n)
|
||
var r=this.GetRuntime().Dispatcher(),a=function i(){r.removeEventListener("afterload",i),t._OnAfterLoad(n)}
|
||
r.addEventListener("afterload",a)}this.SetBboxChanged(),enableUpdateRendererStateGroup=!0,this._UpdateRendererStateGroup()}}]),t}(_C138.DefendedBase)
|
||
var _C139=self.C3
|
||
_C139.BehaviorType=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this)
|
||
var i=e.GetRuntime(),s=i.GetPluginManager(),o=i.GetObjectReference(r[1])
|
||
return s.HasBehaviorByConstructorFunction(o)||s.CreateBehavior(r),a._runtime=i,a._objectClass=e,a._behavior=s.GetBehaviorByConstructorFunction(o),a._sdkType=null,a._instSdkCtor=o.Instance,a._sid=r[2],a._name=r[0],a._jsPropName=a._runtime.GetJsPropName(r[3]),a._sdkType=_C139.New(o.Type,_assertThisInitialized(a)),a.OnCreate(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._runtime=null,this._behavior=null,this._sdkType.Release(),this._sdkType=null,this._instSdkCtor=null}},{key:"GetSdkType",value:function(){return this._sdkType}},{key:"OnCreate",value:function(){this._sdkType.OnCreate()}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetObjectClass",value:function(){return this._objectClass}},{key:"GetBehavior",value:function(){return this._behavior}},{key:"GetInstanceSdkCtor",value:function(){return this._instSdkCtor}},{key:"GetName",value:function(){return this._name}},{key:"GetSID",value:function(){return this._sid}},{key:"GetJsPropName",value:function(){return this._jsPropName}}],[{key:"Create",value:function(e,t){return _C139.New(_C139.BehaviorType,e,t)}}]),t}(_C139.DefendedBase)
|
||
var _C140=self.C3,IBehaviorInstance=self.IBehaviorInstance
|
||
_C140.BehaviorInstance=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e.runtime,r._behaviorType=e.behaviorType,r._behavior=r._behaviorType.GetBehavior(),r._inst=e.instance,r._index=e.index,r._sdkInst=null,r._iScriptInterface=null,r._behavior._AddInstance(r._inst),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._iScriptInterface&&(this._iScriptInterface._Release(),this._iScriptInterface=null),this._behavior._RemoveInstance(this._inst),this._sdkInst.Release(),this._sdkInst=null,this._iScriptInterface=null,this._runtime=null,this._behaviorType=null,this._behavior=null,this._inst=null}},{key:"_CreateSdkInstance",value:function(e){if(this._sdkInst)throw Error("already got sdk instance")
|
||
this._sdkInst=_C140.New(this._behaviorType.GetInstanceSdkCtor(),this,e),this._InitScriptInterface()}},{key:"GetSdkInstance",value:function(){return this._sdkInst}},{key:"GetObjectInstance",value:function(){return this._inst}},{key:"GetRuntime",value:function(){return this._runtime}},{key:"GetBehaviorType",value:function(){return this._behaviorType}},{key:"GetBehavior",value:function(){return this._behavior}},{key:"_GetIndex",value:function(){return this._index}},{key:"PostCreate",value:function(){this._sdkInst.PostCreate()}},{key:"OnSpriteFrameChanged",value:function(e,t){this._sdkInst.OnSpriteFrameChanged(e,t)}},{key:"_GetDebuggerProperties",value:function(){return this._sdkInst.GetDebuggerProperties()}},{key:"SaveToJson",value:function(){return this._sdkInst.SaveToJson()}},{key:"LoadFromJson",value:function(e){return this._sdkInst.LoadFromJson(e)}},{key:"_InitScriptInterface",value:function(){var e=IBehaviorInstance,t=this._sdkInst.GetScriptInterfaceClass(),n=t||e
|
||
if(IBehaviorInstance._Init(this),this._iScriptInterface=new n,IBehaviorInstance._Init(null),t&&!(this._iScriptInterface instanceof e))throw new TypeError("script interface class '".concat(t.name,"' does not extend the right base class '").concat(e.name,"'"))}},{key:"GetScriptInterface",value:function(){return this._iScriptInterface}}],[{key:"SortByTickSequence",value:function(e,t){var n=e.GetObjectInstance(),r=t.GetObjectInstance(),a=n.GetObjectClass().GetIndex(),i=r.GetObjectClass().GetIndex()
|
||
if(a!==i)return a-i
|
||
var s=n.GetPUID(),o=r.GetPUID()
|
||
return s!==o?s-o:e.GetBehaviorInstance()._GetIndex()-t.GetBehaviorInstance()._GetIndex()}}]),t}(_C140.DefendedBase)
|
||
var _C141=self.C3
|
||
_C141.EffectList=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this),a._owner=e,a._allEffectTypes=[],a._activeEffectTypes=[],a._effectTypesByName=new Map,a._effectParams=[],a._preservesOpaqueness=!0
|
||
var i,s=_createForOfIteratorHelper(r)
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value,u=_C141.New(_C141.EffectType,_assertThisInitialized(a),o,a._allEffectTypes.length)
|
||
a._allEffectTypes.push(u),a._effectTypesByName.set(u.GetName().toLowerCase(),u),o.length>=3&&a._effectParams.push(a._LoadSingleEffectParameters(o[2]))}}catch(l){s.e(l)}finally{s.f()}return a.GetRuntime()._AddEffectList(_assertThisInitialized(a)),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C141.clearArray(this._allEffectTypes),_C141.clearArray(this._activeEffectTypes),this._effectTypesByName.clear(),_C141.clearArray(this._effectParams),this._owner=null}},{key:"PrependEffectTypes",value:function(e){if(e.length){this._allEffectTypes=e.concat(this._allEffectTypes)
|
||
var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
this._effectTypesByName.set(r.GetName().toLowerCase(),r)}}catch(a){n.e(a)}finally{n.f()}for(var i=0,s=this._allEffectTypes.length;s>i;++i)this._allEffectTypes[i]._SetIndex(i)}}},{key:"_LoadSingleEffectParameters",value:function(e){for(var t=e.slice(0),n=0,r=t.length;r>n;++n){var a=t[n]
|
||
if(Array.isArray(a)){var i=_C141.New(_C141.Color)
|
||
i.setFromJSON(a),t[n]=i}}return t}},{key:"GetOwner",value:function(){return this._owner}},{key:"GetRuntime",value:function(){return this._owner.GetRuntime()}},{key:"UpdateActiveEffects",value:function(){_C141.clearArray(this._activeEffectTypes)
|
||
var e,t=!0,n=_createForOfIteratorHelper(this._allEffectTypes)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
r.IsActive()&&(this._activeEffectTypes.push(r),r.GetShaderProgram().PreservesOpaqueness()||(t=!1))}}catch(a){n.e(a)}finally{n.f()}this._preservesOpaqueness=t}},{key:"GetAllEffectTypes",value:function(){return this._allEffectTypes}},{key:"HasAnyEffectType",value:function(){return this._allEffectTypes.length>0}},{key:"GetEffectTypeByName",value:function(e){return this._effectTypesByName.get(e.toLowerCase())||null}},{key:"GetEffectTypeByIndex",value:function(e){if(e=Math.floor(+e),0>e||e>=this._allEffectTypes.length)throw new RangeError("invalid effect type index")
|
||
return this._allEffectTypes[e]}},{key:"IsEffectIndexActive",value:function(e){return this.GetEffectTypeByIndex(e).IsActive()}},{key:"SetEffectIndexActive",value:function(e,t){this.GetEffectTypeByIndex(e).SetActive(t)}},{key:"GetActiveEffectTypes",value:function(){return this._activeEffectTypes}},{key:"HasAnyActiveEffect",value:function(){return this._activeEffectTypes.length>0}},{key:"PreservesOpaqueness",value:function(){return this._preservesOpaqueness}},{key:"GetEffectParametersForIndex",value:function(e){return this._effectParams[e]}},{key:"SaveToJson",value:function(){var e=this
|
||
return this._allEffectTypes.map(function(t){return{name:t.GetName(),active:t.IsActive(),params:_C141.EffectList.SaveFxParamsToJson(e._effectParams[t.GetIndex()])}})}},{key:"LoadFromJson",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=this.GetEffectTypeByName(r.name)
|
||
a&&(a.SetActive(r.active),this._effectParams[a.GetIndex()]=_C141.EffectList.LoadFxParamsFromJson(r.params))}}catch(i){n.e(i)}finally{n.f()}this.UpdateActiveEffects()}}],[{key:"SaveFxParamToJson",value:function(e){return e&&e instanceof _C141.Color?{t:"color",v:e.toJSON()}:e}},{key:"LoadFxParamFromJson",value:function(e){if("object"===_typeof(e)){var t=e.t
|
||
if("color"===t){var n=_C141.New(_C141.Color)
|
||
return n.setFromJSON(e.v),n}throw Error("invalid effect parameter type")}return e}},{key:"SaveFxParamsToJson",value:function(e){return e.map(_C141.EffectList.SaveFxParamToJson)}},{key:"LoadFxParamsFromJson",value:function(e){return e.map(_C141.EffectList.LoadFxParamFromJson)}}]),t}(_C141.DefendedBase)
|
||
var _C142=self.C3
|
||
_C142.EffectType=function(e){function t(e,r,a){var i
|
||
return _classCallCheck(this,t),i=n.call(this),i._effectList=e,i._id=r[0],i._name=r[1],i._index=a,i._shaderProgram=null,i._isActive=!0,i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._effectList=null,this._shaderProgram=null}},{key:"Clone",value:function(e){var t=_C142.New(_C142.EffectType,e,[this._id,this._name],-1)
|
||
return t._shaderProgram=this._shaderProgram,t._isActive=this._isActive,t}},{key:"_InitRenderer",value:function(e){var t=e.GetShaderProgramByName(this._id)
|
||
if(!t)throw Error("failed to find shader program '"+this._id+"'")
|
||
this._shaderProgram=t}},{key:"GetEffectList",value:function(){return this._effectList}},{key:"GetName",value:function(){return this._name}},{key:"_SetIndex",value:function(e){this._index=e}},{key:"GetIndex",value:function(){return this._index}},{key:"GetOwner",value:function(){return this._effectList.GetOwner()}},{key:"GetRuntime",value:function(){return this._effectList.GetRuntime()}},{key:"SetActive",value:function(e){this._isActive=!!e}},{key:"IsActive",value:function(){return this._isActive}},{key:"GetShaderProgram",value:function(){return this._shaderProgram}},{key:"GetDefaultParameterValues",value:function(){for(var e=[],t=0,n=this._shaderProgram.GetParameterCount();n>t;++t){var r=this._shaderProgram.GetParameterType(t)
|
||
if("float"===r||"percent"===r)e.push(0)
|
||
else{if("color"!==r)throw new TypeError("unknown effect parameter type")
|
||
e.push(_C142.New(_C142.Color,1,1,1,1))}}return e}}]),t}(_C142.DefendedBase)
|
||
var _C143=self.C3
|
||
_C143.InstanceEffectList=function(e){function t(e,r,a){var i
|
||
_classCallCheck(this,t),i=n.call(this),i._inst=e,i._wi=r,i._effectList=e.GetObjectClass().GetEffectList(),i._activeEffectFlags=[],i._activeEffectTypes=[],i._preservesOpaqueness=!0,i._effectParams=[]
|
||
var s,o=_createForOfIteratorHelper(i._effectList.GetAllEffectTypes())
|
||
try{for(o.s();!(s=o.n()).done;){s.value
|
||
i._activeEffectFlags.push(!0)}}catch(u){o.e(u)}finally{o.f()}return i.UpdateActiveEffects(),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C143.clearArray(this._activeEffectFlags),_C143.clearArray(this._activeEffectTypes),_C143.clearArray(this._effectParams),this._inst=null,this._effectList=null}},{key:"_LoadEffectParameters",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
this._effectParams.push(this._LoadSingleEffectParameters(r))}}catch(a){n.e(a)}finally{n.f()}}},{key:"_LoadSingleEffectParameters",value:function(e){for(var t=e.slice(0),n=0,r=t.length;r>n;++n){var a=t[n]
|
||
if(Array.isArray(a)){var i=_C143.New(_C143.Color)
|
||
i.setFromJSON(a),t[n]=i}}return t}},{key:"LoadDefaultEffectParameters",value:function(){var e,t=_createForOfIteratorHelper(this._effectList.GetAllEffectTypes())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
this._effectParams.push(n.GetDefaultParameterValues())}}catch(r){t.e(r)}finally{t.f()}}},{key:"GetOwner",value:function(){return this._owner}},{key:"GetEffectList",value:function(){return this._effectList}},{key:"GetRuntime",value:function(){return this._inst.GetRuntime()}},{key:"UpdateActiveEffects",value:function(){_C143.clearArray(this._activeEffectTypes)
|
||
for(var e=this._effectList.GetAllEffectTypes(),t=this._activeEffectTypes,n=this._activeEffectFlags,r=!0,a=0,i=e.length;i>a;++a)if(n[a]){var s=e[a]
|
||
t.push(s),s.GetShaderProgram().PreservesOpaqueness()||(r=!1)}this._preservesOpaqueness=r,this._wi._SetHasAnyActiveEffect(!!t.length)}},{key:"GetActiveEffectTypes",value:function(){return this._activeEffectTypes}},{key:"GetEffectParametersForIndex",value:function(e){return this._effectParams[e]}},{key:"PreservesOpaqueness",value:function(){return this._preservesOpaqueness}},{key:"HasAnyActiveBackgroundBlendingEffect",value:function(){return this._activeEffectTypes.some(function(e){return e.GetShaderProgram().UsesDest()})}},{key:"IsEffectIndexActive",value:function(e){return this._activeEffectFlags[e]}},{key:"SetEffectIndexActive",value:function(e,t){this._activeEffectFlags[e]=!!t}},{key:"GetAllEffectTypes",value:function(){return this._effectList.GetAllEffectTypes()}},{key:"_SaveToJson",value:function(){var e=this
|
||
return this._effectList.GetAllEffectTypes().map(function(t){return{name:t.GetName(),active:e._activeEffectFlags[t.GetIndex()],params:_C143.EffectList.SaveFxParamsToJson(e._effectParams[t.GetIndex()])}})}},{key:"_LoadFromJson",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=this._effectList.GetEffectTypeByName(r.name)
|
||
a&&(this._activeEffectFlags[a.GetIndex()]=r.active,this._effectParams[a.GetIndex()]=_C143.EffectList.LoadFxParamsFromJson(r.params))}}catch(i){n.e(i)}finally{n.f()}this.UpdateActiveEffects()}}]),t}(_C143.DefendedBase)
|
||
var _C144=self.C3,tempCandidates=[],tileCollRectCandidates=[],tempJumpthruRet=[],tempPolyA=_C144.New(_C144.CollisionPoly),tempPolyB=_C144.New(_C144.CollisionPoly),_tempQuad3=_C144.New(_C144.Quad),_tempRect2=_C144.New(_C144.Rect),tempRect2=_C144.New(_C144.Rect)
|
||
_C144.CollisionEngine=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e,r._registeredCollisions=[],r._collisionCheckCount=0,r._collisionCheckSec=0,r._polyCheckCount=0,r._polyCheckSec=0,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._runtime=null}},{key:"_Update1sStats",value:function(){this._collisionCheckSec=this._collisionCheckCount,this._collisionCheckCount=0,this._polyCheckSec=this._polyCheckCount,this._polyCheckCount=0}},{key:"Get1secCollisionChecks",value:function(){return this._collisionCheckSec}},{key:"Get1secPolyChecks",value:function(){return this._polyCheckSec}},{key:"RegisterCollision",value:function(e,t){var n=e.GetWorldInfo(),r=t.GetWorldInfo()
|
||
n&&r&&n.IsCollisionEnabled()&&r.IsCollisionEnabled()&&this._registeredCollisions.push([e,t])}},{key:"AddRegisteredCollisionCandidates",value:function(e,t,n){var r,a=_createForOfIteratorHelper(this._registeredCollisions)
|
||
try{for(a.s();!(r=a.n()).done;){var i=_slicedToArray(r.value,2),s=i[0],o=i[1],u=null
|
||
if(e===s)u=o
|
||
else{if(e!==o)continue
|
||
u=s}u.BelongsToObjectClass(t)&&(n.includes(u)||n.push(u))}}catch(l){a.e(l)}finally{a.f()}}},{key:"CheckRegisteredCollision",value:function(e,t){if(!this._registeredCollisions.length)return!1
|
||
var n,r=_createForOfIteratorHelper(this._registeredCollisions)
|
||
try{for(r.s();!(n=r.n()).done;){var a=_slicedToArray(n.value,2),i=a[0],s=a[1]
|
||
if(e===i&&t===s||e===s&&t===i)return!0}}catch(o){r.e(o)}finally{r.f()}return!1}},{key:"ClearRegisteredCollisions",value:function(){_C144.clearArray(this._registeredCollisions)}},{key:"TestOverlap",value:function(e,t){if(!e||!t||e===t)return!1
|
||
var n=e.GetWorldInfo(),r=t.GetWorldInfo()
|
||
if(!n.IsCollisionEnabled()||!r.IsCollisionEnabled())return!1
|
||
this._collisionCheckCount++
|
||
var a=n.GetLayer(),i=r.GetLayer(),s=a.IsTransformCompatibleWith(i)
|
||
return s?this._TestOverlap_SameLayers(n,r):this._TestOverlap_DifferentLayers(n,r)}},{key:"_TestOverlap_SameLayers",value:function(e,t){if(!e.GetBoundingBox().intersectsRect(t.GetBoundingBox()))return!1
|
||
if(this._polyCheckCount++,!e.GetBoundingQuad().intersectsQuad(t.GetBoundingQuad()))return!1
|
||
if(e.HasTilemap()&&t.HasTilemap())return!1
|
||
if(e.HasTilemap())return this.TestTilemapOverlap(e,t)
|
||
if(t.HasTilemap())return this.TestTilemapOverlap(t,e)
|
||
if(!e.HasOwnCollisionPoly()&&!t.HasOwnCollisionPoly())return!0
|
||
var n=e.GetTransformedCollisionPoly(),r=t.GetTransformedCollisionPoly()
|
||
return n.intersectsPoly(r,t.GetX()-e.GetX(),t.GetY()-e.GetY())}},{key:"_TestOverlap_DifferentLayers",value:function(e,t){var n=e.GetLayer(),r=t.GetLayer()
|
||
tempPolyA.copy(e.GetTransformedCollisionPoly()),tempPolyB.copy(t.GetTransformedCollisionPoly())
|
||
for(var a=tempPolyA.pointsArr(),i=0,s=a.length;s>i;i+=2){var o=i+1,u=a[i],l=a[o],c=n.LayerToCanvasCss(u+e.GetX(),l+e.GetY()),h=_slicedToArray(c,2),_=h[0],f=h[1]
|
||
a[i]=_,a[o]=f}for(var d=tempPolyB.pointsArr(),p=0,v=d.length;v>p;p+=2){var m=p+1,y=d[p],g=d[m],C=r.LayerToCanvasCss(y+t.GetX(),g+t.GetY()),S=_slicedToArray(C,2),k=S[0],I=S[1]
|
||
d[p]=k,d[m]=I}return tempPolyA.setBboxChanged(),tempPolyB.setBboxChanged(),this._polyCheckCount++,tempPolyA.intersectsPoly(tempPolyB,0,0)}},{key:"TestTilemapOverlap",value:function(e,t){var n=t.GetBoundingBox(),r=e.GetX(),a=e.GetY(),i=e.GetInstance().GetSdkInstance(),s=t.GetX(),o=t.GetY(),u=t.HasOwnCollisionPoly(),l=t.GetBoundingQuad(),c=tileCollRectCandidates
|
||
i.GetCollisionRectCandidates(n,c)
|
||
for(var h=0,_=c.length;_>h;++h){var f=c[h],d=f.GetRect()
|
||
if(this._collisionCheckCount++,n.intersectsRectOffset(d,r,a)&&(_tempQuad3.setFromRect(d),_tempQuad3.offset(r,a),_tempQuad3.intersectsQuad(l)))if(u){var p=t.GetTransformedCollisionPoly(),v=f.GetPoly()
|
||
if(v){if(this._polyCheckCount++,v.intersectsPoly(p,s-(r+d.getLeft()),o-(a+d.getTop())))return _C144.clearArray(c),!0}else if(tempPolyA.setFromQuad(_tempQuad3,0,0),tempPolyA.intersectsPoly(p,s,o))return _C144.clearArray(c),!0}else{var m=f.GetPoly()
|
||
if(!m)return _C144.clearArray(c),!0
|
||
if(tempPolyA.setFromQuad(l,0,0),m.intersectsPoly(tempPolyA,-(r+d.getLeft()),-(a+d.getTop())))return _C144.clearArray(c),!0}}return _C144.clearArray(c),!1}},{key:"TestAndSelectCanvasPointOverlap",value:function(e,t,n,r){var a=e.GetCurrentSol(),i=this._runtime.GetCurrentEvent()
|
||
if(!i)throw Error("cannot call outside event")
|
||
var s=i.IsOrBlock()
|
||
if(a.IsSelectAll()){r||(a._SetSelectAll(!1),_C144.clearArray(a._GetOwnInstances()))
|
||
var o,u=_createForOfIteratorHelper(e.GetInstances())
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value,c=l.GetWorldInfo(),h=c.GetLayer(),_=h.CanvasCssToLayer(t,n,c.GetTotalZElevation()),f=_slicedToArray(_,2),d=f[0],p=f[1]
|
||
if(c.ContainsPoint(d,p)){if(r)return!1
|
||
a._PushInstance(l)}else s&&a._PushElseInstance(l)}}catch(v){u.e(v)}finally{u.f()}}else{for(var m=s?a._GetOwnElseInstances():a._GetOwnInstances(),y=0,g=0,C=m.length;C>g;++g){var S=m[g],k=S.GetWorldInfo(),I=k.GetLayer(),T=I.CanvasCssToLayer(t,n,k.GetTotalZElevation()),G=_slicedToArray(T,2),b=G[0],A=G[1]
|
||
if(k.ContainsPoint(b,A)){if(r)return!1
|
||
s?a._PushInstance(S):m[y++]=S}else s&&(m[y++]=S)}r||(m.length=y)}return e.ApplySolToContainer(),r?!0:a.HasAnyInstances()}},{key:"GetCollisionCandidates",value:function(e,t,n,r){var a=e?1!==e.GetParallaxX()||1!==e.GetParallaxY():!1
|
||
if(t.IsFamily()){var i,s=_createForOfIteratorHelper(t.GetFamilyMembers())
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
a||o.IsAnyInstanceParallaxed()?_C144.appendArray(r,o.GetInstances()):(o._UpdateAllCollisionCells(),o._GetCollisionCellGrid().QueryRange(n,r))}}catch(u){s.e(u)}finally{s.f()}}else a||t.IsAnyInstanceParallaxed()?_C144.appendArray(r,t.GetInstances()):(t._UpdateAllCollisionCells(),t._GetCollisionCellGrid().QueryRange(n,r))}},{key:"GetObjectClassesCollisionCandidates",value:function(e,t,n,r){var a,i=_createForOfIteratorHelper(t)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
this.GetCollisionCandidates(e,s,n,r)}}catch(o){i.e(o)}finally{i.f()}}},{key:"GetSolidCollisionCandidates",value:function(e,t,n){var r=this._runtime.GetSolidBehavior()
|
||
r&&this.GetObjectClassesCollisionCandidates(e,r.GetObjectClasses(),t,n)}},{key:"GetJumpthruCollisionCandidates",value:function(e,t,n){var r=this._runtime.GetJumpthruBehavior()
|
||
r&&this.GetObjectClassesCollisionCandidates(e,r.GetObjectClasses(),t,n)}},{key:"IsSolidCollisionAllowed",value:function(e,t){return e._IsSolidEnabled()&&(!t||t.GetWorldInfo().IsSolidCollisionAllowed(e.GetSavedDataMap().get("solidTags")))}},{key:"TestOverlapSolid",value:function(e){var t=e.GetWorldInfo()
|
||
this.GetSolidCollisionCandidates(t.GetLayer(),t.GetBoundingBox(),tempCandidates)
|
||
var n,r=_createForOfIteratorHelper(tempCandidates)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(this.IsSolidCollisionAllowed(a,e)&&this.TestOverlap(e,a))return _C144.clearArray(tempCandidates),a}}catch(i){r.e(i)}finally{r.f()}return _C144.clearArray(tempCandidates),null}},{key:"TestRectOverlapSolid",value:function(e,t){this.GetSolidCollisionCandidates(null,e,tempCandidates)
|
||
var n,r=_createForOfIteratorHelper(tempCandidates)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(this.IsSolidCollisionAllowed(a,t)&&this.TestRectOverlap(e,a))return _C144.clearArray(tempCandidates),a}}catch(i){r.e(i)}finally{r.f()}return _C144.clearArray(tempCandidates),null}},{key:"TestOverlapJumpthru",value:function(e,t){var n=null
|
||
t&&(n=tempJumpthruRet,_C144.clearArray(n))
|
||
var r=e.GetWorldInfo()
|
||
this.GetJumpthruCollisionCandidates(r.GetLayer(),r.GetBoundingBox(),tempCandidates)
|
||
var a,i=_createForOfIteratorHelper(tempCandidates)
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
if(s._IsJumpthruEnabled()&&this.TestOverlap(e,s)){if(!t)return _C144.clearArray(tempCandidates),s
|
||
n.push(s)}}}catch(o){i.e(o)}finally{i.f()}return _C144.clearArray(tempCandidates),n}},{key:"PushOut",value:function(e,t,n,r,a){r=r||50
|
||
for(var i=e.GetWorldInfo(),s=i.GetX(),o=i.GetY(),u=0;r>u;++u)if(i.SetXY(s+t*u,o+n*u),i.SetBboxChanged(),!this.TestOverlap(e,a))return!0
|
||
return i.SetXY(s,o),i.SetBboxChanged(),!1}},{key:"PushOutSolid",value:function(e,t,n,r,a,i){r=r||50
|
||
for(var s=e.GetWorldInfo(),o=s.GetX(),u=s.GetY(),l=null,c=null,h=0;r>h;++h)if(s.SetXY(o+t*h,u+n*h),s.SetBboxChanged(),!this.TestOverlap(e,l))if(l=this.TestOverlapSolid(e))c=l
|
||
else if(a&&(l=i?this.TestOverlap(e,i)?i:null:this.TestOverlapJumpthru(e),l&&(c=l)),!l)return c&&this.PushInFractional(e,t,n,c,16,!0),!0
|
||
return s.SetXY(o,u),s.SetBboxChanged(),!1}},{key:"PushOutSolidAxis",value:function(e,t,n,r){r=r||50
|
||
for(var a=e.GetWorldInfo(),i=a.GetX(),s=a.GetY(),o=null,u=null,l=0;r>l;++l)for(var c=0;2>c;++c){var h=2*c-1
|
||
if(a.SetXY(i+t*l*h,s+n*l*h),a.SetBboxChanged(),!this.TestOverlap(e,o)){if(o=this.TestOverlapSolid(e),!o)return u&&this.PushInFractional(e,t*h,n*h,u,16,!0),!0
|
||
u=o}}return a.SetXY(i,s),a.SetBboxChanged(),!1}},{key:"PushInFractional",value:function(e,t,n,r,a,i){for(var s=2,o=!1,u=!1,l=e.GetWorldInfo(),c=l.GetX(),h=l.GetY();a>=s;){var _=1/s
|
||
s*=2,l.OffsetXY(t*_*(o?1:-1),n*_*(o?1:-1)),l.SetBboxChanged(),this.TestOverlap(e,r)||i&&this.TestOverlapSolid(e)?(o=!0,u=!0):(o=!1,u=!1,c=l.GetX(),h=l.GetY())}u&&(l.SetXY(c,h),l.SetBboxChanged())}},{key:"PushOutSolidNearest",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:100,n=0,r=e.GetWorldInfo(),a=r.GetX(),i=r.GetY(),s=0,o=this.TestOverlapSolid(e)
|
||
if(!o)return!0
|
||
for(;t>=n;){var u=0,l=0
|
||
switch(s){case 0:u=0,l=-1,n++
|
||
break
|
||
case 1:u=1,l=-1
|
||
break
|
||
case 2:u=1,l=0
|
||
break
|
||
case 3:u=1,l=1
|
||
break
|
||
case 4:u=0,l=1
|
||
break
|
||
case 5:u=-1,l=1
|
||
break
|
||
case 6:u=-1,l=0
|
||
break
|
||
case 7:u=-1,l=-1}if(s=(s+1)%8,r.SetXY(Math.floor(a+u*n),Math.floor(i+l*n)),r.SetBboxChanged(),!this.TestOverlap(e,o)&&(o=this.TestOverlapSolid(e),!o))return!0}return r.SetXY(a,i),r.SetBboxChanged(),!1}},{key:"CalculateBounceAngle",value:function(e,t,n,r){var a=e.GetWorldInfo(),i=a.GetX(),s=a.GetY(),o=Math.max(10,_C144.distanceTo(t,n,i,s)),u=_C144.angleTo(t,n,i,s),l=r||this.TestOverlapSolid(e)
|
||
if(!l)return _C144.clampAngle(u+Math.PI)
|
||
var c,h=l,_=0,f=0,d=_C144.toRadians(5)
|
||
for(c=1;36>c;++c){var p=u-c*d
|
||
if(a.SetXY(t+Math.cos(p)*o,n+Math.sin(p)*o),a.SetBboxChanged(),!this.TestOverlap(e,h)&&(h=r?null:this.TestOverlapSolid(e),!h)){_=p
|
||
break}}for(36===c&&(_=_C144.clampAngle(u+Math.PI)),h=l,c=1;36>c;++c){var v=u+c*d
|
||
if(a.SetXY(t+Math.cos(v)*o,n+Math.sin(v)*o),a.SetBboxChanged(),!this.TestOverlap(e,h)&&(h=r?null:this.TestOverlapSolid(e),!h)){f=v
|
||
break}}if(36===c&&(f=_C144.clampAngle(u+Math.PI)),a.SetXY(i,s),a.SetBboxChanged(),f===_)return f
|
||
var m,y=_C144.angleDiff(f,_)/2
|
||
m=_C144.angleClockwise(f,_)?_C144.clampAngle(_+y+Math.PI):_C144.clampAngle(f+y)
|
||
var g=Math.cos(u),C=Math.sin(u),S=Math.cos(m),k=Math.sin(m),I=g*S+C*k,T=g-2*I*S,G=C-2*I*k
|
||
return _C144.angleTo(0,0,T,G)}},{key:"TestSegmentOverlap",value:function(e,t,n,r,a){if(!a)return!1
|
||
var i=a.GetWorldInfo()
|
||
if(!i.IsCollisionEnabled())return!1
|
||
if(this._collisionCheckCount++,_tempRect2.set(Math.min(e,n),Math.min(t,r),Math.max(e,n),Math.max(t,r)),!i.GetBoundingBox().intersectsRect(_tempRect2))return!1
|
||
if(a.HasTilemap())return this._TestSegmentOverlapTilemap(e,t,n,r,a,i)
|
||
if(this._polyCheckCount++,!i.GetBoundingQuad().intersectsSegment(e,t,n,r))return!1
|
||
if(!i.HasOwnCollisionPoly())return!0
|
||
var s=i.GetTransformedCollisionPoly()
|
||
return s.intersectsSegment(i.GetX(),i.GetY(),e,t,n,r)}},{key:"_TestSegmentOverlapTilemap",value:function(e,t,n,r,a,i){var s=i.GetX(),o=i.GetY(),u=a.GetSdkInstance(),l=tileCollRectCandidates
|
||
tempRect2.set(e,t,n,r),tempRect2.normalize(),u.GetCollisionRectCandidates(tempRect2,l)
|
||
for(var c=0,h=l.length;h>c;++c){var _=l[c],f=_.GetRect()
|
||
if(this._collisionCheckCount++,_tempRect2.intersectsRectOffset(f,s,o)&&(_tempQuad3.setFromRect(f),_tempQuad3.offset(s,o),_tempQuad3.intersectsSegment(e,t,n,r))){var d=_.GetPoly()
|
||
if(!d)return _C144.clearArray(l),!0
|
||
if(this._polyCheckCount++,d.intersectsSegment(s+f.getLeft(),o+f.getTop(),e,t,n,r))return _C144.clearArray(l),!0}}return _C144.clearArray(l),!1}},{key:"TestRectOverlap",value:function(e,t){if(!t)return!1
|
||
var n=t.GetWorldInfo()
|
||
if(!n.IsCollisionEnabled())return!1
|
||
if(this._collisionCheckCount++,!n.GetBoundingBox().intersectsRect(e))return!1
|
||
if(t.HasTilemap())return this._TestRectOverlapTilemap(e,t,n)
|
||
if(this._polyCheckCount++,_tempQuad3.setFromRect(e),!n.GetBoundingQuad().intersectsQuad(_tempQuad3))return!1
|
||
if(!n.HasOwnCollisionPoly())return!0
|
||
var r=tempPolyA
|
||
r.setFromRect(e,n.GetX(),n.GetY())
|
||
var a=n.GetTransformedCollisionPoly()
|
||
return r.intersectsPoly(a,0,0)}},{key:"_TestRectOverlapTilemap",value:function(e,t,n){var r=n.GetX(),a=n.GetY(),i=t.GetSdkInstance(),s=tileCollRectCandidates
|
||
i.GetCollisionRectCandidates(e,s)
|
||
for(var o=0,u=s.length;u>o;++o){var l=s[o],c=l.GetRect()
|
||
if(this._collisionCheckCount++,e.intersectsRectOffset(c,r,a)){var h=l.GetPoly()
|
||
if(!h)return _C144.clearArray(s),!0
|
||
if(this._polyCheckCount++,tempPolyA.setFromRect(e,0,0),h.intersectsPoly(tempPolyA,-(r+c.getLeft()),-(a+c.getTop())))return _C144.clearArray(s),!0}}return _C144.clearArray(s),!1}},{key:"TestRayIntersectsInstance",value:function(e,t){if(e){var n=e.GetWorldInfo()
|
||
if(n.IsCollisionEnabled()&&(this._collisionCheckCount++,n.GetBoundingBox().intersectsRect(t.rect))){if(e.HasTilemap())return void this._TestRayIntersectsTilemap(e,n,t)
|
||
this._polyCheckCount++,n.HasOwnCollisionPoly()?t.TestInstancePoly(e,n.GetX(),n.GetY(),n.GetTransformedCollisionPoly()):t.TestInstanceQuad(e,n.GetBoundingQuad())}}}},{key:"_TestRayIntersectsTilemap",value:function(e,t,n){var r=t.GetX(),a=t.GetY(),i=tileCollRectCandidates
|
||
e.GetSdkInstance().GetCollisionRectCandidates(n.rect,i)
|
||
for(var s=0,o=i.length;o>s;s++){var u=i[s],l=u.GetRect()
|
||
if(this._collisionCheckCount++,n.rect.intersectsRectOffset(l,r,a)){var c=u.GetPoly()
|
||
this._polyCheckCount++,c?n.TestInstancePoly(e,r+l.getLeft(),a+l.getTop(),c):n.TestInstanceRect(e,t.GetX(),t.GetY(),l)}}_C144.clearArray(i)}}]),t}(_C144.DefendedBase)
|
||
var _C145=self.C3
|
||
_C145.SparseGrid=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._cellWidth=e,a._cellHeight=r,a._cells=_C145.New(_C145.PairMap),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._cells.Release(),this._cells=null}},{key:"GetCell",value:function(e,t,n){var r=this._cells.Get(e,t)
|
||
return r?r:n?(r=_C145.New(_C145.GridCell,this,e,t),this._cells.Set(e,t,r),r):null}},{key:"XToCell",value:function(e){var t=Math.floor(e/this._cellWidth)
|
||
return isFinite(t)?t:0}},{key:"YToCell",value:function(e){var t=Math.floor(e/this._cellHeight)
|
||
return isFinite(t)?t:0}},{key:"Update",value:function(e,t,n){if(t)for(var r=t.getLeft(),a=t.getRight();a>=r;++r)for(var i=t.getTop(),s=t.getBottom();s>=i;++i)if(!n||!n.containsPoint(r,i)){var o=this.GetCell(r,i,!1)
|
||
o&&(o.Remove(e),o.IsEmpty()&&this._cells.Delete(r,i))}if(n)for(var u=n.getLeft(),l=n.getRight();l>=u;++u)for(var c=n.getTop(),h=n.getBottom();h>=c;++c)t&&t.containsPoint(u,c)||this.GetCell(u,c,!0).Insert(e)}},{key:"QueryRange",value:function(e,t){var n=this.XToCell(e.getLeft()),r=this.YToCell(e.getTop()),a=this.XToCell(e.getRight()),i=this.YToCell(e.getBottom())
|
||
if(isFinite(a)&&isFinite(i))for(;a>=n;++n)for(var s=r;i>=s;++s){var o=this.GetCell(n,s,!1)
|
||
o&&o.Dump(t)}}}]),t}(_C145.DefendedBase)
|
||
var _C146=self.C3
|
||
_C146.GridCell=function(e){function t(e,r,a){var i
|
||
return _classCallCheck(this,t),i=n.call(this),i._grid=e,i._x=r,i._y=a,i._instances=_C146.New(_C146.ArraySet),i}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._instances.Release(),this._instances=null,this._grid=null}},{key:"IsEmpty",value:function(){return this._instances.IsEmpty()}},{key:"Insert",value:function(e){this._instances.Add(e)}},{key:"Remove",value:function(e){this._instances.Delete(e)}},{key:"Dump",value:function(e){_C146.appendArray(e,this._instances.GetArray())}}]),t}(_C146.DefendedBase)
|
||
var _C147=self.C3,_PADDING=1e-6,_NO_HIT=2
|
||
_C147.Ray=function(){function e(){_classCallCheck(this,e),this.x1=0,this.y1=0,this.x2=0,this.y2=0,this.dx=0,this.dy=0,this.rect=new _C147.Rect,this.hitFraction=_NO_HIT,this.hitUid=null,this.hitNormal=0,this.hitNormalDx=0,this.hitNormalDy=0,this.hitX=0,this.hitY=0,this.distance=0,this.normalX=1,this.normalY=0,this.reflectionX=1,this.reflectionY=0}return _createClass(e,[{key:"DidCollide",value:function(){return this.hitFraction<1+_PADDING}},{key:"Set",value:function(e,t,n,r){return this.x1=e,this.y1=t,this.x2=n,this.y2=r,this.dx=n-e,this.dy=r-t,this.rect.set(e,t,n,r),this.rect.normalize(),this.hitFraction=_NO_HIT,this.hitUid=null,this.hitNormal=0,this.hitNormalDx=0,this.hitNormalDy=0,this.hitX=0,this.hitY=0,this.distance=0,this.normalX=1,this.normalY=0,this.reflectionX=1,this.reflectionY=0,this}},{key:"Complete",value:function(){if(this.DidCollide()!==!1){var e=this.dx*this.hitFraction,t=this.dy*this.hitFraction,n=Math.sqrt(e*e+t*t),r=e/n,a=t/n
|
||
this.distance=n-_PADDING,this.hitX=this.x1+r*this.distance,this.hitY=this.y1+a*this.distance,this.hitNormal=Math.atan2(this.hitNormalDy,this.hitNormalDx)+Math.PI/2,this.normalX=Math.cos(this.hitNormal),this.normalY=Math.sin(this.hitNormal)
|
||
var i=r*this.normalX+a*this.normalY
|
||
if(this.reflectionX=r-2*this.normalX*i,this.reflectionY=a-2*this.normalY*i,i>0){var s=Math.PI
|
||
this.hitNormal=_C147.clampAngle(this.hitNormal+s),this.normalX=-this.normalX,this.normalY=-this.normalY}}}},{key:"TestInstanceSegment",value:function(e,t,n,r,a){var i=_C147.rayIntersect(this.x1,this.y1,this.x2,this.y2,t,n,r,a)
|
||
i>=0&&i<this.hitFraction&&(this.hitFraction=i,this.hitUid=e.GetUID(),this.hitNormalDx=t-r,this.hitNormalDy=n-a)}},{key:"TestInstanceRect",value:function(e,t,n,r){var a=t+r.getLeft(),i=t+r.getRight(),s=n+r.getTop(),o=n+r.getBottom()
|
||
this.TestInstanceSegment(e,a,s,i,s),this.TestInstanceSegment(e,i,s,i,o),this.TestInstanceSegment(e,i,o,a,o),this.TestInstanceSegment(e,a,o,a,s)}},{key:"TestInstanceQuad",value:function(e,t){var n=t.getTlx(),r=t.getTly(),a=t.getTrx(),i=t.getTry(),s=t.getBrx(),o=t.getBry(),u=t.getBlx(),l=t.getBly()
|
||
this.TestInstanceSegment(e,n,r,a,i),this.TestInstanceSegment(e,a,i,s,o),this.TestInstanceSegment(e,s,o,u,l),this.TestInstanceSegment(e,u,l,n,r)}},{key:"TestInstancePoly",value:function(e,t,n,r){for(var a=r.pointsArr(),i=0,s=a.length;s>i;i+=2){var o=(i+2)%s,u=a[i]+t,l=a[i+1]+n,c=a[o]+t,h=a[o+1]+n
|
||
this.TestInstanceSegment(e,u,l,c,h)}}}]),e}()
|
||
var _C148=self.C3,VALID_FULLSCREEN_MODES=new Set(["off","crop","scale-inner","scale-outer","letterbox-scale","letterbox-integer-scale"]),VALID_FULLSCREEN_SCALING_QUALITIES=new Set(["high","low"]),PERCENTTEXT_WIDTH=300,PERCENTTEXT_HEIGHT=200,PROGRESSBAR_WIDTH=120,PROGRESSBAR_HEIGHT=8,_tempQuad4=_C148.New(_C148.Quad),_tempRect3=_C148.New(_C148.Rect),SPLASH_MIN_DISPLAY_TIME=3e3,SPLASH_AFTER_FADEOUT_WAIT_TIME=200,SPLASH_FADE_DURATION=300
|
||
_C148.CanvasManager=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._runtime=e,r._canvas=null,r._webglRenderer=null,r._gpuPreference="high-performance",r._windowInnerWidth=0,r._windowInnerHeight=0,r._canvasCssWidth=0,r._canvasCssHeight=0,r._canvasDeviceWidth=0,r._canvasDeviceHeight=0,r._canvasCssOffsetX=0,r._canvasCssOffsetY=0,r._enableMipmaps=!0,r._drawWidth=0,r._drawHeight=0,r._fullscreenMode="letterbox-scale",r._documentFullscreenMode="letterbox-scale",r._deviceTransformOffX=0,r._deviceTransformOffY=0,r._wantFullscreenScalingQuality="high",r._fullscreenScalingQuality=r._wantFullscreenScalingQuality,r._isDocumentFullscreen=!1,r._availableAdditionalRenderTargets=[],r._usedAdditionalRenderTargets=new Set,r._shaderData=null,r._gpuFrameTimingsBuffer=null,r._gpuTimeStartFrame=0,r._gpuTimeEndFrame=0,r._gpuCurUtilisation=NaN,r._gpuLastUtilisation=0,r._layersGpuProfile=new Map,r._snapshotFormat="",r._snapshotQuality=1,r._snapshotArea=_C148.New(_C148.Rect),r._snapshotUrl="",r._snapshotPromise=null,r._snapshotResolve=null,r._loaderStartTime=0,r._rafId=-1,r._loadingProgress=0,r._loadingprogress_handler=function(e){return r._loadingProgress=e.progress},r._percentText=null,r._loadingLogoAsset=null,r._splashTextures={logo:null,powered:null,website:null},r._splashFrameNumber=0,r._splashFadeInFinishTime=0,r._splashFadeOutStartTime=0,r._splashState="fade-in",r._splashDoneResolve=null,r._splashDonePromise=new Promise(function(e){return r._splashDoneResolve=e}),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_SetGPUPowerPreference",value:function(e){this._gpuPreference=e}},{key:"CreateCanvas",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a,i,s,o,u,l,c=this
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return this._canvas=e.canvas,this._canvas.addEventListener("webglcontextlost",function(e){return c._OnWebGLContextLost(e)}),this._canvas.addEventListener("webglcontextrestored",function(e){return c._OnWebGLContextRestored(e)}),t={powerPreference:this._gpuPreference,enableGpuProfiling:!0},"Android"===_C148.Platform.OS&&"Chromium"===_C148.Platform.BrowserEngine&&_C148.Platform.BrowserVersionNumber<75&&(console.warn("[Construct 3] Disabling WebGL 2 because this device appears to be affected by crbug.com/934823. Install software updates to avoid this."),t.maxWebGLVersion=1),"standard"===this._runtime.GetCompositingMode()?t.alpha=!0:(t.alpha=!1,t.lowLatency=!0),this._webglRenderer=_C148.New(_C148.Gfx.WebGLRenderer,this._canvas,t),n.next=9,this._webglRenderer.InitState()
|
||
case 9:return this._webglRenderer.SupportsGPUProfiling()||(this._gpuLastUtilisation=NaN),this._runtime.AddDOMComponentMessageHandler("runtime","window-resize",function(e){return c._OnWindowResize(e)}),this._runtime.AddDOMComponentMessageHandler("runtime","fullscreenchange",function(e){return c._OnFullscreenChange(e)}),this._runtime.AddDOMComponentMessageHandler("runtime","fullscreenerror",function(e){return c._OnFullscreenError(e)}),this._isDocumentFullscreen=!!e.isFullscreen,this.SetSize(e.windowInnerWidth,e.windowInnerHeight,!0),this._shaderData=self.C3_Shaders,n.next=18,this._LoadShaderPrograms()
|
||
case 18:r=!1,a=_createForOfIteratorHelper(this._runtime._GetAllEffectLists())
|
||
try{for(a.s();!(i=a.n()).done;){s=i.value,o=_createForOfIteratorHelper(s.GetAllEffectTypes())
|
||
try{for(o.s();!(u=o.n()).done;)l=u.value,l._InitRenderer(this._webglRenderer),l.GetShaderProgram().UsesDest()&&(r=!0)}catch(h){o.e(h)}finally{o.f()}s.UpdateActiveEffects()}}catch(h){a.e(h)}finally{a.f()}this._runtime._SetUsesAnyBackgroundBlending(r),this._webglRenderer.SupportsGPUProfiling()&&(this._gpuFrameTimingsBuffer=_C148.New(_C148.Gfx.WebGLQueryResultBuffer,this._webglRenderer)),this._webglRenderer.SetMipmapsEnabled(this._enableMipmaps)
|
||
case 24:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_LoadShaderPrograms",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this._shaderData){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:for(e=[],t=0,r=Object.entries(this._shaderData);t<r.length;t++)a=_slicedToArray(r[t],2),i=a[0],s=a[1],o=_C148.Gfx.WebGLShaderProgram.GetDefaultVertexShaderSource(this._webglRenderer.Is3D()),e.push(this._webglRenderer.CreateShaderProgram(s,o,i))
|
||
return n.next=6,Promise.all(e)
|
||
case 6:this._webglRenderer.ResetLastProgram(),this._webglRenderer.SetTextureFillMode()
|
||
case 8:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"Release",value:function(){this._runtime=null,this._webglRenderer=null,this._canvas=null}},{key:"_OnWindowResize",value:function(e){var t=e.devicePixelRatio
|
||
this._runtime.IsInWorker()&&(self.devicePixelRatio=t),this._runtime._SetDevicePixelRatio(t),this.SetSize(e.innerWidth,e.innerHeight),this._runtime.UpdateRender()}},{key:"_OnFullscreenChange",value:function(e){this._isDocumentFullscreen=!!e.isFullscreen,this.SetSize(e.innerWidth,e.innerHeight,!0),this._runtime.UpdateRender()}},{key:"_OnFullscreenError",value:function(e){this._isDocumentFullscreen=!!e.isFullscreen,this.SetSize(e.innerWidth,e.innerHeight,!0),this._runtime.UpdateRender()}},{key:"SetSize",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:!1
|
||
if(e=Math.floor(e),t=Math.floor(t),0>=e||0>=t)throw Error("invalid size")
|
||
if(this._windowInnerWidth!==e||this._windowInnerHeight!==t||n){this._windowInnerWidth=e,this._windowInnerHeight=t
|
||
var r=this.GetCurrentFullscreenMode()
|
||
"letterbox-scale"===r?this._CalculateLetterboxScale(e,t):"letterbox-integer-scale"===r?this._CalculateLetterboxIntegerScale(e,t):"off"===r?this._CalculateFixedSizeCanvas(e,t):this._CalculateFullsizeCanvas(e,t),this._UpdateFullscreenScalingQuality(r),this._canvas.width=this._canvasDeviceWidth,this._canvas.height=this._canvasDeviceHeight,this._runtime.PostComponentMessageToDOM("canvas","update-size",{marginLeft:this._canvasCssOffsetX,marginTop:this._canvasCssOffsetY,styleWidth:this._canvasCssWidth,styleHeight:this._canvasCssHeight}),this._webglRenderer.SetSize(this._canvasDeviceWidth,this._canvasDeviceHeight,!0)}}},{key:"_CalculateLetterboxScale",value:function(e,t){var n=this._runtime.GetDevicePixelRatio(),r=this._runtime.GetOriginalViewportWidth(),a=this._runtime.GetOriginalViewportHeight(),i=r/a,s=e/t
|
||
if(s>i){var o=t*i
|
||
this._canvasCssWidth=Math.round(o),this._canvasCssHeight=t,this._canvasCssOffsetX=Math.floor((e-this._canvasCssWidth)/2),this._canvasCssOffsetY=0}else{var u=e/i
|
||
this._canvasCssWidth=e,this._canvasCssHeight=Math.round(u),this._canvasCssOffsetX=0,this._canvasCssOffsetY=Math.floor((t-this._canvasCssHeight)/2)}this._canvasDeviceWidth=Math.round(this._canvasCssWidth*n),this._canvasDeviceHeight=Math.round(this._canvasCssHeight*n),this._runtime.SetViewportSize(r,a)}},{key:"_CalculateLetterboxIntegerScale",value:function(e,t){var n=this._runtime.GetDevicePixelRatio()
|
||
1!==n&&(e+=1,t+=1)
|
||
var r,a=this._runtime.GetOriginalViewportWidth(),i=this._runtime.GetOriginalViewportHeight(),s=a/i,o=e/t
|
||
if(o>s){var u=t*s
|
||
r=u*n/a}else{var l=e/s
|
||
r=l*n/i}r>1?r=Math.floor(r):1>r&&(r=1/Math.ceil(1/r)),this._canvasDeviceWidth=Math.round(a*r),this._canvasDeviceHeight=Math.round(i*r),this._canvasCssWidth=this._canvasDeviceWidth/n,this._canvasCssHeight=this._canvasDeviceHeight/n,this._canvasCssOffsetX=Math.max(Math.floor((e-this._canvasCssWidth)/2),0),this._canvasCssOffsetY=Math.max(Math.floor((t-this._canvasCssHeight)/2),0),this._runtime.SetViewportSize(a,i)}},{key:"_CalculateFullsizeCanvas",value:function(e,t){var n=this._runtime.GetDevicePixelRatio()
|
||
this._canvasCssWidth=e,this._canvasCssHeight=t,this._canvasDeviceWidth=Math.round(this._canvasCssWidth*n),this._canvasDeviceHeight=Math.round(this._canvasCssHeight*n),this._canvasCssOffsetX=0,this._canvasCssOffsetY=0
|
||
var r=this.GetDisplayScale()
|
||
this._runtime.SetViewportSize(this._canvasCssWidth/r,this._canvasCssHeight/r)}},{key:"_CalculateFixedSizeCanvas",value:function(e,t){var n=this._runtime.GetDevicePixelRatio()
|
||
this._canvasCssWidth=this._runtime.GetViewportWidth(),this._canvasCssHeight=this._runtime.GetViewportHeight(),this._canvasDeviceWidth=Math.round(this._canvasCssWidth*n),this._canvasDeviceHeight=Math.round(this._canvasCssHeight*n),this.IsDocumentFullscreen()?(this._canvasCssOffsetX=Math.floor((e-this._canvasCssWidth)/2),this._canvasCssOffsetY=Math.floor((t-this._canvasCssHeight)/2)):(this._canvasCssOffsetX=0,this._canvasCssOffsetY=0),this._runtime.SetViewportSize(this._runtime.GetViewportWidth(),this._runtime.GetViewportHeight())}},{key:"_UpdateFullscreenScalingQuality",value:function(e){if("high"===this._wantFullscreenScalingQuality)this._drawWidth=this._canvasDeviceWidth,this._drawHeight=this._canvasDeviceHeight,this._fullscreenScalingQuality="high"
|
||
else{var t,n
|
||
if("off"===this.GetCurrentFullscreenMode()?(t=this._runtime.GetViewportWidth(),n=this._runtime.GetViewportHeight()):(t=this._runtime.GetOriginalViewportWidth(),n=this._runtime.GetOriginalViewportHeight()),this._canvasDeviceWidth<t&&this._canvasDeviceHeight<n)this._drawWidth=this._canvasDeviceWidth,this._drawHeight=this._canvasDeviceHeight,this._fullscreenScalingQuality="high"
|
||
else if(this._drawWidth=t,this._drawHeight=n,this._fullscreenScalingQuality="low","scale-inner"===e){var r=t/n,a=this._windowInnerWidth/this._windowInnerHeight
|
||
r>a?this._drawWidth=this._drawHeight*a:a>r&&(this._drawHeight=this._drawWidth/a)}else if("scale-outer"===e){var i=t/n,s=this._windowInnerWidth/this._windowInnerHeight
|
||
s>i?this._drawWidth=this._drawHeight*s:i>s&&(this._drawHeight=this._drawWidth/s)}}}},{key:"IsDocumentFullscreen",value:function(){return this._isDocumentFullscreen}},{key:"SetFullscreenMode",value:function(e){if(!VALID_FULLSCREEN_MODES.has(e))throw Error("invalid fullscreen mode")
|
||
this._fullscreenMode=e}},{key:"GetFullscreenMode",value:function(){return this._fullscreenMode}},{key:"SetDocumentFullscreenMode",value:function(e){if(!VALID_FULLSCREEN_MODES.has(e))throw Error("invalid fullscreen mode")
|
||
this._documentFullscreenMode=e}},{key:"GetDocumentFullscreenMode",value:function(){return this._documentFullscreenMode}},{key:"GetCurrentFullscreenMode",value:function(){return this.IsDocumentFullscreen()?this.GetDocumentFullscreenMode():this.GetFullscreenMode()}},{key:"SetFullscreenScalingQuality",value:function(e){if(!VALID_FULLSCREEN_SCALING_QUALITIES.has(e))throw Error("invalid fullscreen scaling quality")
|
||
this._wantFullscreenScalingQuality=e}},{key:"GetSetFullscreenScalingQuality",value:function(){return this._wantFullscreenScalingQuality}},{key:"GetCurrentFullscreenScalingQuality",value:function(){return this._fullscreenScalingQuality}},{key:"GetLastWidth",value:function(){return this._windowInnerWidth}},{key:"GetLastHeight",value:function(){return this._windowInnerHeight}},{key:"GetDrawWidth",value:function(){return this._drawWidth}},{key:"GetDrawHeight",value:function(){return this._drawHeight}},{key:"SetMipmapsEnabled",value:function(e){this._enableMipmaps=!!e}},{key:"IsWebGLContextLost",value:function(){return this._webglRenderer.IsContextLost()}},{key:"_OnWebGLContextLost",value:function(e){console.log("[Construct 3] WebGL context lost"),e.preventDefault(),this._availableAdditionalRenderTargets=[],this._usedAdditionalRenderTargets.clear(),this._webglRenderer.OnContextLost(),this._runtime._OnWebGLContextLost()}},{key:"_OnWebGLContextRestored",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this._webglRenderer.OnContextRestored()
|
||
case 2:return e.next=4,this._LoadShaderPrograms()
|
||
case 4:t=_createForOfIteratorHelper(this._runtime._GetAllEffectLists())
|
||
try{for(t.s();!(r=t.n()).done;){a=r.value,i=_createForOfIteratorHelper(a.GetAllEffectTypes())
|
||
try{for(i.s();!(s=i.n()).done;)o=s.value,o._InitRenderer(this._webglRenderer)}catch(n){i.e(n)}finally{i.f()}}}catch(n){t.e(n)}finally{t.f()}return e.next=8,this._runtime._OnWebGLContextRestored()
|
||
case 8:console.log("[Construct 3] WebGL context restored")
|
||
case 9:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"GetWebGLRenderer",value:function(){return this._webglRenderer}},{key:"GetRenderScale",value:function(){return"low"===this._fullscreenScalingQuality?1/this._runtime.GetDevicePixelRatio():this.GetDisplayScale()}},{key:"GetDisplayScale",value:function(){var e=this.GetCurrentFullscreenMode()
|
||
if("off"===e||"crop"===e)return 1
|
||
var t=this._runtime.GetOriginalViewportWidth(),n=this._runtime.GetOriginalViewportHeight(),r=t/n,a=this._canvasDeviceWidth/this._canvasDeviceHeight
|
||
return"scale-inner"!==e&&a>r||"scale-inner"===e&&r>a?this._canvasCssHeight/n:this._canvasCssWidth/t}},{key:"SetDeviceTransformOffset",value:function(e,t){this._deviceTransformOffX=e,this._deviceTransformOffY=t}},{key:"SetDeviceTransform",value:function(e,t,n){var r=(t||this._drawWidth)/2+this._deviceTransformOffX,a=(n||this._drawHeight)/2+this._deviceTransformOffY
|
||
e.SetCameraXYZ(r,a,100*this._runtime.GetDevicePixelRatio()),e.SetLookXYZ(r,a,0),e.ResetModelView(),e.UpdateModelView()}},{key:"SetCssTransform",value:function(e){var t=this._canvasCssWidth/2,n=this._canvasCssHeight/2
|
||
e.SetCameraXYZ(t,n,100),e.SetLookXYZ(t,n,0),e.ResetModelView(),e.UpdateModelView()}},{key:"GetDeviceWidth",value:function(){return this._canvasDeviceWidth}},{key:"GetDeviceHeight",value:function(){return this._canvasDeviceHeight}},{key:"GetCssWidth",value:function(){return this._canvasCssWidth}},{key:"GetCssHeight",value:function(){return this._canvasCssHeight}},{key:"GetCanvasClientX",value:function(){return this._canvasCssOffsetX}},{key:"GetCanvasClientY",value:function(){return this._canvasCssOffsetY}},{key:"GetAdditionalRenderTarget",value:function(e){var t,n=this._availableAdditionalRenderTargets,r=n.findIndex(function(t){return t.IsCompatibleWithOptions(e)})
|
||
return-1!==r?(t=n[r],n.splice(r,1)):t=this._webglRenderer.CreateRenderTarget(e),this._usedAdditionalRenderTargets.add(t),t}},{key:"ReleaseAdditionalRenderTarget",value:function(e){if(!this._usedAdditionalRenderTargets.has(e))throw Error("render target not in use")
|
||
this._usedAdditionalRenderTargets["delete"](e),this._availableAdditionalRenderTargets.push(e)}},{key:"activeLayersGpuProfiles",value:_regeneratorRuntime().mark(function r(){var e,t,n,a,i,s,o
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:e=_createForOfIteratorHelper(this._runtime.GetLayoutManager().runningLayouts()),r.prev=1,e.s()
|
||
case 3:if((t=e.n()).done){r.next=26
|
||
break}n=t.value,a=_createForOfIteratorHelper(n.GetLayers()),r.prev=6,a.s()
|
||
case 8:if((i=a.n()).done){r.next=16
|
||
break}if(s=i.value,o=this._layersGpuProfile.get(s),!o){r.next=14
|
||
break}return r.next=14,o
|
||
case 14:r.next=8
|
||
break
|
||
case 16:r.next=21
|
||
break
|
||
case 18:r.prev=18,r.t0=r["catch"](6),a.e(r.t0)
|
||
case 21:return r.prev=21,a.f(),r.finish(21)
|
||
case 24:r.next=3
|
||
break
|
||
case 26:r.next=31
|
||
break
|
||
case 28:r.prev=28,r.t1=r["catch"](1),e.e(r.t1)
|
||
case 31:return r.prev=31,e.f(),r.finish(31)
|
||
case 34:case"end":return r.stop()}},r,this,[[1,28,31,34],[6,18,21,24]])})},{key:"GetLayerTimingsBuffer",value:function(e){if(!this._webglRenderer.SupportsGPUProfiling())return null
|
||
var t=this._layersGpuProfile.get(e)
|
||
return t||(t={name:e.GetName(),timingsBuffer:_C148.New(_C148.Gfx.WebGLQueryResultBuffer,this._webglRenderer),curUtilisation:0,lastUtilisation:0},this._layersGpuProfile.set(e,t)),t.timingsBuffer}},{key:"_Update1sFrameRange",value:function(){if(this._webglRenderer.SupportsGPUProfiling()&&0===this._gpuTimeEndFrame){this._gpuTimeEndFrame=this._webglRenderer.GetFrameNumber(),this._gpuCurUtilisation=NaN
|
||
var e,t=_createForOfIteratorHelper(this.activeLayersGpuProfiles())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.curUtilisation=NaN}}catch(r){t.e(r)}finally{t.f()}}}},{key:"_UpdateTick",value:function(){if(this._webglRenderer.SupportsGPUProfiling()&&isNaN(this._gpuCurUtilisation)&&(this._gpuCurUtilisation=this._gpuFrameTimingsBuffer.GetFrameRangeResultSum(this._gpuTimeStartFrame,this._gpuTimeEndFrame),!isNaN(this._gpuCurUtilisation))){if(this._runtime.IsDebug()){var e,t=_createForOfIteratorHelper(this.activeLayersGpuProfiles())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
if(n.curUtilisation=n.timingsBuffer.GetFrameRangeResultSum(this._gpuTimeStartFrame,this._gpuTimeEndFrame),isNaN(n.curUtilisation))return}}catch(r){t.e(r)}finally{t.f()}}if(this._gpuFrameTimingsBuffer.DeleteAllBeforeFrameNumber(this._gpuTimeEndFrame),this._gpuLastUtilisation=Math.min(this._gpuCurUtilisation,1),this._runtime.IsDebug()){var a,i=_createForOfIteratorHelper(this.activeLayersGpuProfiles())
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
s.timingsBuffer.DeleteAllBeforeFrameNumber(this._gpuTimeEndFrame),s.lastUtilisation=Math.min(s.curUtilisation,1)}}catch(r){i.e(r)}finally{i.f()}self.C3Debugger.UpdateGPUProfile(this._gpuLastUtilisation,_toConsumableArray(this.activeLayersGpuProfiles()))}this._gpuTimeStartFrame=this._gpuTimeEndFrame,this._gpuTimeEndFrame=0}}},{key:"GetGPUFrameTimingsBuffer",value:function(){return this._gpuFrameTimingsBuffer}},{key:"GetGPUUtilisation",value:function(){return this._gpuLastUtilisation}},{key:"SnapshotCanvas",value:function(e,t,n,r,a,i){var s=this
|
||
return this._snapshotFormat=e,this._snapshotQuality=t,this._snapshotArea.setWH(n,r,a,i),this._snapshotPromise?this._snapshotPromise:(this._snapshotPromise=new Promise(function(e){s._snapshotResolve=e}),this._snapshotPromise)}},{key:"_MaybeTakeSnapshot",value:function(){var e=this
|
||
if(this._snapshotFormat){var t=this._canvas,n=this._snapshotArea,r=_C148.clamp(Math.floor(n.getLeft()),0,t.width),a=_C148.clamp(Math.floor(n.getTop()),0,t.height),i=n.width()
|
||
i=0===i?t.width-r:_C148.clamp(Math.floor(i),0,t.width-r)
|
||
var s=n.height()
|
||
if(s=0===s?t.height-a:_C148.clamp(Math.floor(s),0,t.height-a),(0!==r||0!==a||i!==t.width||s!==t.height)&&i>0&&s>0){t=_C148.CreateCanvas(i,s)
|
||
var o=t.getContext("2d")
|
||
o.drawImage(this._canvas,r,a,i,s,0,0,i,s)}_C148.CanvasToBlob(t,this._snapshotFormat,this._snapshotQuality).then(function(t){e._snapshotUrl=URL.createObjectURL(t),e._snapshotPromise=null,e._snapshotResolve(e._snapshotUrl)}),this._snapshotFormat="",this._snapshotQuality=1}}},{key:"GetCanvasSnapshotUrl",value:function(){return this._snapshotUrl}},{key:"InitLoadingScreen",value:function(e){var t=this
|
||
if(2===e)this._percentText=_C148.New(_C148.Gfx.RendererText,this._webglRenderer),this._percentText.SetIsAsync(!1),this._percentText.SetFontName("Arial"),this._percentText.SetFontSize(16),this._percentText.SetHorizontalAlignment("center"),this._percentText.SetVerticalAlignment("center"),this._percentText.SetSize(PERCENTTEXT_WIDTH,PERCENTTEXT_HEIGHT)
|
||
else if(0===e){var n,r=this._runtime.GetLoadingLogoFilename(),a=this._runtime.GetAssetManager()
|
||
if(this._runtime.IsPreview()){if(!a._HasLocalUrlBlob(r))return
|
||
n=a.GetLocalUrlAsBlobUrl(r)}else n=a.GetIconsSubfolder()+r
|
||
this._loadingLogoAsset=a.LoadImage({url:n}),this._loadingLogoAsset.LoadStaticTexture(this._webglRenderer)["catch"](function(e){return console.warn("[C3 runtime] Failed to load '".concat(r,"' for loading screen. Check the project has an icon with that name."),e)})}else 4===e&&(this._LoadSvgSplashImage("splash-images/splash-logo.svg").then(function(e){"done"===t._splashState?t._webglRenderer.DeleteTexture(e):t._splashTextures.logo=e})["catch"](function(e){return console.warn("Failed to load splash image: ",e)}),this._LoadBitmapSplashImage("splash-images/splash-poweredby-512.png").then(function(e){"done"===t._splashState?t._webglRenderer.DeleteTexture(e):t._splashTextures.powered=e})["catch"](function(e){return console.warn("Failed to load splash image: ",e)}),this._LoadBitmapSplashImage("splash-images/splash-website-512.png").then(function(e){"done"===t._splashState?t._webglRenderer.DeleteTexture(e):t._splashTextures.website=e})["catch"](function(e){return console.warn("Failed to load splash image: ",e)}))}},{key:"_LoadSvgSplashImage",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e=""+new URL(e,this._runtime.GetBaseURL()),n.next=3,_C148.FetchBlob(e)
|
||
case 3:return t=n.sent,n.next=6,this._runtime.RasterSvgImage(t,2048,2048)
|
||
case 6:return r=n.sent,n.next=9,this._webglRenderer.CreateStaticTextureAsync(r,{mipMapQuality:"high"})
|
||
case 9:return n.abrupt("return",n.sent)
|
||
case 10:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_LoadBitmapSplashImage",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return e=""+new URL(e,this._runtime.GetBaseURL()),n.next=3,_C148.FetchBlob(e)
|
||
case 3:return t=n.sent,n.next=6,this._webglRenderer.CreateStaticTextureAsync(t,{mipMapQuality:"high"})
|
||
case 6:return n.abrupt("return",n.sent)
|
||
case 7:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"HideCordovaSplashScreen",value:function(){this._runtime.PostComponentMessageToDOM("runtime","hide-cordova-splash")}},{key:"StartLoadingScreen",value:function(){var e=this
|
||
this._loaderStartTime=Date.now(),this._runtime.Dispatcher().addEventListener("loadingprogress",this._loadingprogress_handler),this._rafId=requestAnimationFrame(function(){return e._DrawLoadingScreen()})
|
||
var t=this._runtime.GetLoaderStyle()
|
||
3!==t&&this.HideCordovaSplashScreen()}},{key:"EndLoadingScreen",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e
|
||
return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(this._loadingProgress=1,e=this._runtime.GetLoaderStyle(),4!==e){t.next=5
|
||
break}return t.next=5,this._splashDonePromise
|
||
case 5:this._splashDoneResolve=null,this._splashDonePromise=null,-1!==this._rafId&&(cancelAnimationFrame(this._rafId),this._rafId=-1),this._runtime.Dispatcher().removeEventListener("loadingprogress",this._loadingprogress_handler),this._loadingprogress_handler=null,this._percentText&&(this._percentText.Release(),this._percentText=null),this._loadingLogoAsset&&(this._loadingLogoAsset.Release(),this._loadingLogoAsset=null),this._webglRenderer.Start(),this._splashTextures.logo&&(this._webglRenderer.DeleteTexture(this._splashTextures.logo),this._splashTextures.logo=null),this._splashTextures.powered&&(this._webglRenderer.DeleteTexture(this._splashTextures.powered),this._splashTextures.powered=null),this._splashTextures.website&&(this._webglRenderer.DeleteTexture(this._splashTextures.website),this._splashTextures.website=null),this._webglRenderer.ClearRgba(0,0,0,0),this._webglRenderer.Finish(),this._splashState="done",this._gpuTimeStartFrame=this._webglRenderer.GetFrameNumber(),3===e&&this.HideCordovaSplashScreen()
|
||
case 21:case"end":return t.stop()}},n,this)}))
|
||
return e}()},{key:"_DrawLoadingScreen",value:function(){var e=this
|
||
if(-1!==this._rafId){var t=this._webglRenderer
|
||
t.Start(),this._rafId=-1
|
||
var n=this._runtime.GetAssetManager().HasHadErrorLoading(),r=this._runtime.GetLoaderStyle()
|
||
if(3!==r&&(this.SetCssTransform(t),t.ClearRgba(0,0,0,0),t.ResetColor(),t.SetTextureFillMode(),t.SetTexture(null)),0===r)this._DrawProgressBarAndLogoLoadingScreen(n)
|
||
else if(1===r)this._DrawProgressBarLoadingScreen(n,PROGRESSBAR_WIDTH,0)
|
||
else if(2===r)this._DrawPercentTextLoadingScreen(n)
|
||
else if(3===r)_C148.noop()
|
||
else{if(4!==r)throw Error("invalid loader style")
|
||
this._DrawSplashLoadingScreen(n)}t.Finish(),this._rafId=requestAnimationFrame(function(){return e._DrawLoadingScreen()})}}},{key:"_DrawPercentTextLoadingScreen",value:function(e){e?this._percentText.SetColorRgb(1,0,0):this._percentText.SetColorRgb(.6,.6,.6),this._percentText.SetText(Math.round(100*this._loadingProgress)+"%")
|
||
var t=this._canvasCssWidth/2,n=this._canvasCssHeight/2,r=PERCENTTEXT_WIDTH/2,a=PERCENTTEXT_HEIGHT/2
|
||
_tempQuad4.setRect(t-r,n-a,t+r,n+a),this._webglRenderer.SetTexture(this._percentText.GetTexture()),this._webglRenderer.Quad3(_tempQuad4,this._percentText.GetTexRect())}},{key:"_DrawProgressBarLoadingScreen",value:function(e,t,n){var r=this._webglRenderer,a=PROGRESSBAR_HEIGHT
|
||
r.SetColorFillMode(),e?r.SetColorRgba(1,0,0,1):r.SetColorRgba(.118,.565,1,1)
|
||
var i=this._canvasCssWidth/2,s=this._canvasCssHeight/2,o=t/2,u=a/2
|
||
_tempRect3.setWH(i-o,s-u+n,Math.floor(t*this._loadingProgress),a),r.Rect(_tempRect3),_tempRect3.setWH(i-o,s-u+n,t,a),_tempRect3.offset(-.5,-.5),_tempRect3.inflate(.5,.5),r.SetColorRgba(0,0,0,1),r.LineRect2(_tempRect3),_tempRect3.inflate(1,1),r.SetColorRgba(1,1,1,1),r.LineRect2(_tempRect3)}},{key:"_DrawProgressBarAndLogoLoadingScreen",value:function(e){if(!this._loadingLogoAsset)return void this._DrawProgressBarLoadingScreen(e,PROGRESSBAR_WIDTH,0)
|
||
var t=this._loadingLogoAsset.GetTexture()
|
||
if(!t)return void this._DrawProgressBarLoadingScreen(e,PROGRESSBAR_WIDTH,0)
|
||
var n=t.GetWidth(),r=t.GetHeight(),a=this._canvasCssWidth/2,i=this._canvasCssHeight/2,s=n/2,o=r/2
|
||
_tempQuad4.setRect(a-s,i-o,a+s,i+o),this._webglRenderer.SetTexture(t),this._webglRenderer.Quad(_tempQuad4),this._DrawProgressBarLoadingScreen(e,n,o+16)}},{key:"_DrawSplashLoadingScreen",value:function(e){var t=this._webglRenderer,n=this._splashTextures.logo,r=this._splashTextures.powered,a=this._splashTextures.website,i=Date.now()
|
||
0===this._splashFrameNumber&&(this._loaderStartTime=i)
|
||
var s=this._runtime.IsPreview()||this._runtime.IsFBInstantAvailable()&&!this._runtime.IsCordova(),o=s?0:SPLASH_AFTER_FADEOUT_WAIT_TIME,u=s?0:SPLASH_MIN_DISPLAY_TIME,l=1
|
||
"fade-in"===this._splashState?l=Math.min((i-this._loaderStartTime)/SPLASH_FADE_DURATION,1):"fade-out"===this._splashState&&(l=Math.max(1-(i-this._splashFadeOutStartTime)/SPLASH_FADE_DURATION,0)),t.SetColorFillMode(),t.SetColorRgba(.231*l,.251*l,.271*l,l),_tempRect3.set(0,0,this._canvasCssWidth,this._canvasCssHeight),t.Rect(_tempRect3)
|
||
var c,h,_=Math.ceil(this._canvasCssWidth),f=Math.ceil(this._canvasCssHeight)
|
||
this._canvasCssHeight>256?(t.SetColorRgba(.302*l,.334*l,.365*l,l),c=_,h=Math.max(.005*f,2),_tempRect3.setWH(0,.8*f-h/2,c,h),t.Rect(_tempRect3),e?t.SetColorRgba(l,0,0,l):t.SetColorRgba(.161*l,.953*l,.816*l,l),c=_*this._loadingProgress,_tempRect3.setWH(.5*_-c/2,.8*f-h/2,c,h),t.Rect(_tempRect3),t.SetColorRgba(l,l,l,l),t.SetTextureFillMode(),r&&(c=1.5*_C148.clamp(.22*f,105,.6*_),h=c/8,_tempRect3.setWH(.5*_-c/2,.2*f-h/2,c,h),t.SetTexture(r),t.Rect(_tempRect3)),n&&(c=Math.min(.395*f,.95*_),h=c,_tempRect3.setWH(.5*_-c/2,.485*f-h/2,c,h),t.SetTexture(n),t.Rect(_tempRect3)),a&&(c=1.5*_C148.clamp(.22*f,105,.6*_),h=c/8,_tempRect3.setWH(.5*_-c/2,.868*f-h/2,c,h),t.SetTexture(a),t.Rect(_tempRect3))):(t.SetColorRgba(.302*l,.334*l,.365*l,l),c=_,h=Math.max(.005*f,2),_tempRect3.setWH(0,.85*f-h/2,c,h),t.Rect(_tempRect3),e?t.SetColorRgba(l,0,0,l):t.SetColorRgba(.161*l,.953*l,.816*l,l),c=_*this._loadingProgress,_tempRect3.setWH(.5*_-c/2,.85*f-h/2,c,h),t.Rect(_tempRect3),t.SetColorRgba(l,l,l,l),t.SetTextureFillMode(),n&&(c=.55*f,h=c,_tempRect3.setWH(.5*_-c/2,.45*f-h/2,c,h),t.SetTexture(n),t.Rect(_tempRect3))),this._splashFrameNumber++,"fade-in"===this._splashState&&i-this._loaderStartTime>=SPLASH_FADE_DURATION&&this._splashFrameNumber>=2&&(this._splashState="wait",this._splashFadeInFinishTime=i),"wait"===this._splashState&&i-this._splashFadeInFinishTime>=u&&this._loadingProgress>=1&&(this._splashState="fade-out",this._splashFadeOutStartTime=i),("fade-out"===this._splashState&&i-this._splashFadeOutStartTime>=SPLASH_FADE_DURATION+o||s&&this._loadingProgress>=1&&i-this._loaderStartTime<500)&&this._splashDoneResolve()}}],[{key:"_FullscreenModeNumberToString",value:function(e){switch(e){case 0:return"off"
|
||
case 1:return"crop"
|
||
case 2:return"scale-inner"
|
||
case 3:return"scale-outer"
|
||
case 4:return"letterbox-scale"
|
||
case 5:return"letterbox-integer-scale"
|
||
default:throw Error("invalid fullscreen mode")}}}]),t}(_C148.DefendedBase)
|
||
var _C149=self.C3,_C3Debugger3=self.C3Debugger,_assert15=self.assert,DEFAULT_RUNTIME_OPTS={messagePort:null,baseUrl:"",headless:!1,hasDom:!0,isInWorker:!1,useAudio:!0,projectData:"",exportType:""},ife=!0
|
||
_C149.Runtime=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),e=Object.assign({},DEFAULT_RUNTIME_OPTS,e),r=n.call(this),r._messagePort=e.messagePort,r._baseUrl=e.baseUrl,r._isHeadless=!!e.headless,r._hasDom=!!e.hasDom,r._isInWorker=!!e.isInWorker,ife=e.ife,r._useAudio=!!e.useAudio,r._exportType=e.exportType,r._isiOSCordova=!!e.isiOSCordova,r._isiOSWebView=!!e.isiOSWebView,r._isFBInstantAvailable=!!e.isFBInstantAvailable,r._opusWasmScriptUrl=e.opusWasmScriptUrl,r._opusWasmBinaryUrl=e.opusWasmBinaryUrl,r._isDebug=!("preview"!==r._exportType||!e.isDebug),r._breakpointsEnabled=r._isDebug,r._isDebugging=r._isDebug,r._debuggingDisabled=0,r._additionalLoadPromises=[],r._additionalCreatePromises=[],r._isUsingCreatePromises=!1,r._projectName="",r._projectVersion="",r._projectUniqueId="",r._appId="",r._originalViewportWidth=0,r._originalViewportHeight=0,r._devicePixelRatio=self.devicePixelRatio,r._parallaxXorigin=0,r._parallaxYorigin=0,r._viewportWidth=0,r._viewportHeight=0,r._loaderStyle=0,r._usesLoaderLayout=!1,r._isLoading=!0,r._usesAnyBackgroundBlending=!1,r._loadingLogoFilename="loading-logo.png",r._assetManager=_C149.New(_C149.AssetManager,_assertThisInitialized(r),e),r._layoutManager=_C149.New(_C149.LayoutManager,_assertThisInitialized(r)),r._eventSheetManager=_C149.New(_C149.EventSheetManager,_assertThisInitialized(r)),r._pluginManager=_C149.New(_C149.PluginManager,_assertThisInitialized(r)),r._collisionEngine=_C149.New(_C149.CollisionEngine,_assertThisInitialized(r)),r._timelineManager=_C149.New(_C149.TimelineManager,_assertThisInitialized(r)),r._transitionManager=_C149.New(_C149.TransitionManager,_assertThisInitialized(r)),r._allObjectClasses=[],r._objectClassesByName=new Map,r._objectClassesBySid=new Map,r._familyCount=0,r._allContainers=[],r._allEffectLists=[],r._currentLayoutStack=[],r._instancesPendingCreate=[],r._instancesPendingDestroy=new Map,r._hasPendingInstances=!1,r._isFlushingPendingInstances=!1,r._objectCount=0,r._nextUid=0,r._instancesByUid=new Map,r._instancesToReleaseAtEndOfTick=new Set,r._instancesToReleaseAffectedObjectClasses=new Set,r._objectReferenceTable=[],r._jsPropNameTable=[],r._canvasManager=null,r._framerateMode="vsync",r._compositingMode="standard",r._sampling="trilinear",r._isPixelRoundingEnabled=!1,r._needRender=!0,r._pauseOnBlur=!1,r._isPausedOnBlur=!1,r._tickCallbacks={normal:function(e){r._rafId=-1,r._ruafId=-1,r.Tick(e)},tickOnly:function(e){r._ruafId=-1,r.Tick(e,!1,"skip-render")},renderOnly:function(){r._rafId=-1,r.Render()}},r._rafId=-1,r._ruafId=-1,r._tickCount=0,r._tickCountNoSave=0,r._execCount=0,r._hasStarted=!1,r._isInTick=!1,r._hasStartedTicking=!1,r._isLayoutFirstTick=!0,r._suspendCount=0,r._scheduleTriggersThrottle=new _C149.PromiseThrottle(1),r._randomNumberCallback=function(){return Math.random()},r._startTime=0,r._lastTickTime=0,r._dt1=0,r._dt=0,r._timeScale=1,r._minimumFramerate=30,r._gameTime=_C149.New(_C149.KahanSum),r._wallTime=_C149.New(_C149.KahanSum),r._fpsFrameCount=-1,r._fpsLastTime=0,r._fps=0,r._mainThreadTimeCounter=0,r._mainThreadTime=0,r._isLoadingState=!1,r._saveToSlotName="",r._loadFromSlotName="",r._loadFromJson=null,r._lastSaveJson="",r._projectStorage=null,r._savegamesStorage=null,r._dispatcher=_C149.New(_C149.Event.Dispatcher),r._domEventHandlers=new Map,r._pendingResponsePromises=new Map,r._nextDomResponseId=0,r._didRequestDeviceOrientationEvent=!1,r._didRequestDeviceMotionEvent=!1,r._isReadyToHandleEvents=!1,r._waitingToHandleEvents=[],r._eventObjects={pretick:_C149.New(_C149.Event,"pretick",!1),tick:_C149.New(_C149.Event,"tick",!1),tick2:_C149.New(_C149.Event,"tick2",!1),instancedestroy:_C149.New(_C149.Event,"instancedestroy",!1),beforelayoutchange:_C149.New(_C149.Event,"beforelayoutchange",!1),layoutchange:_C149.New(_C149.Event,"layoutchange",!1)},r._eventObjects.instancedestroy.instance=null,r._userScriptDispatcher=_C149.New(_C149.Event.Dispatcher),r._userScriptEventObjects=null,r._behInstsToTick=_C149.New(_C149.RedBlackSet,_C149.BehaviorInstance.SortByTickSequence),r._behInstsToPostTick=_C149.New(_C149.RedBlackSet,_C149.BehaviorInstance.SortByTickSequence),r._behInstsToTick2=_C149.New(_C149.RedBlackSet,_C149.BehaviorInstance.SortByTickSequence),r._jobScheduler=_C149.New(_C149.JobSchedulerRuntime,_assertThisInitialized(r),e.jobScheduler),e.canvas&&(r._canvasManager=_C149.New(_C149.CanvasManager,_assertThisInitialized(r))),r._messagePort.onmessage=function(e){return r._OnMessageFromDOM(e.data)},r.AddDOMComponentMessageHandler("runtime","visibilitychange",function(e){return r._OnVisibilityChange(e)}),r.AddDOMComponentMessageHandler("runtime","opus-decode",function(e){return r._WasmDecodeWebMOpus(e.arrayBuffer)}),r.AddDOMComponentMessageHandler("runtime","get-remote-preview-status-info",function(){return r._GetRemotePreviewStatusInfo()}),r.AddDOMComponentMessageHandler("runtime","js-invoke-function",function(e){return r._InvokeFunctionFromJS(e)}),r.AddDOMComponentMessageHandler("runtime","go-to-last-error-script",self.goToLastErrorScript),r._dispatcher.addEventListener("window-blur",function(e){return r._OnWindowBlur(e)}),r._dispatcher.addEventListener("window-focus",function(){return r._OnWindowFocus()}),r._timelineManager.AddRuntimeListeners(),r._iRuntime=null,r._interfaceMap=new WeakMap,r._commonScriptInterfaces={keyboard:null,mouse:null,touch:null},r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C149.clearArray(this._allObjectClasses),this._objectClassesByName.clear(),this._objectClassesBySid.clear(),this._layoutManager.Release(),this._layoutManager=null,this._eventSheetManager.Release(),this._eventSheetManager=null,this._pluginManager.Release(),this._pluginManager=null,this._assetManager.Release(),this._assetManager=null,this._collisionEngine.Release(),this._collisionEngine=null,this._timelineManager.Release(),this._timelineManager=null,this._transitionManager.Release(),this._transitionManager=null,this._canvasManager&&(this._canvasManager.Release(),this._canvasManager=null),this._dispatcher.Release(),this._dispatcher=null,this._tickEvent=null}},{key:"_OnMessageFromDOM",value:function(e){var t=e.type
|
||
if("event"===t)this._OnEventFromDOM(e)
|
||
else{if("result"!==t)throw Error("unknown message '".concat(t,"'"))
|
||
this._OnResultFromDOM(e)}}},{key:"_OnEventFromDOM",value:function(e){var t=this
|
||
if(!this._isReadyToHandleEvents)return void this._waitingToHandleEvents.push(e)
|
||
var n=e.component,r=e.handler,a=e.data,i=e.dispatchOpts,s=!(!i||!i.dispatchRuntimeEvent),o=!(!i||!i.dispatchUserScriptEvent),u=e.responseId
|
||
if("runtime"===n){if(s){var l=new _C149.Event(r)
|
||
l.data=a,this._dispatcher.dispatchEventAndWaitAsyncSequential(l)}if(o){for(var c=new _C149.Event(r,!0),h=0,_=Object.entries(a);h<_.length;h++){var f=_slicedToArray(_[h],2),d=f[0],p=f[1]
|
||
c[d]=p}this.DispatchUserScriptEvent(c)}}var v=this._domEventHandlers.get(n)
|
||
if(!v)return void(s||o||console.warn("[Runtime] No DOM event handlers for component '".concat(n,"'")))
|
||
var m=v.get(r)
|
||
if(!m)return void(s||o||console.warn("[Runtime] No DOM handler '".concat(r,"' for component '").concat(n,"'")))
|
||
var y=null
|
||
try{y=m(a)}catch(g){return console.error("Exception in '".concat(n,"' handler '").concat(r,"':"),g),void(null!==u&&this._PostResultToDOM(u,!1,""+g))}null!==u&&(y&&y.then?y.then(function(e){return t._PostResultToDOM(u,!0,e)})["catch"](function(e){console.error("Rejection from '".concat(n,"' handler '").concat(r,"':"),e),t._PostResultToDOM(u,!1,""+e)}):this._PostResultToDOM(u,!0,y))}},{key:"_PostResultToDOM",value:function(e,t,n){this._messagePort.postMessage({type:"result",responseId:e,isOk:t,result:n})}},{key:"_OnResultFromDOM",value:function(e){var t=e.responseId,n=e.isOk,r=e.result,a=this._pendingResponsePromises.get(t)
|
||
n?a.resolve(r):a.reject(r),this._pendingResponsePromises["delete"](t)}},{key:"AddDOMComponentMessageHandler",value:function(e,t,n){var r=this._domEventHandlers.get(e)
|
||
if(r||(r=new Map,this._domEventHandlers.set(e,r)),r.has(t))throw Error("[Runtime] Component '".concat(e,"' already has handler '").concat(t,"'"))
|
||
r.set(t,n)}},{key:"PostComponentMessageToDOM",value:function(e,t,n){this._messagePort.postMessage({type:"event",component:e,handler:t,data:n,responseId:null})}},{key:"PostComponentMessageToDOMAsync",value:function(e,t,n){var r=this,a=this._nextDomResponseId++,i=new Promise(function(e,t){r._pendingResponsePromises.set(a,{resolve:e,reject:t})})
|
||
return this._messagePort.postMessage({type:"event",component:e,handler:t,data:n,responseId:a}),i}},{key:"PostToDebugger",value:function(e){if(!this.IsDebug())throw Error("not in debug mode")
|
||
this.PostComponentMessageToDOM("runtime","post-to-debugger",e)}},{key:"Init",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a,i,s,o,u,l,c,h
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this.IsDebug()){n.next=5
|
||
break}return n.next=3,_C3Debugger3.Init(this)
|
||
case 3:n.next=6
|
||
break
|
||
case 5:self.C3Debugger&&self.C3Debugger.InitPreview(this)
|
||
case 6:return n.next=8,Promise.all([this._assetManager.FetchJson("data.json"),this._MaybeLoadOpusDecoder(),this._jobScheduler.Init()])
|
||
case 8:return t=n.sent,r=_slicedToArray(t,1),a=r[0],this._LoadDataJson(a),n.next=14,this._InitialiseCanvas(e)
|
||
case 14:this.IsPreview()||console.info("Made with Construct 3, the game and app creator :: https://www.construct.net"),i=this.GetWebGLRenderer(),console.info("[C3 runtime] Hosted in ".concat(this.IsInWorker()?"worker":"DOM",", using ").concat(this._assetManager.GetScriptsType()," scripts, rendering with WebGL ").concat(i.GetWebGLVersionNumber()," [").concat(i.GetUnmaskedRenderer(),"] (").concat(i.IsDesynchronized()?"desynchronized":"standard"," compositing)")),i.HasMajorPerformanceCaveat()&&console.warn("[C3 runtime] WebGL indicates a major performance caveat. Software rendering may be in use. This can result in significantly degraded performance."),this._isReadyToHandleEvents=!0,s=_createForOfIteratorHelper(this._waitingToHandleEvents)
|
||
try{for(s.s();!(o=s.n()).done;)u=o.value,this._OnEventFromDOM(u)}catch(_){s.e(_)}finally{s.f()}_C149.clearArray(this._waitingToHandleEvents),this._canvasManager&&this._canvasManager.StartLoadingScreen(),l=_createForOfIteratorHelper(e.runOnStartupFunctions)
|
||
try{for(l.s();!(c=l.n()).done;)h=c.value,this._additionalLoadPromises.push(this._RunOnStartupFunction(h))}catch(_){l.e(_)}finally{l.f()}return n.next=27,Promise.all([this._assetManager.WaitForAllToLoad()].concat(_toConsumableArray(this._additionalLoadPromises)))
|
||
case 27:if(_C149.clearArray(this._additionalLoadPromises),!this._assetManager.HasHadErrorLoading()){n.next=31
|
||
break}return this._canvasManager&&this._canvasManager.HideCordovaSplashScreen(),n.abrupt("return")
|
||
case 31:if(!this._canvasManager){n.next=34
|
||
break}return n.next=34,this._canvasManager.EndLoadingScreen()
|
||
case 34:return n.next=36,this._dispatcher.dispatchEventAndWaitAsync(new _C149.Event("beforeruntimestart"))
|
||
case 36:return n.next=38,this.Start()
|
||
case 38:return this._messagePort.postMessage({type:"runtime-ready"}),n.abrupt("return",this)
|
||
case 40:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_RunOnStartupFunction",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,e(this._iRuntime)
|
||
case 3:t.next=8
|
||
break
|
||
case 5:t.prev=5,t.t0=t["catch"](0),console.error("[C3 runtime] Error in runOnStartup function: ",t.t0)
|
||
case 8:case"end":return t.stop()}},n,this,[[0,5]])}))
|
||
return e}()},{key:"_LoadDataJson",value:function(e){var t=this,n=e.project
|
||
this._projectName=n[0],this._projectVersion=n[16],this._projectUniqueId=n[31],this._appId=n[38],this._loadingLogoFilename=n[39],this._isPixelRoundingEnabled=!!n[9],this._originalViewportWidth=this._viewportWidth=n[10],this._originalViewportHeight=this._viewportHeight=n[11],this._parallaxXorigin=this._originalViewportWidth/2,this._parallaxYorigin=this._originalViewportHeight/2,this._compositingMode=n[36],this._framerateMode=n[37],"low-latency"===this._compositingMode&&this.IsAndroidWebView()&&_C149.Platform.BrowserVersionNumber<=77&&(console.warn("[C3 runtime] Desynchronized (low-latency) compositing is enabled, but is disabled in the Android WebView <=77 due to crbug.com/1008842. Reverting to synchronized (standard) compositing."),this._compositingMode="standard"),this._sampling=n[14],this._usesLoaderLayout=!!n[18],this._loaderStyle=n[19],this._nextUid=n[21],this._pauseOnBlur=n[22],this._assetManager._SetAudioFiles(n[7],n[25]),this._assetManager._SetMediaSubfolder(n[8]),this._assetManager._SetFontsSubfolder(n[32]),this._assetManager._SetIconsSubfolder(n[28]),this._assetManager._SetWebFonts(n[29]),this._canvasManager&&(this._canvasManager.SetFullscreenMode(_C149.CanvasManager._FullscreenModeNumberToString(n[12])),this._canvasManager.SetFullscreenScalingQuality(n[23]?"high":"low"),this._canvasManager.SetMipmapsEnabled(0!==n[24]),this._canvasManager._SetGPUPowerPreference(n[34])),this._pluginManager.CreateSystemPlugin(),this._objectReferenceTable=self.C3_GetObjectRefTable()
|
||
var r,a=_createForOfIteratorHelper(n[2])
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
this._pluginManager.CreatePlugin(i)}}catch(s){a.e(s)}finally{a.f()}this._objectReferenceTable=self.C3_GetObjectRefTable(),this._LoadJsPropNameTable()
|
||
var o,u=_createForOfIteratorHelper(n[3])
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value,c=_C149.ObjectClass.Create(this,this._allObjectClasses.length,l)
|
||
this._allObjectClasses.push(c),this._objectClassesByName.set(c.GetName().toLowerCase(),c),this._objectClassesBySid.set(c.GetSID(),c)}}catch(s){u.e(s)}finally{u.f()}var h,_=_createForOfIteratorHelper(n[4])
|
||
try{for(_.s();!(h=_.n()).done;){var f=h.value,d=this._allObjectClasses[f[0]]
|
||
d._LoadFamily(f)}}catch(s){_.e(s)}finally{_.f()}var p,v=_createForOfIteratorHelper(n[27])
|
||
try{for(v.s();!(p=v.n()).done;){var m=p.value,y=m.map(function(e){return t._allObjectClasses[e]})
|
||
this._allContainers.push(_C149.New(_C149.Container,this,y))}}catch(s){v.e(s)}finally{v.f()}var g,C=_createForOfIteratorHelper(this._allObjectClasses)
|
||
try{for(C.s();!(g=C.n()).done;){var S=g.value
|
||
S._OnAfterCreate()}}catch(s){C.e(s)}finally{C.f()}var k,I=_createForOfIteratorHelper(n[5])
|
||
try{for(I.s();!(k=I.n()).done;){var T=k.value
|
||
this._layoutManager.Create(T)}}catch(s){I.e(s)}finally{I.f()}var G=n[1]
|
||
if(G){var b=this._layoutManager.GetLayoutByName(G)
|
||
b&&this._layoutManager.SetFirstLayout(b)}var A,E=_createForOfIteratorHelper(n[33])
|
||
try{for(E.s();!(A=E.n()).done;){var R=A.value
|
||
this._timelineManager.Create(R)}}catch(s){E.e(s)}finally{E.f()}var x,P=_createForOfIteratorHelper(n[35])
|
||
try{for(P.s();!(x=P.n()).done;){var M=x.value
|
||
this._transitionManager.Create(M)}}catch(s){P.e(s)}finally{P.f()}this._InitScriptInterfaces()
|
||
var O,w=_createForOfIteratorHelper(n[6])
|
||
try{for(w.s();!(O=w.n()).done;){var D=O.value
|
||
this._eventSheetManager.Create(D)}}catch(s){w.e(s)}finally{w.f()}this._eventSheetManager._PostInit(),this._InitGlobalVariableScriptInterface(),_C149.clearArray(this._objectReferenceTable),this.FlushPendingInstances()
|
||
var L="any",F=n[20]
|
||
1===F?L="portrait":2===F&&(L="landscape"),this.PostComponentMessageToDOM("runtime","set-target-orientation",{targetOrientation:L})}},{key:"GetLoaderStyle",value:function(){return this._loaderStyle}},{key:"IsFBInstantAvailable",value:function(){return this._isFBInstantAvailable}},{key:"IsLoading",value:function(){return this._isLoading}},{key:"AddLoadPromise",value:function(e){this._additionalLoadPromises.push(e)}},{key:"SetUsingCreatePromises",value:function(e){this._isUsingCreatePromises=!!e}},{key:"AddCreatePromise",value:function(e){this._isUsingCreatePromises&&this._additionalCreatePromises.push(e)}},{key:"GetCreatePromises",value:function(){return this._additionalCreatePromises}},{key:"_GetNextFamilyIndex",value:function(){return this._familyCount++}},{key:"GetFamilyCount",value:function(){return this._familyCount}},{key:"_AddEffectList",value:function(e){this._allEffectLists.push(e)}},{key:"_GetAllEffectLists",value:function(){return this._allEffectLists}},{key:"_InitialiseCanvas",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(this._canvasManager){t.next=2
|
||
break}return t.abrupt("return")
|
||
case 2:return t.next=4,this._canvasManager.CreateCanvas(e)
|
||
case 4:this._canvasManager.InitLoadingScreen(this._loaderStyle)
|
||
case 5:case"end":return t.stop()}},n,this)}))
|
||
return e}()},{key:"_MaybeLoadOpusDecoder",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this._assetManager.IsAudioFormatSupported("audio/webm; codecs=opus")){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:if(e=null,t=null,n.prev=4,!this.IsiOSCordova()||"file:"!==location.protocol){n.next=11
|
||
break}return n.next=8,this._assetManager.CordovaFetchLocalFileAsArrayBuffer(this._opusWasmBinaryUrl)
|
||
case 8:t=n.sent,n.next=14
|
||
break
|
||
case 11:return n.next=13,this._assetManager.FetchBlob(this._opusWasmBinaryUrl)
|
||
case 13:e=n.sent
|
||
case 14:n.next=20
|
||
break
|
||
case 16:return n.prev=16,n.t0=n["catch"](4),console.info("Failed to fetch Opus decoder WASM; assuming project has no Opus audio.",n.t0),n.abrupt("return")
|
||
case 20:return t?this.AddJobWorkerBuffer(t,"opus-decoder-wasm"):this.AddJobWorkerBlob(e,"opus-decoder-wasm"),n.next=23,this.AddJobWorkerScripts([this._opusWasmScriptUrl])
|
||
case 23:case"end":return n.stop()}},n,this,[[4,16]])}))
|
||
return e}()},{key:"_WasmDecodeWebMOpus",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this.AddJob("OpusDecode",{arrayBuffer:e},[e])
|
||
case 2:return t=n.sent,n.abrupt("return",t)
|
||
case 4:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"Start",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i,s,o,u,l=this
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this._hasStarted=!0,this._startTime=Date.now(),this._usesLoaderLayout){e=_createForOfIteratorHelper(this._allObjectClasses)
|
||
try{for(e.s();!(t=e.n()).done;)r=t.value,r.IsFamily()||r.IsOnLoaderLayout()||!r.IsWorldType()||r.OnCreate()}catch(c){e.e(c)}finally{e.f()}this._assetManager.WaitForAllToLoad().then(function(){l._isLoading=!1,l._OnLoadFinished()})}else this._isLoading=!1
|
||
this._assetManager.SetInitialLoadFinished(),this.IsDebug()&&_C3Debugger3.RuntimeInit(ife),a=_createForOfIteratorHelper(this._layoutManager.GetAllLayouts())
|
||
try{for(a.s();!(i=a.n()).done;)s=i.value,s._CreateGlobalNonWorlds()}catch(c){a.e(c)}finally{a.f()}return o=this._layoutManager.GetFirstLayout(),n.next=10,o._Load(null,this.GetWebGLRenderer())
|
||
case 10:return n.next=12,o._StartRunning(!0)
|
||
case 12:return this._fpsLastTime=performance.now(),this._usesLoaderLayout||this._OnLoadFinished(),n.next=16,this.PostComponentMessageToDOMAsync("runtime","before-start-ticking")
|
||
case 16:u=n.sent,u.isSuspended?this._suspendCount++:this.Tick()
|
||
case 18:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_OnLoadFinished",value:function(){this.Trigger(_C149.Plugins.System.Cnds.OnLoadFinished,null,null),this.PostComponentMessageToDOM("runtime","register-sw")}},{key:"GetObjectReference",value:function(e){e=Math.floor(e)
|
||
var t=this._objectReferenceTable
|
||
if(0>e||e>=t.length)throw Error("invalid object reference")
|
||
return t[e]}},{key:"_LoadJsPropNameTable",value:function(){var e,t=_createForOfIteratorHelper(self.C3_JsPropNameTable)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value,r=_C149.first(Object.keys(n))
|
||
this._jsPropNameTable.push(r)}}catch(a){t.e(a)}finally{t.f()}}},{key:"GetJsPropName",value:function(e){e=Math.floor(e)
|
||
var t=this._jsPropNameTable
|
||
if(0>e||e>=t.length)throw Error("invalid prop reference")
|
||
return t[e]}},{key:"HasDOM",value:function(){return this._hasDom}},{key:"IsHeadless",value:function(){return this._isHeadless}},{key:"IsInWorker",value:function(){return this._isInWorker}},{key:"GetBaseURL",value:function(){return this._baseUrl}},{key:"GetEventSheetManager",value:function(){return this._eventSheetManager}},{key:"GetEventStack",value:function(){return this._eventSheetManager.GetEventStack()}},{key:"GetCurrentEventStackFrame",value:function(){return this._eventSheetManager.GetCurrentEventStackFrame()}},{key:"GetCurrentEvent",value:function(){return this._eventSheetManager.GetCurrentEvent()}},{key:"GetCurrentCondition",value:function(){return this._eventSheetManager.GetCurrentCondition()}},{key:"IsCurrentConditionFirst",value:function(){return 0===this.GetCurrentEventStackFrame().GetConditionIndex()}},{key:"GetCurrentAction",value:function(){return this._eventSheetManager.GetCurrentAction()}},{key:"GetPluginManager",value:function(){return this._pluginManager}},{key:"GetSystemPlugin",value:function(){return this._pluginManager.GetSystemPlugin()}},{key:"GetObjectClassByIndex",value:function(e){if(e=Math.floor(e),0>e||e>=this._allObjectClasses.length)throw new RangeError("invalid index")
|
||
return this._allObjectClasses[e]}},{key:"GetObjectClassByName",value:function(e){return this._objectClassesByName.get(e.toLowerCase())||null}},{key:"GetObjectClassBySID",value:function(e){return this._objectClassesBySid.get(e)||null}},{key:"GetSingleGlobalObjectClassByCtor",value:function(e){var t=this._pluginManager.GetPluginByConstructorFunction(e)
|
||
return t?t.GetSingleGlobalObjectClass():null}},{key:"GetAllObjectClasses",value:function(){return this._allObjectClasses}},{key:"Dispatcher",value:function(){return this._dispatcher}},{key:"UserScriptDispatcher",value:function(){return this._userScriptDispatcher}},{key:"DispatchUserScriptEvent",value:function(e){e.runtime=this.GetIRuntime()
|
||
var t=this.IsDebug()&&!this._eventSheetManager.IsInEventEngine()
|
||
t&&_C3Debugger3.StartMeasuringScriptTime(),this._userScriptDispatcher.dispatchEvent(e),t&&_C3Debugger3.AddScriptTime()}},{key:"DispatchUserScriptEventAsyncWait",value:function(e){return e.runtime=this.GetIRuntime(),this._userScriptDispatcher.dispatchEventAndWaitAsync(e)}},{key:"GetOriginalViewportWidth",value:function(){return this._originalViewportWidth}},{key:"GetOriginalViewportHeight",value:function(){return this._originalViewportHeight}},{key:"SetOriginalViewportSize",value:function(e,t){this._originalViewportWidth=e,this._originalViewportHeight=t}},{key:"GetViewportWidth",value:function(){return this._viewportWidth}},{key:"GetViewportHeight",value:function(){return this._viewportHeight}},{key:"SetViewportSize",value:function(e,t){this._viewportWidth=e,this._viewportHeight=t}},{key:"_SetDevicePixelRatio",value:function(e){this._devicePixelRatio=e}},{key:"GetDevicePixelRatio",value:function(){return this._devicePixelRatio}},{key:"GetParallaxXOrigin",value:function(){return this._parallaxXorigin}},{key:"GetParallaxYOrigin",value:function(){return this._parallaxYorigin}},{key:"GetCanvasManager",value:function(){return this._canvasManager}},{key:"GetDrawWidth",value:function(){return this._canvasManager?this._canvasManager.GetDrawWidth():this._viewportWidth}},{key:"GetDrawHeight",value:function(){return this._canvasManager?this._canvasManager.GetDrawHeight():this._viewportHeight}},{key:"GetRenderScale",value:function(){return this._canvasManager?this._canvasManager.GetRenderScale():1}},{key:"GetDisplayScale",value:function(){return this._canvasManager?this._canvasManager.GetDisplayScale():1}},{key:"GetCanvasClientX",value:function(){return this._canvasManager?this._canvasManager.GetCanvasClientX():0}},{key:"GetCanvasClientY",value:function(){return this._canvasManager?this._canvasManager.GetCanvasClientY():0}},{key:"GetCanvasCssWidth",value:function(){return this._canvasManager?this._canvasManager.GetCssWidth():0}},{key:"GetCanvasCssHeight",value:function(){return this._canvasManager?this._canvasManager.GetCssHeight():0}},{key:"GetFullscreenMode",value:function(){return this._canvasManager?this._canvasManager.GetFullscreenMode():"off"}},{key:"GetAdditionalRenderTarget",value:function(e){return this._canvasManager?this._canvasManager.GetAdditionalRenderTarget(e):null}},{key:"ReleaseAdditionalRenderTarget",value:function(e){this._canvasManager&&this._canvasManager.ReleaseAdditionalRenderTarget(e)}},{key:"_SetUsesAnyBackgroundBlending",value:function(e){this._usesAnyBackgroundBlending=!!e}},{key:"UsesAnyBackgroundBlending",value:function(){return this._usesAnyBackgroundBlending}},{key:"GetGPUUtilisation",value:function(){return this._canvasManager?this._canvasManager.GetGPUUtilisation():NaN}},{key:"IsLinearSampling",value:function(){return"nearest"!==this.GetSampling()}},{key:"GetFramerateMode",value:function(){return this._framerateMode}},{key:"GetCompositingMode",value:function(){return this._compositingMode}},{key:"GetSampling",value:function(){return this._sampling}},{key:"UsesLoaderLayout",value:function(){return this._usesLoaderLayout}},{key:"GetLoadingLogoFilename",value:function(){return this._loadingLogoFilename}},{key:"GetLayoutManager",value:function(){return this._layoutManager}},{key:"GetMainRunningLayout",value:function(){return this._layoutManager.GetMainRunningLayout()}},{key:"GetTimelineManager",value:function(){return this._timelineManager}},{key:"GetTransitionManager",value:function(){return this._transitionManager}},{key:"GetAssetManager",value:function(){return this._assetManager}},{key:"LoadImage",value:function(e){return this._assetManager.LoadImage(e)}},{key:"CreateInstance",value:function(e,t,n,r,a){return this.CreateInstanceFromData(e,t,!1,n,r,!1,a)}},{key:"CreateInstanceFromData",value:function(e,t,n,r,a,i,s){var o=null,u=null
|
||
if(e instanceof _C149.ObjectClass){if(u=e,u.IsFamily()){var l=u.GetFamilyMembers(),c=Math.floor(this.Random()*l.length)
|
||
u=l[c]}o=u.GetDefaultInstanceData()}else o=e,u=this.GetObjectClassByIndex(o[1])
|
||
var h=u.GetPlugin().IsWorldType()
|
||
if(this._isLoading&&h&&!u.IsOnLoaderLayout())return null
|
||
var _=t
|
||
h||(t=null)
|
||
var f
|
||
f=n&&!i&&o&&!this._instancesByUid.has(o[2])?o[2]:this._nextUid++
|
||
var d=o?o[0]:null,p=_C149.New(_C149.Instance,{runtime:this,objectType:u,layer:t,worldData:d,instVarData:o?o[3]:null,uid:f})
|
||
this._instancesByUid.set(f,p)
|
||
var v=null
|
||
if(h&&(v=p.GetWorldInfo(),void 0!==r&&void 0!==a&&(v.SetX(r),v.SetY(a)),u._SetAnyCollisionCellChanged(!0)),t&&(t._AddInstance(p,!0),(1!==t.GetParallaxX()||1!==t.GetParallaxY())&&u._SetAnyInstanceParallaxed(!0),t.GetLayout().MaybeLoadTexturesFor(u)),this._objectCount++,u.IsInContainer()&&!n&&!i){var m,y=_createForOfIteratorHelper(u.GetContainer().objectTypes())
|
||
try{for(y.s();!(m=y.n()).done;){var g=m.value
|
||
if(g!==u){var C=this.CreateInstanceFromData(g,_,!1,v?v.GetX():r,v?v.GetY():a,!0,!1)
|
||
p._AddSibling(C)}}}catch(S){y.e(S)}finally{y.f()}var k,I=_createForOfIteratorHelper(p.siblings())
|
||
try{for(I.s();!(k=I.n()).done;){var T=k.value
|
||
T._AddSibling(p)
|
||
var G,b=_createForOfIteratorHelper(p.siblings())
|
||
try{for(b.s();!(G=b.n()).done;){var A=G.value
|
||
T!==A&&T._AddSibling(A)}}catch(S){b.e(S)}finally{b.f()}}}catch(S){I.e(S)}finally{I.f()}}if(h&&!n&&s&&this._CreateChildInstancesFromData(p,d,v,t,r,a),u.IsInContainer()&&!n&&!i&&s){var E,R=_createForOfIteratorHelper(p.siblings())
|
||
try{for(R.s();!(E=R.n()).done;){var x=E.value,P=x.GetWorldInfo(),M=x.GetObjectClass().GetDefaultInstanceData()[0]
|
||
this._CreateChildInstancesFromData(x,M,P,t,P.GetX(),P.GetY())}}catch(S){R.e(S)}finally{R.f()}}if(!i&&s){void 0===r&&(r=d[0]),void 0===a&&(a=d[1])
|
||
var O=v.GetTopParent(),w=r-v.GetX()+O.GetX(),D=a-v.GetY()+O.GetY()
|
||
O.SetXY(w,D)}u._SetIIDsStale()
|
||
var L=o?_C149.cloneArray(o[5]):null,F=o?o[4].map(function(e){return _C149.cloneArray(e)}):null,B=h&&d&&14===d.length
|
||
if(B&&p._SetHasTilemap(),p._CreateSdkInstance(L,F),B){var N=d[13]
|
||
p.GetSdkInstance().LoadTilemapData(N[2],N[0],N[1])}return this._instancesPendingCreate.push(p),this._hasPendingInstances=!0,this.IsDebug()&&_C3Debugger3.InstanceCreated(p),p}},{key:"_CreateChildInstancesFromData",value:function(e,t,n,r,a,i){var s=n.GetSceneGraphChildrenExportData()
|
||
if(s){void 0===a&&(a=t[0]),void 0===i&&(i=t[1])
|
||
var o,u=new Set,l=t[0],c=t[1],h=_createForOfIteratorHelper(s)
|
||
try{for(h.s();!(o=h.n()).done;){var _=o.value,f=_[0],d=_[1],p=_[2],v=_[3],m=!!_[4],y=this._layoutManager.GetLayoutBySID(f),g=y.GetLayer(d),C=g.GetInitialInstanceData(p),S=this.GetObjectClassByIndex(C[1]),k=e.HasSibling(S),I=u.has(S)
|
||
if(k&&!I&&m){var T=e.GetSibling(S),G=a+C[0][0]-l,b=i+C[0][1]-c
|
||
T.GetWorldInfo().SetXY(G,b),e.AddChild(T,{transformX:!!(v>>0&1),transformY:!!(v>>1&1),transformWidth:!!(v>>2&1),transformHeight:!!(v>>3&1),transformAngle:!!(v>>4&1),destroyWithParent:!!(v>>5&1),transformZElevation:!!(v>>6&1)}),u.add(S)}else{var A=a+C[0][0]-l,E=i+C[0][1]-c,R=this.CreateInstanceFromData(C,r,!1,A,E,!1,!0)
|
||
e.AddChild(R,{transformX:!!(v>>0&1),transformY:!!(v>>1&1),transformWidth:!!(v>>2&1),transformHeight:!!(v>>3&1),transformAngle:!!(v>>4&1),destroyWithParent:!!(v>>5&1),transformZElevation:!!(v>>6&1)})}}}catch(x){h.e(x)}finally{h.f()}}}},{key:"DestroyInstance",value:function(e){if(!this._instancesToReleaseAtEndOfTick.has(e)){var t=e.GetObjectClass(),n=this._instancesPendingDestroy.get(t)
|
||
if(n){if(n.has(e))return
|
||
n.add(e)}else n=new Set,n.add(e),this._instancesPendingDestroy.set(t,n)
|
||
if(this.IsDebug()&&_C3Debugger3.InstanceDestroyed(e),e._MarkDestroyed(),this._hasPendingInstances=!0,e.IsInContainer()){var r,a=_createForOfIteratorHelper(e.siblings())
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
this.DestroyInstance(i)}}catch(s){a.e(s)}finally{a.f()}}var o,u=_createForOfIteratorHelper(e.children())
|
||
try{for(u.s();!(o=u.n()).done;){var l=o.value
|
||
l.GetDestroyWithParent()&&this.DestroyInstance(l)}}catch(s){u.e(s)}finally{u.f()}if(!this._layoutManager.IsEndingLayout()&&!this._isLoadingState){var c=this.GetEventSheetManager()
|
||
c.BlockFlushingInstances(!0),e._TriggerOnDestroyed(),c.BlockFlushingInstances(!1)}e._FireDestroyedScriptEvents(this._layoutManager.IsEndingLayout())}}},{key:"FlushPendingInstances",value:function(){this._hasPendingInstances&&(this._isFlushingPendingInstances=!0,this._FlushInstancesPendingCreate(),this._FlushInstancesPendingDestroy(),this._isFlushingPendingInstances=!1,this._hasPendingInstances=!1,this.UpdateRender())}},{key:"_FlushInstancesPendingCreate",value:function(){var e,t=_createForOfIteratorHelper(this._instancesPendingCreate)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value,r=n.GetObjectClass()
|
||
r._AddInstance(n)
|
||
var a,i=_createForOfIteratorHelper(r.GetFamilies())
|
||
try{for(i.s();!(a=i.n()).done;){var s=a.value
|
||
s._AddInstance(n),s._SetIIDsStale()}}catch(o){i.e(o)}finally{i.f()}}}catch(o){t.e(o)}finally{t.f()}_C149.clearArray(this._instancesPendingCreate)}},{key:"_FlushInstancesPendingDestroy",value:function(){this._dispatcher.SetDelayRemoveEventsEnabled(!0)
|
||
var e,t=_createForOfIteratorHelper(this._instancesPendingDestroy.entries())
|
||
try{for(t.s();!(e=t.n()).done;){var n=_slicedToArray(e.value,2),r=n[0],a=n[1]
|
||
this._FlushInstancesPendingDestroyForObjectClass(r,a),a.clear()}}catch(i){t.e(i)}finally{t.f()}this._instancesPendingDestroy.clear(),this._dispatcher.SetDelayRemoveEventsEnabled(!1)}},{key:"_FlushInstancesPendingDestroyForObjectClass",value:function(e,t){var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value,i=this._eventObjects.instancedestroy
|
||
i.instance=a,this._dispatcher.dispatchEvent(i),this._instancesByUid["delete"](a.GetUID())
|
||
var s=a.GetWorldInfo()
|
||
s&&(s._RemoveFromCollisionCells(),s._RemoveFromRenderCells()),this._instancesToReleaseAtEndOfTick.add(a),this._objectCount--}}catch(o){r.e(o)}finally{r.f()}_C149.arrayRemoveAllInSet(e.GetInstances(),t),e._SetIIDsStale(),this._instancesToReleaseAffectedObjectClasses.add(e),0===e.GetInstances().length&&e._SetAnyInstanceParallaxed(!1)
|
||
var u,l=_createForOfIteratorHelper(e.GetFamilies())
|
||
try{for(l.s();!(u=l.n()).done;){var c=u.value
|
||
_C149.arrayRemoveAllInSet(c.GetInstances(),t),c._SetIIDsStale(),this._instancesToReleaseAffectedObjectClasses.add(c)}}catch(o){l.e(o)}finally{l.f()}if(e.GetPlugin().IsWorldType()){var h,_=new Set(_toConsumableArray(t).map(function(e){return e.GetWorldInfo().GetLayer()})),f=_createForOfIteratorHelper(_)
|
||
try{for(f.s();!(h=f.n()).done;){var d=h.value
|
||
d._RemoveAllInstancesInSet(t)}}catch(o){f.e(o)}finally{f.f()}}}},{key:"_GetInstancesPendingCreate",value:function(){return this._instancesPendingCreate}},{key:"_GetNewUID",value:function(){return this._nextUid++}},{key:"_MapInstanceByUID",value:function(e,t){this._instancesByUid.set(e,t)}},{key:"_OnWebGLContextLost",value:function(){this._dispatcher.dispatchEvent(_C149.New(_C149.Event,"webglcontextlost")),this.SetSuspended(!0)
|
||
var e,t=_createForOfIteratorHelper(this._allObjectClasses)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
!n.IsFamily()&&n.HasLoadedTextures()&&n.ReleaseTextures()}}catch(r){t.e(r)}finally{t.f()}var a=this.GetMainRunningLayout()
|
||
a&&a._OnWebGLContextLost(),_C149.ImageInfo.OnWebGLContextLost(),_C149.ImageAsset.OnWebGLContextLost()}},{key:"_OnWebGLContextRestored",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.GetMainRunningLayout()._Load(null,this.GetWebGLRenderer())
|
||
case 2:this._dispatcher.dispatchEvent(_C149.New(_C149.Event,"webglcontextrestored")),this.SetSuspended(!1),this.UpdateRender()
|
||
case 5:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnVisibilityChange",value:function(e){this.SetSuspended(e.hidden)}},{key:"_OnWindowBlur",value:function(e){this.IsPreview()&&this._pauseOnBlur&&!_C149.Platform.IsMobile&&(e.data.parentHasFocus||(this.SetSuspended(!0),this._isPausedOnBlur=!0))}},{key:"_OnWindowFocus",value:function(){this._isPausedOnBlur&&(this.SetSuspended(!1),this._isPausedOnBlur=!1)}},{key:"_RequestAnimationFrame",value:function(){var e=this._tickCallbacks
|
||
"vsync"===this._framerateMode?-1===this._rafId&&(this._rafId=_C149.RequestPostAnimationFrame(e.normal)):"unlimited-tick"===this._framerateMode?(-1===this._ruafId&&(this._ruafId=_C149.RequestUnlimitedAnimationFrame(e.tickOnly)),-1===this._rafId&&(this._rafId=_C149.RequestPostAnimationFrame(e.renderOnly))):-1===this._ruafId&&(this._ruafId=_C149.RequestUnlimitedAnimationFrame(e.normal))}},{key:"_CancelAnimationFrame",value:function(){-1!==this._rafId&&(_C149.CancelPostAnimationFrame(this._rafId),this._rafId=-1),-1!==this._ruafId&&(_C149.CancelUnlimitedAnimationFrame(this._ruafId),this._ruafId=-1)}},{key:"IsSuspended",value:function(){return this._suspendCount>0}},{key:"SetSuspended",value:function(e){var t=this.IsSuspended()
|
||
this._suspendCount+=e?1:-1,this._suspendCount<0&&(this._suspendCount=0)
|
||
var n=this.IsSuspended()
|
||
if(!t&&n)console.log("[Construct 3] Suspending"),this._CancelAnimationFrame(),this._dispatcher.dispatchEvent(_C149.New(_C149.Event,"suspend")),this.Trigger(_C149.Plugins.System.Cnds.OnSuspend,null,null)
|
||
else if(t&&!n){console.log("[Construct 3] Resuming")
|
||
var r=performance.now()
|
||
this._lastTickTime=r,this._fpsLastTime=r,this._fpsFrameCount=0,this._fps=0,this._mainThreadTime=0,this._mainThreadTimeCounter=0,this._dispatcher.dispatchEvent(_C149.New(_C149.Event,"resume")),this.Trigger(_C149.Plugins.System.Cnds.OnResume,null,null),this.HitBreakpoint()||this.Tick(r)}}},{key:"_AddBehInstToTick",value:function(e){this._behInstsToTick.Add(e)}},{key:"_AddBehInstToPostTick",value:function(e){this._behInstsToPostTick.Add(e)}},{key:"_AddBehInstToTick2",value:function(e){this._behInstsToTick2.Add(e)}},{key:"_RemoveBehInstToTick",value:function(e){this._behInstsToTick.Remove(e)}},{key:"_RemoveBehInstToPostTick",value:function(e){this._behInstsToPostTick.Remove(e)}},{key:"_RemoveBehInstToTick2",value:function(e){this._behInstsToTick2.Remove(e)}},{key:"_BehaviorTick",value:function(){this._behInstsToTick.SetQueueingEnabled(!0)
|
||
var e,t=_createForOfIteratorHelper(this._behInstsToTick)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Tick()}}catch(r){t.e(r)}finally{t.f()}this._behInstsToTick.SetQueueingEnabled(!1)}},{key:"_BehaviorPostTick",value:function(){this._behInstsToPostTick.SetQueueingEnabled(!0)
|
||
var e,t=_createForOfIteratorHelper(this._behInstsToPostTick)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.PostTick()}}catch(r){t.e(r)}finally{t.f()}this._behInstsToPostTick.SetQueueingEnabled(!1)}},{key:"_BehaviorTick2",value:function(){this._behInstsToTick2.SetQueueingEnabled(!0)
|
||
var e,t=_createForOfIteratorHelper(this._behInstsToTick2)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.Tick2()}}catch(r){t.e(r)}finally{t.f()}this._behInstsToTick2.SetQueueingEnabled(!1)}},{key:"_DebugBehaviorTick",value:_regeneratorRuntime().mark(function r(){var e,t,n,a
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:this._behInstsToTick.SetQueueingEnabled(!0),e=_createForOfIteratorHelper(this._behInstsToTick),r.prev=2,e.s()
|
||
case 4:if((t=e.n()).done){r.next=11
|
||
break}if(n=t.value,a=n.Tick(),!_C149.IsIterator(a)){r.next=9
|
||
break}return r.delegateYield(a,"t0",9)
|
||
case 9:r.next=4
|
||
break
|
||
case 11:r.next=16
|
||
break
|
||
case 13:r.prev=13,r.t1=r["catch"](2),e.e(r.t1)
|
||
case 16:return r.prev=16,e.f(),r.finish(16)
|
||
case 19:this._behInstsToTick.SetQueueingEnabled(!1)
|
||
case 20:case"end":return r.stop()}},r,this,[[2,13,16,19]])})},{key:"_DebugBehaviorPostTick",value:_regeneratorRuntime().mark(function a(){var e,t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:this._behInstsToPostTick.SetQueueingEnabled(!0),e=_createForOfIteratorHelper(this._behInstsToPostTick),a.prev=2,e.s()
|
||
case 4:if((t=e.n()).done){a.next=11
|
||
break}if(n=t.value,r=n.PostTick(),!_C149.IsIterator(r)){a.next=9
|
||
break}return a.delegateYield(r,"t0",9)
|
||
case 9:a.next=4
|
||
break
|
||
case 11:a.next=16
|
||
break
|
||
case 13:a.prev=13,a.t1=a["catch"](2),e.e(a.t1)
|
||
case 16:return a.prev=16,e.f(),a.finish(16)
|
||
case 19:this._behInstsToPostTick.SetQueueingEnabled(!1)
|
||
case 20:case"end":return a.stop()}},a,this,[[2,13,16,19]])})},{key:"_DebugBehaviorTick2",value:_regeneratorRuntime().mark(function i(){var e,t,n,r
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:this._behInstsToTick2.SetQueueingEnabled(!0),e=_createForOfIteratorHelper(this._behInstsToTick2),a.prev=2,e.s()
|
||
case 4:if((t=e.n()).done){a.next=11
|
||
break}if(n=t.value,r=n.Tick2(),!_C149.IsIterator(r)){a.next=9
|
||
break}return a.delegateYield(r,"t0",9)
|
||
case 9:a.next=4
|
||
break
|
||
case 11:a.next=16
|
||
break
|
||
case 13:a.prev=13,a.t1=a["catch"](2),e.e(a.t1)
|
||
case 16:return a.prev=16,e.f(),a.finish(16)
|
||
case 19:this._behInstsToTick2.SetQueueingEnabled(!1)
|
||
case 20:case"end":return a.stop()}},i,this,[[2,13,16,19]])})},{key:"Tick",value:function(){function e(e,n,r){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r){var a,i,s,o,u,l,c
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this._hasStartedTicking=!0,a="background-wake"===r,i="background-wake"!==r&&"skip-render"!==r,this._hasStarted&&(!this.IsSuspended()||t||a)){n.next=5
|
||
break}return n.abrupt("return")
|
||
case 5:if(s=performance.now(),this._isInTick=!0,e||(e=s),this._MeasureDt(e),o=this.Step_BeforePreTick(),!this.IsDebugging()){n.next=13
|
||
break}return n.next=13,o
|
||
case 13:if(u=this._dispatcher.dispatchEventAndWait_AsyncOptional(this._eventObjects.pretick),!(u instanceof Promise)){n.next=17
|
||
break}return n.next=17,u
|
||
case 17:if(l=this.Step_AfterPreTick(),!this.IsDebugging()){n.next=21
|
||
break}return n.next=21,l
|
||
case 21:if(!this._NeedsHandleSaveOrLoad()){n.next=24
|
||
break}return n.next=24,this._HandleSaveOrLoad()
|
||
case 24:if(!this.GetLayoutManager().IsPendingChangeMainLayout()){n.next=27
|
||
break}return n.next=27,this._MaybeChangeLayout()
|
||
case 27:if(c=this.Step_RunEventsEtc(),!this.IsDebugging()){n.next=31
|
||
break}return n.next=31,c
|
||
case 31:i&&this.Render(),this.IsSuspended()||a||this._RequestAnimationFrame(),this._tickCount++,this._tickCountNoSave++,this._execCount++,this._isInTick=!1,this._mainThreadTimeCounter+=performance.now()-s
|
||
case 38:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"Step_BeforePreTick",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(e=this._eventSheetManager,t=this.IsDebug(),this.FlushPendingInstances(),e.BlockFlushingInstances(!0),this.PushCurrentLayout(this.GetMainRunningLayout()),t&&_C3Debugger3.StartMeasuringTime(),!this.IsDebugging()){n.next=11
|
||
break}return n.next=9,e.DebugRunScheduledWaits()
|
||
case 9:n.next=12
|
||
break
|
||
case 11:e.RunScheduledWaits()
|
||
case 12:t&&_C3Debugger3.AddEventsTime(),this.PopCurrentLayout(),e.BlockFlushingInstances(!1),this.FlushPendingInstances(),e.BlockFlushingInstances(!0)
|
||
case 17:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"Step_AfterPreTick",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(e=this.IsDebug(),t=this.IsDebugging(),r=this._dispatcher,a=this._eventObjects,i=this._userScriptEventObjects,e&&_C3Debugger3.StartMeasuringTime(),!t){n.next=11
|
||
break}return n.next=9,this.DebugIterateAndBreak(this._DebugBehaviorTick())
|
||
case 9:n.next=12
|
||
break
|
||
case 11:this._BehaviorTick()
|
||
case 12:if(!t){n.next=17
|
||
break}return n.next=15,this.DebugIterateAndBreak(this._DebugBehaviorPostTick())
|
||
case 15:n.next=18
|
||
break
|
||
case 17:this._BehaviorPostTick()
|
||
case 18:if(e&&_C3Debugger3.AddBehaviorTickTime(),e&&_C3Debugger3.StartMeasuringTime(),!t){n.next=25
|
||
break}return n.next=23,this.DebugFireGeneratorEventAndBreak(a.tick)
|
||
case 23:n.next=26
|
||
break
|
||
case 25:r.dispatchEvent(a.tick)
|
||
case 26:e&&_C3Debugger3.AddPluginTickTime(),this._eventSheetManager.BlockFlushingInstances(!1),this.DispatchUserScriptEvent(i.tick)
|
||
case 29:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"Step_RunEventsEtc",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i,s,o,u,l,c,h
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(e=this._eventSheetManager,t=this._dispatcher,r=this._eventObjects,a=this.IsDebug(),i=this.IsDebugging(),a&&_C3Debugger3.StartMeasuringTime(),!i){n.next=11
|
||
break}return n.next=9,e.DebugRunEvents(this._layoutManager)
|
||
case 9:n.next=12
|
||
break
|
||
case 11:e.RunEvents(this._layoutManager)
|
||
case 12:if(a&&_C3Debugger3.AddEventsTime(),this._collisionEngine.ClearRegisteredCollisions(),this._instancesToReleaseAtEndOfTick.size>0){t.SetDelayRemoveEventsEnabled(!0),s=_createForOfIteratorHelper(this._instancesToReleaseAffectedObjectClasses)
|
||
try{for(s.s();!(o=s.n()).done;)u=o.value,u.GetSolStack().RemoveInstances(this._instancesToReleaseAtEndOfTick)}catch(_){s.e(_)}finally{s.f()}this._instancesToReleaseAffectedObjectClasses.clear(),this._eventSheetManager.RemoveInstancesFromScheduledWaits(this._instancesToReleaseAtEndOfTick),l=_createForOfIteratorHelper(this._instancesToReleaseAtEndOfTick)
|
||
try{for(l.s();!(c=l.n()).done;)h=c.value,h.Release()}catch(_){l.e(_)}finally{l.f()}this._instancesToReleaseAtEndOfTick.clear(),t.SetDelayRemoveEventsEnabled(!1)}if(this._isLayoutFirstTick=!1,e.BlockFlushingInstances(!0),a&&_C3Debugger3.StartMeasuringTime(),!i){n.next=23
|
||
break}return n.next=21,this.DebugIterateAndBreak(this._DebugBehaviorTick2())
|
||
case 21:n.next=24
|
||
break
|
||
case 23:this._BehaviorTick2()
|
||
case 24:if(a&&_C3Debugger3.AddBehaviorTickTime(),a&&_C3Debugger3.StartMeasuringTime(),!i){n.next=31
|
||
break}return n.next=29,this.DebugFireGeneratorEventAndBreak(r.tick2)
|
||
case 29:n.next=32
|
||
break
|
||
case 31:t.dispatchEvent(r.tick2)
|
||
case 32:if(a&&_C3Debugger3.AddPluginTickTime(),e.BlockFlushingInstances(!1),!i){n.next=37
|
||
break}return n.next=37,e.RunQueuedDebugTriggersAsync()
|
||
case 37:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_MaybeChangeLayout",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:e=this.GetLayoutManager(),t=0
|
||
case 2:if(!(e.IsPendingChangeMainLayout()&&t++<10)){n.next=7
|
||
break}return n.next=5,this._DoChangeLayout(e.GetPendingChangeMainLayout())
|
||
case 5:n.next=2
|
||
break
|
||
case 7:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_MeasureDt",value:function(e){if(0!==this._lastTickTime){var t=Math.max(e-this._lastTickTime,0)
|
||
this._dt1=t/1e3
|
||
var n=1/this._minimumFramerate
|
||
this._dt1>.5?this._dt1=0:this._dt1>n&&(this._dt1=n)}this._lastTickTime=e,this._dt=this._dt1*this._timeScale,this._gameTime.Add(this._dt),this._wallTime.Add(this._dt1),this._canvasManager&&this._canvasManager._UpdateTick(),e-this._fpsLastTime>=1e3&&(this._fpsLastTime+=1e3,e-this._fpsLastTime>=1e3&&(this._fpsLastTime=e),this._fps=this._fpsFrameCount,this._fpsFrameCount=0,this._mainThreadTime=Math.min(this._mainThreadTimeCounter/1e3,1),this._mainThreadTimeCounter=0,this._canvasManager&&this._canvasManager._Update1sFrameRange(),this._collisionEngine._Update1sStats(),this.IsDebug()&&_C3Debugger3.Update1sPerfStats()),this._fpsFrameCount++}},{key:"_DoChangeLayout",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return t=this._dispatcher,r=this.GetLayoutManager(),a=r.GetMainRunningLayout(),n.next=5,a._StopRunning()
|
||
case 5:return a._Unload(e,this.GetWebGLRenderer()),a===e&&this._eventSheetManager.ClearAllScheduledWaits(),this._collisionEngine.ClearRegisteredCollisions(),t.dispatchEvent(this._eventObjects.beforelayoutchange),_C149.Asyncify.SetHighThroughputMode(!0),n.next=12,e._Load(a,this.GetWebGLRenderer())
|
||
case 12:return _C149.Asyncify.SetHighThroughputMode(!1),n.next=15,e._StartRunning(!1)
|
||
case 15:t.dispatchEvent(this._eventObjects.layoutchange),this.UpdateRender(),this._isLayoutFirstTick=!0,this.FlushPendingInstances()
|
||
case 19:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"UpdateRender",value:function(){this._needRender=!0}},{key:"GetWebGLRenderer",value:function(){return this._canvasManager?this._canvasManager.GetWebGLRenderer():null}},{key:"GetRenderer",value:function(){return this.GetWebGLRenderer()}},{key:"Render",value:function(){if(this._canvasManager&&!this._canvasManager.IsWebGLContextLost()){var e=this.GetWebGLRenderer()
|
||
if(e.Start(),e.CheckForQueryResults(),!this._needRender)return void e.IncrementFrameNumber()
|
||
var t=this.IsDebug()
|
||
t&&_C3Debugger3.StartMeasuringTime(),this._needRender=!1
|
||
var n=null
|
||
e.SupportsGPUProfiling()&&(n=this._canvasManager.GetGPUFrameTimingsBuffer().AddTimeElapsedQuery(),e.StartQuery(n)),e.SetTextureFillMode(),e.SetAlphaBlend(),e.SetColorRgba(1,1,1,1),e.SetRenderTarget(null),e.SetTexture(null)
|
||
var r=this._layoutManager.GetMainRunningLayout()
|
||
r.Draw(e),n&&e.EndQuery(n),e.Finish(),t&&(_C3Debugger3.AddDrawCallsTime(),_C3Debugger3.UpdateInspectHighlight()),this._canvasManager&&this._canvasManager._MaybeTakeSnapshot()}}},{key:"Trigger",value:function(e,t,n){if(!this._hasStarted)return!1
|
||
var r=!this._isInTick&&!this._eventSheetManager.IsInTrigger(),a=0
|
||
r&&(a=performance.now())
|
||
var i=this.IsDebug()
|
||
i&&this.SetDebuggingEnabled(!1)
|
||
var s=this._eventSheetManager._Trigger(this._layoutManager,e,t,n)
|
||
if(r){var o=performance.now()-a
|
||
this._mainThreadTimeCounter+=o,i&&_C3Debugger3.AddTriggersTime(o)}return i&&this.SetDebuggingEnabled(!0),s}},{key:"DebugTrigger",value:function(e,t,n){if(!this.IsDebug())return this.Trigger(e,t,n)
|
||
if(this.HitBreakpoint())throw Error("called DebugTrigger() while stopped on breakpoint")
|
||
if(!this._isInTick&&!this._eventSheetManager.IsInTrigger())throw Error("called DebugTrigger() outside of event code - use TriggerAsync() instead")
|
||
return this._eventSheetManager._DebugTrigger(this._layoutManager,e,t,n)}},{key:"TriggerAsync",value:function(){function e(e,n,r){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r){var a,i,s
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(this.IsDebugging()){n.next=2
|
||
break}return n.abrupt("return",this.Trigger(e,t,r))
|
||
case 2:if(this._hasStarted){n.next=4
|
||
break}return n.abrupt("return",!1)
|
||
case 4:if(!this.HitBreakpoint()){n.next=6
|
||
break}return n.abrupt("return",this._eventSheetManager.QueueDebugTrigger(e,t,r))
|
||
case 6:if(this.GetMainRunningLayout()){n.next=8
|
||
break}return n.abrupt("return",this._eventSheetManager.QueueTrigger(e,t,r))
|
||
case 8:a=performance.now(),i=this._eventSheetManager._DebugTrigger(this._layoutManager,e,t,r),s=i.next()
|
||
case 11:if(s.done){n.next=17
|
||
break}return n.next=14,this.DebugBreak(s.value)
|
||
case 14:s=i.next(),n.next=11
|
||
break
|
||
case 17:if(this.IsSuspended()||this._eventSheetManager.IsInTrigger()){n.next=21
|
||
break}return n.next=20,this._eventSheetManager.RunQueuedDebugTriggersAsync()
|
||
case 20:this._hasStartedTicking&&!this._isInTick&&this._RequestAnimationFrame()
|
||
case 21:return this._mainThreadTimeCounter+=performance.now()-a,n.abrupt("return",s.value)
|
||
case 23:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"FastTrigger",value:function(e,t,n){var r=this.IsDebug()
|
||
r&&this.SetDebuggingEnabled(!1)
|
||
var a=this._eventSheetManager._FastTrigger(this._layoutManager,e,t,n)
|
||
return r&&this.SetDebuggingEnabled(!0),a}},{key:"DebugFastTrigger",value:function(e,t,n){return this._eventSheetManager._DebugFastTrigger(this._layoutManager,e,t,n)}},{key:"ScheduleTriggers",value:function(e){return this._scheduleTriggersThrottle.Add(e)}},{key:"PushCurrentLayout",value:function(e){this._currentLayoutStack.push(e)}},{key:"PopCurrentLayout",value:function(){if(!this._currentLayoutStack.length)throw Error("layout stack empty")
|
||
this._currentLayoutStack.pop()}},{key:"GetCurrentLayout",value:function(){return this._currentLayoutStack.length?this._currentLayoutStack[this._currentLayoutStack.length-1]:this.GetMainRunningLayout()}},{key:"GetDt",value:function(e){return e&&-1!==e.GetTimeScale()?this._dt1*e.GetTimeScale():this._dt}},{key:"_GetDtFast",value:function(){return this._dt}},{key:"GetDt1",value:function(){return this._dt1}},{key:"GetTimeScale",value:function(){return this._timeScale}},{key:"SetTimeScale",value:function(e){(isNaN(e)||0>e)&&(e=0),this._timeScale=e}},{key:"SetMinimumFramerate",value:function(e){this._minimumFramerate=_C149.clamp(e,1,120)}},{key:"GetMinimumFramerate",value:function(){return this._minimumFramerate}},{key:"GetFPS",value:function(){return this._fps}},{key:"GetMainThreadTime",value:function(){return this._mainThreadTime}},{key:"GetStartTime",value:function(){return this._startTime}},{key:"GetGameTime",value:function(){return this._gameTime.Get()}},{key:"GetWallTime",value:function(){return this._wallTime.Get()}},{key:"GetTickCount",value:function(){return this._tickCount}},{key:"GetTickCountNoSave",value:function(){return this._tickCountNoSave}},{key:"IncrementExecCount",value:function(){++this._execCount}},{key:"GetExecCount",value:function(){return this._execCount}},{key:"GetObjectCount",value:function(){return this._objectCount}},{key:"GetProjectName",value:function(){return this._projectName}},{key:"GetProjectVersion",value:function(){return this._projectVersion}},{key:"GetProjectUniqueId",value:function(){return this._projectUniqueId}},{key:"GetAppId",value:function(){return this._appId}},{key:"GetInstanceByUID",value:function(e){if(this._isLoadingState)throw Error("cannot call while loading state - wait until afterload event")
|
||
return this._instancesByUid.get(e)||null}},{key:"_RefreshUidMap",value:function(){this._instancesByUid.clear()
|
||
var e,t=_createForOfIteratorHelper(this._allObjectClasses)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
if(!n.IsFamily()){var r,a=_createForOfIteratorHelper(n.GetInstances())
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
this._instancesByUid.set(i.GetUID(),i)}}catch(s){a.e(s)}finally{a.f()}}}}catch(s){t.e(s)}finally{t.f()}}},{key:"IsPreview",value:function(){return"preview"===this._exportType}},{key:"IsDebug",value:function(){return this._isDebug}},{key:"GetExportType",value:function(){return this._exportType}},{key:"IsCordova",value:function(){return"cordova"===this._exportType}},{key:"IsAndroidWebView",value:function(){return"Android"===_C149.Platform.OS&&("cordova"===this._exportType||"playable-ad"===this._exportType||"instant-games"===this._exportType)}},{key:"IsiOSCordova",value:function(){return this._isiOSCordova}},{key:"IsiOSWebView",value:function(){return this._isiOSWebView}},{key:"GetCollisionEngine",value:function(){return this._collisionEngine}},{key:"GetSolidBehavior",value:function(){return this._pluginManager.GetSolidBehavior()}},{key:"GetJumpthruBehavior",value:function(){return this._pluginManager.GetJumpthruBehavior()}},{key:"IsLayoutFirstTick",value:function(){return this._isLayoutFirstTick}},{key:"SetPixelRoundingEnabled",value:function(e){e=!!e,this._isPixelRoundingEnabled!==e&&(this._isPixelRoundingEnabled=e,this.UpdateRender())}},{key:"IsPixelRoundingEnabled",value:function(){return this._isPixelRoundingEnabled}},{key:"SaveToSlot",value:function(e){this._saveToSlotName=e}},{key:"LoadFromSlot",value:function(e){this._loadFromSlotName=e}},{key:"LoadFromJsonString",value:function(e){this._loadFromJson=e}},{key:"GetLastSaveJsonString",value:function(){return this._lastSaveJson}},{key:"_NeedsHandleSaveOrLoad",value:function(){return!(!this._saveToSlotName&&!this._loadFromSlotName&&null===this._loadFromJson)}},{key:"_HandleSaveOrLoad",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!this._saveToSlotName){e.next=5
|
||
break}return this.FlushPendingInstances(),e.next=4,this._DoSaveToSlot(this._saveToSlotName)
|
||
case 4:this._ClearSaveOrLoad()
|
||
case 5:if(!this._loadFromSlotName){e.next=10
|
||
break}return e.next=8,this._DoLoadFromSlot(this._loadFromSlotName)
|
||
case 8:this._ClearSaveOrLoad(),this.IsDebug()&&_C3Debugger3.StepIfPausedInDebugger()
|
||
case 10:if(null===this._loadFromJson){e.next=27
|
||
break}return this.FlushPendingInstances(),e.prev=12,e.next=15,this._DoLoadFromJsonString(this._loadFromJson)
|
||
case 15:return this._lastSaveJson=this._loadFromJson,e.next=18,this.TriggerAsync(_C149.Plugins.System.Cnds.OnLoadComplete,null)
|
||
case 18:this._lastSaveJson="",e.next=26
|
||
break
|
||
case 21:return e.prev=21,e.t0=e["catch"](12),console.error("[Construct 3] Failed to load state from JSON string: ",e.t0),e.next=26,this.TriggerAsync(_C149.Plugins.System.Cnds.OnLoadFailed,null)
|
||
case 26:this._ClearSaveOrLoad()
|
||
case 27:case"end":return e.stop()}},n,this,[[12,21]])}))
|
||
return e}()},{key:"_ClearSaveOrLoad",value:function(){this._saveToSlotName="",this._loadFromSlotName="",this._loadFromJson=null}},{key:"_GetProjectStorage",value:function(){return this._projectStorage||(this._projectStorage=localforage.createInstance({name:"c3-localstorage-"+this.GetProjectUniqueId(),description:this.GetProjectName()})),this._projectStorage}},{key:"_GetSavegamesStorage",value:function(){return this._savegamesStorage||(this._savegamesStorage=localforage.createInstance({name:"c3-savegames-"+this.GetProjectUniqueId(),description:this.GetProjectName()})),this._savegamesStorage}},{key:"_DoSaveToSlot",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,this._SaveToJsonString()
|
||
case 2:return t=n.sent,n.prev=3,n.next=6,this._GetSavegamesStorage().setItem(e,t)
|
||
case 6:return console.log("[Construct 3] Saved state to storage ("+t.length+" chars)"),this._lastSaveJson=t,n.next=10,this.TriggerAsync(_C149.Plugins.System.Cnds.OnSaveComplete,null)
|
||
case 10:this._lastSaveJson="",n.next=18
|
||
break
|
||
case 13:return n.prev=13,n.t0=n["catch"](3),console.error("[Construct 3] Failed to save state to storage: ",n.t0),n.next=18,this.TriggerAsync(_C149.Plugins.System.Cnds.OnSaveFailed,null)
|
||
case 18:case"end":return n.stop()}},n,this,[[3,13]])}))
|
||
return e}()},{key:"_DoLoadFromSlot",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.prev=0,n.next=3,this._GetSavegamesStorage().getItem(e)
|
||
case 3:if(t=n.sent){n.next=6
|
||
break}throw Error("empty slot")
|
||
case 6:return console.log("[Construct 3] Loaded state from storage ("+t.length+" chars)"),n.next=9,this._DoLoadFromJsonString(t)
|
||
case 9:return this._lastSaveJson=t,n.next=12,this.TriggerAsync(_C149.Plugins.System.Cnds.OnLoadComplete,null)
|
||
case 12:this._lastSaveJson="",n.next=20
|
||
break
|
||
case 15:return n.prev=15,n.t0=n["catch"](0),console.error("[Construct 3] Failed to load state from storage: ",n.t0),n.next=20,this.TriggerAsync(_C149.Plugins.System.Cnds.OnLoadFailed,null)
|
||
case 20:case"end":return n.stop()}},n,this,[[0,15]])}))
|
||
return e}()},{key:"_SaveToJsonString",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i,s,o,u
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:e={c3save:!0,version:1,rt:{time:this.GetGameTime(),walltime:this.GetWallTime(),timescale:this.GetTimeScale(),tickcount:this.GetTickCount(),execcount:this.GetExecCount(),next_uid:this._nextUid,running_layout:this.GetMainRunningLayout().GetSID(),start_time_offset:Date.now()-this._startTime},types:{},layouts:{},events:this._eventSheetManager._SaveToJson(),timelines:this._timelineManager._SaveToJson(),user_script_data:null},t=_createForOfIteratorHelper(this._allObjectClasses),n.prev=2,t.s()
|
||
case 4:if((r=t.n()).done){n.next=11
|
||
break}if(a=r.value,!a.IsFamily()&&!a.HasNoSaveBehavior()){n.next=8
|
||
break}return n.abrupt("continue",9)
|
||
case 8:e.types[""+a.GetSID()]=a._SaveToJson()
|
||
case 9:n.next=4
|
||
break
|
||
case 11:n.next=16
|
||
break
|
||
case 13:n.prev=13,n.t0=n["catch"](2),t.e(n.t0)
|
||
case 16:return n.prev=16,t.f(),n.finish(16)
|
||
case 19:i=_createForOfIteratorHelper(this._layoutManager.GetAllLayouts())
|
||
try{for(i.s();!(s=i.n()).done;)o=s.value,e.layouts[""+o.GetSID()]=o._SaveToJson()}catch(l){i.e(l)}finally{i.f()}return u=this._CreateUserScriptEvent("save"),u.saveData=null,n.next=25,this.DispatchUserScriptEventAsyncWait(u)
|
||
case 25:return e.user_script_data=u.saveData,n.abrupt("return",JSON.stringify(e))
|
||
case 27:case"end":return n.stop()}},n,this,[[2,13,16,19]])}))
|
||
return e}()},{key:"IsLoadingState",value:function(){return this._isLoadingState}},{key:"_DoLoadFromJsonString",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a,i,s,o,u,l,c,h,_,f,d,p,v,m,y,g,C,S,k,I,T,G,b,A,E,R,x,P
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(t=JSON.parse(e),!t.c2save){n.next=3
|
||
break}throw Error("C2 saves are incompatible with C3 runtime")
|
||
case 3:if(t.c3save){n.next=5
|
||
break}throw Error("not valid C3 save data")
|
||
case 5:if(!(t.version>1)){n.next=7
|
||
break}throw Error("C3 save data from future version")
|
||
case 7:if(this._isLoadingState=!0,r=t.rt,this._gameTime.Set(r.time),this._wallTime.Set(r.walltime),this._timeScale=r.timescale,this._tickCount=r.tickcount,this._execCount=r.execcount,this._startTime=Date.now()-r.start_time_offset,a=r.running_layout,a===this.GetMainRunningLayout().GetSID()){n.next=24
|
||
break}if(i=this._layoutManager.GetLayoutBySID(a),!i){n.next=23
|
||
break}return n.next=21,this._DoChangeLayout(i)
|
||
case 21:n.next=24
|
||
break
|
||
case 23:return n.abrupt("return")
|
||
case 24:s=0,o=Object.entries(t.types)
|
||
case 25:if(!(s<o.length)){n.next=35
|
||
break}if(u=_slicedToArray(o[s],2),l=u[0],c=u[1],h=parseInt(l,10),_=this.GetObjectClassBySID(h),_&&!_.IsFamily()&&!_.HasNoSaveBehavior()){n.next=31
|
||
break}return n.abrupt("continue",32)
|
||
case 31:_._LoadFromJson(c)
|
||
case 32:s++,n.next=25
|
||
break
|
||
case 35:this.FlushPendingInstances(),this._RefreshUidMap(),this._isLoadingState=!1,this._nextUid=r.next_uid,f=0,d=Object.entries(t.layouts)
|
||
case 40:if(!(f<d.length)){n.next=50
|
||
break}if(p=_slicedToArray(d[f],2),v=p[0],m=p[1],y=parseInt(v,10),g=this._layoutManager.GetLayoutBySID(y)){n.next=46
|
||
break}return n.abrupt("continue",47)
|
||
case 46:g._LoadFromJson(m)
|
||
case 47:f++,n.next=40
|
||
break
|
||
case 50:this._eventSheetManager._LoadFromJson(t.events),C=_createForOfIteratorHelper(this._allObjectClasses),n.prev=52,C.s()
|
||
case 54:if((S=C.n()).done){n.next=97
|
||
break}if(k=S.value,!k.IsFamily()&&k.IsInContainer()){n.next=58
|
||
break}return n.abrupt("continue",95)
|
||
case 58:I=_createForOfIteratorHelper(k.GetInstances()),n.prev=59,I.s()
|
||
case 61:if((T=I.n()).done){n.next=87
|
||
break}G=T.value,b=G.GetIID(),A=_createForOfIteratorHelper(k.GetContainer().objectTypes()),n.prev=65,A.s()
|
||
case 67:if((E=A.n()).done){n.next=77
|
||
break}if(R=E.value,R!==k){n.next=71
|
||
break}return n.abrupt("continue",75)
|
||
case 71:if(x=R.GetInstances(),!(0>b||b>=x.length)){n.next=74
|
||
break}throw Error("missing sibling instance")
|
||
case 74:G._AddSibling(x[b])
|
||
case 75:n.next=67
|
||
break
|
||
case 77:n.next=82
|
||
break
|
||
case 79:n.prev=79,n.t0=n["catch"](65),A.e(n.t0)
|
||
case 82:return n.prev=82,A.f(),n.finish(82)
|
||
case 85:n.next=61
|
||
break
|
||
case 87:n.next=92
|
||
break
|
||
case 89:n.prev=89,n.t1=n["catch"](59),I.e(n.t1)
|
||
case 92:return n.prev=92,I.f(),n.finish(92)
|
||
case 95:n.next=54
|
||
break
|
||
case 97:n.next=102
|
||
break
|
||
case 99:n.prev=99,n.t2=n["catch"](52),C.e(n.t2)
|
||
case 102:return n.prev=102,C.f(),n.finish(102)
|
||
case 105:return this._timelineManager._LoadFromJson(t.timelines),this._dispatcher.dispatchEvent(_C149.New(_C149.Event,"afterload")),P=this._CreateUserScriptEvent("load"),P.saveData=t.user_script_data,n.next=111,this.DispatchUserScriptEventAsyncWait(P)
|
||
case 111:this.UpdateRender()
|
||
case 112:case"end":return n.stop()}},n,this,[[52,99,102,105],[59,89,92,95],[65,79,82,85]])}))
|
||
return e}()},{key:"AddJobWorkerScripts",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a=this
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,Promise.all(e.map(function(e){return a._assetManager.FetchBlob(e)}))
|
||
case 2:t=n.sent,r=t.map(function(e){return URL.createObjectURL(e)}),this._jobScheduler.ImportScriptsToJobWorkers(r)
|
||
case 5:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"AddJobWorkerBlob",value:function(e,t){this._jobScheduler.SendBlobToJobWorkers(e,t)}},{key:"AddJobWorkerBuffer",value:function(e,t){this._jobScheduler.SendBufferToJobWorkers(e,t)}},{key:"AddJob",value:function(e,t,n){return this._jobScheduler.AddJob(e,t,n)}},{key:"BroadcastJob",value:function(e,t,n){return this._jobScheduler.BroadcastJob(e,t,n)}},{key:"InvokeDownload",value:function(e,t){this.PostComponentMessageToDOM("runtime","invoke-download",{url:e,filename:t})}},{key:"RasterSvgImage",value:function(){function e(e,n,r,a,i,s){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r,a,i,s){var o,u
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(a=a||t,i=i||r,!this.IsInWorker()){n.next=9
|
||
break}return n.next=5,this.PostComponentMessageToDOMAsync("runtime","raster-svg-image",{blob:e,imageWidth:t,imageHeight:r,surfaceWidth:a,surfaceHeight:i,imageBitmapOpts:s})
|
||
case 5:return o=n.sent,n.abrupt("return",o.imageBitmap)
|
||
case 9:return n.next=11,self.C3_RasterSvgImageBlob(e,t,r,a,i)
|
||
case 11:if(u=n.sent,!s){n.next=18
|
||
break}return n.next=15,self.createImageBitmap(u,s)
|
||
case 15:return n.abrupt("return",n.sent)
|
||
case 18:return n.abrupt("return",u)
|
||
case 19:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"GetSvgImageSize",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(!this.IsInWorker()){t.next=6
|
||
break}return t.next=3,this.PostComponentMessageToDOMAsync("runtime","get-svg-image-size",{blob:e})
|
||
case 3:return t.abrupt("return",t.sent)
|
||
case 6:return t.next=8,self.C3_GetSvgImageSize(e)
|
||
case 8:return t.abrupt("return",t.sent)
|
||
case 9:case"end":return t.stop()}},n,this)}))
|
||
return e}()},{key:"RequestDeviceOrientationEvent",value:function(){this._didRequestDeviceOrientationEvent||(this._didRequestDeviceOrientationEvent=!0,this.PostComponentMessageToDOM("runtime","enable-device-orientation"))}},{key:"RequestDeviceMotionEvent",value:function(){this._didRequestDeviceMotionEvent||(this._didRequestDeviceMotionEvent=!0,this.PostComponentMessageToDOM("runtime","enable-device-motion"))}},{key:"Random",value:function(){return this._randomNumberCallback()}},{key:"SetRandomNumberGeneratorCallback",value:function(e){this._randomNumberCallback=e}},{key:"_GetRemotePreviewStatusInfo",value:function(){return{fps:this.GetFPS(),cpu:this.GetMainThreadTime(),gpu:this.GetGPUUtilisation(),layout:this.GetMainRunningLayout()?this.GetMainRunningLayout().GetName():"",renderer:this.GetWebGLRenderer().GetUnmaskedRenderer()}}},{key:"HitBreakpoint",value:function(){return this.IsDebug()?_C3Debugger3.HitBreakpoint():!1}},{key:"DebugBreak",value:function(e){return this.IsDebugging()?_C3Debugger3.DebugBreak(e):Promise.resolve()}},{key:"DebugBreakNext",value:function(){return this.IsDebugging()?_C3Debugger3.BreakNext():!1}},{key:"SetDebugBreakpointsEnabled",value:function(e){this._breakpointsEnabled=!!e,this._UpdateDebuggingFlag()}},{key:"AreDebugBreakpointsEnabled",value:function(){return this._breakpointsEnabled}},{key:"IsDebugging",value:function(){return this._isDebugging}},{key:"SetDebuggingEnabled",value:function(e){e?this._debuggingDisabled--:this._debuggingDisabled++,this._UpdateDebuggingFlag()}},{key:"_UpdateDebuggingFlag",value:function(){this._isDebugging=this.IsDebug()&&this._breakpointsEnabled&&0===this._debuggingDisabled}},{key:"IsCPUProfiling",value:function(){return this.IsDebug()&&_C3Debugger3.IsCPUProfiling()}},{key:"IsGPUProfiling",value:function(){return this.IsDebug()&&this.GetWebGLRenderer().SupportsGPUProfiling()&&_C3Debugger3.IsGPUProfiling()}},{key:"DebugIterateAndBreak",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(e){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:t=_createForOfIteratorHelper(e),n.prev=3,t.s()
|
||
case 5:if((r=t.n()).done){n.next=11
|
||
break}return a=r.value,n.next=9,this.DebugBreak(a)
|
||
case 9:n.next=5
|
||
break
|
||
case 11:n.next=16
|
||
break
|
||
case 13:n.prev=13,n.t0=n["catch"](3),t.e(n.t0)
|
||
case 16:return n.prev=16,t.f(),n.finish(16)
|
||
case 19:case"end":return n.stop()}},n,this,[[3,13,16,19]])}))
|
||
return e}()},{key:"DebugFireGeneratorEventAndBreak",value:function(e){return this.DebugIterateAndBreak(this._dispatcher.dispatchGeneratorEvent(e))}},{key:"_InvokeFunctionFromJS",value:function(e){return this._eventSheetManager._InvokeFunctionFromJS(e.name,e.params)}},{key:"GetIRuntime",value:function(){return this._iRuntime}},{key:"_CreateUserScriptEvent",value:function(e){var t=_C149.New(_C149.Event,e,!1)
|
||
return t.runtime=this._iRuntime,t}},{key:"_InitScriptInterfaces",value:function(){var e,t={},n=_createForOfIteratorHelper(this._allObjectClasses)
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
t[r.GetJsPropName()]={value:r.GetIObjectClass(),enumerable:!0,writable:!1}}}catch(a){n.e(a)}finally{n.f()}var i=Object.create(Object.prototype,t)
|
||
this._iRuntime=new self.IRuntime(this,i),this._userScriptEventObjects={tick:this._CreateUserScriptEvent("tick")}}},{key:"_InitGlobalVariableScriptInterface",value:function(){var e,t={},n=_createForOfIteratorHelper(this.GetEventSheetManager().GetAllGlobalVariables())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
t[r.GetJsPropName()]=r._GetScriptInterfaceDescriptor()}}catch(a){n.e(a)}finally{n.f()}this._iRuntime._InitGlobalVars(t)}},{key:"_GetCommonScriptInterfaces",value:function(){return this._commonScriptInterfaces}},{key:"_MapScriptInterface",value:function(e,t){this._interfaceMap.set(e,t)}},{key:"_UnwrapScriptInterface",value:function(e){return this._interfaceMap.get(e)}}],[{key:"Create",value:function(e){return _C149.New(_C149.Runtime,e)}}]),t}(_C149.DefendedBase),self.C3_CreateRuntime=_C149.Runtime.Create,self.C3_InitRuntime=function(e,t){return e.Init(t)}
|
||
var _C150=self.C3
|
||
_C150.JobSchedulerRuntime=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._runtime=e,a._jobPromises=new Map,a._nextJobId=0,a._inputPort=r.inputPort,r.outputPort.onmessage=function(e){return a._OnJobWorkerMessage(e)},a._maxNumWorkers=r.maxNumWorkers,a._jobWorkerCount=1,a._isCreatingWorker=!1,a._hadErrorCreatingWorker=!1,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Init",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:case"end":return e.stop()}},n)}))
|
||
return e}()},{key:"ImportScriptsToJobWorkers",value:function(e){this._inputPort.postMessage({type:"_import_scripts",scripts:e})}},{key:"SendBlobToJobWorkers",value:function(e,t){this._inputPort.postMessage({type:"_send_blob",blob:e,id:t})}},{key:"SendBufferToJobWorkers",value:function(e,t){this._inputPort.postMessage({type:"_send_buffer",buffer:e,id:t},[e])}},{key:"AddJob",value:function(e,t,n,r,a){var i=this
|
||
n||(n=[])
|
||
var s=this._nextJobId++,o={type:e,isBroadcast:!1,jobId:s,params:t,transferables:n},u=new Promise(function(e,t){i._jobPromises.set(s,{resolve:e,progress:r,reject:t,cancelled:!1})})
|
||
return a&&a.SetAction(function(){return i._CancelJob(s)}),this._inputPort.postMessage(o,n),this._MaybeCreateExtraWorker(),u}},{key:"BroadcastJob",value:function(e,t,n){n||(n=[])
|
||
var r=this._nextJobId++,a={type:e,isBroadcast:!0,jobId:r,params:t,transferables:n}
|
||
this._inputPort.postMessage(a,n)}},{key:"_CancelJob",value:function(e){var t=this._jobPromises.get(e)
|
||
t&&(t.cancelled=!0,t.resolve=null,t.progress=null,t.reject=null,this._inputPort.postMessage({type:"_cancel",jobId:e}))}},{key:"_OnJobWorkerMessage",value:function(e){var t=e.data,n=t.type,r=t.jobId
|
||
switch(n){case"result":this._OnJobResult(r,t.result)
|
||
break
|
||
case"progress":this._OnJobProgress(r,t.progress)
|
||
break
|
||
case"error":this._OnJobError(r,t.error)
|
||
break
|
||
case"ready":this._OnJobWorkerReady()
|
||
break
|
||
default:throw Error("unknown message from worker '".concat(n,"'"))}}},{key:"_OnJobResult",value:function(e,t){var n=this._jobPromises.get(e)
|
||
if(!n)throw Error("invalid job ID")
|
||
n.cancelled||n.resolve(t),this._jobPromises["delete"](e)}},{key:"_OnJobProgress",value:function(e,t){var n=this._jobPromises.get(e)
|
||
if(!n)throw Error("invalid job ID")
|
||
!n.cancelled&&n.progress&&n.progress(t)}},{key:"_OnJobError",value:function(e,t){var n=this._jobPromises.get(e)
|
||
if(!n)throw Error("invalid job ID")
|
||
n.cancelled||n.reject(t),this._jobPromises["delete"](e)}},{key:"_OnJobWorkerReady",value:function(){this._isCreatingWorker&&(this._isCreatingWorker=!1,this._jobWorkerCount++,this._jobWorkerCount<this._maxNumWorkers?this._MaybeCreateExtraWorker():this._inputPort.postMessage({type:"_no_more_workers"}))}},{key:"_MaybeCreateExtraWorker",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t=this
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!(this._jobWorkerCount>=this._maxNumWorkers||this._isCreatingWorker||this._hadErrorCreatingWorker||this._jobPromises.size<=this._jobWorkerCount)){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:return n.prev=2,this._isCreatingWorker=!0,n.next=6,this._runtime.PostComponentMessageToDOMAsync("runtime","create-job-worker")
|
||
case 6:e=n.sent,e.outputPort.onmessage=function(e){return t._OnJobWorkerMessage(e)},n.next=15
|
||
break
|
||
case 10:n.prev=10,n.t0=n["catch"](2),this._hadErrorCreatingWorker=!0,this._isCreatingWorker=!1,console.error("[Construct 3] Failed to create job worker; stopping creating any more (created ".concat(this._jobWorkerCount," so far)"),n.t0)
|
||
case 15:case"end":return n.stop()}},n,this,[[2,10]])}))
|
||
return e}()}]),t}(_C150.DefendedBase),self.C3_Shaders={},self.C3_Shaders.replacesolidcolor={src:"varying mediump vec2 vTex;\nuniform lowp sampler2D samplerFront;\nuniform lowp vec3 sourceColor;\nuniform lowp vec3 destColor;\nuniform lowp float tolerance;\nvoid main(void)\n{\nlowp vec4 front = texture2D(samplerFront, vTex);\nlowp float a = front.a;\nif (a != 0.0)\nfront.rgb /= a;\nlowp float diff = length(front.rgb - sourceColor);\nif (diff <= tolerance)\n{\nfront.rgb = destColor;\n}\nfront.rgb *= a;\ngl_FragColor = front;\n}",extendBoxHorizontal:0,extendBoxVertical:0,crossSampling:!1,mustPreDraw:!1,preservesOpaqueness:!0,animated:!1,parameters:[["sourceColor",0,"color"],["destColor",0,"color"],["tolerance",0,"percent"]]},self.C3_Shaders.replacecolor={src:"varying mediump vec2 vTex;\nuniform lowp sampler2D samplerFront;\nuniform lowp vec3 sourceColor;\nuniform lowp vec3 destColor;\nuniform lowp float tolerance;\nvoid main(void)\n{\nlowp vec4 front = texture2D(samplerFront, vTex);\nlowp float a = front.a;\nif (a != 0.0)\nfront.rgb /= a;\nlowp float diff = length(front.rgb - sourceColor);\nif (diff <= tolerance)\n{\nfront.rgb = mix(front.rgb, destColor, 1.0 - diff / tolerance);\n}\nfront.rgb *= a;\ngl_FragColor = front;\n}",extendBoxHorizontal:0,extendBoxVertical:0,crossSampling:!1,mustPreDraw:!1,preservesOpaqueness:!0,animated:!1,parameters:[["sourceColor",0,"color"],["destColor",0,"color"],["tolerance",0,"percent"]]},self.C3_Shaders.oline={src:"#ifdef GL_ES\nprecision highp float;\n#endif\nuniform float seconds;\nvarying vec2 vTex;\nuniform sampler2D samplerFront;\nuniform vec2 pixelSize;\nuniform vec3 cl;\nuniform float width,justoutline,speed;\nvoid main(void)\n{\nvec4 front = texture2D(samplerFront, vTex);\nfloat dx = pixelSize.x*width;\nfloat dy = pixelSize.y*width;\nfloat diag = 0.7071;\nfloat a0 = texture2D(samplerFront, vTex + vec2(-dx*diag, dy*diag)).a;\nfloat a1 = texture2D(samplerFront, vTex + vec2(dx*diag, -dy*diag)).a;\nfloat a2 = texture2D(samplerFront, vTex + vec2(-dx*diag, -dy*diag)).a;\nfloat a3 = texture2D(samplerFront, vTex + vec2(dx*diag, dy*diag)).a;\nfloat a4 = texture2D(samplerFront, vTex + vec2(-dx, 0.0)).a;\nfloat a5 = texture2D(samplerFront, vTex + vec2(dx, 0.0)).a;\nfloat a6 = texture2D(samplerFront, vTex + vec2(0.0, dy)).a;\nfloat a7 = texture2D(samplerFront, vTex + vec2(0.0, -dy)).a;\nfloat ina=max(max(max(max(max(max(max(a0,a1),a2),a3),a4),a5),a6),a7)-front.a;\nif(justoutline!=1.0)\n{\nfloat outa = ina + front.a*(1.0-ina);\nvec3 outrgb = (vec3(cl.x, cl.y, cl.z)*ina + front.rgb*front.a*(1.0-ina));\ngl_FragColor = vec4(outrgb, outa);\n}\nelse if(ina>0.0)\n{\ngl_FragColor = vec4(vec3(cl.x, cl.y, cl.z)*ina, ina);\n}\n}",extendBoxHorizontal:0,extendBoxVertical:0,crossSampling:!1,mustPreDraw:!1,preservesOpaqueness:!0,animated:!1,parameters:[["justoutline",0,"float"],["width",0,"float"],["cl",0,"color"]]},self.C3_Shaders.brightness={src:"varying mediump vec2 vTex;\nuniform lowp sampler2D samplerFront;\nuniform lowp float brightness;\nvoid main(void)\n{\nlowp vec4 front = texture2D(samplerFront, vTex);\nlowp float a = front.a;\nif (a != 0.0)\nfront.rgb /= front.a;\nfront.rgb += (brightness - 1.0);\nfront.rgb *= a;\ngl_FragColor = front;\n}",extendBoxHorizontal:0,extendBoxVertical:0,crossSampling:!1,mustPreDraw:!1,preservesOpaqueness:!0,animated:!1,parameters:[["brightness",0,"percent"]]},self.C3_Shaders.oilpainting={src:"#ifdef GL_FRAGMENT_PRECISION_HIGH\n#define highmedp highp\n#else\n#define highmedp mediump\n#endif\nvarying mediump vec2 vTex;\nuniform lowp sampler2D samplerFront;\nprecision highmedp float;\nuniform mediump vec2 pixelSize;\nvoid main (void)\n{\nconst int radius = 3;\nvec2 src_size = 1.0 / pixelSize;\nlowp float alpha = texture2D(samplerFront, vTex).a;\nvec2 uv = vTex;\nfloat n = float((radius + 1) * (radius + 1));\nvec3 m[4];\nvec3 s[4];\nfor (int k = 0; k < 4; ++k) {\nm[k] = vec3(0.0);\ns[k] = vec3(0.0);\n}\nfor (int j = -radius; j <= 0; ++j) {\nfor (int i = -radius; i <= 0; ++i) {\nvec3 c = texture2D(samplerFront, uv + vec2(i,j) / src_size).rgb;\nm[0] += c;\ns[0] += c * c;\n}\n}\nfor (int j = -radius; j <= 0; ++j) {\nfor (int i = 0; i <= radius; ++i) {\nvec3 c = texture2D(samplerFront, uv + vec2(i,j) / src_size).rgb;\nm[1] += c;\ns[1] += c * c;\n}\n}\nfor (int j = 0; j <= radius; ++j) {\nfor (int i = 0; i <= radius; ++i) {\nvec3 c = texture2D(samplerFront, uv + vec2(i,j) / src_size).rgb;\nm[2] += c;\ns[2] += c * c;\n}\n}\nfor (int j = 0; j <= radius; ++j) {\nfor (int i = -radius; i <= 0; ++i) {\nvec3 c = texture2D(samplerFront, uv + vec2(i,j) / src_size).rgb;\nm[3] += c;\ns[3] += c * c;\n}\n}\nfloat min_sigma2 = 1e+2;\nfor (int k = 0; k < 4; ++k) {\nm[k] /= n;\ns[k] = abs(s[k] / n - m[k] * m[k]);\nfloat sigma2 = s[k].r + s[k].g + s[k].b;\nif (sigma2 < min_sigma2) {\nmin_sigma2 = sigma2;\ngl_FragColor = vec4(m[k], alpha);\n}\n}\n}",extendBoxHorizontal:0,extendBoxVertical:0,crossSampling:!1,mustPreDraw:!1,preservesOpaqueness:!0,animated:!1,parameters:[]},self.C3_Shaders.radialblur={src:"precision mediump float;\nvarying vec2 vTex;\nuniform sampler2D samplerFront;\nuniform vec2 srcStart;\nuniform vec2 srcEnd;\nuniform float layerScale;\nuniform float intensity;\nuniform float radius;\nvoid main(void)\n{\nvec2 dir = ((srcStart + srcEnd) / 2.0 - vTex) / (length(srcEnd - srcStart) / 2.0);\nfloat dist = sqrt(dir.x*dir.x + dir.y*dir.y);\ndir = dir/dist;\nvec4 front = texture2D(samplerFront, vTex);\nvec4 sum = front;\nfloat scaledRadius = radius * layerScale;\nsum += texture2D(samplerFront, vTex + dir * -0.08 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * -0.05 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * -0.03 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * -0.02 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * -0.01 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * 0.01 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * 0.02 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * 0.03 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * 0.05 * scaledRadius);\nsum += texture2D(samplerFront, vTex + dir * 0.08 * scaledRadius);\nsum /= 11.0;\nfloat t = dist * 2.2;\nt = clamp(t, 0.0, 1.0);\ngl_FragColor = mix(front, mix(front, sum, t), intensity);\n}",extendBoxHorizontal:50,extendBoxVertical:50,crossSampling:!1,mustPreDraw:!1,preservesOpaqueness:!1,animated:!1,parameters:[["radius",0,"percent"],["intensity",0,"percent"]]}
|
||
var ForEachOrdered_SortInstances=function(e,t){var n=e[1],r=t[1]
|
||
if("number"==typeof n&&"number"==typeof r)return n-r
|
||
var a=""+n,i=""+r
|
||
return i>a?-1:a>i?1:0},_C151=self.C3,cacheRegex=null,lastRegex="",lastFlags="",regexMatches=[],lastMatchesStr="",lastMatchesRegex="",lastMatchesFlags="",forEachStack=_C151.New(_C151.ArrayStack)
|
||
_C151.Plugins.System=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._loopStack=r._runtime.GetEventSheetManager().GetLoopStack(),r._eventStack=r._runtime.GetEventSheetManager().GetEventStack(),r._imagesLoadingTotal=0,r._imagesLoadingComplete=0,r._functionMaps=new Map,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"UpdateRender",value:function(){this._runtime.UpdateRender()}},{key:"Trigger",value:function(e){this._runtime.Trigger(e,null,null)}},{key:"GetRegex",value:function(e,t){return cacheRegex&&e===lastRegex&&t===lastFlags||(cacheRegex=RegExp(e,t),lastRegex=e,lastFlags=t),cacheRegex.lastIndex=0,cacheRegex}},{key:"GetRegexMatches",value:function(e,t,n){if(e===lastMatchesStr&&t===lastMatchesRegex&&n===lastMatchesFlags)return regexMatches
|
||
var r=this.GetRegex(t,n)
|
||
return regexMatches=e.match(r),lastMatchesStr=e,lastMatchesRegex=t,lastMatchesFlags=n,regexMatches}},{key:"_LoadTexturesForObjectClasses",value:function(){function e(e,n){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t){var r,a,i,s,o=this
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(t.length){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:this._imagesLoadingTotal+=t.length,r=[],a=_createForOfIteratorHelper(t)
|
||
try{for(a.s();!(i=a.n()).done;)s=i.value,r.push(e.MaybeLoadTexturesFor(s))}catch(u){a.e(u)}finally{a.f()}return n.next=8,_C151.PromiseAllWithProgress(r,function(){o._imagesLoadingComplete++})
|
||
case 8:this._imagesLoadingComplete++,this._imagesLoadingComplete===this._imagesLoadingTotal&&(this._runtime.Trigger(_C151.Plugins.System.Cnds.OnImageLoadingComplete,null,null),this._imagesLoadingComplete=0,this._imagesLoadingTotal=0)
|
||
case 10:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_UnloadTexturesForObjectClasses",value:function(e,t){var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
0===a.GetInstanceCount()&&e.MaybeUnloadTexturesFor(a)}}catch(i){r.e(i)}finally{r.f()}}},{key:"_GetForEachStack",value:function(){return forEachStack}},{key:"_Repeat",value:function(e){var t=this._runtime.GetEventSheetManager(),n=t.GetEventStack(),r=n.GetCurrentStackFrame(),a=r.GetCurrentEvent(),i=a.GetSolModifiers(),s=r.IsSolModifierAfterCnds(),o=n.Push(a),u=t.GetLoopStack(),l=u.Push()
|
||
if(l.SetEnd(e),s)for(var c=0;e>c&&!l.IsStopped();++c)t.PushCopySol(i),l.SetIndex(c),a.Retrigger(r,o),t.PopSol(i)
|
||
else for(var h=0;e>h&&!l.IsStopped();++h)l.SetIndex(h),a.Retrigger(r,o)
|
||
return n.Pop(),u.Pop(),!1}},{key:"_DebugRepeat",value:_regeneratorRuntime().mark(function r(e){var t,n,a,i,s,o,u,l,c,h,_
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(t=this._runtime.GetEventSheetManager(),n=t.GetEventStack(),a=n.GetCurrentStackFrame(),i=a.GetCurrentEvent(),s=i.GetSolModifiers(),o=a.IsSolModifierAfterCnds(),u=n.Push(i),l=t.GetLoopStack(),c=l.Push(),c.SetEnd(e),!o){r.next=22
|
||
break}h=0
|
||
case 12:if(!(e>h)||c.IsStopped()){r.next=20
|
||
break}return t.PushCopySol(s),c.SetIndex(h),r.delegateYield(i.DebugRetrigger(a,u),"t0",16)
|
||
case 16:t.PopSol(s)
|
||
case 17:++h,r.next=12
|
||
break
|
||
case 20:r.next=29
|
||
break
|
||
case 22:_=0
|
||
case 23:if(!(e>_)||c.IsStopped()){r.next=29
|
||
break}return c.SetIndex(_),r.delegateYield(i.DebugRetrigger(a,u),"t1",26)
|
||
case 26:++_,r.next=23
|
||
break
|
||
case 29:return n.Pop(),l.Pop(),r.abrupt("return",!1)
|
||
case 32:case"end":return r.stop()}},r,this)})},{key:"_While",value:function(){var e=this._runtime.GetEventSheetManager(),t=e.GetEventStack(),n=t.GetCurrentStackFrame(),r=n.GetCurrentEvent(),a=r.GetSolModifiers(),i=n.IsSolModifierAfterCnds(),s=t.Push(r),o=e.GetLoopStack(),u=o.Push()
|
||
if(i)for(var l=0;!u.IsStopped();++l)e.PushCopySol(a),u.SetIndex(l),r.Retrigger(n,s)||u.Stop(),e.PopSol(a)
|
||
else for(var c=0;!u.IsStopped();++c)u.SetIndex(c),r.Retrigger(n,s)||u.Stop()
|
||
return t.Pop(),o.Pop(),!1}},{key:"_DebugWhile",value:_regeneratorRuntime().mark(function a(){var e,t,n,r,i,s,o,u,l,c,h,_,f
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(e=this._runtime.GetEventSheetManager(),t=e.GetEventStack(),n=t.GetCurrentStackFrame(),r=n.GetCurrentEvent(),i=r.GetSolModifiers(),s=n.IsSolModifierAfterCnds(),o=t.Push(r),u=e.GetLoopStack(),l=u.Push(),!s){a.next=23
|
||
break}c=0
|
||
case 11:if(l.IsStopped()){a.next=21
|
||
break}return e.PushCopySol(i),l.SetIndex(c),a.delegateYield(r.DebugRetrigger(n,o),"t0",15)
|
||
case 15:h=a.t0,h||l.Stop(),e.PopSol(i)
|
||
case 18:++c,a.next=11
|
||
break
|
||
case 21:a.next=32
|
||
break
|
||
case 23:_=0
|
||
case 24:if(l.IsStopped()){a.next=32
|
||
break}return l.SetIndex(_),a.delegateYield(r.DebugRetrigger(n,o),"t1",27)
|
||
case 27:f=a.t1,f||l.Stop()
|
||
case 29:++_,a.next=24
|
||
break
|
||
case 32:return t.Pop(),u.Pop(),a.abrupt("return",!1)
|
||
case 35:case"end":return a.stop()}},a,this)})},{key:"_For",value:function(e,t,n){var r=this._runtime.GetEventSheetManager(),a=r.GetEventStack(),i=a.GetCurrentStackFrame(),s=i.GetCurrentEvent(),o=s.GetSolModifiers(),u=i.IsSolModifierAfterCnds(),l=a.Push(s),c=r.GetLoopStack(),h=c.Push()
|
||
if(h.SetName(e),h.SetEnd(n),t>n)if(u)for(var _=t;_>=n&&!h.IsStopped();--_)r.PushCopySol(o),h.SetIndex(_),s.Retrigger(i,l),r.PopSol(o)
|
||
else for(var f=t;f>=n&&!h.IsStopped();--f)h.SetIndex(f),s.Retrigger(i,l)
|
||
else if(u)for(var d=t;n>=d&&!h.IsStopped();++d)r.PushCopySol(o),h.SetIndex(d),s.Retrigger(i,l),r.PopSol(o)
|
||
else for(var p=t;n>=p&&!h.IsStopped();++p)h.SetIndex(p),s.Retrigger(i,l)
|
||
return a.Pop(),c.Pop(),!1}},{key:"_DebugFor",value:_regeneratorRuntime().mark(function i(e,t,n){var r,a,s,o,u,l,c,h,_,f,d,p,v
|
||
return _regeneratorRuntime().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(r=this._runtime.GetEventSheetManager(),a=r.GetEventStack(),s=a.GetCurrentStackFrame(),o=s.GetCurrentEvent(),u=o.GetSolModifiers(),l=s.IsSolModifierAfterCnds(),c=a.Push(o),h=r.GetLoopStack(),_=h.Push(),_.SetName(e),_.SetEnd(n),!(t>n)){i.next=33
|
||
break}if(!l){i.next=24
|
||
break}f=t
|
||
case 14:if(!(f>=n)||_.IsStopped()){i.next=22
|
||
break}return r.PushCopySol(u),_.SetIndex(f),i.delegateYield(o.DebugRetrigger(s,c),"t0",18)
|
||
case 18:r.PopSol(u)
|
||
case 19:--f,i.next=14
|
||
break
|
||
case 22:i.next=31
|
||
break
|
||
case 24:d=t
|
||
case 25:if(!(d>=n)||_.IsStopped()){i.next=31
|
||
break}return _.SetIndex(d),i.delegateYield(o.DebugRetrigger(s,c),"t1",28)
|
||
case 28:--d,i.next=25
|
||
break
|
||
case 31:i.next=52
|
||
break
|
||
case 33:if(!l){i.next=45
|
||
break}p=t
|
||
case 35:if(!(n>=p)||_.IsStopped()){i.next=43
|
||
break}return r.PushCopySol(u),_.SetIndex(p),i.delegateYield(o.DebugRetrigger(s,c),"t2",39)
|
||
case 39:r.PopSol(u)
|
||
case 40:++p,i.next=35
|
||
break
|
||
case 43:i.next=52
|
||
break
|
||
case 45:v=t
|
||
case 46:if(!(n>=v)||_.IsStopped()){i.next=52
|
||
break}return _.SetIndex(v),i.delegateYield(o.DebugRetrigger(s,c),"t3",49)
|
||
case 49:++v,i.next=46
|
||
break
|
||
case 52:return a.Pop(),h.Pop(),i.abrupt("return",!1)
|
||
case 55:case"end":return i.stop()}},i,this)})},{key:"_ForEach",value:function(e){var t=this._runtime.GetEventSheetManager(),n=t.GetEventStack(),r=n.GetCurrentStackFrame(),a=r.GetCurrentEvent(),i=a.GetSolModifiers(),s=r.IsSolModifierAfterCnds(),o=n.Push(a),u=t.GetLoopStack(),l=u.Push(),c=e.IsInContainer(),h=e.GetCurrentSol(),_=forEachStack.Push()
|
||
if(_C151.shallowAssignArray(_,h.GetInstances()),l.SetEnd(_.length),s)for(var f=0,d=_.length;d>f&&!l.IsStopped();++f){t.PushCopySol(i)
|
||
var p=_[f]
|
||
e.GetCurrentSol().SetSinglePicked(p),c&&p.SetSiblingsSinglePicked(),l.SetIndex(f),a.Retrigger(r,o),t.PopSol(i)}else{h._SetSelectAll(!1)
|
||
var v=h._GetOwnInstances()
|
||
_C151.clearArray(v),v.push(null)
|
||
for(var m=0,y=_.length;y>m&&!l.IsStopped();++m){var g=_[m]
|
||
v[0]=g,c&&g.SetSiblingsSinglePicked(),l.SetIndex(m),a.Retrigger(r,o)}}return n.Pop(),u.Pop(),_C151.clearArray(_),forEachStack.Pop(),!1}},{key:"_DebugForEach",value:_regeneratorRuntime().mark(function s(e){var t,n,r,a,i,o,u,l,c,h,_,f,d,p,v,m,y,g,C
|
||
return _regeneratorRuntime().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(t=this._runtime.GetEventSheetManager(),n=t.GetEventStack(),r=n.GetCurrentStackFrame(),a=r.GetCurrentEvent(),i=a.GetSolModifiers(),o=r.IsSolModifierAfterCnds(),u=n.Push(a),l=t.GetLoopStack(),c=l.Push(),h=e.IsInContainer(),_=e.GetCurrentSol(),f=forEachStack.Push(),_C151.shallowAssignArray(f,_.GetInstances()),c.SetEnd(f.length),!o){s.next=29
|
||
break}d=0,p=f.length
|
||
case 16:if(!(p>d)||c.IsStopped()){s.next=27
|
||
break}return t.PushCopySol(i),v=f[d],e.GetCurrentSol().SetSinglePicked(v),h&&v.SetSiblingsSinglePicked(),c.SetIndex(d),s.delegateYield(a.DebugRetrigger(r,u),"t0",23)
|
||
case 23:t.PopSol(i)
|
||
case 24:++d,s.next=16
|
||
break
|
||
case 27:s.next=43
|
||
break
|
||
case 29:_._SetSelectAll(!1),m=_._GetOwnInstances(),_C151.clearArray(m),m.push(null),y=0,g=f.length
|
||
case 34:if(!(g>y)||c.IsStopped()){s.next=43
|
||
break}return C=f[y],m[0]=C,h&&C.SetSiblingsSinglePicked(),c.SetIndex(y),s.delegateYield(a.DebugRetrigger(r,u),"t1",40)
|
||
case 40:++y,s.next=34
|
||
break
|
||
case 43:return n.Pop(),l.Pop(),_C151.clearArray(f),forEachStack.Pop(),s.abrupt("return",!1)
|
||
case 48:case"end":return s.stop()}},s,this)})},{key:"_ForEachOrdered",value:function(e,t){var n=this._runtime.GetEventSheetManager(),r=n.GetEventStack(),a=n.GetCurrentCondition(),i=r.GetCurrentStackFrame(),s=i.GetCurrentEvent(),o=s.GetSolModifiers(),u=i.IsSolModifierAfterCnds(),l=r.Push(s),c=n.GetLoopStack(),h=c.Push(),_=e.IsInContainer(),f=e.GetCurrentSol(),d=forEachStack.Push()
|
||
_C151.clearArray(d)
|
||
var p=f.GetInstances()
|
||
h.SetEnd(p.length)
|
||
for(var v=0,m=p.length;m>v;++v)d.push([p[v],a.ReevaluateParameter(1,v)])
|
||
if(d.sort(ForEachOrdered_SortInstances),1===t&&d.reverse(),u)for(var y=0,g=d.length;g>y&&!h.IsStopped();++y){n.PushCopySol(o)
|
||
var C=d[y][0]
|
||
e.GetCurrentSol().SetSinglePicked(C),_&&C.SetSiblingsSinglePicked(),h.SetIndex(y),s.Retrigger(i,l),n.PopSol(o)}else{f._SetSelectAll(!1)
|
||
var S=f._GetOwnInstances()
|
||
_C151.clearArray(S),S.push(null)
|
||
for(var k=0,I=d.length;I>k&&!h.IsStopped();++k){var T=d[k][0]
|
||
S[0]=T,_&&T.SetSiblingsSinglePicked(),h.SetIndex(k),s.Retrigger(i,l)}}return r.Pop(),c.Pop(),_C151.clearArray(d),forEachStack.Pop(),!1}},{key:"_DebugForEachOrdered",value:_regeneratorRuntime().mark(function o(e,t){var n,r,a,i,s,u,l,c,h,_,f,d,p,v,m,y,g,C,S,k,I,T,G
|
||
return _regeneratorRuntime().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:for(n=this._runtime.GetEventSheetManager(),r=n.GetEventStack(),a=n.GetCurrentCondition(),i=r.GetCurrentStackFrame(),s=i.GetCurrentEvent(),u=s.GetSolModifiers(),l=i.IsSolModifierAfterCnds(),c=r.Push(s),h=n.GetLoopStack(),_=h.Push(),f=e.IsInContainer(),d=e.GetCurrentSol(),p=forEachStack.Push(),_C151.clearArray(p),v=d.GetInstances(),_.SetEnd(v.length),m=0,y=v.length;y>m;++m)p.push([v[m],a.ReevaluateParameter(1,m)])
|
||
if(p.sort(ForEachOrdered_SortInstances),1===t&&p.reverse(),!l){o.next=34
|
||
break}g=0,C=p.length
|
||
case 21:if(!(C>g)||_.IsStopped()){o.next=32
|
||
break}return n.PushCopySol(u),S=p[g][0],e.GetCurrentSol().SetSinglePicked(S),f&&S.SetSiblingsSinglePicked(),_.SetIndex(g),o.delegateYield(s.DebugRetrigger(i,c),"t0",28)
|
||
case 28:n.PopSol(u)
|
||
case 29:++g,o.next=21
|
||
break
|
||
case 32:o.next=48
|
||
break
|
||
case 34:d._SetSelectAll(!1),k=d._GetOwnInstances(),_C151.clearArray(k),k.push(null),I=0,T=p.length
|
||
case 39:if(!(T>I)||_.IsStopped()){o.next=48
|
||
break}return G=p[I][0],k[0]=G,f&&G.SetSiblingsSinglePicked(),_.SetIndex(I),o.delegateYield(s.DebugRetrigger(i,c),"t1",45)
|
||
case 45:++I,o.next=39
|
||
break
|
||
case 48:return r.Pop(),h.Pop(),_C151.clearArray(p),forEachStack.Pop(),o.abrupt("return",!1)
|
||
case 53:case"end":return o.stop()}},o,this)})},{key:"_GetFunctionMap",value:function(e,t){var n=this._functionMaps.get(e)
|
||
return n?n:t?(n={defaultFunc:null,strMap:new Map},this._functionMaps.set(e,n),n):null}},{key:"_DoCallMappedFunction",value:function(e,t,n,r,a){t.GetEventBlock().RunAsMappedFunctionCall(n),r&&e.PopSol(a)}},{key:"_DebugDoCallMappedFunction",value:_regeneratorRuntime().mark(function u(e,t,n,r,a){return _regeneratorRuntime().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:return i.delegateYield(t.GetEventBlock().DebugRunAsMappedFunctionCall(n),"t0",1)
|
||
case 1:r&&e.PopSol(a)
|
||
case 2:case"end":return i.stop()}},u)})}]),t}(_C151.SDKPluginBase)
|
||
var _C152=self.C3
|
||
_C152.Plugins.System.Type=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this),r._objectClass=e,r._runtime=e.GetRuntime(),r._plugin=e.GetPlugin(),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"OnCreate",value:function(){}},{key:"Release",value:function(){this._objectClass=null,this._runtime=null,this._plugin=null}}]),t}(_C152.DefendedBase)
|
||
var _C153=self.C3
|
||
_C153.Plugins.System.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this),a._inst=e,a._objectClass=a._inst.GetObjectClass(),a._sdkType=a._objectClass.GetSdkType(),a._runtime=a._inst.GetRuntime(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._inst=null,this._objectClass=null,this._sdkType=null,this._runtime=null}}]),t}(_C153.DefendedBase)
|
||
var _C154=self.C3,tmpPickArray=[]
|
||
_C154.Plugins.System.Cnds={EveryTick:function(){return!0},OnLayoutStart:function(){return!0},OnLayoutEnd:function(){return!0},OnSuspend:function(){return!0},OnResume:function(){return!0},IsSuspended:function(){return this._runtime.IsSuspended()},Else:function(){var e=this._runtime.GetCurrentEventStackFrame()
|
||
return e.GetElseBranchRan()?!1:!e.GetLastEventTrue()},TriggerOnce:function(){var e=this._runtime.GetCurrentCondition(),t=e.GetSavedDataMap(),n=t.get("TriggerOnce_lastTick")
|
||
void 0===n&&(n=-1,t.set("TriggerOnce_lastTick",-1))
|
||
var r=this._runtime.GetTickCount()
|
||
return t.set("TriggerOnce_lastTick",r),this._runtime.IsLayoutFirstTick()||n!==r-1},Every:function(e){var t=this._runtime.GetCurrentCondition(),n=t.GetSavedDataMap(),r=n.get("Every_lastTime")||0,a=this._runtime.GetGameTime()
|
||
n.has("Every_seconds")||n.set("Every_seconds",e)
|
||
var i=n.get("Every_seconds")
|
||
return a>=r+i?(n.set("Every_lastTime",r+i),a>=n.get("Every_lastTime")+.04&&n.set("Every_lastTime",a),n.set("Every_seconds",e),!0):(r-.1>a&&n.set("Every_lastTime",a),!1)},IsGroupActive:function(e){var t=this._runtime.GetEventSheetManager().GetEventGroupByName(e)
|
||
return t&&t.IsGroupActive()},IsPreview:function(){return this._runtime.IsPreview()},IsMobile:function(){return _C154.Platform.IsMobile},OnLoadFinished:function(){return!0},OnCanvasSnapshot:function(){return!0},EffectsSupported:function(){return!0},OnSaveComplete:function(){return!0},OnSaveFailed:function(){return!0},OnLoadComplete:function(){return!0},OnLoadFailed:function(){return!0},ObjectUIDExists:function(e){return!!this._runtime.GetInstanceByUID(e)},IsOnPlatform:function(e){switch(e){case 0:return"browser"===_C154.Platform.Context
|
||
case 1:return"iOS"===_C154.Platform.OS
|
||
case 2:return"Android"===_C154.Platform.OS
|
||
case 8:return"cordova"===_C154.Platform.Context
|
||
case 9:return"scirra-arcade"===this._runtime.GetExportType()
|
||
case 10:return"nwjs"===_C154.Platform.Context
|
||
case 13:return"windows-uwp"===this._runtime.GetExportType()
|
||
default:return!1}},RegexTest:function(e,t,n){var r=this.GetRegex(t,n)
|
||
return r.test(e)},Compare:function(e,t,n){return _C154.compare(e,t,n)},CompareBetween:function(e,t,n){return e>=t&&n>=e},CompareVar:function(e,t,n){return _C154.compare(e.GetValue(),t,n)},CompareBoolVar:function(e){return!!e.GetValue()},CompareTime:function(e,t){var n=this._runtime.GetGameTime()
|
||
if(0===e){var r=this._runtime.GetCurrentCondition(),a=r.GetSavedDataMap()
|
||
return!a.get("CompareTime_executed")&&n>=t?(a.set("CompareTime_executed",!0),!0):!1}return _C154.compare(n,e,t)},IsNaN:function(e){return isNaN(e)},AngleWithin:function(e,t,n){return _C154.angleDiff(_C154.toRadians(e),_C154.toRadians(n))<=_C154.toRadians(t)},IsClockwiseFrom:function(e,t){return _C154.angleClockwise(_C154.toRadians(e),_C154.toRadians(t))},IsBetweenAngles:function(e,t,n){var r=_C154.toRadians(e),a=_C154.toRadians(t),i=_C154.toRadians(n),s=!_C154.angleClockwise(i,a)
|
||
return s?!(!_C154.angleClockwise(r,a)&&_C154.angleClockwise(r,i)):_C154.angleClockwise(r,a)&&!_C154.angleClockwise(r,i)},IsValueType:function(e,t){return"number"==typeof e?0===t:1===t},EvaluateExpression:function(e){return!!e},PickByComparison:function(e,t,n,r){if(!e)return!1
|
||
var a=this._GetForEachStack(),i=a.Push(),s=e.GetCurrentSol()
|
||
_C154.shallowAssignArray(i,s.GetInstances()),s.IsSelectAll()&&_C154.clearArray(s._GetOwnElseInstances())
|
||
for(var o=this._runtime.GetCurrentCondition(),u=0,l=0,c=i.length;c>l;++l){var h=i[l]
|
||
i[u]=h,t=o.ReevaluateParameter(1,l),r=o.ReevaluateParameter(3,l),_C154.compare(t,n,r)?++u:s._PushElseInstance(h)}_C154.truncateArray(i,u),s.SetArrayPicked(i)
|
||
var _=!!i.length
|
||
return _C154.clearArray(i),a.Pop(),e.ApplySolToContainer(),_},PickByEvaluate:function(e,t){if(!e)return!1
|
||
var n=this._GetForEachStack(),r=n.Push(),a=e.GetCurrentSol()
|
||
_C154.shallowAssignArray(r,a.GetInstances()),a.IsSelectAll()&&_C154.clearArray(a._GetOwnElseInstances())
|
||
for(var i=this._runtime.GetCurrentCondition(),s=0,o=0,u=r.length;u>o;++o){var l=r[o]
|
||
r[s]=l,t=i.ReevaluateParameter(1,o),t?++s:a._PushElseInstance(l)}_C154.truncateArray(r,s),a.SetArrayPicked(r)
|
||
var c=!!r.length
|
||
return _C154.clearArray(r),n.Pop(),e.ApplySolToContainer(),c},PickNth:function(e,t){if(!e)return!1
|
||
var n=e.GetCurrentSol(),r=n.GetInstances()
|
||
if(t=Math.floor(t),t>=r.length)return!1
|
||
var a=r[t]
|
||
return n.PickOne(a),e.ApplySolToContainer(),!0},PickRandom:function(e){if(!e)return!1
|
||
var t=e.GetCurrentSol(),n=t.GetInstances(),r=Math.floor(this._runtime.Random()*n.length)
|
||
if(r>=n.length)return!1
|
||
var a=n[r]
|
||
return t.PickOne(a),e.ApplySolToContainer(),!0},PickAll:function(e){if(!e)return!1
|
||
if(!e.GetInstanceCount())return!1
|
||
var t=e.GetCurrentSol()
|
||
return t._SetSelectAll(!0),e.ApplySolToContainer(),!0},PickOverlappingPoint:function(e,t,n){if(!e)return!1
|
||
var r=e.GetCurrentSol(),a=r.GetInstances(),i=this._runtime.GetCurrentEvent(),s=i.IsOrBlock(),o=this._runtime.GetCurrentCondition().IsInverted()
|
||
r.IsSelectAll()?(_C154.shallowAssignArray(tmpPickArray,a),r.ClearArrays(),r._SetSelectAll(!1)):s?(_C154.shallowAssignArray(tmpPickArray,r._GetOwnElseInstances()),_C154.clearArray(r._GetOwnElseInstances())):(_C154.shallowAssignArray(tmpPickArray,r._GetOwnInstances()),_C154.clearArray(r._GetOwnInstances()))
|
||
for(var u=0,l=tmpPickArray.length;l>u;++u){var c=tmpPickArray[u]
|
||
_C154.xor(c.GetWorldInfo().ContainsPoint(t,n),o)?r._PushInstance(c):r._PushElseInstance(c)}return e.ApplySolToContainer(),_C154.xor(!!r._GetOwnInstances().length,o)},PickLastCreated:function(e){if(!e)return!1
|
||
for(var t=e.IsFamily(),n=null,r=this._runtime._GetInstancesPendingCreate(),a=r.length-1;a>=0;--a){var i=r[a]
|
||
if(t){if(i.GetObjectClass().BelongsToFamily(e)){n=i
|
||
break}}else if(i.GetObjectClass()===e){n=i
|
||
break}}if(!n){var s=e.GetInstances()
|
||
s.length&&(n=s[s.length-1])}if(!n)return!1
|
||
var o=e.GetCurrentSol()
|
||
return o.PickOne(n),e.ApplySolToContainer(),!0},Repeat:function(e){return this._runtime.IsDebugging()?this._DebugRepeat(e):this._Repeat(e)},While:function(){return this._runtime.IsDebugging()?this._DebugWhile():this._While()},For:function(e,t,n){return this._runtime.IsDebugging()?this._DebugFor(e,t,n):this._For(e,t,n)},ForEach:function(e){return this._runtime.IsDebugging()?this._DebugForEach(e):this._ForEach(e)},ForEachOrdered:function(e,t,n){return this._runtime.IsDebugging()?this._DebugForEachOrdered(e,n):this._ForEachOrdered(e,n)},LayerVisible:function(e){return e?e.IsVisible():!1},LayerEmpty:function(e){return e?!e.GetInstanceCount():!1},LayerCmpOpacity:function(e,t,n){return e?_C154.compare(100*e.GetOpacity(),t,n):!1},OnImageLoadingComplete:function(){return!0},IsLoadingImages:function(){return this._imagesLoadingTotal>0}}
|
||
var _SortZOrderList=function(e,t){var n=e[0],r=t[0],a=n-r
|
||
if(0!==a)return a
|
||
var i=e[1],s=t[1]
|
||
return i-s},SortInstancesByValue=function(e,t){return e[1]-t[1]},_C155=self.C3,_tempZOrderList=[],tempInstValues=[],_tempRect4=_C155.New(_C155.Rect),_tempColor4=_C155.New(_C155.Color)
|
||
_C155.Plugins.System.Acts={SetVar:function(e,t){e.SetValue(t)},AddVar:function(e,t){e.IsNumber()&&"number"!=typeof t&&(t=parseFloat(t)),e.SetValue(e.GetValue()+t)},SubVar:function(e,t){e.IsNumber()&&e.SetValue(e.GetValue()-t)},SetBoolVar:function(e,t){e.SetValue(!!t)},ToggleBoolVar:function(e){e.SetValue(!e.GetValue())},ResetGlobals:function(){this._runtime.GetEventSheetManager().ResetAllGlobalsToInitialValue()},CreateObject:function(e,t,n,r,a){if(e&&t){var i=this._runtime.CreateInstance(e,t,n,r,a)
|
||
if(i){var s=this._runtime.GetEventSheetManager()
|
||
s.BlockFlushingInstances(!0),i._TriggerOnCreatedOnSelfAndRelated(),s.BlockFlushingInstances(!1),e.GetCurrentSol().SetSinglePicked(i),i.IsInContainer()&&i.SetSiblingsSinglePicked()}}},CreateObjectByName:function(e,t,n,r,a){if(e&&t){var i=this._runtime.GetObjectClassByName(e)
|
||
i&&_C155.Plugins.System.Acts.CreateObject.call(this,i,t,n,r,a)}},RecreateInitialObjects:function(e,t,n,r,a,i,s,o,u,l){if(e){var c=this._runtime.GetCurrentLayout()
|
||
if(i){var h=this._runtime.GetLayoutManager().GetLayoutByName(i)
|
||
if(!h)return
|
||
c=h}var _=null
|
||
if(!("number"!=typeof s||s>=0)||(_=c.GetLayer(s))){_tempRect4.set(t,n,r,a)
|
||
var f=c.RecreateInitialObjects(e,_tempRect4,_,o,u,l)
|
||
e.GetCurrentSol().SetArrayPicked(f),e.ApplySolToContainer()}}},StopLoop:function(){var e=this._loopStack
|
||
e.IsInLoop()&&e.GetCurrent().Stop()},SetGroupActive:function(e,t){var n=this._runtime.GetEventSheetManager().GetEventGroupByName(e)
|
||
n&&(0===t?n.SetGroupActive(!1):1===t?n.SetGroupActive(!0):n.SetGroupActive(!n.IsGroupActive()))},SetTimescale:function(e){this._runtime.SetTimeScale(e)},SetObjectTimescale:function(e,t){if(0>t&&(t=0),e){var n,r=e.GetCurrentSol(),a=r.GetInstances(),i=_createForOfIteratorHelper(a)
|
||
try{for(i.s();!(n=i.n()).done;){var s=n.value
|
||
s.SetTimeScale(t)}}catch(o){i.e(o)}finally{i.f()}}},RestoreObjectTimescale:function(e){if(e){var t,n=e.GetCurrentSol(),r=n.GetInstances(),a=_createForOfIteratorHelper(r)
|
||
try{for(a.s();!(t=a.n()).done;){var i=t.value
|
||
i.RestoreTimeScale()}}catch(s){a.e(s)}finally{a.f()}}},Wait:function(e){return 0>e?void 0:(this._runtime.GetEventSheetManager().AddScheduledWait().InitTimer(e),!0)},WaitForSignal:function(e){return this._runtime.GetEventSheetManager().AddScheduledWait().InitSignal(e),!0},WaitForPreviousActions:function(){var e=this._runtime.GetEventSheetManager()
|
||
return e.AddScheduledWait().InitPromise(e.GetPromiseForAllAsyncActions()),!0},Signal:function(e){var t,n=e.toLowerCase(),r=_createForOfIteratorHelper(this._runtime.GetEventSheetManager().scheduledWaits())
|
||
try{for(r.s();!(t=r.n()).done;){var a=t.value
|
||
a.IsSignal()&&a.GetSignalTag()===n&&a.SetSignalled()}}catch(i){r.e(i)}finally{r.f()}},SnapshotCanvas:function(e,t,n,r,a,i){var s=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function o(){var u
|
||
return _regeneratorRuntime().wrap(function(o){for(;;)switch(o.prev=o.next){case 0:if(u=s._runtime.GetCanvasManager()){o.next=3
|
||
break}return o.abrupt("return")
|
||
case 3:return s.UpdateRender(),o.next=6,u.SnapshotCanvas(0===e?"image/png":"image/jpeg",t/100,n,r,a,i)
|
||
case 6:return o.next=8,s._runtime.TriggerAsync(_C155.Plugins.System.Cnds.OnCanvasSnapshot,null)
|
||
case 8:case"end":return o.stop()}},o)}))()},SetCanvasSize:function(e,t){if(!(0>=e||0>=t)){this._runtime.SetViewportSize(e,t)
|
||
var n=this._runtime.GetCurrentLayout()
|
||
n.BoundScrolling()
|
||
var r,a=_createForOfIteratorHelper(n.GetLayers())
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
i.UpdateViewport()}}catch(s){a.e(s)}finally{a.f()}var o=this._runtime.GetCanvasManager()
|
||
o&&("off"===o.GetCurrentFullscreenMode()?o.SetSize(o.GetLastWidth(),o.GetLastHeight(),!0):(this._runtime.SetOriginalViewportSize(e,t),o.SetSize(o.GetLastWidth(),o.GetLastHeight(),!0)),this._runtime.UpdateRender())}},SetFullscreenQuality:function(e){var t=this._runtime.GetCanvasManager()
|
||
t&&"off"!==t.GetCurrentFullscreenMode()&&(t.SetFullscreenScalingQuality(0!==e?"high":"low"),t.SetSize(t.GetLastWidth(),t.GetLastHeight(),!0))},SaveState:function(e){this._runtime.SaveToSlot(e)},LoadState:function(e){this._runtime.LoadFromSlot(e)},LoadStateJSON:function(e){this._runtime.LoadFromJsonString(e)},SetHalfFramerateMode:function(e){},ResetPersisted:function(){var e,t=_createForOfIteratorHelper(this._runtime.GetLayoutManager().GetAllLayouts())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.ResetPersistData()}}catch(r){t.e(r)}finally{t.f()}},SetPixelRounding:function(e){this._runtime.SetPixelRoundingEnabled(0!==e)},SetMinimumFramerate:function(e){this._runtime.SetMinimumFramerate(e)},SortZOrderByInstVar:function(e,t){if(e){for(var n=e.GetCurrentSol(),r=n.GetInstances(),a=_tempZOrderList,i=tempInstValues,s=this._runtime.GetCurrentLayout(),o=e.IsFamily(),u=e.GetFamilyIndex(),l=0,c=r.length;c>l;++l){var h=r[l],_=h.GetWorldInfo()
|
||
if(_){var f=void 0
|
||
f=o?h.GetInstanceVariableValue(t+h.GetObjectClass().GetFamilyInstanceVariableOffset(u)):h.GetInstanceVariableValue(t),a.push([_.GetLayer().GetIndex(),_.GetZIndex()]),i.push([h,f])}}if(a.length){a.sort(_SortZOrderList),i.sort(SortInstancesByValue)
|
||
for(var d=!1,p=0,v=a.length;v>p;++p){var m=i[p][0],y=s.GetLayerByIndex(a[p][0]),g=a[p][1],C=y._GetInstances()
|
||
C[g]!==m&&(C[g]=m,m.GetWorldInfo()._SetLayer(y),y.SetZIndicesChanged(),d=!0)}d&&this._runtime.UpdateRender(),_C155.clearArray(_tempZOrderList),_C155.clearArray(tempInstValues)}}},GoToLayout:function(e){if(!this._runtime.IsLoading()){var t=this._runtime.GetLayoutManager()
|
||
t.IsPendingChangeMainLayout()||t.ChangeMainLayout(e)}},GoToLayoutByName:function(e){if(!this._runtime.IsLoading()){var t=this._runtime.GetLayoutManager()
|
||
if(!t.IsPendingChangeMainLayout()){var n=t.GetLayoutByName(e)
|
||
n&&t.ChangeMainLayout(n)}}},NextPrevLayout:function(e){if(!this._runtime.IsLoading()){var t=this._runtime.GetLayoutManager()
|
||
if(!t.IsPendingChangeMainLayout()){var n=t.GetAllLayouts(),r=n.indexOf(t.GetMainRunningLayout())
|
||
if((!e||0!==r)&&(e||r!==n.length-1)){var a=n[r+(e?-1:1)]
|
||
t.ChangeMainLayout(a)}}}},RestartLayout:function(){if(!this._runtime.IsLoading()){var e=this._runtime.GetLayoutManager()
|
||
e.IsPendingChangeMainLayout()||(e.ChangeMainLayout(e.GetMainRunningLayout()),this._runtime.GetEventSheetManager().ResetAllGroupsInitialActivation())}},SetLayerVisible:function(e,t){e&&e.SetVisible(t)},SetLayerOpacity:function(e,t){e&&e.SetOpacity(t/100)},SetLayerScale:function(e,t){e&&e.SetOwnScale(t)},SetLayerScaleRate:function(e,t){e&&e.SetScaleRate(t)},SetLayerAngle:function(e,t){e&&(t=_C155.clampAngle(_C155.toRadians(+t)),e.GetOwnAngle()!==t&&(e.SetAngle(t),this.UpdateRender()))},SetLayerParallax:function(e,t,n){e&&e.SetParallax(t/100,n/100)},SetLayerZElevation:function(e,t){e&&e.SetZElevation(t)},SetLayerBackground:function(e,t){if(e){_tempColor4.setFromRgbValue(t),_tempColor4.clamp()
|
||
var n=e.GetBackgroundColor()
|
||
n.equalsIgnoringAlpha(_tempColor4)||(n.copyRgb(_tempColor4),this.UpdateRender())}},SetLayerTransparent:function(e,t){e&&(t=!!t,e.IsTransparent()!==t&&(e.SetTransparent(t),this.UpdateRender()))},SetLayerBlendMode:function(e,t){e&&e.GetBlendMode()!==t&&(e.SetBlendMode(t),this.UpdateRender())},SetLayerEffectEnabled:function(e,t,n){if(e){var r=e.GetEffectList(),a=r.GetEffectTypeByName(n)
|
||
if(a){var i=1===t
|
||
a.IsActive()!==i&&(a.SetActive(i),r.UpdateActiveEffects(),this._runtime.UpdateRender())}}},SetLayerEffectParam:function(e,t,n,r){if(e){var a=e.GetEffectList(),i=a.GetEffectTypeByName(t)
|
||
if(i){var s=i.GetIndex(),o=a.GetEffectParametersForIndex(s)
|
||
if(n=Math.floor(n),!(0>n||n>=o.length)){var u=i.GetShaderProgram().GetParameterType(n)
|
||
if("color"===u){_tempColor4.setFromRgbValue(r)
|
||
var l=o[n]
|
||
if(_tempColor4.equalsIgnoringAlpha(l))return
|
||
l.copyRgb(_tempColor4)}else{if("percent"===u&&(r/=100),o[n]===r)return
|
||
o[n]=r}i.IsActive()&&this._runtime.UpdateRender()}}}},SetLayerForceOwnTexture:function(e,t){e&&(t=!!t,e.IsForceOwnTexture()!==t&&(e.SetForceOwnTexture(t),this.UpdateRender()))},SetLayoutScale:function(e){var t=this._runtime.GetCurrentLayout()
|
||
t.GetScale()!==e&&(t.SetScale(e),this.UpdateRender())},SetLayoutAngle:function(e){e=_C155.clampAngle(_C155.toRadians(+e))
|
||
var t=this._runtime.GetCurrentLayout()
|
||
t.GetAngle()!==e&&(t.SetAngle(e),this.UpdateRender())},SetLayoutEffectEnabled:function(e,t){var n=this._runtime.GetCurrentLayout(),r=n.GetEffectList(),a=r.GetEffectTypeByName(t)
|
||
if(a){var i=1===e
|
||
a.IsActive()!==i&&(a.SetActive(i),r.UpdateActiveEffects(),this._runtime.UpdateRender())}},SetLayoutEffectParam:function(e,t,n){var r=this._runtime.GetCurrentLayout(),a=r.GetEffectList(),i=a.GetEffectTypeByName(e)
|
||
if(i){var s=i.GetIndex(),o=a.GetEffectParametersForIndex(s)
|
||
if(t=Math.floor(t),!(0>t||t>=o.length)){var u=i.GetShaderProgram().GetParameterType(t)
|
||
if("color"===u){_tempColor4.setFromRgbValue(n)
|
||
var l=o[t]
|
||
if(_tempColor4.equalsIgnoringAlpha(l))return
|
||
l.copyRgb(_tempColor4)}else{if("percent"===u&&(n/=100),o[t]===n)return
|
||
o[t]=n}i.IsActive()&&this._runtime.UpdateRender()}}},ScrollX:function(e){var t=this._runtime.GetCurrentLayout()
|
||
t.SetScrollX(e)},ScrollY:function(e){var t=this._runtime.GetCurrentLayout()
|
||
t.SetScrollY(e)},Scroll:function(e,t){var n=this._runtime.GetCurrentLayout()
|
||
n.SetScrollX(e),n.SetScrollY(t)},ScrollToObject:function(e){if(e){var t=e.GetFirstPicked()
|
||
if(t){var n=t.GetWorldInfo()
|
||
if(n){var r=this._runtime.GetCurrentLayout()
|
||
r.SetScrollX(n.GetX()),r.SetScrollY(n.GetY())}}}},LoadObjectTextures:function(e){var t=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function n(){var r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(r=t._runtime.GetMainRunningLayout(),r&&e&&!t._runtime.IsLoading()){n.next=3
|
||
break}return n.abrupt("return")
|
||
case 3:return a=e.IsFamily()?e.GetFamilyMembers():[e],n.next=6,t._LoadTexturesForObjectClasses(r,a)
|
||
case 6:case"end":return n.stop()}},n)}))()},LoadObjectTexturesByName:function(e){var t=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:return n.next=2,_C155.Plugins.System.Acts.LoadObjectTextures.call(t,t._runtime.GetObjectClassByName(e))
|
||
case 2:case"end":return n.stop()}},n)}))()},UnloadObjectTextures:function(e){var t=this._runtime.GetMainRunningLayout()
|
||
if(t&&e){var n=e.IsFamily()?e.GetFamilyMembers():[e]
|
||
this._UnloadTexturesForObjectClasses(t,n)}},UnloadObjectTexturesByName:function(e){_C155.Plugins.System.Acts.UnloadObjectTexturesByName.call(this,this._runtime.GetObjectClassByName(e))},UnloadUnusedTextures:function(){var e=this._runtime.GetMainRunningLayout()
|
||
if(e){var t=e._GetTextureLoadedObjectTypes()
|
||
this._UnloadTexturesForObjectClasses(e,t)}},LoadLayoutTextures:function(e){var t=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function n(){var r
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(r=t._runtime.GetMainRunningLayout(),e&&r&&!t._runtime.IsLoading()){n.next=3
|
||
break}return n.abrupt("return")
|
||
case 3:return n.next=5,t._LoadTexturesForObjectClasses(r,e._GetInitialObjectClasses())
|
||
case 5:case"end":return n.stop()}},n)}))()},LoadLayoutTexturesByName:function(e){var t=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function n(){var r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(r=t._runtime.GetMainRunningLayout(),a=t._runtime.GetLayoutManager().GetLayoutByName(e),a&&r&&!t._runtime.IsLoading()){n.next=4
|
||
break}return n.abrupt("return")
|
||
case 4:return n.next=6,t._LoadTexturesForObjectClasses(r,a._GetInitialObjectClasses())
|
||
case 6:case"end":return n.stop()}},n)}))()},SetFunctionReturnValue:function(e){var t=this._eventStack.GetCurrentExpFuncStackFrame()
|
||
if(t)switch(t.GetFunctionReturnType()){case 1:"number"==typeof e&&t.SetFunctionReturnValue(e)
|
||
break
|
||
case 2:"string"==typeof e&&t.SetFunctionReturnValue(e)
|
||
break
|
||
case 3:t.SetFunctionReturnValue(e)}},MapFunction:function(e,t,n){var r=this._GetFunctionMap(e.toLowerCase(),!0),a=r.strMap,i=t.toLowerCase()
|
||
a.has(i)&&console.warn("[Construct 3] Function map '".concat(e,"' string '").concat(t,"' already in map; overwriting entry"))
|
||
var s=_C155.first(a.values())||r.defaultFunc
|
||
if(s){var o=0!==s.GetReturnType(),u=0!==n.GetReturnType()
|
||
if(o!==u)return void console.error("[Construct 3] Function map '".concat(e,"' string '").concat(t,"' function return type not compatible with other functions in the map; entry ignored"))}a.set(i,n)},MapFunctionDefault:function(e,t){var n=this._GetFunctionMap(e.toLowerCase(),!0)
|
||
n.defaultFunc&&console.warn("[Construct 3] Function map '".concat(e,"' already has a default; overwriting entry"))
|
||
var r=_C155.first(n.strMap.values())||n.defaultFunc
|
||
if(r){var a=0!==r.GetReturnType(),i=0!==t.GetReturnType()
|
||
if(a!==i)return void console.error("[Construct 3] Function map '".concat(e,"' default: function return type not compatible with other functions in the map; entry ignored"))}n.defaultFunc=t},CallMappedFunction:function(e,t,n){n=Math.floor(n)
|
||
var r=this._GetFunctionMap(e.toLowerCase(),!1)
|
||
if(!r)return void console.warn("[Construct 3] Call mapped function: map name '".concat(e,"' not found; call ignored"))
|
||
var a=r.strMap.get(t.toLowerCase())
|
||
if(!a){if(!r.defaultFunc)return void console.warn("[Construct 3] Call mapped function: no function associated with map '".concat(e,"' string '").concat(t,"'; call ignored (consider setting a default)"))
|
||
a=r.defaultFunc,n=0}if(a.IsEnabled()){if(0!==a.GetReturnType())return void console.warn("[Construct 3] Call mapped function: map '".concat(e,"' string '").concat(t,"' has a return type so cannot be called"))
|
||
var i=this._runtime,s=i.GetEventSheetManager(),o=s.GetCurrentEvent(),u=o.GetSolModifiersIncludingParents(),l=u.length>0
|
||
l&&s.PushCleanSol(u)
|
||
var c=[],h=s.FindFirstFunctionBlockParent(o)
|
||
if(h)for(var _=h.GetFunctionParameters(),f=n,d=_.length;d>f;++f)c.push(_[f].GetValue())
|
||
for(var p=a.GetFunctionParameters(),v=c.length,m=p.length;m>v;++v)c.push(p[v].GetInitialValue())
|
||
return i.IsDebugging()?this._DebugDoCallMappedFunction(s,a,c,l,u):this._DoCallMappedFunction(s,a,c,l,u)}}}
|
||
var _C156=self.C3
|
||
_C156.Plugins.System.Exps={"int":function(e){return"string"==typeof e&&(e=parseInt(e,10),isNaN(e)&&(e=0)),Math.floor(e)},"float":function(e){return"string"==typeof e&&(e=parseFloat(e),isNaN(e)&&(e=0)),e},str:function(e){return""+e},len:function(e){return"string"==typeof e?e.length:0},random:function(e,t){return void 0===t?this._runtime.Random()*e:this._runtime.Random()*(t-e)+e},choose:function(){for(var e=arguments.length,t=Array(e),n=0;e>n;n++)t[n]=arguments[n]
|
||
var r=Math.floor(this._runtime.Random()*t.length)
|
||
return t[r]},pi:function(){return Math.PI},infinity:function(){return 1/0},sqrt:function(e){return Math.sqrt(e)},abs:function(e){return Math.abs(e)},round:function(e){return Math.round(e)},floor:function(e){return Math.floor(e)},ceil:function(e){return Math.ceil(e)},sign:function(e){return Math.sign(e)},sin:function(e){return Math.sin(_C156.toRadians(e))},cos:function(e){return Math.cos(_C156.toRadians(e))},tan:function(e){return Math.tan(_C156.toRadians(e))},asin:function(e){return _C156.toDegrees(Math.asin(e))},acos:function(e){return _C156.toDegrees(Math.acos(e))},atan:function(e){return _C156.toDegrees(Math.atan(e))},exp:function(e){return Math.exp(e)},ln:function(e){return Math.log(e)},log10:function(e){return Math.log(e)/Math.LN10},max:function(){var e=arguments.length<=0?void 0:arguments[0]
|
||
"number"!=typeof e&&(e=0)
|
||
for(var t=1,n=arguments.length;n>t;++t){var r=0>t||arguments.length<=t?void 0:arguments[t]
|
||
"number"==typeof r&&r>e&&(e=r)}return e},min:function(){var e=arguments.length<=0?void 0:arguments[0]
|
||
"number"!=typeof e&&(e=0)
|
||
for(var t=1,n=arguments.length;n>t;++t){var r=0>t||arguments.length<=t?void 0:arguments[t]
|
||
"number"==typeof r&&e>r&&(e=r)}return e},clamp:function(e,t,n){return _C156.clamp(e,t,n)},distance:function(e,t,n,r){return _C156.distanceTo(e,t,n,r)},angle:function(e,t,n,r){return _C156.toDegrees(_C156.angleTo(e,t,n,r))},lerp:function(e,t,n){return _C156.lerp(e,t,n)},unlerp:function(e,t,n){return _C156.unlerp(e,t,n)},qarp:function(e,t,n,r){return _C156.qarp(e,t,n,r)},cubic:function(e,t,n,r,a){return _C156.cubic(e,t,n,r,a)},cosp:function(e,t,n){return _C156.cosp(e,t,n)},anglediff:function(e,t){return _C156.toDegrees(_C156.angleDiff(_C156.toRadians(e),_C156.toRadians(t)))},anglelerp:function(e,t,n){return _C156.toDegrees(_C156.angleLerp(_C156.toRadians(e),_C156.toRadians(t),n))},anglerotate:function(e,t,n){return _C156.toDegrees(_C156.angleRotate(_C156.toRadians(e),_C156.toRadians(t),_C156.toRadians(n)))},setbit:function(e,t,n){return e=0|e,t=0|t,n=0!==n?1:0,e&~(1<<t)|n<<t},togglebit:function(e,t){return e=0|e,t=0|t,e^1<<t},getbit:function(e,t){return e=0|e,t=0|t,e&1<<t?1:0},newline:function(){return"\n"},uppercase:function(e){return"string"==typeof e?e.toUpperCase():""},lowercase:function(e){return"string"==typeof e?e.toLowerCase():""},left:function(e,t){return"string"==typeof e?e.substr(0,t):""},mid:function(e,t,n){return"string"!=typeof e?"":0>n?e.substr(t):e.substr(t,n)},right:function(e,t){return"string"==typeof e?e.substr(e.length-t):""},trim:function(e){return"string"==typeof e?e.trim():""},tokenat:function(e,t,n){if("string"!=typeof e||"string"!=typeof n)return""
|
||
var r=e.split(n)
|
||
return t=Math.floor(t),0>t||t>=r.length?"":r[t]},tokencount:function(e,t){return"string"==typeof e&&"string"==typeof t&&e.length?e.split(t).length:0},find:function(e,t){return"string"==typeof e&&"string"==typeof t?e.search(RegExp(_C156.EscapeRegex(t),"i")):-1},findcase:function(e,t){return"string"==typeof e&&"string"==typeof t?e.search(RegExp(_C156.EscapeRegex(t),"")):-1},replace:function(e,t,n){return"string"==typeof e&&"string"==typeof t&&"string"==typeof n?e.replace(RegExp(_C156.EscapeRegex(t),"gi"),n):"string"==typeof e?e:""},regexsearch:function(e,t,n){var r=this.GetRegex(t,n)
|
||
return e?e.search(r):-1},regexreplace:function(e,t,n,r){var a=this.GetRegex(t,n)
|
||
return e?e.replace(a,r):""},regexmatchcount:function(e,t,n){var r=this.GetRegexMatches(""+e,t,n)
|
||
return r?r.length:0},regexmatchat:function(e,t,n,r){r=Math.floor(r)
|
||
var a=this.GetRegexMatches(""+e,t,n)
|
||
return!a||0>r||r>=a.length?"":a[r]},zeropad:function(e,t){var n=0>e?"-":""
|
||
0>e&&(e=-e)
|
||
var r=t-(""+e).length
|
||
return n+="0".repeat(Math.max(r,0)),n+(""+e)},urlencode:function(e){return encodeURIComponent(e)},urldecode:function(e){return decodeURIComponent(e)},dt:function(){return this._runtime._GetDtFast()},timescale:function(){return this._runtime.GetTimeScale()},wallclocktime:function(){return(Date.now()-this._runtime.GetStartTime())/1e3},unixtime:function(){return Date.now()},time:function(){return this._runtime.GetGameTime()},tickcount:function(){return this._runtime.GetTickCount()},objectcount:function(){return this._runtime.GetObjectCount()},fps:function(){return this._runtime.GetFPS()},cpuutilisation:function(){return this._runtime.GetMainThreadTime()},gpuutilisation:function(){return this._runtime.GetGPUUtilisation()},windowwidth:function(){return this._runtime.GetCanvasManager().GetDeviceWidth()},windowheight:function(){return this._runtime.GetCanvasManager().GetDeviceHeight()},originalwindowwidth:function(){return this._runtime.GetOriginalViewportWidth()},originalwindowheight:function(){return this._runtime.GetOriginalViewportHeight()},originalviewportwidth:function(){return this._runtime.GetOriginalViewportWidth()},originalviewportheight:function(){return this._runtime.GetOriginalViewportHeight()},scrollx:function(){return this._runtime.GetCurrentLayout().GetScrollX()},scrolly:function(){return this._runtime.GetCurrentLayout().GetScrollY()},layoutname:function(){return this._runtime.GetCurrentLayout().GetName()},layoutscale:function(){return this._runtime.GetCurrentLayout().GetScale()},layoutangle:function(){return _C156.toDegrees(this._runtime.GetCurrentLayout().GetAngle())},layoutwidth:function(){return this._runtime.GetCurrentLayout().GetWidth()},layoutheight:function(){return this._runtime.GetCurrentLayout().GetHeight()},viewportleft:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetViewport().getLeft():0},viewporttop:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetViewport().getTop():0},viewportright:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetViewport().getRight():0},viewportbottom:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetViewport().getBottom():0},viewportwidth:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetViewport().width():0},viewportheight:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetViewport().height():0},canvastolayerx:function(e,t,n){var r=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return r?r.CanvasCssToLayer(t,n)[0]:0},canvastolayery:function(e,t,n){var r=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return r?r.CanvasCssToLayer(t,n)[1]:0},layertocanvasx:function(e,t,n){var r=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return r?r.LayerToCanvasCss(t,n)[0]:0},layertocanvasy:function(e,t,n){var r=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return r?r.LayerToCanvasCss(t,n)[1]:0},layerscale:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetOwnScale():0},layerangle:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?_C156.toDegrees(t.GetOwnAngle()):0},layeropacity:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?100*t.GetOpacity():0},layerscalerate:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetScaleRate():0},layerparallaxx:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?100*t.GetParallaxX():0},layerparallaxy:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?100*t.GetParallaxY():0},layerzelevation:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetZElevation():0},layerindex:function(e){var t=this._runtime.GetCurrentLayout().GetLayer(e)
|
||
return t?t.GetIndex():-1},canvassnapshot:function(){var e=this._runtime.GetCanvasManager()
|
||
return e?e.GetCanvasSnapshotUrl():""},loopindex:function(e){var t=this._loopStack
|
||
if(!t.IsInLoop())return 0
|
||
if(e){var n=t.FindByName(e)
|
||
return n?n.GetIndex():0}return t.GetCurrent().GetIndex()},savestatejson:function(){return this._runtime.GetLastSaveJsonString()},callmapped:function(e,t){var n=this._GetFunctionMap(e.toLowerCase(),!1)
|
||
if(!n)return console.warn("[Construct 3] Call mapped function: map name '".concat(e,"' not found; returning 0")),0
|
||
var r=n.strMap.get(t.toLowerCase())
|
||
if(!r){if(!n.defaultFunc)return console.warn("[Construct 3] Call mapped function: no function associated with map '".concat(e,"' string '").concat(t,"'; returning 0 (consider setting a default)")),0
|
||
r=n.defaultFunc}var a=r.GetReturnType(),i=r.GetDefaultReturnValue()
|
||
if(0===a)return console.warn("[Construct 3] Call mapped function: map '".concat(e,"' string '").concat(t,"' has no return type so cannot be called from an expression; returning 0")),0
|
||
if(!r.IsEnabled())return i
|
||
var s=this._runtime,o=s.GetEventSheetManager(),u=o.GetCurrentEvent(),l=u.GetSolModifiersIncludingParents(),c=l.length>0
|
||
c&&o.PushCleanSol(l)
|
||
for(var h=r.GetFunctionParameters(),_=arguments.length,f=Array(_>2?_-2:0),d=2;_>d;d++)f[d-2]=arguments[d]
|
||
for(var p=f.length,v=h.length;v>p;++p)f.push(h[p].GetInitialValue())
|
||
var m=r.GetEventBlock(),y=m.RunAsExpressionFunctionCall.apply(m,[m.GetSolModifiersIncludingParents(),a,i].concat(f))
|
||
return c&&o.PopSol(l),y},loadingprogress:function(){return this._runtime.GetAssetManager().GetLoadProgress()},imageloadingprogress:function(){return 0===this._imagesLoadingTotal?1:this._imagesLoadingComplete/this._imagesLoadingTotal},renderer:function(){return"webgl"},rendererdetail:function(){return this._runtime.GetWebGLRenderer().GetUnmaskedRenderer()},imagememoryusage:function(){var e=this._runtime.GetWebGLRenderer().GetEstimatedTextureMemoryUsage()
|
||
return Math.round(100*e/1048576)/100},rgb:function(e,t,n){return _C156.PackRGB(e,t,n)},rgbex:function(e,t,n){return _C156.PackRGBEx(e/100,t/100,n/100)},rgba:function(e,t,n,r){return _C156.PackRGBAEx(e/100,t/100,n/100,r/100)},rgbex255:function(e,t,n){return _C156.PackRGBEx(e/255,t/255,n/255)},rgba255:function(e,t,n,r){return _C156.PackRGBAEx(e/255,t/255,n/255,r/255)},projectname:function(){return this._runtime.GetProjectName()},projectversion:function(){return this._runtime.GetProjectVersion()},currenteventsheetname:function(){return this._runtime.GetCurrentEvent().GetEventSheet().GetName()},currenteventnumber:function(){return this._runtime.GetCurrentEvent().GetDisplayNumber()}}
|
||
var _C157=self.C3
|
||
_C157.Plugins.Sprite=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C157.SDKPluginBase)
|
||
var _C158=self.C3
|
||
_C158.Plugins.Sprite.Type=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._animations=e.GetAnimations(),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C158.clearArray(this._animations),_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){var e,t=_createForOfIteratorHelper(this._animations)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.LoadAllAssets(this._runtime)}}catch(r){t.e(r)}finally{t.f()}}},{key:"LoadTextures",value:function(e){var t={sampling:this._runtime.GetSampling()}
|
||
return Promise.all(this._animations.map(function(n){return n.LoadAllTextures(e,t)}))}},{key:"ReleaseTextures",value:function(){var e,t=_createForOfIteratorHelper(this._animations)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.ReleaseAllTextures()}}catch(r){t.e(r)}finally{t.f()}}},{key:"OnDynamicTextureLoadComplete",value:function(){this._UpdateAllCurrentTexture()}},{key:"_UpdateAllCurrentTexture",value:function(){var e,t=_createForOfIteratorHelper(this._objectClass.instancesIncludingPendingCreate())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.GetSdkInstance()._UpdateCurrentTexture()}}catch(r){t.e(r)}finally{t.f()}}},{key:"FinishCondition",value:function(e){_C158.Plugins.Sprite._FinishCondition(this,e)}}]),t}(_C158.SDKTypeBase)
|
||
var _C159=self.C3,INITIALLY_VISIBLE=0,INITIAL_ANIMATION=1,INITIAL_FRAME=2,ENABLE_COLLISIONS=3,_tempRect5=_C159.New(_C159.Rect),_tempQuad5=_C159.New(_C159.Quad),tempVec2=_C159.New(_C159.Vector2),FLAG_PLAYING_FORWARDS=1,FLAG_ANIMATION_PLAYING=2,FLAG_ANIMATION_TRIGGER=4
|
||
_C159.Plugins.Sprite.Instance=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e)
|
||
var i=!0,s="",o=0,u=!0
|
||
r&&(i=!!r[INITIALLY_VISIBLE],s=r[INITIAL_ANIMATION],o=r[INITIAL_FRAME],u=r[ENABLE_COLLISIONS]),a._currentAnimation=a._objectClass.GetAnimationByName(s)||a._objectClass.GetAnimations()[0],a._currentFrameIndex=_C159.clamp(o,0,a._currentAnimation.GetFrameCount()-1),a._currentAnimationFrame=a._currentAnimation.GetFrameAt(a._currentFrameIndex)
|
||
var l=a._currentAnimationFrame.GetImageInfo()
|
||
a._currentTexture=l.GetTexture(),a._currentRcTex=l.GetTexRect(),a.HandleWebGLContextLoss(),e.SetFlag(FLAG_ANIMATION_PLAYING,!0),e.SetFlag(FLAG_PLAYING_FORWARDS,a._currentAnimation.GetSpeed()>=0),a._currentAnimationSpeed=Math.abs(a._currentAnimation.GetSpeed()),a._currentAnimationRepeatTo=a._currentAnimation.GetRepeatTo(),a._animationTimer=_C159.New(_C159.KahanSum),a._frameStartTime=0,a._animationRepeats=0,a._animTriggerName="",a._changeAnimFrameIndex=-1,a._changeAnimationName="",a._changeAnimationFrom=0
|
||
var c=a.GetWorldInfo()
|
||
return a._bquadRef=c.GetBoundingQuad(),c.SetVisible(i),c.SetCollisionEnabled(u),c.SetOriginX(a._currentAnimationFrame.GetOriginX()),c.SetOriginY(a._currentAnimationFrame.GetOriginY()),c.SetSourceCollisionPoly(a._currentAnimationFrame.GetCollisionPoly()),c.SetBboxChanged(),1===a._objectClass.GetAnimationCount()&&1===a._objectClass.GetAnimations()[0].GetFrameCount()||0===a._currentAnimationSpeed||a._StartTicking(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._currentAnimation=null,this._currentAnimationFrame=null,this._currentTexture=null,this._animationTimer=null,_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetCurrentImageInfo",value:function(){return this._currentAnimationFrame.GetImageInfo()}},{key:"OnWebGLContextLost",value:function(){this._currentTexture=null}},{key:"OnWebGLContextRestored",value:function(){this._UpdateCurrentTexture()}},{key:"Draw",value:function(e){var t=this._currentTexture
|
||
if(null!==t){e.SetTexture(t)
|
||
var n=this.GetWorldInfo()
|
||
n.HasMesh()?this._DrawMesh(n,e):this._DrawStandard(n,e)}}},{key:"_DrawStandard",value:function(e,t){var n=this._bquadRef
|
||
this._runtime.IsPixelRoundingEnabled()&&(n=e.PixelRoundQuad(n)),t.Quad3(n,this._currentRcTex)}},{key:"_DrawMesh",value:function(e,t){var n=e.GetTransformedMesh()
|
||
if(e.IsMeshChanged()){e.CalculateBbox(_tempRect5,_tempQuad5,!1)
|
||
var r=_tempQuad5
|
||
this._runtime.IsPixelRoundingEnabled()&&(r=e.PixelRoundQuad(r)),n.CalculateTransformedMesh(e.GetSourceMesh(),r,this._currentRcTex),e.SetMeshChanged(!1)}n.Draw(t)}},{key:"GetAnimationTime",value:function(){return this._animationTimer.Get()}},{key:"IsAnimationPlaying",value:function(){return this._inst.GetFlag(FLAG_ANIMATION_PLAYING)}},{key:"SetAnimationPlaying",value:function(e){this._inst.SetFlag(FLAG_ANIMATION_PLAYING,e)}},{key:"IsPlayingForwards",value:function(){return this._inst.GetFlag(FLAG_PLAYING_FORWARDS)}},{key:"SetPlayingForwards",value:function(e){this._inst.SetFlag(FLAG_PLAYING_FORWARDS,e)}},{key:"IsInAnimationTrigger",value:function(){return this._inst.GetFlag(FLAG_ANIMATION_TRIGGER)}},{key:"SetInAnimationTrigger",value:function(e){this._inst.SetFlag(FLAG_ANIMATION_TRIGGER,e)}},{key:"Tick",value:function(){this._changeAnimationName&&this._DoChangeAnimation(),this._changeAnimFrameIndex>=0&&this._DoChangeAnimFrame()
|
||
var e=this._currentAnimationSpeed
|
||
if(!this.IsAnimationPlaying()||0===e)return void this._StopTicking()
|
||
var t=this._runtime.GetDt(this._inst)
|
||
this._animationTimer.Add(t)
|
||
var n=this.GetAnimationTime(),r=this._currentAnimationFrame,a=r.GetDuration()/e
|
||
if(!(n<this._frameStartTime+a)){var i=this._currentAnimation,s=this._currentAnimationRepeatTo,o=i.GetFrameCount(),u=i.GetRepeatCount(),l=i.IsLooping(),c=i.IsPingPong()
|
||
this.IsPlayingForwards()?this._currentFrameIndex++:this._currentFrameIndex--,this._frameStartTime+=a,this._currentFrameIndex>=o&&(c?(this.SetPlayingForwards(!1),this._currentFrameIndex=o-2):l?this._currentFrameIndex=s:(this._animationRepeats++,this._animationRepeats>=u?this._FinishAnimation(!1):this._currentFrameIndex=s)),this._currentFrameIndex<0&&(c?(this._currentFrameIndex=1,this.SetPlayingForwards(!0),l||(this._animationRepeats++,this._animationRepeats>=u&&this._FinishAnimation(!0))):l?this._currentFrameIndex=s:(this._animationRepeats++,this._animationRepeats>=u?this._FinishAnimation(!0):this._currentFrameIndex=s)),this._currentFrameIndex=_C159.clamp(this._currentFrameIndex,0,o-1)
|
||
var h=i.GetFrameAt(this._currentFrameIndex)
|
||
n>this._frameStartTime+h.GetDuration()/e&&(this._frameStartTime=n),this._OnFrameChanged(r,h)}}},{key:"_FinishAnimation",value:function(e){this._currentFrameIndex=e?0:this._currentAnimation.GetFrameCount()-1,this.SetAnimationPlaying(!1),this._animTriggerName=this._currentAnimation.GetName(),this.SetInAnimationTrigger(!0),this.Trigger(_C159.Plugins.Sprite.Cnds.OnAnyAnimFinished),this.Trigger(_C159.Plugins.Sprite.Cnds.OnAnimFinished),this.SetInAnimationTrigger(!1),this._animationRepeats=0}},{key:"_OnFrameChanged",value:function(e,t){if(e!==t){var n=this.GetWorldInfo(),r=e.GetImageInfo(),a=t.GetImageInfo(),i=r.GetWidth(),s=r.GetHeight(),o=a.GetWidth(),u=a.GetHeight()
|
||
i!==o&&n.SetWidth(n.GetWidth()*(o/i)),s!==u&&n.SetHeight(n.GetHeight()*(u/s)),n.SetOriginX(t.GetOriginX()),n.SetOriginY(t.GetOriginY()),n.SetSourceCollisionPoly(t.GetCollisionPoly()),n.SetBboxChanged(),this._currentAnimationFrame=t,this._currentTexture=a.GetTexture(),this._currentRcTex=a.GetTexRect()
|
||
for(var l=this.GetInstance().GetBehaviorInstances(),c=0,h=l.length;h>c;++c)l[c].OnSpriteFrameChanged(e,t)
|
||
this.Trigger(_C159.Plugins.Sprite.Cnds.OnFrameChanged),this._runtime.UpdateRender()}}},{key:"_StartAnim",value:function(e){this.SetAnimationPlaying(!0),this._frameStartTime=this.GetAnimationTime(),1===e&&0!==this._currentFrameIndex&&(this._changeAnimFrameIndex=0,this.IsInAnimationTrigger()||this._DoChangeAnimFrame()),this._StartTicking()}},{key:"_SetAnim",value:function(e,t){this._changeAnimationName=e,this._changeAnimationFrom=t,this._StartTicking(),this.IsInAnimationTrigger()||this._DoChangeAnimation()}},{key:"_GetCurrentAnimationName",value:function(){return this._changeAnimationName?this._changeAnimationName:this._currentAnimation.GetName()}},{key:"_SetAnimFrame",value:function(e){isFinite(e)&&(this._changeAnimFrameIndex=e,this.IsInAnimationTrigger()||this._DoChangeAnimFrame())}},{key:"_GetAnimFrame",value:function(){return this._currentFrameIndex}},{key:"_SetAnimSpeed",value:function(e){this._currentAnimationSpeed=Math.abs(e),this.SetPlayingForwards(e>=0),this._currentAnimationSpeed>0&&this._StartTicking()}},{key:"_GetAnimSpeed",value:function(){return this.IsPlayingForwards()?this._currentAnimationSpeed:-this._currentAnimationSpeed}},{key:"_SetAnimRepeatToFrame",value:function(e){e=_C159.clamp(Math.floor(e),0,this._currentAnimation.GetFrameCount()-1),this._currentAnimationRepeatTo=e}},{key:"_GetAnimRepeatToFrame",value:function(){return this._currentAnimationRepeatTo}},{key:"_DoChangeAnimation",value:function(){var e=this._currentAnimationFrame,t=this._objectClass.GetAnimationByName(this._changeAnimationName)
|
||
if(this._changeAnimationName="",t&&(t!==this._currentAnimation||!this.IsAnimationPlaying())){this._currentAnimation=t,this.SetPlayingForwards(t.GetSpeed()>=0),this._currentAnimationSpeed=Math.abs(t.GetSpeed()),this._currentAnimationRepeatTo=t.GetRepeatTo(),this._currentFrameIndex=_C159.clamp(this._currentFrameIndex,0,this._currentAnimation.GetFrameCount()-1),1===this._changeAnimationFrom&&(this._currentFrameIndex=0),this.SetAnimationPlaying(!0),this._frameStartTime=this.GetAnimationTime()
|
||
var n=this._currentAnimation.GetFrameAt(this._currentFrameIndex)
|
||
this._OnFrameChanged(e,n)}}},{key:"_DoChangeAnimFrame",value:function(){var e=this._currentAnimationFrame,t=this._currentFrameIndex
|
||
if(this._currentFrameIndex=_C159.clamp(Math.floor(this._changeAnimFrameIndex),0,this._currentAnimation.GetFrameCount()-1),this._changeAnimFrameIndex=-1,t!==this._currentFrameIndex){var n=this._currentAnimation.GetFrameAt(this._currentFrameIndex)
|
||
this._OnFrameChanged(e,n),this._frameStartTime=this.GetAnimationTime()}}},{key:"_UpdateCurrentTexture",value:function(){var e=this._currentAnimationFrame.GetImageInfo()
|
||
this._currentTexture=e.GetTexture(),this._currentRcTex=e.GetTexRect(),this.GetWorldInfo().SetMeshChanged(!0)}},{key:"GetImagePointCount",value:function(){return this._currentAnimationFrame.GetImagePointCount()}},{key:"GetImagePoint",value:function(e){var t=this._currentAnimationFrame,n=this.GetWorldInfo(),r=null
|
||
if("string"==typeof e)r=t.GetImagePointByName(e)
|
||
else{if("number"!=typeof e)throw new TypeError("expected string or number")
|
||
r=t.GetImagePointByIndex(e-1)}if(!r)return[n.GetX(),n.GetY()]
|
||
if(tempVec2.copy(r.GetVec2()),n.HasMesh()){var a=n.GetSourceMesh().TransformPoint(tempVec2.getX(),tempVec2.getY()),i=_slicedToArray(a,2),s=i[0],o=i[1]
|
||
tempVec2.set(s,o)}return tempVec2.offset(-t.GetOriginX(),-t.GetOriginY()),tempVec2.scale(n.GetWidth(),n.GetHeight()),tempVec2.rotate(n.GetAngle()),tempVec2.offset(n.GetX(),n.GetY()),[tempVec2.getX(),tempVec2.getY()]}},{key:"GetCollisionPolyPointCount",value:function(){return this.GetWorldInfo().GetTransformedCollisionPoly().pointCount()}},{key:"GetCollisionPolyPoint",value:function(e){e=Math.floor(e)
|
||
var t=this.GetWorldInfo(),n=t.GetTransformedCollisionPoly(),r=n.pointCount()
|
||
if(e===r&&(e=0),0>e||e>=r)return[0,0]
|
||
var a=n.pointsArr()
|
||
return[a[2*e+0]+t.GetX(),a[2*e+1]+t.GetY()]}},{key:"GetDebuggerProperties",value:function(){var e=this,t=_C159.Plugins.Sprite.Acts,n="plugins.sprite.debugger.animation-properties"
|
||
return[{title:n+".title",properties:[{name:n+".current-animation",value:this._currentAnimation.GetName(),onedit:function(n){return e.CallAction(t.SetAnim,n,0)}},{name:n+".current-frame",value:this._currentFrameIndex,onedit:function(n){return e.CallAction(t.SetAnimFrame,n)}},{name:n+".is-playing",value:this.IsAnimationPlaying(),onedit:function(n){return n?e.CallAction(t.StartAnim,0):e.CallAction(t.StopAnim)}},{name:n+".speed",value:this._currentAnimationSpeed,onedit:function(n){return e.CallAction(t.SetAnimSpeed,n)}},{name:n+".repeats",value:this._animationRepeats,onedit:function(t){return e._animationRepeats=t}}]}]}},{key:"SaveToJson",value:function(){var e={a:this._currentAnimation.GetSID()}
|
||
0!==this._frameStartTime&&(e.fs=this._frameStartTime)
|
||
var t=this.GetAnimationTime()
|
||
0!==t&&(e.at=t),0!==this._currentFrameIndex&&(e.f=this._currentFrameIndex),0!==this._currentAnimationSpeed&&(e.cas=this._currentAnimationSpeed),1!==this._animationRepeats&&(e.ar=this._animationRepeats),0!==this._currentAnimationRepeatTo&&(e.rt=this._currentAnimationRepeatTo),this.IsAnimationPlaying()||(e.ap=this.IsAnimationPlaying()),this.IsPlayingForwards()||(e.af=this.IsPlayingForwards())
|
||
var n=this.GetWorldInfo()
|
||
return n.IsCollisionEnabled()&&(e.ce=n.IsCollisionEnabled()),e}},{key:"LoadFromJson",value:function(e){var t=this.GetObjectClass().GetAnimationBySID(e.a)
|
||
t&&(this._currentAnimation=t),this._frameStartTime=e.hasOwnProperty("fs")?e.fs:0,this._animationTimer.Set(e.hasOwnProperty("at")?e.at:0)
|
||
var n=e.hasOwnProperty("f")?e.f:0
|
||
this._currentFrameIndex=_C159.clamp(n,0,this._currentAnimation.GetFrameCount()-1),this._currentAnimationSpeed=e.hasOwnProperty("cas")?e.cas:0,this._animationRepeats=e.hasOwnProperty("ar")?e.ar:1
|
||
var r=e.hasOwnProperty("rt")?e.rt:0
|
||
this._currentAnimationRepeatTo=_C159.clamp(r,0,this._currentAnimation.GetFrameCount()-1),this.SetAnimationPlaying(e.hasOwnProperty("ap")?!!e.ap:!0),this.SetPlayingForwards(e.hasOwnProperty("af")?!!e.af:!0)
|
||
var a=this._currentAnimation.GetFrameAt(this._currentFrameIndex)
|
||
this._currentAnimationFrame=a,this._UpdateCurrentTexture()
|
||
var i=this.GetWorldInfo()
|
||
i.SetOriginX(a.GetOriginX()),i.SetOriginY(a.GetOriginY()),i.SetSourceCollisionPoly(a.GetCollisionPoly()),i.SetCollisionEnabled(!!e.ce)}},{key:"GetPropertyValueByIndex",value:function(e){var t=this.GetWorldInfo()
|
||
switch(e){case ENABLE_COLLISIONS:return t.IsCollisionEnabled()
|
||
case INITIAL_FRAME:return _C159.clamp(this._currentFrameIndex,0,this._currentAnimation.GetFrameCount()-1)}}},{key:"SetPropertyValueByIndex",value:function(e,t){var n=this.GetWorldInfo()
|
||
switch(e){case ENABLE_COLLISIONS:n.SetCollisionEnabled(!!t)
|
||
break
|
||
case INITIAL_FRAME:this.SetAnimationPlaying(!1)
|
||
var r=this._currentAnimation.GetFrameCount()-1,a=t=_C159.clamp(t,0,r),i=this._currentAnimation.GetFrameAt(this._currentFrameIndex),s=this._currentAnimation.GetFrameAt(a)
|
||
this._OnFrameChanged(i,s),this._currentFrameIndex=_C159.clamp(a,0,r)}}},{key:"GetScriptInterfaceClass",value:function(){return self.ISpriteInstance}}]),t}(_C159.SDKWorldInstanceBase)
|
||
var _map10=new WeakMap,ANIM_FROM_MODES=new Map([["current-frame",0],["beginning",1]])
|
||
self.ISpriteInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map10.set(_assertThisInitialized(e),self.IInstance._GetInitInst().GetSdkInstance()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"getImagePointCount",value:function(){return _map10.get(this).GetImagePointCount()}},{key:"getImagePointX",value:function(e){if("string"!=typeof e&&"number"!=typeof e)throw new TypeError("expected string or number")
|
||
return _map10.get(this).GetImagePoint(e)[0]}},{key:"getImagePointY",value:function(e){if("string"!=typeof e&&"number"!=typeof e)throw new TypeError("expected string or number")
|
||
return _map10.get(this).GetImagePoint(e)[1]}},{key:"getImagePoint",value:function(e){if("string"!=typeof e&&"number"!=typeof e)throw new TypeError("expected string or number")
|
||
return _map10.get(this).GetImagePoint(e)}},{key:"getPolyPointCount",value:function(){return _map10.get(this).GetCollisionPolyPointCount()}},{key:"getPolyPointX",value:function(e){return _map10.get(this).GetCollisionPolyPoint(e)[0]}},{key:"getPolyPointY",value:function(e){return _map10.get(this).GetCollisionPolyPoint(e)[1]}},{key:"getPolyPoint",value:function(e){return _map10.get(this).GetCollisionPolyPoint(e)}},{key:"stopAnimation",value:function(){_map10.get(this).SetAnimationPlaying(!1)}},{key:"startAnimation",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"current-frame",t=ANIM_FROM_MODES.get(e)
|
||
if(void 0===t)throw Error("invalid mode")
|
||
_map10.get(this)._StartAnim(t)}},{key:"setAnimation",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"beginning",n=ANIM_FROM_MODES.get(t)
|
||
if(void 0===n)throw Error("invalid mode")
|
||
_map10.get(this)._SetAnim(e,n)}},{key:"animationName",get:function(){return _map10.get(this)._GetCurrentAnimationName()}},{key:"animationFrame",get:function(){return _map10.get(this)._GetAnimFrame()},set:function(e){_map10.get(this)._SetAnimFrame(e)}},{key:"animationSpeed",get:function(){return _map10.get(this)._GetAnimSpeed()},set:function(e){_map10.get(this)._SetAnimSpeed(e)}},{key:"animationRepeatToFrame",get:function(){return _map10.get(this)._GetAnimRepeatToFrame()},set:function(e){_map10.get(this)._SetAnimRepeatToFrame(e)}},{key:"imageWidth",get:function(){return _map10.get(this).GetCurrentImageInfo().GetWidth()}},{key:"imageHeight",get:function(){return _map10.get(this).GetCurrentImageInfo().GetHeight()}}]),t}(self.IWorldInstance)
|
||
var CollMemory_Add=function(e,t,n,r){var a=t.GetUID(),i=n.GetUID()
|
||
i>a?e.Set(t,n,r):e.Set(n,t,r)},CollMemory_Remove=function(e,t,n){var r=t.GetUID(),a=n.GetUID()
|
||
a>r?e.Delete(t,n):e.Delete(n,t)},CollMemory_RemoveInstance=function(e,t){e.DeleteEither(t)},CollMemory_Get=function(e,t,n){var r=t.GetUID(),a=n.GetUID()
|
||
return a>r?e.Get(t,n):e.Get(n,t)},DoOverlapCondition=function(e,t,n,r){if(!t)return!1
|
||
var a=e.GetInstance(),i=0!==n||0!==r,s=a.GetWorldInfo(),o=a.GetRuntime(),u=o.GetCollisionEngine(),l=o.GetCurrentCondition(),c=l.GetEventBlock().IsOrBlock(),h=l.GetObjectClass(),_=l.IsInverted(),f=t.GetCurrentSol(),d=h!==t
|
||
rPickType=t,needsCollisionFinish=d&&!_,rPickFromElseInstances=!1
|
||
var p,v=0,m=0,y=!1
|
||
f.IsSelectAll()?(_tempRect6.copy(s.GetBoundingBox()),_tempRect6.offset(n,r),u.GetCollisionCandidates(s.GetLayer(),t,_tempRect6,tempCandidates2),p=tempCandidates2):c?o.IsCurrentConditionFirst()&&!f._GetOwnElseInstances().length&&f._GetOwnInstances().length?p=f._GetOwnInstances():(p=f._GetOwnElseInstances(),rPickFromElseInstances=!0):p=f._GetOwnInstances(),i&&(v=s.GetX(),m=s.GetY(),s.OffsetXY(n,r),s.SetBboxChanged())
|
||
var g,C=_createForOfIteratorHelper(p)
|
||
try{for(C.s();!(g=C.n()).done;){var S=g.value
|
||
if(u.TestOverlap(a,S)){if(y=!0,_)break
|
||
d&&rToPick.add(S)}}}catch(k){C.e(k)}finally{C.f()}return i&&(s.SetXY(v,m),s.SetBboxChanged()),_C160.clearArray(tempCandidates2),y},FinishCollisionConditionPicking=function(e){var t=e.GetRuntime().GetCurrentEvent().IsOrBlock(),n=rPickType.GetCurrentSol(),r=n._GetOwnInstances(),a=n._GetOwnElseInstances()
|
||
n.IsSelectAll()?(n.SetSetPicked(rToPick),t&&(_C160.clearArray(a),n.AddElseInstances(rToPick,rPickType.GetInstances()))):t?rPickFromElseInstances?n.TransferElseInstancesToOwn(rToPick):(n.AddElseInstances(rToPick,r),n.SetSetPicked(rToPick)):n.SetSetPicked(rToPick),rPickType.ApplySolToContainer()},_C160=self.C3,_tempRect6=_C160.New(_C160.Rect),tempCandidates1=[],tempCandidates2=[],needsCollisionFinish=!1,rPickType=null,rPickFromElseInstances=!1,rToPick=new Set
|
||
_C160.Plugins.Sprite._FinishCondition=function(e,t){needsCollisionFinish&&(t&&FinishCollisionConditionPicking(e),rToPick.clear(),rPickType=null,needsCollisionFinish=!1)},_C160.Plugins.Sprite.Cnds={OnCollision:function(e){if(this._runtime.IsDebugging())return _C160.Plugins.Sprite.Cnds.DebugOnCollision.call(this,e)
|
||
if(!e)return!1
|
||
var t=this._runtime,n=t.GetCollisionEngine(),r=t.GetEventSheetManager(),a=r.GetEventStack(),i=r.GetCurrentCondition(),s=i.GetObjectClass(),o=i.GetSavedDataMap(),u=i.GetUnsavedDataMap(),l=a.GetCurrentStackFrame(),c=t.GetTickCount(),h=c-1,_=l.GetCurrentEvent(),f=a.Push(_),d=o.get("collmemory")
|
||
d||(d=_C160.New(_C160.PairMap),o.set("collmemory",d)),u.get("spriteCreatedDestroyCallback")||(u.set("spriteCreatedDestroyCallback",!0),t.Dispatcher().addEventListener("instancedestroy",function(e){return CollMemory_RemoveInstance(d,e.instance)}))
|
||
for(var p=s.GetCurrentSol(),v=e.GetCurrentSol(),m=p.GetInstances(),y=null,g=0;g<m.length;++g){var C=m[g]
|
||
v.IsSelectAll()?(n.GetCollisionCandidates(C.GetWorldInfo().GetLayer(),e,C.GetWorldInfo().GetBoundingBox(),tempCandidates1),y=tempCandidates1,n.AddRegisteredCollisionCandidates(C,e,y)):y=v.GetInstances()
|
||
for(var S=0;S<y.length;++S){var k=y[S]
|
||
if(n.TestOverlap(C,k)||n.CheckRegisteredCollision(C,k)){var I=CollMemory_Get(d,C,k),T=!1,G=-2
|
||
"number"==typeof I&&(T=!0,G=I)
|
||
var b=!T||h>G
|
||
if(CollMemory_Add(d,C,k,c),b){var A=_.GetSolModifiers()
|
||
r.PushCopySol(A)
|
||
var E=s.GetCurrentSol(),R=e.GetCurrentSol()
|
||
if(E._SetSelectAll(!1),R._SetSelectAll(!1),s===e){var x=E._GetOwnInstances()
|
||
_C160.clearArray(x),x.push(C),x.push(k),s.ApplySolToContainer()}else{var P=E._GetOwnInstances(),M=R._GetOwnInstances()
|
||
_C160.clearArray(P),_C160.clearArray(M),P.push(C),M.push(k),s.ApplySolToContainer(),e.ApplySolToContainer()}_.Retrigger(l,f),r.PopSol(A)}}else CollMemory_Remove(d,C,k)}_C160.clearArray(tempCandidates1)}return a.Pop(),!1},DebugOnCollision:_regeneratorRuntime().mark(function v(e){var t,n,r,a,i,s,o,u,l,c,h,_,f,d,p,m,y,g,C,S,k,I,T,G,b,A,E,R,x,P,M,O
|
||
return _regeneratorRuntime().wrap(function(v){for(;;)switch(v.prev=v.next){case 0:if(e){v.next=2
|
||
break}return v.abrupt("return",!1)
|
||
case 2:t=this._runtime,n=t.GetCollisionEngine(),r=t.GetEventSheetManager(),a=r.GetEventStack(),i=a.GetCurrentStackFrame(),s=t.GetTickCount(),o=s-1,u=i.GetCurrentEvent(),l=a.Push(u),c=r.GetCurrentCondition(),h=c.GetObjectClass(),_=c.GetSavedDataMap(),f=c.GetUnsavedDataMap(),d=_.get("collmemory"),d||(d=_C160.New(_C160.PairMap),_.set("collmemory",d)),f.get("spriteCreatedDestroyCallback")||(f.set("spriteCreatedDestroyCallback",!0),t.Dispatcher().addEventListener("instancedestroy",function(e){return CollMemory_RemoveInstance(d,e.instance)})),p=h.GetCurrentSol(),m=e.GetCurrentSol(),y=p.GetInstances(),g=null,C=0
|
||
case 23:if(!(C<y.length)){v.next=56
|
||
break}S=y[C],m.IsSelectAll()?(n.GetCollisionCandidates(S.GetWorldInfo().GetLayer(),e,S.GetWorldInfo().GetBoundingBox(),tempCandidates1),g=tempCandidates1,n.AddRegisteredCollisionCandidates(S,e,g)):g=m.GetInstances(),k=0
|
||
case 27:if(!(k<g.length)){v.next=52
|
||
break}if(I=g[k],!n.TestOverlap(S,I)&&!n.CheckRegisteredCollision(S,I)){v.next=48
|
||
break}if(T=CollMemory_Get(d,S,I),G=!1,b=-2,"number"==typeof T&&(G=!0,b=T),A=!G||o>b,CollMemory_Add(d,S,I,s),!A){v.next=46
|
||
break}return E=u.GetSolModifiers(),r.PushCopySol(E),R=h.GetCurrentSol(),x=e.GetCurrentSol(),R._SetSelectAll(!1),x._SetSelectAll(!1),h===e?(P=R._GetOwnInstances(),_C160.clearArray(P),P.push(S),P.push(I),h.ApplySolToContainer()):(M=R._GetOwnInstances(),O=x._GetOwnInstances(),_C160.clearArray(M),_C160.clearArray(O),M.push(S),O.push(I),h.ApplySolToContainer(),e.ApplySolToContainer()),v.delegateYield(u.DebugRetrigger(i,l),"t0",45)
|
||
case 45:r.PopSol(E)
|
||
case 46:v.next=49
|
||
break
|
||
case 48:CollMemory_Remove(d,S,I)
|
||
case 49:++k,v.next=27
|
||
break
|
||
case 52:_C160.clearArray(tempCandidates1)
|
||
case 53:++C,v.next=23
|
||
break
|
||
case 56:return a.Pop(),v.abrupt("return",!1)
|
||
case 58:case"end":return v.stop()}},v,this)}),IsOverlapping:function(e){return DoOverlapCondition(this,e,0,0)},IsOverlappingOffset:function(e,t,n){return DoOverlapCondition(this,e,t,n)},IsAnimPlaying:function(e){return _C160.equalsNoCase(this._GetCurrentAnimationName(),e)},CompareFrame:function(e,t){return _C160.compare(this._currentFrameIndex,e,t)},CompareAnimSpeed:function(e,t){return _C160.compare(this._GetAnimSpeed(),e,t)},OnAnimFinished:function(e){return _C160.equalsNoCase(this._animTriggerName,e)},OnAnyAnimFinished:function(){return!0},OnFrameChanged:function(){return!0},IsMirrored:function(){return this.GetWorldInfo().GetWidth()<0},IsFlipped:function(){return this.GetWorldInfo().GetHeight()<0},OnURLLoaded:function(){return!0},OnURLFailed:function(){return!0},IsCollisionEnabled:function(){return this.GetWorldInfo().IsCollisionEnabled()}}
|
||
var _C161=self.C3
|
||
_C161.Plugins.Sprite.Acts={Spawn:function(e,t,n,r){if(e&&t){var a=this.GetImagePoint(n),i=_slicedToArray(a,2),s=i[0],o=i[1],u=this._runtime.CreateInstance(e,t,s,o,r)
|
||
if(u){if(e.GetPlugin().IsRotatable()){var l=u.GetWorldInfo()
|
||
l.SetAngle(this.GetWorldInfo().GetAngle()),l.SetBboxChanged()}var c=this._runtime.GetEventSheetManager()
|
||
c.BlockFlushingInstances(!0),u._TriggerOnCreatedOnSelfAndRelated(),c.BlockFlushingInstances(!1)
|
||
var h=this._runtime.GetCurrentAction(),_=h.GetSavedDataMap(),f=!1
|
||
if((!_.has("Spawn_LastExec")||_.get("Spawn_LastExec")<this._runtime.GetExecCount())&&(f=!0,_.set("Spawn_LastExec",this._runtime.GetExecCount())),e!==this.GetObjectClass()){var d=e.GetCurrentSol()
|
||
d._SetSelectAll(!1)
|
||
var p=d._GetOwnInstances()
|
||
if(f?(_C161.clearArray(p),p.push(u)):p.push(u),u.IsInContainer()){var v,m=_createForOfIteratorHelper(u.siblings())
|
||
try{for(m.s();!(v=m.n()).done;){var y=v.value,g=y.GetObjectClass().GetCurrentSol()
|
||
f?g.SetSinglePicked(y):(g._SetSelectAll(!1),g._PushInstance(y))}}catch(C){m.e(C)}finally{m.f()}}}}}},StopAnim:function(){this.SetAnimationPlaying(!1)},StartAnim:function(e){this._StartAnim(e)},SetAnim:function(e,t){this._SetAnim(e,t)},SetAnimFrame:function(e){this._SetAnimFrame(e)},SetAnimSpeed:function(e){this._SetAnimSpeed(e)},SetAnimRepeatToFrame:function(e){this._SetAnimRepeatToFrame(e)},SetMirrored:function(e){var t=this.GetWorldInfo(),n=t.GetWidth(),r=Math.abs(n)*(0===e?-1:1)
|
||
n!==r&&(t.SetWidth(r),t.SetBboxChanged())},SetFlipped:function(e){var t=this.GetWorldInfo(),n=t.GetHeight(),r=Math.abs(n)*(0===e?-1:1)
|
||
n!==r&&(t.SetHeight(r),t.SetBboxChanged())},SetScale:function(e){var t=this._currentAnimationFrame,n=t.GetImageInfo(),r=this.GetWorldInfo(),a=r.GetWidth()<0?-1:1,i=r.GetHeight()<0?-1:1,s=n.GetWidth()*e*a,o=n.GetHeight()*e*i;(r.GetWidth()!==s||r.GetHeight()!==o)&&(r.SetSize(s,o),r.SetBboxChanged())},LoadURL:function(e,t,n){var r=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function a(){var n,i,s,o,u
|
||
return _regeneratorRuntime().wrap(function(a){for(;;)switch(a.prev=a.next){case 0:if(n=r._currentAnimationFrame,i=n.GetImageInfo(),s=r.GetWorldInfo(),o=r._runtime,i.GetURL()!==e){a.next=8
|
||
break}return 0===t&&(s.SetSize(i.GetWidth(),i.GetHeight()),s.SetBboxChanged()),r.Trigger(_C161.Plugins.Sprite.Cnds.OnURLLoaded),a.abrupt("return")
|
||
case 8:return u=_C161.New(_C161.ImageInfo),a.next=11,u.LoadDynamicAsset(o,e)
|
||
case 11:if(u.IsLoaded()){a.next=14
|
||
break}return r.Trigger(_C161.Plugins.Sprite.Cnds.OnURLFailed),a.abrupt("return")
|
||
case 14:return a.next=16,u.LoadStaticTexture(o.GetWebGLRenderer(),{sampling:r._runtime.GetSampling()})
|
||
case 16:if(i.ReplaceWith(u),r._sdkType._UpdateAllCurrentTexture(),r.WasReleased()||0!==t||(s.SetSize(i.GetWidth(),i.GetHeight()),s.SetBboxChanged()),o.UpdateRender(),r.WasReleased()){a.next=23
|
||
break}return a.next=23,r.TriggerAsync(_C161.Plugins.Sprite.Cnds.OnURLLoaded)
|
||
case 23:case"end":return a.stop()}},a)}))()},SetCollisions:function(e){this.GetWorldInfo().SetCollisionEnabled(e)},SetSolidCollisionFilter:function(e,t){this.GetWorldInfo().SetSolidCollisionFilter(0===e,t)},SetEffect:function(e){this.GetWorldInfo().SetBlendMode(e),this._runtime.UpdateRender()}}
|
||
var _C162=self.C3
|
||
_C162.Plugins.Sprite.Exps={AnimationFrame:function(){return this._currentFrameIndex},AnimationFrameCount:function(){return this._currentAnimation.GetFrameCount()},AnimationName:function(){return this._currentAnimation.GetName()},AnimationSpeed:function(){return this._GetAnimSpeed()},OriginalAnimationSpeed:function(){return this._currentAnimation.GetSpeed()},ImagePointX:function(e){return this.GetImagePoint(e)[0]},ImagePointY:function(e){return this.GetImagePoint(e)[1]},ImagePointCount:function(){return this.GetImagePointCount()},ImageWidth:function(){return this.GetCurrentImageInfo().GetWidth()},ImageHeight:function(){return this.GetCurrentImageInfo().GetHeight()},PolyPointXAt:function(e){return this.GetCollisionPolyPoint(e)[0]},PolyPointYAt:function(e){return this.GetCollisionPolyPoint(e)[1]},PolyPointCount:function(){return this.GetCollisionPolyPointCount()}}
|
||
var _C163=self.C3
|
||
_C163.Plugins.Text=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C163.SDKPluginBase)
|
||
var _C164=self.C3
|
||
_C164.Plugins.Text.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}},{key:"LoadTextures",value:function(e){}},{key:"ReleaseTextures",value:function(){}}]),t}(_C164.SDKTypeBase)
|
||
var _C165=self.C3,_TEMP_COLOR_ARRAY=[0,0,0],TEXT=0,ENABLE_BBCODE=1,FONT=2,SIZE=3,LINE_HEIGHT=4,BOLD=5,ITALIC=6,COLOR=7,HORIZONTAL_ALIGNMENT=8,VERTICAL_ALIGNMENT=9,WRAPPING=10,_INITIALLY_VISIBLE=11,ORIGIN=12,HORIZONTAL_ALIGNMENTS=["left","center","right"],VERTICAL_ALIGNMENTS=["top","center","bottom"],WORD_WRAP=0,CHARACTER_WRAP=1,_tempRect7=new _C165.Rect,_tempQuad6=new _C165.Quad
|
||
_C165.Plugins.Text.Instance=function(e){function t(e,r){var a
|
||
if(_classCallCheck(this,t),a=n.call(this,e),a._text="",a._enableBBcode=!0,a._faceName="Arial",a._ptSize=12,a._lineHeightOffset=0,a._isBold=!1,a._isItalic=!1,a._color=_C165.New(_C165.Color),a._horizontalAlign=0,a._verticalAlign=0,a._wrapByWord=!0,a._typewriterStartTime=-1,a._typewriterEndTime=-1,a._typewriterLength=0,a._rendererText=_C165.New(_C165.Gfx.RendererText,a._runtime.GetWebGLRenderer(),{timeout:5}),a._rendererText.ontextureupdate=function(){return a._runtime.UpdateRender()},a._rendererText.SetIsAsync(!1),r){a._text=r[TEXT],a._enableBBcode=!!r[ENABLE_BBCODE],a._faceName=r[FONT],a._ptSize=r[SIZE],a._lineHeightOffset=r[LINE_HEIGHT],a._isBold=!!r[BOLD],a._isItalic=!!r[ITALIC],a._horizontalAlign=r[HORIZONTAL_ALIGNMENT],a._verticalAlign=r[VERTICAL_ALIGNMENT],a._wrapByWord=r[WRAPPING]===WORD_WRAP
|
||
var i=r[COLOR]
|
||
a._color.setRgb(i[0],i[1],i[2]),a.GetWorldInfo().SetVisible(r[_INITIALLY_VISIBLE])}return a._UpdateTextSettings(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._CancelTypewriter(),this._rendererText.Release(),this._rendererText=null,_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_UpdateTextSettings",value:function(){var e=this._rendererText
|
||
e.SetText(this._text),e.SetBBCodeEnabled(this._enableBBcode),e.SetFontName(this._faceName),e.SetLineHeight(this._lineHeightOffset),e.SetBold(this._isBold),e.SetItalic(this._isItalic),e.SetColor(this._color),e.SetHorizontalAlignment(HORIZONTAL_ALIGNMENTS[this._horizontalAlign]),e.SetVerticalAlignment(VERTICAL_ALIGNMENTS[this._verticalAlign]),e.SetWordWrapMode(this._wrapByWord?"word":"character")}},{key:"_UpdateTextSize",value:function(){var e=this.GetWorldInfo()
|
||
this._rendererText.SetFontSize(this._ptSize*e.GetSceneGraphScale())
|
||
var t=e.GetLayer(),n=t.GetRenderScale()*t.Get2DScaleFactorToZ(e.GetTotalZElevation())
|
||
this._rendererText.SetSize(e.GetWidth(),e.GetHeight(),n)}},{key:"Draw",value:function(e){var t=this.GetWorldInfo()
|
||
this._UpdateTextSize()
|
||
var n=this._rendererText.GetTexture()
|
||
if(n){var r=t.GetLayer(),a=t.GetBoundingQuad()
|
||
if(0===t.GetAngle()&&0===t.GetLayer().GetAngle()&&0===t.GetTotalZElevation()){var i=r.LayerToDrawSurface(a.getTlx(),a.getTly()),s=_slicedToArray(i,2),o=s[0],u=s[1],l=r.LayerToDrawSurface(a.getBrx(),a.getBry()),c=_slicedToArray(l,2),h=c[0],_=c[1],f=o-Math.round(o),d=u-Math.round(u)
|
||
_tempRect7.set(o,u,h,_),_tempRect7.offset(-f,-d),_tempQuad6.setFromRect(_tempRect7)
|
||
var p=e.GetRenderTargetSize(e.GetRenderTarget()),v=_slicedToArray(p,2),m=v[0],y=v[1]
|
||
this._runtime.GetCanvasManager().SetDeviceTransform(e,m,y),e.SetTexture(n),e.Quad3(_tempQuad6,this._rendererText.GetTexRect()),r._SetTransform(e)}else{var g=0,C=0
|
||
this._runtime.IsPixelRoundingEnabled()&&(g=a.getTlx()-Math.round(a.getTlx()),C=a.getTly()-Math.round(a.getTly())),(0!==g||0!==C)&&(_tempQuad6.copy(a),_tempQuad6.offset(-g,-C),a=_tempQuad6),e.SetTexture(n),e.Quad3(a,this._rendererText.GetTexRect())}}}},{key:"SaveToJson",value:function(){var e={t:this._text,c:this._color.toJSON(),fn:this._faceName,ps:this._ptSize}
|
||
return this._enableBBcode&&(e.bbc=this._enableBBcode),0!==this._horizontalAlign&&(e.ha=this._horizontalAlign),0!==this._verticalAlign&&(e.va=this._verticalAlign),this._wrapByWord||(e.wr=this._wrapByWord),0!==this._lineHeightOffset&&(e.lho=this._lineHeightOffset),this._isBold&&(e.b=this._isBold),this._isItalic&&(e.i=this._isItalic),-1!==this._typewriterEndTime&&(e.tw={st:this._typewriterStartTime,en:this._typewriterEndTime,l:this._typewriterLength}),e}},{key:"LoadFromJson",value:function(e){if(this._CancelTypewriter(),this._text=e.t,this._color.setFromJSON(e.c),this._faceName=e.fn,this._ptSize=e.ps,this._enableBBcode=e.hasOwnProperty("bbc")?e.bbc:!1,this._horizontalAlign=e.hasOwnProperty("ha")?e.ha:0,this._verticalAlign=e.hasOwnProperty("va")?e.va:0,this._wrapByWord=e.hasOwnProperty("wr")?e.wr:!0,this._lineHeightOffset=e.hasOwnProperty("lho")?e.lho:0,this._isBold=e.hasOwnProperty("b")?e.b:!1,this._isItalic=e.hasOwnProperty("i")?e.i:!1,e.hasOwnProperty("tw")){var t=e.tw
|
||
this._typewriterStartTime=t.st,this._typewriterEndTime=t.en,this._typewriterLength=t.l}this._UpdateTextSettings(),-1!==this._typewriterEndTime&&this._StartTicking()}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case TEXT:return this._text
|
||
case ENABLE_BBCODE:return this._enableBBcode
|
||
case FONT:return this._faceName
|
||
case SIZE:return this._ptSize
|
||
case LINE_HEIGHT:return this._lineHeightOffset
|
||
case BOLD:return this._isBold
|
||
case ITALIC:return this._isItalic
|
||
case COLOR:return _TEMP_COLOR_ARRAY[0]=this._color.getR(),_TEMP_COLOR_ARRAY[1]=this._color.getG(),_TEMP_COLOR_ARRAY[2]=this._color.getB(),_TEMP_COLOR_ARRAY
|
||
case HORIZONTAL_ALIGNMENT:return this._horizontalAlign
|
||
case VERTICAL_ALIGNMENT:return this._verticalAlign
|
||
case WRAPPING:return this._wrapByWord?CHARACTER_WRAP:WORD_WRAP}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case TEXT:if(this._text===t)return
|
||
this._text=t,this._UpdateTextSettings()
|
||
break
|
||
case ENABLE_BBCODE:if(this._enableBBcode===!!t)return
|
||
this._enableBBcode=!!t,this._UpdateTextSettings()
|
||
break
|
||
case FONT:if(this._faceName===t)return
|
||
this._faceName=t,this._UpdateTextSettings()
|
||
break
|
||
case SIZE:if(this._ptSize===t)return
|
||
this._ptSize=t,this._UpdateTextSettings()
|
||
break
|
||
case LINE_HEIGHT:if(this._lineHeightOffset===t)return
|
||
this._lineHeightOffset=t,this._UpdateTextSettings()
|
||
break
|
||
case BOLD:if(this._isBold===!!t)return
|
||
this._isBold=!!t,this._UpdateTextSettings()
|
||
break
|
||
case ITALIC:if(this._isItalic===!!t)return
|
||
this._isItalic=!!t,this._UpdateTextSettings()
|
||
break
|
||
case COLOR:var n=this._color,r=t
|
||
if(n.getR()===r[0]&&n.getG()===r[1]&&n.getB()===r[2])return
|
||
this._color.setRgb(r[0],r[1],r[2]),this._UpdateTextSettings()
|
||
break
|
||
case HORIZONTAL_ALIGNMENT:if(this._horizontalAlign===t)return
|
||
this._horizontalAlign=t,this._UpdateTextSettings()
|
||
break
|
||
case VERTICAL_ALIGNMENT:if(this._verticalAlign===t)return
|
||
this._verticalAlign=t,this._UpdateTextSettings()
|
||
break
|
||
case WRAPPING:if(this._wrapByWord===(t===WORD_WRAP))return
|
||
this._wrapByWord=t===WORD_WRAP,this._UpdateTextSettings()}}},{key:"SetPropertyColorOffsetValueByIndex",value:function(e,t,n,r){if(0!==t||0!==n||0!==r)switch(e){case COLOR:this._color.addRgb(t,n,r),this._UpdateTextSettings()}}},{key:"_SetText",value:function(e){this._text!==e&&(this._text=e,this._rendererText.SetText(e),this._runtime.UpdateRender())}},{key:"GetText",value:function(){return this._text}},{key:"_StartTypewriter",value:function(e,t){this._SetText(e),this._typewriterStartTime=this._runtime.GetWallTime(),this._typewriterEndTime=this._typewriterStartTime+t/this.GetInstance().GetActiveTimeScale(),this._typewriterLength=_C165.BBString.StripAnyTags(e).length,this._rendererText.SetDrawMaxCharacterCount(0),this._StartTicking()}},{key:"_CancelTypewriter",value:function(){this._typewriterStartTime=-1,this._typewriterEndTime=-1,this._typewriterLength=0,this._rendererText.SetDrawMaxCharacterCount(-1),this._StopTicking()}},{key:"_FinishTypewriter",value:function(){-1!==this._typewriterEndTime&&(this._CancelTypewriter(),this.Trigger(_C165.Plugins.Text.Cnds.OnTypewriterTextFinished),this._runtime.UpdateRender())}},{key:"_SetFontFace",value:function(e){this._faceName!==e&&(this._faceName=e,this._rendererText.SetFontName(e),this._runtime.UpdateRender())}},{key:"_GetFontFace",value:function(){return this._faceName}},{key:"_SetBold",value:function(e){e=!!e,this._isBold!==e&&(this._isBold=e,this._rendererText.SetBold(e),this._runtime.UpdateRender())}},{key:"_IsBold",value:function(){return this._isBold}},{key:"_SetItalic",value:function(e){e=!!e,this._isItalic!==e&&(this._isItalic=e,this._rendererText.SetItalic(e),this._runtime.UpdateRender())}},{key:"_IsItalic",value:function(){return this._isItalic}},{key:"_SetFontSize",value:function(e){this._ptSize!==e&&(this._ptSize=e,this._runtime.UpdateRender())}},{key:"_GetFontSize",value:function(){return this._ptSize}},{key:"_SetLineHeight",value:function(e){this._lineHeightOffset!==e&&(this._lineHeightOffset=e,this._UpdateTextSettings(),this._runtime.UpdateRender())}},{key:"_GetLineHeight",value:function(){return this._lineHeightOffset}},{key:"_SetHAlign",value:function(e){this._horizontalAlign!==e&&(this._horizontalAlign=e,this._UpdateTextSettings(),this._runtime.UpdateRender())}},{key:"_GetHAlign",value:function(){return this._horizontalAlign}},{key:"_SetVAlign",value:function(e){this._verticalAlign!==e&&(this._verticalAlign=e,this._UpdateTextSettings(),this._runtime.UpdateRender())}},{key:"_GetVAlign",value:function(){return this._verticalAlign}},{key:"_SetWrapByWord",value:function(e){e=!!e,this._wrapByWord!==e&&(this._wrapByWord=e,this._UpdateTextSettings(),this._runtime.UpdateRender())}},{key:"_IsWrapByWord",value:function(){return this._wrapByWord}},{key:"Tick",value:function(){var e=this._runtime.GetWallTime()
|
||
if(e>=this._typewriterEndTime)this._CancelTypewriter(),this.Trigger(_C165.Plugins.Text.Cnds.OnTypewriterTextFinished),this._runtime.UpdateRender()
|
||
else{var t=_C165.relerp(this._typewriterStartTime,this._typewriterEndTime,e,0,this._typewriterLength)
|
||
t=Math.floor(t),t!==this._rendererText.GetDrawMaxCharacterCount()&&(this._rendererText.SetDrawMaxCharacterCount(t),this._runtime.UpdateRender())}}},{key:"GetDebuggerProperties",value:function(){var e=this,t="plugins.text"
|
||
return[{title:t+".name",properties:[{name:t+".properties.text.name",value:this._text,onedit:function(t){return e._SetText(t)}}]}]}},{key:"GetScriptInterfaceClass",value:function(){return self.ITextInstance}}]),t}(_C165.SDKWorldInstanceBase)
|
||
var _map11=new WeakMap,SCRIPT_HORIZONTAL_ALIGNMENTS=new Map([["left",0],["center",1],["right",2]]),SCRIPT_VERTICAL_ALIGNMENTS=new Map([["top",0],["center",1],["bottom",2]]),SCRIPT_WRAP_MODES=new Map([["word",!0],["character",!1]])
|
||
self.ITextInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map11.set(_assertThisInitialized(e),self.IInstance._GetInitInst().GetSdkInstance()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"text",get:function(){return _map11.get(this).GetText()},set:function(e){var t=_map11.get(this)
|
||
t._CancelTypewriter(),t._SetText(e)}},{key:"typewriterText",value:function(e,t){var n=_map11.get(this)
|
||
n._CancelTypewriter(),n._StartTypewriter(e,t)}},{key:"typewriterFinish",value:function(){_map11.get(this)._FinishTypewriter()}},{key:"fontFace",get:function(){return _map11.get(this)._GetFontFace()},set:function(e){_map11.get(this)._SetFontFace(e)}},{key:"isBold",get:function(){return _map11.get(this)._IsBold()},set:function(e){_map11.get(this)._SetBold(e)}},{key:"isItalic",get:function(){return _map11.get(this)._IsItalic()},set:function(e){_map11.get(this)._SetItalic(e)}},{key:"sizePt",get:function(){return _map11.get(this)._GetFontSize()},set:function(e){_map11.get(this)._SetFontSize(e)}},{key:"lineHeight",get:function(){return _map11.get(this)._GetLineHeight()},set:function(e){_map11.get(this)._SetLineHeight(e)}},{key:"horizontalAlign",get:function(){return HORIZONTAL_ALIGNMENTS[_map11.get(this)._GetHAlign()]},set:function(e){var t=SCRIPT_HORIZONTAL_ALIGNMENTS.get(e)
|
||
if(void 0===t)throw Error("invalid mode")
|
||
_map11.get(this)._SetHAlign(t)}},{key:"verticalAlign",get:function(){return VERTICAL_ALIGNMENTS[_map11.get(this)._GetVAlign()]},set:function(e){var t=SCRIPT_VERTICAL_ALIGNMENTS.get(e)
|
||
if(void 0===t)throw Error("invalid mode")
|
||
_map11.get(this)._SetVAlign(t)}},{key:"wordWrapMode",get:function(){return _map11.get(this)._IsWrapByWord()?"word":"character"},set:function(e){var t=SCRIPT_WRAP_MODES.get(e)
|
||
if(void 0===t)throw Error("invalid mode")
|
||
_map11.get(this)._SetWrapByWord(t)}}]),t}(self.IWorldInstance)
|
||
var _C166=self.C3
|
||
_C166.Plugins.Text.Cnds={CompareText:function(e,t){return t?this._text===e:_C166.equalsNoCase(this._text,e)},IsRunningTypewriterText:function(){return-1!==this._typewriterEndTime},OnTypewriterTextFinished:function(){return!0}}
|
||
var _C167=self.C3,_tempColor5=_C167.New(_C167.Color)
|
||
_C167.Plugins.Text.Acts={SetText:function(e){this._CancelTypewriter(),"number"==typeof e&&1e9>e&&(e=Math.round(1e10*e)/1e10),this._SetText(""+e)},AppendText:function(e){this._CancelTypewriter(),"number"==typeof e&&1e9>e&&(e=Math.round(1e10*e)/1e10),e=""+e,e&&this._SetText(this._text+e)},TypewriterText:function(e,t){this._CancelTypewriter(),"number"==typeof e&&1e9>e&&(e=Math.round(1e10*e)/1e10),this._StartTypewriter(""+e,t)},SetFontFace:function(e,t){var n=!1,r=!1
|
||
switch(t){case 1:n=!0
|
||
break
|
||
case 2:r=!0
|
||
break
|
||
case 3:n=!0,r=!0}(e!==this._faceName||n!==this._isBold||r!==this._isItalic)&&(this._SetFontFace(e),this._SetBold(n),this._SetItalic(r))},SetFontSize:function(e){this._SetFontSize(e)},SetFontColor:function(e){_tempColor5.setFromRgbValue(e),_tempColor5.clamp(),this._color.equalsIgnoringAlpha(_tempColor5)||(this._color.copyRgb(_tempColor5),this._rendererText.SetColor(this._color),this._runtime.UpdateRender())},SetWebFont:function(e,t){console.warn("[Text] 'Set web font' action is deprecated and no longer has any effect")},SetEffect:function(e){this.GetWorldInfo().SetBlendMode(e),this._runtime.UpdateRender()},TypewriterFinish:function(){this._FinishTypewriter()},SetLineHeight:function(e){this._SetLineHeight(e)},SetHAlign:function(e){this._SetHAlign(e)},SetVAlign:function(e){this._SetVAlign(e)},SetWrapping:function(e){this._SetWrapByWord(0===e)}}
|
||
var _C168=self.C3
|
||
_C168.Plugins.Text.Exps={Text:function(){return this._text},PlainText:function(){return this._enableBBcode?_C168.BBString.StripAnyTags(this._text):this._text},FaceName:function(){return this._faceName},FaceSize:function(){return this._ptSize},TextWidth:function(){return this._UpdateTextSize(),this._rendererText.GetTextWidth()},TextHeight:function(){return this._UpdateTextSize(),this._rendererText.GetTextHeight()},LineHeight:function(){return this._lineHeightOffset}}
|
||
var _C169=self.C3
|
||
_C169.Plugins.Keyboard=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C169.SDKPluginBase)
|
||
var GetKeyboardSdkInstance=function(){return keyboardObjectType.GetSingleGlobalInstance().GetSdkInstance()},_C170=self.C3
|
||
_C170.Plugins.Keyboard.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}},{key:"GetScriptInterfaceClass",value:function(){return self.IKeyboardObjectType}}]),t}(_C170.SDKTypeBase)
|
||
var keyboardObjectType=null
|
||
self.IKeyboardObjectType=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),keyboardObjectType=e,e.GetRuntime()._GetCommonScriptInterfaces().keyboard=_assertThisInitialized(r),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"isKeyDown",value:function(e){var t=GetKeyboardSdkInstance()
|
||
if("string"==typeof e)return t.IsKeyDown(e)
|
||
if("number"==typeof e)return t.IsKeyCodeDown(e)
|
||
throw new TypeError("expected string or number")}}]),t}(self.IObjectClass)
|
||
var _C171=self.C3
|
||
_C171.Plugins.Keyboard.Instance=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e),a._keysDownByString=new Set,a._keysDownByWhich=new Set,a._triggerWhich=0,a._triggerString="",a._triggerTypedKey=""
|
||
var i=a.GetRuntime().Dispatcher()
|
||
return a._disposables=new _C171.CompositeDisposable(_C171.Disposable.From(i,"keydown",function(e){return a._OnKeyDown(e.data)}),_C171.Disposable.From(i,"keyup",function(e){return a._OnKeyUp(e.data)}),_C171.Disposable.From(i,"window-blur",function(){return a._OnWindowBlur()})),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_OnKeyDown",value:function(e){var t=e.which,n=e.code||""+t,r=e.key
|
||
this._keysDownByString.has(n)||(this._keysDownByString.add(n),this._keysDownByWhich.add(t),this._triggerString=n,this._triggerWhich=t,this._triggerTypedKey=r,this.Trigger(_C171.Plugins.Keyboard.Cnds.OnAnyKey),this.Trigger(_C171.Plugins.Keyboard.Cnds.OnKey),this.Trigger(_C171.Plugins.Keyboard.Cnds.OnLeftRightKeyPressed),this.Trigger(_C171.Plugins.Keyboard.Cnds.OnKeyCode))}},{key:"_OnKeyUp",value:function(e){var t=e.which,n=e.code||""+t,r=e.key
|
||
this._keysDownByString["delete"](n),this._keysDownByWhich["delete"](t),this._triggerString=n,this._triggerWhich=t,this._triggerTypedKey=r,this.Trigger(_C171.Plugins.Keyboard.Cnds.OnAnyKeyReleased),this.Trigger(_C171.Plugins.Keyboard.Cnds.OnKeyReleased),this.Trigger(_C171.Plugins.Keyboard.Cnds.OnLeftRightKeyReleased),this.Trigger(_C171.Plugins.Keyboard.Cnds.OnKeyCodeReleased)}},{key:"_OnWindowBlur",value:function(){var e,t=_createForOfIteratorHelper(this._keysDownByWhich)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
this._keysDownByWhich["delete"](n),this._triggerWhich=n,this.Trigger(_C171.Plugins.Keyboard.Cnds.OnAnyKeyReleased),this.Trigger(_C171.Plugins.Keyboard.Cnds.OnKeyReleased),this.Trigger(_C171.Plugins.Keyboard.Cnds.OnKeyCodeReleased)}}catch(r){t.e(r)}finally{t.f()}this._keysDownByString.clear()}},{key:"IsKeyDown",value:function(e){return this._keysDownByString.has(e)}},{key:"IsKeyCodeDown",value:function(e){return this._keysDownByWhich.has(e)}},{key:"SaveToJson",value:function(){return{tk:this._triggerWhich,tkk:this._triggerTypedKey}}},{key:"LoadFromJson",value:function(e){this._triggerWhich=e.tk,e.hasOwnProperty("tkk")&&(this._triggerTypedKey=e.tkk)}},{key:"GetDebuggerProperties",value:function(){var e="plugins.keyboard"
|
||
return[{title:e+".name",properties:[{name:e+".debugger.last-key-code",value:this._triggerWhich},{name:e+".debugger.last-key-string",value:_C171.Plugins.Keyboard.Exps.StringFromKeyCode(this._triggerWhich)},{name:e+".debugger.last-typed-key",value:this._triggerTypedKey}]}]}}]),t}(_C171.SDKInstanceBase)
|
||
var _C172=self.C3,LEFTRIGHT_KEY_STRINGS=["ShiftLeft","ShiftRight","ControlLeft","ControlRight","AltLeft","AltRight","MetaLeft","MetaRight"]
|
||
_C172.Plugins.Keyboard.Cnds={IsKeyDown:function(e){return this._keysDownByWhich.has(e)},OnKey:function(e){return this._triggerWhich===e},OnAnyKey:function(){return!0},OnAnyKeyReleased:function(){return!0},OnKeyReleased:function(e){return this._triggerWhich===e},IsKeyCodeDown:function(e){return e=Math.floor(e),this._keysDownByWhich.has(e)},OnKeyCode:function(e){return this._triggerWhich===e},OnKeyCodeReleased:function(e){return this._triggerWhich===e},OnLeftRightKeyPressed:function(e){var t=LEFTRIGHT_KEY_STRINGS[e]
|
||
return this._triggerString===t},OnLeftRightKeyReleased:function(e){var t=LEFTRIGHT_KEY_STRINGS[e]
|
||
return this._triggerString===t},IsLeftRightKeyDown:function(e){var t=LEFTRIGHT_KEY_STRINGS[e]
|
||
return this._keysDownByString.has(t)}}
|
||
var _C173=self.C3
|
||
_C173.Plugins.Keyboard.Acts={}
|
||
var StringFromCharCode=function(e){switch(e=Math.floor(e)){case 8:return"backspace"
|
||
case 9:return"tab"
|
||
case 13:return"enter"
|
||
case 16:return"shift"
|
||
case 17:return"control"
|
||
case 18:return"alt"
|
||
case 19:return"pause"
|
||
case 20:return"capslock"
|
||
case 27:return"esc"
|
||
case 33:return"pageup"
|
||
case 34:return"pagedown"
|
||
case 35:return"end"
|
||
case 36:return"home"
|
||
case 37:return"←"
|
||
case 38:return"↑"
|
||
case 39:return"→"
|
||
case 40:return"↓"
|
||
case 45:return"insert"
|
||
case 46:return"del"
|
||
case 91:return"left window key"
|
||
case 92:return"right window key"
|
||
case 93:return"select"
|
||
case 96:return"numpad 0"
|
||
case 97:return"numpad 1"
|
||
case 98:return"numpad 2"
|
||
case 99:return"numpad 3"
|
||
case 100:return"numpad 4"
|
||
case 101:return"numpad 5"
|
||
case 102:return"numpad 6"
|
||
case 103:return"numpad 7"
|
||
case 104:return"numpad 8"
|
||
case 105:return"numpad 9"
|
||
case 106:return"numpad *"
|
||
case 107:return"numpad +"
|
||
case 109:return"numpad -"
|
||
case 110:return"numpad ."
|
||
case 111:return"numpad /"
|
||
case 112:return"F1"
|
||
case 113:return"F2"
|
||
case 114:return"F3"
|
||
case 115:return"F4"
|
||
case 116:return"F5"
|
||
case 117:return"F6"
|
||
case 118:return"F7"
|
||
case 119:return"F8"
|
||
case 120:return"F9"
|
||
case 121:return"F10"
|
||
case 122:return"F11"
|
||
case 123:return"F12"
|
||
case 144:return"numlock"
|
||
case 145:return"scroll lock"
|
||
case 186:return";"
|
||
case 187:return"="
|
||
case 188:return","
|
||
case 189:return"-"
|
||
case 190:return"."
|
||
case 191:return"/"
|
||
case 192:return"'"
|
||
case 219:return"["
|
||
case 220:return"\\"
|
||
case 221:return"]"
|
||
case 222:return"#"
|
||
case 223:return"`"
|
||
default:return String.fromCharCode(e)}},_C174=self.C3
|
||
_C174.Plugins.Keyboard.Exps={LastKeyCode:function(){return this._triggerWhich},StringFromKeyCode:function(e){return StringFromCharCode(e)},TypedKey:function(){return this._triggerTypedKey}}
|
||
var _C175=self.C3
|
||
_C175.Plugins.Mouse=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C175.SDKPluginBase)
|
||
var GetMouseSdkInstance=function(){return mouseObjectType.GetSingleGlobalInstance().GetSdkInstance()},_C176=self.C3
|
||
_C176.Plugins.Mouse.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}},{key:"GetScriptInterfaceClass",value:function(){return self.IMouseObjectType}}]),t}(_C176.SDKTypeBase)
|
||
var mouseObjectType=null
|
||
self.IMouseObjectType=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),mouseObjectType=e,e.GetRuntime()._GetCommonScriptInterfaces().mouse=_assertThisInitialized(r),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"getMouseX",value:function(e){return GetMouseSdkInstance().GetMousePositionForLayer(e)[0]}},{key:"getMouseY",value:function(e){return GetMouseSdkInstance().GetMousePositionForLayer(e)[1]}},{key:"getMousePosition",value:function(e){return GetMouseSdkInstance().GetMousePositionForLayer(e)}},{key:"isMouseButtonDown",value:function(e){return GetMouseSdkInstance().IsMouseButtonDown(e)}}]),t}(self.IObjectClass)
|
||
var _C177=self.C3,DOM_COMPONENT_ID="mouse"
|
||
_C177.Plugins.Mouse.Instance=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e,DOM_COMPONENT_ID),a._buttonMap=[!1,!1,!1],a._mouseXcanvas=0,a._mouseYcanvas=0,a._triggerButton=0,a._triggerType=0,a._triggerDir=0
|
||
var i=a.GetRuntime().Dispatcher()
|
||
return a._disposables=new _C177.CompositeDisposable(_C177.Disposable.From(i,"pointermove",function(e){return a._OnPointerMove(e.data)}),_C177.Disposable.From(i,"pointerdown",function(e){return a._OnPointerDown(e.data)}),_C177.Disposable.From(i,"pointerup",function(e){return a._OnPointerUp(e.data)}),_C177.Disposable.From(i,"dblclick",function(e){return a._OnDoubleClick(e.data)}),_C177.Disposable.From(i,"wheel",function(e){return a._OnMouseWheel(e.data)}),_C177.Disposable.From(i,"window-blur",function(){return a._OnWindowBlur()})),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_OnPointerDown",value:function(e){"mouse"===e.pointerType&&(this._mouseXcanvas=e.pageX-this._runtime.GetCanvasClientX(),this._mouseYcanvas=e.pageY-this._runtime.GetCanvasClientY(),this._CheckButtonChanges(e.lastButtons,e.buttons))}},{key:"_OnPointerMove",value:function(e){"mouse"===e.pointerType&&(this._mouseXcanvas=e.pageX-this._runtime.GetCanvasClientX(),this._mouseYcanvas=e.pageY-this._runtime.GetCanvasClientY(),this._CheckButtonChanges(e.lastButtons,e.buttons))}},{key:"_OnPointerUp",value:function(e){"mouse"===e.pointerType&&this._CheckButtonChanges(e.lastButtons,e.buttons)}},{key:"_CheckButtonChanges",value:function(e,t){this._CheckButtonChange(e,t,1,0),this._CheckButtonChange(e,t,4,1),this._CheckButtonChange(e,t,2,2)}},{key:"_CheckButtonChange",value:function(e,t,n,r){!(e&n)&&t&n?this._OnMouseDown(r):e&n&&!(t&n)&&this._OnMouseUp(r)}},{key:"_OnMouseDown",value:function(e){this._buttonMap[e]=!0,this.Trigger(_C177.Plugins.Mouse.Cnds.OnAnyClick),this._triggerButton=e,this._triggerType=0,this.Trigger(_C177.Plugins.Mouse.Cnds.OnClick),this.Trigger(_C177.Plugins.Mouse.Cnds.OnObjectClicked)}},{key:"_OnMouseUp",value:function(e){this._buttonMap[e]&&(this._buttonMap[e]=!1,this._triggerButton=e,this.Trigger(_C177.Plugins.Mouse.Cnds.OnRelease))}},{key:"_OnDoubleClick",value:function(e){this._triggerButton=e.button,this._triggerType=1,this.Trigger(_C177.Plugins.Mouse.Cnds.OnClick),this.Trigger(_C177.Plugins.Mouse.Cnds.OnObjectClicked)}},{key:"_OnMouseWheel",value:function(e){this._triggerDir=e.deltaY<0?1:0,this.Trigger(_C177.Plugins.Mouse.Cnds.OnWheel)}},{key:"_OnWindowBlur",value:function(){for(var e=0,t=this._buttonMap.length;t>e;++e){if(!this._buttonMap[e])return
|
||
this._buttonMap[e]=!1,this._triggerButton=e,this.Trigger(_C177.Plugins.Mouse.Cnds.OnRelease)}}},{key:"GetMousePositionForLayer",value:function(e){var t=this._runtime.GetMainRunningLayout(),n=this._mouseXcanvas,r=this._mouseYcanvas
|
||
if(void 0===e){var a=t.GetLayerByIndex(0)
|
||
return a.CanvasCssToLayer_DefaultTransform(n,r)}var i=t.GetLayer(e)
|
||
return i?i.CanvasCssToLayer(n,r):[0,0]}},{key:"IsMouseButtonDown",value:function(e){return e=Math.floor(e),!!this._buttonMap[e]}},{key:"_IsMouseOverCanvas",value:function(){return this._mouseXcanvas>=0&&this._mouseYcanvas>=0&&this._mouseXcanvas<this._runtime.GetCanvasCssWidth()&&this._mouseYcanvas<this._runtime.GetCanvasCssHeight()}},{key:"GetDebuggerProperties",value:function(){var e=this,t="plugins.mouse"
|
||
return[{title:t+".name",properties:[{name:t+".debugger.absolute-position",value:this._mouseXcanvas+","+this._mouseYcanvas},{name:t+".debugger.left-button",value:this._buttonMap[0]},{name:t+".debugger.middle-button",value:this._buttonMap[1]},{name:t+".debugger.right-button",value:this._buttonMap[2]}]},{title:t+".debugger.position-on-each-layer",properties:this._runtime.GetMainRunningLayout().GetLayers().map(function(t){return{name:"$"+t.GetName(),value:t.CanvasCssToLayer(e._mouseXcanvas,e._mouseYcanvas).join(", ")}})}]}}]),t}(_C177.SDKInstanceBase)
|
||
var _C178=self.C3
|
||
_C178.Plugins.Mouse.Cnds={OnClick:function(e,t){return this._triggerButton===e&&this._triggerType===t},OnAnyClick:function(){return!0},IsButtonDown:function(e){return this._buttonMap[e]},OnRelease:function(e){return this._triggerButton===e},IsOverObject:function(e){if(!this._IsMouseOverCanvas())return!1
|
||
var t=this._runtime.GetCurrentCondition(),n=t.IsInverted(),r=this._mouseXcanvas,a=this._mouseYcanvas
|
||
return _C178.xor(this._runtime.GetCollisionEngine().TestAndSelectCanvasPointOverlap(e,r,a,n),n)},OnObjectClicked:function(e,t,n){if(e!==this._triggerButton||t!==this._triggerType)return!1
|
||
if(!this._IsMouseOverCanvas())return!1
|
||
var r=this._mouseXcanvas,a=this._mouseYcanvas
|
||
return this._runtime.GetCollisionEngine().TestAndSelectCanvasPointOverlap(n,r,a,!1)},OnWheel:function(e){return this._triggerDir===e}}
|
||
var _C179=self.C3,lastSetCursor=null,CURSOR_STYLES=["auto","pointer","text","crosshair","move","help","wait","none"]
|
||
_C179.Plugins.Mouse.Acts={SetCursor:function(e){var t=CURSOR_STYLES[e]
|
||
lastSetCursor!==t&&(lastSetCursor=t,this.PostToDOM("cursor",t))},SetCursorSprite:function(e){var t=this
|
||
if(!_C179.Platform.IsMobile&&e){var n=e.GetFirstPicked()
|
||
if(n){var r=n.GetWorldInfo(),a=n.GetCurrentImageInfo()
|
||
r&&a&&lastSetCursor!==a&&(lastSetCursor=a,a.ExtractImageToCanvas().then(function(e){return _C179.CanvasToBlob(e)}).then(function(e){var n=URL.createObjectURL(e),i="url(".concat(n,") ").concat(Math.round(r.GetOriginX()*a.GetWidth())," ").concat(Math.round(r.GetOriginY()*a.GetHeight()),", auto")
|
||
t.PostToDOM("cursor",""),t.PostToDOM("cursor",i)}))}}}}
|
||
var _C180=self.C3
|
||
_C180.Plugins.Mouse.Exps={X:function(e){return this.GetMousePositionForLayer(e)[0]},Y:function(e){return this.GetMousePositionForLayer(e)[1]},AbsoluteX:function(){return this._mouseXcanvas},AbsoluteY:function(){return this._mouseYcanvas}}
|
||
var _C181=self.C3
|
||
_C181.Plugins.TiledBg=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C181.SDKPluginBase)
|
||
var WrapModeToStr=function(e){switch(e){case 0:return"clamp-to-edge"
|
||
case 1:return"repeat"
|
||
case 2:return"mirror-repeat"}return"repeat"},_C182=self.C3
|
||
_C182.Plugins.TiledBg.Type=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._wrapX="repeat",a._wrapY="repeat",r&&(a._wrapX=WrapModeToStr(r[0]),a._wrapY=WrapModeToStr(r[1])),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){this.GetImageInfo().LoadAsset(this._runtime)}},{key:"LoadTextures",value:function(e){return this.GetImageInfo().LoadStaticTexture(e,{sampling:this._runtime.GetSampling(),wrapX:this._wrapX,wrapY:this._wrapY})}},{key:"ReleaseTextures",value:function(){this.GetImageInfo().ReleaseTexture()}}]),t}(_C182.SDKTypeBase)
|
||
var _C183=self.C3,_INITIALLY_VISIBLE2=0,_ORIGIN=1,IMAGE_OFFSET_X=4,IMAGE_OFFSET_Y=5,IMAGE_SCALE_X=6,IMAGE_SCALE_Y=7,IMAGE_ANGLE=8,_tempRect8=_C183.New(_C183.Rect),_tempQuad7=_C183.New(_C183.Quad),rcTex=_C183.New(_C183.Rect),qTex=_C183.New(_C183.Quad)
|
||
_C183.Plugins.TiledBg.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._imageOffsetX=0,a._imageOffsetY=0,a._imageScaleX=1,a._imageScaleY=1,a._imageAngle=0,a._ownImageInfo=null,r&&(a.GetWorldInfo().SetVisible(!!r[_INITIALLY_VISIBLE2]),a._imageOffsetX=r[IMAGE_OFFSET_X],a._imageOffsetY=r[IMAGE_OFFSET_Y],a._imageScaleX=r[IMAGE_SCALE_X],a._imageScaleY=r[IMAGE_SCALE_Y],a._imageAngle=_C183.toRadians(r[IMAGE_ANGLE])),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._ReleaseOwnImage(),_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_ReleaseOwnImage",value:function(){this._ownImageInfo&&(this._ownImageInfo.Release(),this._ownImageInfo=null)}},{key:"Draw",value:function(e){var t=this.GetCurrentImageInfo(),n=t.GetTexture()
|
||
if(null!==n){e.SetTexture(n)
|
||
var r=t.GetWidth(),a=t.GetHeight(),i=this._imageOffsetX/r,s=this._imageOffsetY/a,o=this.GetWorldInfo()
|
||
rcTex.set(0,0,o.GetWidth()/(r*this._imageScaleX),o.GetHeight()/(a*this._imageScaleY)),rcTex.offset(-i,-s),o.HasMesh()?this._DrawMesh(o,e):this._DrawStandard(o,e)}}},{key:"_DrawStandard",value:function(e,t){var n=e.GetBoundingQuad()
|
||
this._runtime.IsPixelRoundingEnabled()&&(n=e.PixelRoundQuad(n)),0===this._imageAngle?t.Quad3(n,rcTex):(qTex.setFromRotatedRect(rcTex,-this._imageAngle),t.Quad4(n,qTex))}},{key:"_DrawMesh",value:function(e,t){var n=e.GetTransformedMesh()
|
||
if(e.IsMeshChanged()){e.CalculateBbox(_tempRect8,_tempQuad7,!1)
|
||
var r=_tempQuad7
|
||
this._runtime.IsPixelRoundingEnabled()&&(r=e.PixelRoundQuad(r))
|
||
var a=rcTex
|
||
0!==this._imageAngle&&(qTex.setFromRotatedRect(rcTex,-this._imageAngle),a=qTex),n.CalculateTransformedMesh(e.GetSourceMesh(),r,a),e.SetMeshChanged(!1)}n.Draw(t)}},{key:"GetCurrentImageInfo",value:function(){return this._ownImageInfo||this._objectClass.GetImageInfo()}},{key:"_SetMeshChanged",value:function(){this.GetWorldInfo().SetMeshChanged(!0)}},{key:"_SetImageOffsetX",value:function(e){this._imageOffsetX!==e&&(this._imageOffsetX=e,this._runtime.UpdateRender(),this._SetMeshChanged())}},{key:"_GetImageOffsetX",value:function(){return this._imageOffsetX}},{key:"_SetImageOffsetY",value:function(e){this._imageOffsetY!==e&&(this._imageOffsetY=e,this._runtime.UpdateRender(),this._SetMeshChanged())}},{key:"_GetImageOffsetY",value:function(){return this._imageOffsetY}},{key:"_SetImageScaleX",value:function(e){this._imageScaleX!==e&&(this._imageScaleX=e,this._runtime.UpdateRender(),this._SetMeshChanged())}},{key:"_GetImageScaleX",value:function(){return this._imageScaleX}},{key:"_SetImageScaleY",value:function(e){this._imageScaleY!==e&&(this._imageScaleY=e,this._runtime.UpdateRender(),this._SetMeshChanged())}},{key:"_GetImageScaleY",value:function(){return this._imageScaleY}},{key:"_SetImageAngle",value:function(e){this._imageAngle!==e&&(this._imageAngle=e,this._runtime.UpdateRender(),this._SetMeshChanged())}},{key:"_GetImageAngle",value:function(){return this._imageAngle}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case IMAGE_OFFSET_X:return this._GetImageOffsetX()
|
||
case IMAGE_OFFSET_Y:return this._GetImageOffsetY()
|
||
case IMAGE_SCALE_X:return this._GetImageScaleX()
|
||
case IMAGE_SCALE_Y:return this._GetImageScaleY()
|
||
case IMAGE_ANGLE:return this._GetImageAngle()}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case IMAGE_OFFSET_X:this._SetImageOffsetX(t)
|
||
break
|
||
case IMAGE_OFFSET_Y:this._SetImageOffsetY(t)
|
||
break
|
||
case IMAGE_SCALE_X:this._SetImageScaleX(t)
|
||
break
|
||
case IMAGE_SCALE_Y:this._SetImageScaleY(t)
|
||
break
|
||
case IMAGE_ANGLE:this._SetImageAngle(t)}}},{key:"GetScriptInterfaceClass",value:function(){return self.ITiledBackgroundInstance}}]),t}(_C183.SDKWorldInstanceBase)
|
||
var _map12=new WeakMap
|
||
self.ITiledBackgroundInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map12.set(_assertThisInitialized(e),self.IInstance._GetInitInst().GetSdkInstance()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"imageOffsetX",get:function(){return _map12.get(this)._GetImageOffsetX()},set:function(e){_map12.get(this)._SetImageOffsetX(e)}},{key:"imageOffsetY",get:function(){return _map12.get(this)._GetImageOffsetY()},set:function(e){_map12.get(this)._SetImageOffsetY(e)}},{key:"imageScaleX",get:function(){return _map12.get(this)._GetImageScaleX()},set:function(e){_map12.get(this)._SetImageScaleX(e)}},{key:"imageScaleY",get:function(){return _map12.get(this)._GetImageScaleY()},set:function(e){_map12.get(this)._SetImageScaleY(e)}},{key:"imageAngle",get:function(){return _map12.get(this)._GetImageAngle()},set:function(e){_map12.get(this)._SetImageAngle(e)}},{key:"imageAngleDegrees",get:function(){return _C183.toDegrees(_map12.get(this)._GetImageAngle())},set:function(e){_map12.get(this)._SetImageAngle(_C183.toRadians(e))}}]),t}(self.IWorldInstance)
|
||
var _C184=self.C3
|
||
_C184.Plugins.TiledBg.Cnds={OnURLLoaded:function(){return!0},OnURLFailed:function(){return!0}}
|
||
var _C185=self.C3
|
||
_C185.Plugins.TiledBg.Acts={SetImageOffsetX:function(e){this._SetImageOffsetX(e)},SetImageOffsetY:function(e){this._SetImageOffsetY(e)},SetImageScaleX:function(e){this._SetImageScaleX(e/100)},SetImageScaleY:function(e){this._SetImageScaleY(e/100)},SetImageAngle:function(e){this._SetImageAngle(_C185.toRadians(e))},SetEffect:function(e){this.GetWorldInfo().SetBlendMode(e),this._runtime.UpdateRender()},LoadURL:function(e,t){var n=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function r(){var t,a,i
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(!n._ownImageInfo||n._ownImageInfo.GetURL()!==e){r.next=2
|
||
break}return r.abrupt("return")
|
||
case 2:return t=n._runtime,a=_C185.New(_C185.ImageInfo),r.next=6,a.LoadDynamicAsset(t,e)
|
||
case 6:if(a.IsLoaded()){r.next=9
|
||
break}return n.Trigger(_C185.Plugins.TiledBg.Cnds.OnURLFailed),r.abrupt("return")
|
||
case 9:if(!n.WasReleased()){r.next=12
|
||
break}return a.Release(),r.abrupt("return",null)
|
||
case 12:return r.next=14,a.LoadStaticTexture(t.GetWebGLRenderer(),{sampling:n._runtime.GetSampling(),wrapX:"repeat",wrapY:"repeat"})
|
||
case 14:if(i=r.sent){r.next=17
|
||
break}return r.abrupt("return")
|
||
case 17:if(!n.WasReleased()){r.next=20
|
||
break}return a.Release(),r.abrupt("return")
|
||
case 20:return n._ReleaseOwnImage(),n._ownImageInfo=a,t.UpdateRender(),r.next=25,n.TriggerAsync(_C185.Plugins.TiledBg.Cnds.OnURLLoaded)
|
||
case 25:case"end":return r.stop()}},r)}))()}}
|
||
var _C186=self.C3
|
||
_C186.Plugins.TiledBg.Exps={ImageWidth:function(){return this.GetCurrentImageInfo().GetWidth()},ImageHeight:function(){return this.GetCurrentImageInfo().GetHeight()},ImageOffsetX:function(){return this._imageOffsetX},ImageOffsetY:function(){return this._imageOffsetY},ImageScaleX:function(){return 100*this._imageScaleX},ImageScaleY:function(){return 100*this._imageScaleY},ImageAngle:function(){return _C186.toDegrees(this._imageAngle)}}
|
||
var _C187=self.C3
|
||
_C187.Plugins.Audio=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C187.SDKPluginBase)
|
||
var GetAudioDOMInterface=function(){if(self.C3Audio_DOMInterface)return self.C3Audio_DOMInterface
|
||
throw Error("audio scripting API cannot be used here - make sure the project is using DOM mode, not worker mode")},_C188=self.C3
|
||
_C188.Plugins.Audio.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}},{key:"GetScriptInterfaceClass",value:function(){return self.IAudioObjectType}}]),t}(_C188.SDKTypeBase),self.IAudioObjectType=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"audioContext",get:function(){return GetAudioDOMInterface().GetAudioContext()}},{key:"destinationNode",get:function(){return GetAudioDOMInterface().GetDestinationNode()}}]),t}(self.IObjectClass)
|
||
var _C189=self.C3,_DOM_COMPONENT_ID="audio",LATENCY_HINTS=["interactive","balanced","playback"]
|
||
_C189.Plugins.Audio.Instance=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID),a._nextPlayTime=0,a._triggerTag="",a._timeScaleMode=0,a._saveLoadMode=0,a._playInBackground=!1,a._panningModel=1,a._distanceModel=1,a._listenerX=a._runtime.GetViewportWidth()/2,a._listenerY=a._runtime.GetViewportHeight()/2,a._listenerZ=-600,a._referenceDistance=600,a._maxDistance=1e4,a._rolloffFactor=1,a._listenerInst=null,a._loadListenerUid=-1,a._masterVolume=1,a._isSilent=!1,a._sampleRate=0,a._effectCount=new Map,a._preloadTotal=0,a._preloadCount=0,a._remoteUrls=new Map
|
||
var i="interactive"
|
||
r&&(a._timeScaleMode=r[0],a._saveLoadMode=r[1],a._playInBackground=r[2],i=LATENCY_HINTS[r[3]],a._panningModel=r[4],a._distanceModel=r[5],a._listenerZ=-r[6],a._referenceDistance=r[7],a._maxDistance=r[8],a._rolloffFactor=r[9]),a._lastAIState=[],a._lastFxState=[],a._lastAnalysersData=[],a.AddDOMMessageHandlers([["state",function(e){return a._OnUpdateState(e)}],["fxstate",function(e){return a._OnUpdateFxState(e)}],["trigger",function(e){return a._OnTrigger(e)}]])
|
||
var s=a.GetRuntime().Dispatcher()
|
||
return a._disposables=new _C189.CompositeDisposable(_C189.Disposable.From(s,"instancedestroy",function(e){return a._OnInstanceDestroyed(e.instance)}),_C189.Disposable.From(s,"afterload",function(){return a._OnAfterLoad()}),_C189.Disposable.From(s,"suspend",function(){return a._OnSuspend()}),_C189.Disposable.From(s,"resume",function(){return a._OnResume()})),a._runtime.AddLoadPromise(a.PostToDOMAsync("create-audio-context",{preloadList:a._runtime.GetAssetManager().GetAudioToPreload().map(function(e){return{originalUrl:e.originalUrl,url:e.url,type:e.type,fileSize:e.fileSize}}),isiOSCordova:a._runtime.IsiOSCordova(),timeScaleMode:a._timeScaleMode,latencyHint:i,panningModel:a._panningModel,distanceModel:a._distanceModel,refDistance:a._referenceDistance,maxDistance:a._maxDistance,rolloffFactor:a._rolloffFactor,listenerPos:[a._listenerX,a._listenerY,a._listenerZ]}).then(function(e){a._sampleRate=e.sampleRate})),a._StartTicking(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._listenerInst=null,_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_OnInstanceDestroyed",value:function(e){this._listenerInst===e&&(this._listenerInst=null)}},{key:"DbToLinearNoCap",value:function(e){return Math.pow(10,e/20)}},{key:"DbToLinear",value:function(e){var t=this.DbToLinearNoCap(e)
|
||
return isFinite(t)?Math.max(Math.min(t,1),0):0}},{key:"LinearToDbNoCap",value:function(e){return Math.log(e)/Math.log(10)*20}},{key:"LinearToDb",value:function(e){return this.LinearToDbNoCap(Math.max(Math.min(e,1),0))}},{key:"_OnSuspend",value:function(){this._playInBackground||this.PostToDOM("set-suspended",{isSuspended:!0})}},{key:"_OnResume",value:function(){this._playInBackground||this.PostToDOM("set-suspended",{isSuspended:!1})}},{key:"_OnUpdateState",value:function(e){var t=e.tickCount,n=this._lastAIState.filter(function(e){return e.hasOwnProperty("placeholder")&&(e.placeholder>t||-1===e.placeholder)})
|
||
this._lastAIState=e.audioInstances,this._lastAnalysersData=e.analysers,n.length>0&&_C189.appendArray(this._lastAIState,n)}},{key:"_OnUpdateFxState",value:function(e){this._lastFxState=e.fxstate}},{key:"_GetFirstAudioStateByTag",value:function(e){var t,n=_createForOfIteratorHelper(this._lastAIState)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(_C189.equalsNoCase(r.tag,e))return r}}catch(a){n.e(a)}finally{n.f()}return null}},{key:"_IsTagPlaying",value:function(e){return this._lastAIState.some(function(t){return _C189.equalsNoCase(e,t.tag)&&t.isPlaying})}},{key:"_MaybeMarkAsPlaying",value:function(e,t,n,r){if(this._IsTagPlaying(e))return null
|
||
var a={tag:e,duration:0,volume:r,isPlaying:!0,playbackTime:0,playbackRate:1,uid:-1,bufferOriginalUrl:"",bufferUrl:"",bufferType:"",isMusic:t,isLooping:n,isMuted:!1,resumePosition:0,pan:null,placeholder:-1}
|
||
return this._lastAIState.push(a),a}},{key:"_OnTrigger",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t,r,a,i,s
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(t=e.type,this._triggerTag=e.tag,r=e.aiid,"ended"!==t){n.next=26
|
||
break}a=_createForOfIteratorHelper(this._lastAIState),n.prev=5,a.s()
|
||
case 7:if((i=a.n()).done){n.next=14
|
||
break}if(s=i.value,s.aiid!==r){n.next=12
|
||
break}return s.isPlaying=!1,n.abrupt("break",14)
|
||
case 12:n.next=7
|
||
break
|
||
case 14:n.next=19
|
||
break
|
||
case 16:n.prev=16,n.t0=n["catch"](5),a.e(n.t0)
|
||
case 19:return n.prev=19,a.f(),n.finish(19)
|
||
case 22:return n.next=24,this.TriggerAsync(_C189.Plugins.Audio.Cnds.OnEnded)
|
||
case 24:n.next=29
|
||
break
|
||
case 26:if("fade-ended"!==t){n.next=29
|
||
break}return n.next=29,this.TriggerAsync(_C189.Plugins.Audio.Cnds.OnFadeEnded)
|
||
case 29:case"end":return n.stop()}},n,this,[[5,16,19,22]])}))
|
||
return e}()},{key:"Tick",value:function(){var e={timeScale:this._runtime.GetTimeScale(),gameTime:this._runtime.GetGameTime(),instPans:this.GetInstancePans(),tickCount:this._runtime.GetTickCountNoSave()}
|
||
if(this._listenerInst){var t=this._listenerInst.GetWorldInfo()
|
||
this._listenerX=t.GetX(),this._listenerY=t.GetY(),e.listenerPos=[this._listenerX,this._listenerY,this._listenerZ]}this.PostToDOM("tick",e)}},{key:"rotatePtAround",value:function(e,t,n,r,a){if(0===n)return[e,t]
|
||
var i=Math.sin(n),s=Math.cos(n)
|
||
e-=r,t-=a
|
||
var o=e*i,u=t*i,l=e*s,c=t*s
|
||
return e=l-u,t=c+o,e+=r,t+=a,[e,t]}},{key:"GetInstancePans",value:function(){var e=this
|
||
return this._lastAIState.filter(function(e){return-1!==e.uid}).map(function(t){return e._runtime.GetInstanceByUID(t.uid)}).filter(function(e){return e}).map(function(t){var n=t.GetWorldInfo(),r=n.GetLayer().GetAngle(),a=e.rotatePtAround(n.GetX(),n.GetY(),-r,e._listenerX,e._listenerY),i=_slicedToArray(a,2),s=i[0],o=i[1]
|
||
return{uid:t.GetUID(),x:s,y:o,angle:n.GetAngle()-r}})}},{key:"GetAnalyserData",value:function(e,t){var n,r=_createForOfIteratorHelper(this._lastAnalysersData)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.index===t&&_C189.equalsNoCase(a.tag,e))return a}}catch(i){r.e(i)}finally{r.f()}return null}},{key:"_IncrementEffectCount",value:function(e){this._effectCount.set(e,(this._effectCount.get(e)||0)+1)}},{key:"_ShouldSave",value:function(e){return e.hasOwnProperty("placeholder")?!1:3===this._saveLoadMode?!1:e.isMusic&&1===this._saveLoadMode?!1:e.isMusic||2!==this._saveLoadMode?!0:!1}},{key:"SaveToJson",value:function(){var e=this
|
||
return{isSilent:this._isSilent,masterVolume:this._masterVolume,listenerZ:this._listenerZ,listenerUid:this._listenerInst?this._listenerInst.GetUID():-1,remoteUrls:_toConsumableArray(this._remoteUrls.entries()),playing:this._lastAIState.filter(function(t){return e._ShouldSave(t)}),effects:this._lastFxState,analysers:this._lastAnalysersData}}},{key:"LoadFromJson",value:function(e){if(this._isSilent=e.isSilent,this._masterVolume=e.masterVolume,this._listenerZ=e.listenerZ,this._listenerInst=null,this._loadListenerUid=e.listenerUid,this._remoteUrls.clear(),e.remoteUrls){var t,n=_createForOfIteratorHelper(e.remoteUrls)
|
||
try{for(n.s();!(t=n.n()).done;){var r=_slicedToArray(t.value,2),a=r[0],i=r[1]
|
||
this._remoteUrls.set(a,i)}}catch(s){n.e(s)}finally{n.f()}}this._lastAIState=e.playing,this._lastFxState=e.effects,this._lastAnalysersData=e.analysers}},{key:"_OnAfterLoad",value:function(){if(-1!==this._loadListenerUid&&(this._listenerInst=this._runtime.GetInstanceByUID(this._loadListenerUid),this._loadListenerUid=-1,this._listenerInst)){var e=this._listenerInst.GetWorldInfo()
|
||
this._listenerX=e.GetX(),this._listenerY=e.GetY()}var t,n=_createForOfIteratorHelper(this._lastAIState)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value,a=this._runtime.GetAssetManager().GetProjectAudioFileUrl(r.bufferOriginalUrl)
|
||
a?(r.bufferUrl=a.url,r.bufferType=a.type):r.bufferUrl=null}}catch(i){n.e(i)}finally{n.f()}for(var s=0,o=Object.values(this._lastFxState);s<o.length;s++){var u,l=o[s],c=_createForOfIteratorHelper(l)
|
||
try{for(c.s();!(u=c.n()).done;){var h=u.value
|
||
if(h.hasOwnProperty("bufferOriginalUrl")){var _=this._runtime.GetAssetManager().GetProjectAudioFileUrl(h.bufferOriginalUrl)
|
||
_&&(h.bufferUrl=_.url,h.bufferType=_.type)}}}catch(i){c.e(i)}finally{c.f()}}this.PostToDOM("load-state",{saveLoadMode:this._saveLoadMode,timeScale:this._runtime.GetTimeScale(),gameTime:this._runtime.GetGameTime(),listenerPos:[this._listenerX,this._listenerY,this._listenerZ],isSilent:this._isSilent,masterVolume:this._masterVolume,playing:this._lastAIState.filter(function(e){return null!==e.bufferUrl}),effects:this._lastFxState})}},{key:"GetDebuggerProperties",value:function(){for(var e=[],t=0,n=Object.entries(this._lastFxState);t<n.length;t++){var r=_slicedToArray(n[t],2),a=r[0],i=r[1]
|
||
e.push({name:"$"+a,value:i.map(function(e){return e.type}).join(", ")})}var s="plugins.audio.debugger"
|
||
return[{title:s+".tag-effects",properties:e},{title:s+".currently-playing",properties:[{name:s+".currently-playing-count",value:this._lastAIState.length}].concat(_toConsumableArray(this._lastAIState.map(function(e,t){return{name:"$#"+t,value:"".concat(e.bufferOriginalUrl,' ("').concat(e.tag,'") ').concat(Math.round(10*e.playbackTime)/10," / ").concat(Math.round(10*e.duration)/10)}})))}]}}]),t}(_C189.SDKInstanceBase)
|
||
var _C190=self.C3
|
||
_C190.Plugins.Audio.Cnds={OnEnded:function(e){return _C190.equalsNoCase(this._triggerTag,e)},OnFadeEnded:function(e){return _C190.equalsNoCase(this._triggerTag,e)},PreloadsComplete:function(){return this._preloadCount===this._preloadTotal},AdvancedAudioSupported:function(){return!0},IsSilent:function(){return this._isSilent},IsAnyPlaying:function(){var e,t=_createForOfIteratorHelper(this._lastAIState)
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
if(n.isPlaying)return!0}}catch(r){t.e(r)}finally{t.f()}return!1},IsTagPlaying:function(e){return this._IsTagPlaying(e)}}
|
||
var _C191=self.C3,FILTER_TYPES=["lowpass","highpass","bandpass","lowshelf","highshelf","peaking","notch","allpass"]
|
||
_C191.Plugins.Audio.Acts={Play:function(e,t,n,r){var a=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function i(){var s,o,u,l
|
||
return _regeneratorRuntime().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(!a._isSilent){i.next=2
|
||
break}return i.abrupt("return")
|
||
case 2:if(s=e[1],o=a._runtime.GetAssetManager().GetProjectAudioFileUrl(e[0])){i.next=6
|
||
break}return i.abrupt("return")
|
||
case 6:return u=a._nextPlayTime,a._nextPlayTime=0,l=a._MaybeMarkAsPlaying(r.toLowerCase(),s,0!==t,a.DbToLinear(n)),i.prev=9,i.next=12,a.PostToDOMAsync("play",{originalUrl:e[0],url:o.url,type:o.type,isMusic:s,tag:r.toLowerCase(),isLooping:0!==t,vol:a.DbToLinear(n),pos:0,off:u,trueClock:!!self.C3_GetAudioContextCurrentTime})
|
||
case 12:return i.prev=12,l&&(l.placeholder=a._runtime.GetTickCountNoSave()),i.finish(12)
|
||
case 15:case"end":return i.stop()}},i,null,[[9,,12,15]])}))()},PlayAtPosition:function(e,t,n,r,a,i,s,o,u,l){var c=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function h(){var _,f,d,p
|
||
return _regeneratorRuntime().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:if(!c._isSilent){h.next=2
|
||
break}return h.abrupt("return")
|
||
case 2:if(_=e[1],f=c._runtime.GetAssetManager().GetProjectAudioFileUrl(e[0])){h.next=6
|
||
break}return h.abrupt("return")
|
||
case 6:return d=c._nextPlayTime,c._nextPlayTime=0,p=c._MaybeMarkAsPlaying(l.toLowerCase(),_,0!==t,c.DbToLinear(n)),h.prev=9,h.next=12,c.PostToDOMAsync("play",{originalUrl:e[0],url:f.url,type:f.type,isMusic:_,tag:l.toLowerCase(),isLooping:0!==t,vol:c.DbToLinear(n),pos:0,off:d,trueClock:!!self.C3_GetAudioContextCurrentTime,panning:{x:r,y:a,angle:_C191.toRadians(i),innerAngle:_C191.toRadians(s),outerAngle:_C191.toRadians(o),outerGain:c.DbToLinear(u)}})
|
||
case 12:return h.prev=12,p&&(p.placeholder=c._runtime.GetTickCountNoSave()),h.finish(12)
|
||
case 15:case"end":return h.stop()}},h,null,[[9,,12,15]])}))()},PlayAtObject:function(e,t,n,r,a,i,s,o){var u=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function l(){var c,h,_,f,d,p,v,m,y,g,C
|
||
return _regeneratorRuntime().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(!u._isSilent){l.next=2
|
||
break}return l.abrupt("return")
|
||
case 2:if(r){l.next=4
|
||
break}return l.abrupt("return")
|
||
case 4:if(c=r.GetFirstPicked(),c&&c.GetWorldInfo()){l.next=7
|
||
break}return l.abrupt("return")
|
||
case 7:if(h=c.GetWorldInfo(),_=h.GetLayer().GetAngle(),f=u.rotatePtAround(h.GetX(),h.GetY(),-_,u._listenerX,u._listenerY),d=_slicedToArray(f,2),p=d[0],v=d[1],m=e[1],y=u._runtime.GetAssetManager().GetProjectAudioFileUrl(e[0])){l.next=14
|
||
break}return l.abrupt("return")
|
||
case 14:return g=u._nextPlayTime,u._nextPlayTime=0,C=u._MaybeMarkAsPlaying(o.toLowerCase(),m,0!==t,u.DbToLinear(n)),l.prev=17,l.next=20,u.PostToDOMAsync("play",{originalUrl:e[0],url:y.url,type:y.type,isMusic:m,tag:o.toLowerCase(),isLooping:0!==t,vol:u.DbToLinear(n),pos:0,off:g,trueClock:!!self.C3_GetAudioContextCurrentTime,panning:{x:p,y:v,angle:h.GetAngle()-_,innerAngle:_C191.toRadians(a),outerAngle:_C191.toRadians(i),outerGain:u.DbToLinear(s),uid:c.GetUID()}})
|
||
case 20:return l.prev=20,C&&(C.placeholder=u._runtime.GetTickCountNoSave()),l.finish(20)
|
||
case 23:case"end":return l.stop()}},l,null,[[17,,20,23]])}))()},PlayByName:function(e,t,n,r,a){var i=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function s(){var o,u,l,c
|
||
return _regeneratorRuntime().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(!i._isSilent){s.next=2
|
||
break}return s.abrupt("return")
|
||
case 2:if(o=1===e,u=i._runtime.GetAssetManager().GetProjectAudioFileUrl(t)||i._remoteUrls.get(t.toLowerCase())){s.next=6
|
||
break}return s.abrupt("return")
|
||
case 6:return l=i._nextPlayTime,i._nextPlayTime=0,c=i._MaybeMarkAsPlaying(a.toLowerCase(),o,0!==n,i.DbToLinear(r)),s.prev=9,s.next=12,i.PostToDOMAsync("play",{originalUrl:t,url:u.url,type:u.type,isMusic:o,tag:a.toLowerCase(),isLooping:0!==n,vol:i.DbToLinear(r),pos:0,off:l,trueClock:!!self.C3_GetAudioContextCurrentTime})
|
||
case 12:return s.prev=12,c&&(c.placeholder=i._runtime.GetTickCountNoSave()),s.finish(12)
|
||
case 15:case"end":return s.stop()}},s,null,[[9,,12,15]])}))()},PlayAtPositionByName:function(e,t,n,r,a,i,s,o,u,l,c){var h=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function _(){var f,d,p,v
|
||
return _regeneratorRuntime().wrap(function(_){for(;;)switch(_.prev=_.next){case 0:if(!h._isSilent){_.next=2
|
||
break}return _.abrupt("return")
|
||
case 2:if(f=1===e,d=h._runtime.GetAssetManager().GetProjectAudioFileUrl(t)||h._remoteUrls.get(t.toLowerCase())){_.next=6
|
||
break}return _.abrupt("return")
|
||
case 6:return p=h._nextPlayTime,h._nextPlayTime=0,v=h._MaybeMarkAsPlaying(c.toLowerCase(),f,0!==n,h.DbToLinear(r)),_.prev=9,_.next=12,h.PostToDOMAsync("play",{originalUrl:t,url:d.url,type:d.type,isMusic:f,tag:c.toLowerCase(),isLooping:0!==n,vol:h.DbToLinear(r),pos:0,off:p,trueClock:!!self.C3_GetAudioContextCurrentTime,panning:{x:a,y:i,angle:_C191.toRadians(s),innerAngle:_C191.toRadians(o),outerAngle:_C191.toRadians(u),outerGain:h.DbToLinear(l)}})
|
||
case 12:return _.prev=12,v&&(v.placeholder=h._runtime.GetTickCountNoSave()),_.finish(12)
|
||
case 15:case"end":return _.stop()}},_,null,[[9,,12,15]])}))()},PlayAtObjectByName:function(e,t,n,r,a,i,s,o,u){var l=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function c(){var h,_,f,d,p,v,m,y,g,C,S
|
||
return _regeneratorRuntime().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:if(!l._isSilent){c.next=2
|
||
break}return c.abrupt("return")
|
||
case 2:if(!l._isSilent){c.next=4
|
||
break}return c.abrupt("return")
|
||
case 4:if(a){c.next=6
|
||
break}return c.abrupt("return")
|
||
case 6:if(h=a.GetFirstPicked(),h&&h.GetWorldInfo()){c.next=9
|
||
break}return c.abrupt("return")
|
||
case 9:if(_=h.GetWorldInfo(),f=_.GetLayer().GetAngle(),d=l.rotatePtAround(_.GetX(),_.GetY(),-f,l._listenerX,l._listenerY),p=_slicedToArray(d,2),v=p[0],m=p[1],y=1===e,g=l._runtime.GetAssetManager().GetProjectAudioFileUrl(t)||l._remoteUrls.get(t.toLowerCase())){c.next=16
|
||
break}return c.abrupt("return")
|
||
case 16:return C=l._nextPlayTime,l._nextPlayTime=0,S=l._MaybeMarkAsPlaying(u.toLowerCase(),y,0!==n,l.DbToLinear(r)),c.prev=19,c.next=22,l.PostToDOMAsync("play",{originalUrl:t,url:g.url,type:g.type,isMusic:y,tag:u.toLowerCase(),isLooping:0!==n,vol:l.DbToLinear(r),pos:0,off:C,trueClock:!!self.C3_GetAudioContextCurrentTime,panning:{x:v,y:m,angle:_.GetAngle()-f,innerAngle:_C191.toRadians(i),outerAngle:_C191.toRadians(s),outerGain:l.DbToLinear(o),uid:h.GetUID()}})
|
||
case 22:return c.prev=22,S&&(S.placeholder=l._runtime.GetTickCountNoSave()),c.finish(22)
|
||
case 25:case"end":return c.stop()}},c,null,[[19,,22,25]])}))()},SetLooping:function(e,t){this.PostToDOM("set-looping",{tag:e.toLowerCase(),isLooping:0===t})},SetMuted:function(e,t){this.PostToDOM("set-muted",{tag:e.toLowerCase(),isMuted:0===t})},SetVolume:function(e,t){this.PostToDOM("set-volume",{tag:e.toLowerCase(),vol:this.DbToLinear(t)})},FadeVolume:function(e,t,n,r){this.PostToDOM("fade-volume",{tag:e.toLowerCase(),vol:this.DbToLinear(t),duration:n,stopOnEnd:0===r})},Preload:function(e){var t=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function n(){var r,a
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(r=e[1],a=t._runtime.GetAssetManager().GetProjectAudioFileUrl(e[0])){n.next=4
|
||
break}return n.abrupt("return")
|
||
case 4:return t._preloadTotal++,n.next=7,t.PostToDOMAsync("preload",{originalUrl:e[0],url:a.url,type:a.type,isMusic:r})
|
||
case 7:t._preloadCount++
|
||
case 8:case"end":return n.stop()}},n)}))()},PreloadByName:function(e,t){var n=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function r(){var a,i
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(a=1===e,i=n._runtime.GetAssetManager().GetProjectAudioFileUrl(t)||n._remoteUrls.get(t.toLowerCase())){r.next=4
|
||
break}return r.abrupt("return")
|
||
case 4:return n._preloadTotal++,r.next=7,n.PostToDOMAsync("preload",{originalUrl:t,url:i.url,type:i.type,isMusic:a})
|
||
case 7:n._preloadCount++
|
||
case 8:case"end":return r.stop()}},r)}))()},SetPlaybackRate:function(e,t){this.PostToDOM("set-playback-rate",{tag:e.toLowerCase(),rate:Math.max(t,0)})},Stop:function(e){this.PostToDOM("stop",{tag:e.toLowerCase()})},StopAll:function(){this.PostToDOM("stop-all")},SetPaused:function(e,t){this.PostToDOM("set-paused",{tag:e.toLowerCase(),paused:0===t})},Seek:function(e,t){this.PostToDOM("seek",{tag:e.toLowerCase(),pos:t})},SetSilent:function(e){2===e&&(e=this._isSilent?1:0),e=0===e,this._isSilent!==e&&(this._isSilent=e,this.PostToDOM("set-silent",{isSilent:e}))},SetMasterVolume:function(e){var t=this.DbToLinear(e)
|
||
this._masterVolume!==t&&(this._masterVolume=t,this.PostToDOM("set-master-volume",{vol:t}))},AddFilterEffect:function(e,t,n,r,a,i,s){e=e.toLowerCase()
|
||
var o=FILTER_TYPES[t]
|
||
this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"filter",tag:e,params:[o,n,r,a,i,_C191.clamp(s/100,0,1)]})},AddDelayEffect:function(e,t,n,r){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"delay",tag:e,params:[t,this.DbToLinear(n),_C191.clamp(r/100,0,1)]})},AddFlangerEffect:function(e,t,n,r,a,i){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"flanger",tag:e,params:[t/1e3,n/1e3,r,a/100,_C191.clamp(i/100,0,1)]})},AddPhaserEffect:function(e,t,n,r,a,i,s){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"phaser",tag:e,params:[t,n,r,a,i,_C191.clamp(s/100,0,1)]})},AddConvolutionEffect:function(e,t,n,r){e=e.toLowerCase()
|
||
var a=this._runtime.GetAssetManager().GetProjectAudioFileUrl(t[0])
|
||
a&&(this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"convolution",tag:e,bufferOriginalUrl:t[0],bufferUrl:a.url,bufferType:a.type,params:[0===n,_C191.clamp(r/100,0,1)]}))},AddGainEffect:function(e,t){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"gain",tag:e,params:[this.DbToLinear(t)]})},AddMuteEffect:function(e){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"gain",tag:e,params:[0]})},AddTremoloEffect:function(e,t,n){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"tremolo",tag:e,params:[t,_C191.clamp(n/100,0,1)]})},AddRingModEffect:function(e,t,n){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"ringmod",tag:e,params:[t,_C191.clamp(n/100,0,1)]})},AddDistortionEffect:function(e,t,n,r,a,i){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"distortion",tag:e,params:[this.DbToLinearNoCap(t),this.DbToLinearNoCap(n),r,this.DbToLinearNoCap(a),_C191.clamp(i/100,0,1)]})},AddCompressorEffect:function(e,t,n,r,a,i){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"compressor",tag:e,params:[t,n,r,a/1e3,i/1e3]})},AddAnalyserEffect:function(e,t,n){e=e.toLowerCase(),this._IncrementEffectCount(e),this.PostToDOM("add-effect",{type:"analyser",tag:e,params:[t,n]})},RemoveEffects:function(e){e=e.toLowerCase(),this._effectCount.set(e,0),this.PostToDOM("remove-effects",{tag:e}),this._lastFxState={}},SetEffectParameter:function(e,t,n,r,a,i){this.PostToDOM("set-effect-param",{tag:e.toLowerCase(),index:Math.floor(t),param:n,value:r,ramp:a,time:i})},SetListenerObject:function(e){if(e){var t=e.GetFirstPicked()
|
||
t&&t.GetWorldInfo()&&(this._listenerInst=t)}},SetListenerZ:function(e){this._listenerZ=e},ScheduleNextPlay:function(e){this._nextPlayTime=Math.max(e,0)},UnloadAudio:function(e){var t=e[1],n=this._runtime.GetAssetManager().GetProjectAudioFileUrl(e[0])
|
||
n&&this.PostToDOM("unload",{url:n.url,type:n.type,isMusic:t})},UnloadAudioByName:function(e,t){var n=1===e,r=this._runtime.GetAssetManager().GetProjectAudioFileUrl(t)||this._remoteUrls.get(t.toLowerCase())
|
||
r&&this.PostToDOM("unload",{url:r.url,type:r.type,isMusic:n})},UnloadAll:function(){this.PostToDOM("unload-all")},AddRemoteURL:function(e,t,n){this._remoteUrls.set(n.toLowerCase(),{url:e,type:t})}}
|
||
var _C192=self.C3
|
||
_C192.Plugins.Audio.Exps={Duration:function(e){var t=this._GetFirstAudioStateByTag(e)
|
||
return t?t.duration:0},PlaybackTime:function(e){var t=this._GetFirstAudioStateByTag(e)
|
||
return t?t.playbackTime:0},PlaybackRate:function(e){var t=this._GetFirstAudioStateByTag(e)
|
||
return t?t.playbackRate:0},Volume:function(e){var t=this._GetFirstAudioStateByTag(e)
|
||
return t?this.LinearToDb(t.volume):0},MasterVolume:function(){return this.LinearToDb(this._masterVolume)},EffectCount:function(e){return this._effectCount.get(e.toLowerCase())||0},AnalyserFreqBinCount:function(e,t){var n=this.GetAnalyserData(e,Math.floor(t))
|
||
return n?n.binCount:0},AnalyserFreqBinAt:function(e,t,n){var r=this.GetAnalyserData(e,Math.floor(t))
|
||
return r?(n=Math.floor(n),0>n||n>=r.binCount?0:r.freqBins[n]):0},AnalyserPeakLevel:function(e,t){var n=this.GetAnalyserData(e,Math.floor(t))
|
||
return n?n.peak:0},AnalyserRMSLevel:function(e,t){var n=this.GetAnalyserData(e,Math.floor(t))
|
||
return n?n.rms:0},SampleRate:function(){return this._sampleRate},CurrentTime:function(){return self.C3_GetAudioContextCurrentTime?self.C3_GetAudioContextCurrentTime():performance.now()/1e3}}
|
||
var _C193=self.C3
|
||
_C193.Plugins.NinePatch=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C193.SDKPluginBase)
|
||
var _C194=self.C3
|
||
_C194.Plugins.NinePatch.Type=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._textureSet=null,r._drawable=null,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this.ReleaseTextures(),_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){this.GetImageInfo().LoadAsset(this._runtime)}},{key:"LoadTextures",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=this.GetImageInfo(),e.next=3,t.ExtractImageToCanvas()
|
||
case 3:this._drawable=e.sent
|
||
case 4:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"CreatePatch",value:function(e,t,n,r){!this._textureSet&&this._drawable&&(this._textureSet=new self.NinePatchTextureSet(this),this._textureSet.CreateTextures(this._drawable,e,t,n,r))}},{key:"ReleaseTextures",value:function(){this._textureSet&&(this._textureSet.Release(),this._textureSet=null)}},{key:"GetTextureSet",value:function(){return this._textureSet}}]),t}(_C194.SDKTypeBase)
|
||
var _C195=self.C3,LEFT_MARGIN=0,RIGHT_MARGIN=1,TOP_MARGIN=2,BOTTOM_MARGIN=3,EDGES=4,FILL=5,_INITIALLY_VISIBLE3=6,_ORIGIN2=7,SEAMS=8,_tempRect9=_C195.New(_C195.Rect),_tempQuad8=_C195.New(_C195.Quad)
|
||
_C195.Plugins.NinePatch.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._leftMargin=16,a._rightMargin=16,a._topMargin=16,a._bottomMargin=16,a._edges=1,a._fill=1,a._isSeamless=!0,r&&(a._leftMargin=r[LEFT_MARGIN],a._rightMargin=r[RIGHT_MARGIN],a._topMargin=r[TOP_MARGIN],a._bottomMargin=r[BOTTOM_MARGIN],a._edges=r[EDGES],a._fill=r[FILL],a._isSeamless=!!r[SEAMS],a.GetWorldInfo().SetVisible(!!r[_INITIALLY_VISIBLE3])),a._sdkType.CreatePatch(a._leftMargin,a._rightMargin,a._topMargin,a._bottomMargin),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"Draw",value:function(e){var t=this._sdkType.GetTextureSet()
|
||
if(t||(this._sdkType.CreatePatch(this._leftMargin,this._rightMargin,this._topMargin,this._bottomMargin),t=this._sdkType.GetTextureSet())){var n=this.GetWorldInfo(),r=this._leftMargin,a=this._rightMargin,i=this._topMargin,s=this._bottomMargin,o=t.GetImageWidth(),u=t.GetImageHeight(),l=o-a,c=u-s,h=n.GetBoundingQuad(),_=h.getTlx(),f=h.getTly(),d=n.GetWidth(),p=n.GetHeight(),v=this._isSeamless?1:0,m=this._edges,y=this._fill
|
||
if(r>0&&i>0&&this._DrawPatch(e,t.GetTexture(),0,0,r+v,i+v,_,f,r+v,i+v),a>0&&i>0&&this._DrawPatch(e,t.GetTexture(),l-v,0,a+v,i+v,_+d-a-v,f,a+v,i+v),a>0&&s>0&&this._DrawPatch(e,t.GetTexture(),l-v,c-v,a+v,s+v,_+d-a-v,f+p-s-v,a+v,s+v),r>0&&s>0&&this._DrawPatch(e,t.GetTexture(),0,c-v,r+v,s+v,_,f+p-s-v,r+v,s+v),0===m){var g=2===y?0:v
|
||
r>0&&c>i&&this._TilePatch(e,t.GetLeftTexture(),_,f+i,r+g,p-i-s,0,0),a>0&&c>i&&this._TilePatch(e,t.GetRightTexture(),_+d-a-g,f+i,a+g,p-i-s,g,0),i>0&&l>r&&this._TilePatch(e,t.GetTopTexture(),_+r,f,d-r-a,i+g,0,0),s>0&&l>r&&this._TilePatch(e,t.GetBottomTexture(),_+r,f+p-s-g,d-r-a,s+g,0,g)}else 1===m&&(r>0&&c>i&&this._DrawPatch(e,t.GetTexture(),0,i,r,c-i,_,f+i,r,p-i-s),a>0&&c>i&&this._DrawPatch(e,t.GetTexture(),l,i,a,c-i,_+d-a,f+i,a,p-i-s),i>0&&l>r&&this._DrawPatch(e,t.GetTexture(),r,0,l-r,i,_+r,f,d-r-a,i),s>0&&l>r&&this._DrawPatch(e,t.GetTexture(),r,c,l-r,s,_+r,f+p-s,d-r-a,s))
|
||
c>i&&l>r&&(0===y?this._TilePatch(e,t.GetFillTexture(),_+r,f+i,d-r-a,p-i-s,0,0):1===y&&this._DrawPatch(e,t.GetTexture(),r,i,l-r,c-i,_+r,f+i,d-r-a,p-i-s))}}},{key:"_DrawPatch",value:function(e,t,n,r,a,i,s,o,u,l){var c=t.GetWidth(),h=t.GetHeight()
|
||
e.SetTexture(t)
|
||
var _=this.GetWorldInfo(),f=_.GetBoundingQuad(),d=f.getTlx(),p=f.getTly()
|
||
_tempRect9.set(s,o,s+u,o+l),_tempRect9.offset(-d,-p),_tempQuad8.setFromRotatedRect(_tempRect9,_.GetAngle()),_tempQuad8.offset(d,p),_tempRect9.set(n/c,r/h,(n+a)/c,(r+i)/h),e.Quad3(_tempQuad8,_tempRect9)}},{key:"_TilePatch",value:function(e,t,n,r,a,i,s,o){var u=t.GetWidth(),l=t.GetHeight()
|
||
e.SetTexture(t)
|
||
var c=this.GetWorldInfo(),h=c.GetBoundingQuad(),_=h.getTlx(),f=h.getTly()
|
||
_tempRect9.set(n,r,n+a,r+i),_tempRect9.offset(-_,-f),_tempQuad8.setFromRotatedRect(_tempRect9,c.GetAngle()),_tempQuad8.offset(_,f),_tempRect9.set(-s/u,-o/l,(a-s)/u,(i-o)/l),e.Quad3(_tempQuad8,_tempRect9)}},{key:"GetCurrentImageInfo",value:function(){this._objectClass.GetImageInfo()}},{key:"GetPropertyValueByIndex",value:function(e){}},{key:"SetPropertyValueByIndex",value:function(e,t){}}]),t}(_C195.SDKWorldInstanceBase)
|
||
var _C196=self.C3
|
||
_C196.Plugins.NinePatch.Cnds={}
|
||
var _C197=self.C3
|
||
_C197.Plugins.NinePatch.Acts={SetEffect:function(e){this.GetWorldInfo().SetBlendMode(e),this._runtime.UpdateRender()}}
|
||
var _C198=self.C3
|
||
_C198.Plugins.NinePatch.Exps={}
|
||
var CloneDrawable=function(e){var t=_C199.CreateCanvas(e.width,e.height),n=t.getContext("2d")
|
||
return n.drawImage(e,0,0),t},_C199=self.C3
|
||
self.NinePatchTextureSet=function(){function e(t){_classCallCheck(this,e),this._sdkType=t,this._runtime=this._sdkType.GetRuntime(),this._texture=null,this._fillTexture=null,this._leftTexture=null,this._rightTexture=null,this._topTexture=null,this._bottomTexture=null,this._imageWidth=0,this._imageHeight=0,this._renderer=this._runtime.GetWebGLRenderer(),this._isLoading=!1,this._wasReleased=!1}return _createClass(e,[{key:"Release",value:function(){this._renderer.IsContextLost()||(this._renderer.DeleteTexture(this._texture),this._renderer.DeleteTexture(this._fillTexture),this._renderer.DeleteTexture(this._leftTexture),this._renderer.DeleteTexture(this._rightTexture),this._renderer.DeleteTexture(this._topTexture),this._renderer.DeleteTexture(this._bottomTexture)),this._texture=null,this._fillTexture=null,this._leftTexture=null,this._rightTexture=null,this._topTexture=null,this._bottomTexture=null,this._sdkType=null,this._renderer=null,this._wasReleased=!0}},{key:"WasReleased",value:function(){return this._wasReleased}},{key:"CreateTextures",value:function(e,t,n,r,a){this._SliceImage(e,t,n,r,a)}},{key:"HasCreatedTextures",value:function(){return!!this._texture}},{key:"_SliceImage",value:function(e,t,n,r,a){if(!this._wasReleased){var i=e.width,s=e.height
|
||
this._imageWidth=i,this._imageHeight=s
|
||
var o=i-n,u=s-a,l=this._runtime.GetSampling()
|
||
this._texture=this._renderer.CreateStaticTexture(CloneDrawable(e),{sampling:l}),o>t&&u>r&&(this._fillTexture=this._renderer.CreateStaticTexture(this._SliceSubImage(CloneDrawable(e),t,r,o,u),{wrapX:"repeat",wrapY:"repeat",sampling:l})),t>0&&u>r&&(this._leftTexture=this._renderer.CreateStaticTexture(this._SliceSubImage(CloneDrawable(e),0,r,t,u),{wrapY:"repeat",sampling:l})),n>0&&u>r&&(this._rightTexture=this._renderer.CreateStaticTexture(this._SliceSubImage(CloneDrawable(e),o,r,i,u),{wrapY:"repeat",sampling:l})),r>0&&o>t&&(this._topTexture=this._renderer.CreateStaticTexture(this._SliceSubImage(CloneDrawable(e),t,0,o,r),{wrapX:"repeat",sampling:l})),a>0&&o>t&&(this._bottomTexture=this._renderer.CreateStaticTexture(this._SliceSubImage(CloneDrawable(e),t,u,o,s),{wrapX:"repeat",sampling:l}))}}},{key:"_SliceSubImage",value:function(e,t,n,r,a){var i=r-t,s=a-n,o=_C199.CreateCanvas(i,s),u=o.getContext("2d")
|
||
return u.drawImage(e,t,n,i,s,0,0,i,s),o}},{key:"GetImageWidth",value:function(){return this._imageWidth}},{key:"GetImageHeight",value:function(){return this._imageHeight}},{key:"GetTexture",value:function(){return this._texture}},{key:"GetFillTexture",value:function(){return this._fillTexture}},{key:"GetLeftTexture",value:function(){return this._leftTexture}},{key:"GetRightTexture",value:function(){return this._rightTexture}},{key:"GetTopTexture",value:function(){return this._topTexture}},{key:"GetBottomTexture",value:function(){return this._bottomTexture}}]),e}()
|
||
var _C200=self.C3
|
||
_C200.Plugins.gamepad=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._isSupported=!1,r._runtime.AddLoadPromise(r._runtime.PostComponentMessageToDOMAsync("gamepad","is-supported").then(function(e){return r._isSupported=!!e})),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"IsSupported",value:function(){return this._isSupported}}]),t}(_C200.SDKPluginBase)
|
||
var _C201=self.C3
|
||
_C201.Plugins.gamepad.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C201.SDKTypeBase)
|
||
var _C202=self.C3,_DOM_COMPONENT_ID2="gamepad",GamepadState=function(){function e(t,n){_classCallCheck(this,e),this._index=t,this._id=n,this._state=new GamepadInputState,this._oldState=new GamepadInputState}return _createClass(e,[{key:"GetID",value:function(){return this._id}},{key:"Update",value:function(e,t){var n=this._oldState
|
||
this._oldState=this._state,this._state=n,this._state.Update(e,t)}},{key:"GetButtonCount",value:function(){return this._state.GetButtonCount()}},{key:"GetAxisCount",value:function(){return this._state.GetAxisCount()}},{key:"HasButtonBecomePressed",value:function(e){return this._state.GetButtonAt(e)>=.5&&this._oldState.GetButtonAt(e)<.5}},{key:"HasButtonBecomeReleased",value:function(e){return this._state.GetButtonAt(e)<.5&&this._oldState.GetButtonAt(e)>=.5}},{key:"GetButtonAt",value:function(e){return this._state.GetButtonAt(e)}},{key:"IsButtonDown",value:function(e){return this._state.GetButtonAt(e)>=.5}},{key:"GetAxisAt",value:function(e){return this._state.GetAxisAt(e)}}]),e}(),GamepadInputState=function(){function e(){_classCallCheck(this,e),this._buttons=[],this._axes=[]}return _createClass(e,[{key:"Update",value:function(e,t){for(var n=this._buttons,r=0,a=e.length;a>r;++r){var i=e[r]
|
||
r===n.length?n.push(i.value):n[r]=i.value}r<n.length&&_C202.truncateArray(n,r),_C202.shallowAssignArray(this._axes,t)}},{key:"GetButtonCount",value:function(){return this._buttons.length}},{key:"GetAxisCount",value:function(){return this._axes.length}},{key:"GetButtonAt",value:function(e){return e=Math.floor(e),0>e||e>=this._buttons.length?0:this._buttons[e]}},{key:"GetAxisAt",value:function(e){return e=Math.floor(e),0>e||e>=this._axes.length?0:this._axes[e]}}]),e}()
|
||
_C202.Plugins.gamepad.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID2),a._deadZone=25,a._lastButton=0,a._lastIndex=-1,a._gamepads=new Map,r&&(a._deadZone=r[0]),a.AddDOMMessageHandler("gamepad-connected",function(e){return a._OnGamepadConnected(e)}),a.AddDOMMessageHandler("gamepad-disconnected",function(e){return a._OnGamepadDisconnected(e)}),a.AddDOMMessageHandler("input-update",function(e){return a._OnInputUpdate(e)}),a.PostToDOM("ready"),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_OnGamepadConnected",value:function(e){var t=e.index
|
||
this._lastIndex=t
|
||
var n=e.id
|
||
this._gamepads.has(t)||(this._gamepads.set(t,new GamepadState(t,n)),this.Trigger(_C202.Plugins.gamepad.Cnds.OnGamepadConnected),this._lastIndex=-1)}},{key:"_OnGamepadDisconnected",value:function(e){var t=e.index
|
||
this._lastIndex=t,this.Trigger(_C202.Plugins.gamepad.Cnds.OnGamepadDisconnected),this._gamepads["delete"](t),this._lastIndex=-1}},{key:"_OnInputUpdate",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
this._OnGamepadInputUpdate(r)}}catch(a){n.e(a)}finally{n.f()}}},{key:"_OnGamepadInputUpdate",value:function(e){var t=e.index
|
||
this._gamepads.has(t)||this._OnGamepadConnected(e)
|
||
var n=this._gamepads.get(t)
|
||
n.Update(e.buttons,e.axes)
|
||
for(var r=0,a=n.GetButtonCount();a>r;++r)n.HasButtonBecomePressed(r)&&(this._lastButton=r)}},{key:"_GetGamepadByIndex",value:function(e){return this._gamepads.get(Math.floor(e))||null}},{key:"GetDebuggerProperties",value:function(){var e="plugins.gamepad"
|
||
return[{title:e+".name",properties:[{name:e+".debugger.last-button",value:this._lastButton}]}]}}]),t}(_C202.SDKInstanceBase)
|
||
var _C203=self.C3
|
||
_C203.Plugins.gamepad.Cnds={SupportsGamepad:function(){return this.GetPlugin().IsSupported()},OnGamepadConnected:function(){return!0},OnGamepadDisconnected:function(){return!0},IsButtonDown:function(e,t){var n=this._GetGamepadByIndex(e)
|
||
if(!n)return!1
|
||
var r=n.IsButtonDown(t)
|
||
return r&&(this._lastButton=t),r},OnButtonDown:function(e,t){var n=this._GetGamepadByIndex(e)
|
||
if(!n)return!1
|
||
var r=n.HasButtonBecomePressed(t)
|
||
return r&&(this._lastButton=t),r},OnButtonUp:function(e,t){var n=this._GetGamepadByIndex(e)
|
||
if(!n)return!1
|
||
var r=n.HasButtonBecomeReleased(t)
|
||
return r&&(this._lastButton=t),r},HasGamepads:function(){return this._gamepads.size>0},CompareAxis:function(e,t,n,r){t=Math.floor(t)
|
||
var a=this._GetGamepadByIndex(e)
|
||
if(!a)return!1
|
||
var i=a.GetAxisAt(t),s=0
|
||
return s=t%2===0?a.GetAxisAt(t+1):a.GetAxisAt(t-1),i*=100,s*=100,Math.hypot(i,s)<=this._deadZone&&(i=0),_C203.compare(i,n,r)},OnAnyButtonDown:function(e){var t=this._GetGamepadByIndex(e)
|
||
if(!t)return!1
|
||
for(var n=0,r=t.GetButtonCount();r>n;++n)if(t.HasButtonBecomePressed(n))return this._lastButton=n,!0
|
||
return!1},OnAnyButtonUp:function(e){var t=this._GetGamepadByIndex(e)
|
||
if(!t)return!1
|
||
for(var n=0,r=t.GetButtonCount();r>n;++n)if(t.HasButtonBecomeReleased(n))return this._lastButton=n,!0
|
||
return!1},IsButtonIndexDown:function(e,t){t=Math.floor(t)
|
||
var n=this._GetGamepadByIndex(e)
|
||
if(!n)return!1
|
||
var r=n.IsButtonDown(t)
|
||
return r&&(this._lastButton=t),r},OnButtonIndexDown:function(e,t){t=Math.floor(t)
|
||
var n=this._GetGamepadByIndex(e)
|
||
if(!n)return!1
|
||
var r=n.HasButtonBecomePressed(t)
|
||
return r&&(this._lastButton=t),r},OnButtonIndexUp:function(e,t){t=Math.floor(t)
|
||
var n=this._GetGamepadByIndex(e)
|
||
if(!n)return!1
|
||
var r=n.HasButtonBecomeReleased(t)
|
||
return r&&(this._lastButton=t),r}}
|
||
var _C204=self.C3
|
||
_C204.Plugins.gamepad.Acts={Vibrate:function(e,t,n,r){this.PostToDOM("vibrate",{index:e,duration:t,weakMag:_C204.clamp(n/100,0,1),strongMag:_C204.clamp(r/100,0,1)})},ResetVibrate:function(e){this.PostToDOM("reset-vibrate",{index:e})}}
|
||
var _C205=self.C3
|
||
_C205.Plugins.gamepad.Exps={GamepadCount:function(){return this._gamepads.size},GamepadID:function(e){var t=this._GetGamepadByIndex(e)
|
||
return t?t.GetID():""},GamepadIndex:function(){return this._lastIndex},GamepadAxes:function(e){var t=this._GetGamepadByIndex(e)
|
||
if(!t)return""
|
||
for(var n="",r=0,a=t.GetAxisCount();a>r;++r)n+="Axis ".concat(r,": ").concat(Math.round(100*t.GetAxisAt(r)),"\n")
|
||
return n},GamepadButtons:function(e){var t=this._GetGamepadByIndex(e)
|
||
if(!t)return""
|
||
for(var n="",r=0,a=t.GetButtonCount();a>r;++r)n+="Button ".concat(r,": ").concat(Math.round(100*t.GetButtonAt(r)),"\n")
|
||
return n},RawButton:function(e,t){var n=this._GetGamepadByIndex(e)
|
||
return n?n.GetButtonAt(Math.floor(t)):0},RawAxis:function(e,t){var n=this._GetGamepadByIndex(e)
|
||
return n?n.GetAxisAt(Math.floor(t)):0},RawButtonCount:function(e){var t=this._GetGamepadByIndex(e)
|
||
return t?t.GetButtonCount():0},RawAxisCount:function(e){var t=this._GetGamepadByIndex(e)
|
||
return t?t.GetAxisCount():0},Button:function(e,t){var n=this._GetGamepadByIndex(e)
|
||
return n?100*n.GetButtonAt(Math.floor(t)):0},Axis:function(e,t){t=Math.floor(t)
|
||
var n=this._GetGamepadByIndex(e)
|
||
if(!n)return 0
|
||
var r=n.GetAxisAt(t),a=0
|
||
return a=t%2===0?n.GetAxisAt(t+1):n.GetAxisAt(t-1),r*=100,a*=100,Math.hypot(r,a)<=this._deadZone&&(r=0),r},LastButton:function(){return this._lastButton}}
|
||
var _C206=self.C3,_DOM_COMPONENT_ID3="text-input"
|
||
_C206.Plugins.TextBox=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e,_DOM_COMPONENT_ID3),r.AddElementMessageHandler("click",function(e,t){return e._OnClick(t)}),r.AddElementMessageHandler("dblclick",function(e,t){return e._OnDoubleClick(t)}),r.AddElementMessageHandler("change",function(e,t){return e._OnChange(t)}),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C206.SDKDOMPluginBase)
|
||
var _C207=self.C3
|
||
_C207.Plugins.TextBox.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C207.SDKTypeBase)
|
||
var _C208=self.C3,_TEXT=0,PLACEHOLDER=1,TOOLTIP=2,_INITIALLY_VISIBLE4=3,_ENABLE2=4,READ_ONLY=5,SPELL_CHECK=6,_TYPE=7,AUTO_FONT_SIZE=8,_ID=9,_DOM_COMPONENT_ID4="text-input",elemTypes=["text","password","email","number","tel","url","textarea","search"]
|
||
_C208.Plugins.TextBox.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID4),a._text="",a._placeholder="",a._title="",a._isEnabled=!0,a._isReadOnly=!1,a._spellCheck=!1,a._type="text",a._autoFontSize=!0,a._maxLength=-1,a._id="",r&&(a._text=r[_TEXT],a._placeholder=r[PLACEHOLDER],a._title=r[TOOLTIP],a.GetWorldInfo().SetVisible(r[_INITIALLY_VISIBLE4]),a._isEnabled=r[_ENABLE2],a._isReadOnly=r[READ_ONLY],a._spellCheck=r[SPELL_CHECK],a._type=elemTypes[r[_TYPE]],a._autoFontSize=r[AUTO_FONT_SIZE],a._id=r[_ID]),a.CreateElement({type:a._type,id:a._id}),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetElementState",value:function(){return{text:this._text,placeholder:this._placeholder,title:this._title,isEnabled:this._isEnabled,isReadOnly:this._isReadOnly,spellCheck:this._spellCheck,maxLength:this._maxLength}}},{key:"_OnClick",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.GetScriptInterface().dispatchEvent(_C208.New(_C208.Event,"click",!0)),e.next=3,this.TriggerAsync(_C208.Plugins.TextBox.Cnds.OnClicked)
|
||
case 3:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnDoubleClick",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.GetScriptInterface().dispatchEvent(_C208.New(_C208.Event,"dblclick",!0)),e.next=3,this.TriggerAsync(_C208.Plugins.TextBox.Cnds.OnDoubleClicked)
|
||
case 3:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnChange",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return this._text=e.text,this.GetScriptInterface().dispatchEvent(_C208.New(_C208.Event,"change",!0)),t.next=4,this.TriggerAsync(_C208.Plugins.TextBox.Cnds.OnTextChanged)
|
||
case 4:case"end":return t.stop()}},n,this)}))
|
||
return e}()},{key:"_SetText",value:function(e){this._text!==e&&(this._text=e,this.UpdateElementState())}},{key:"_GetText",value:function(){return this._text}},{key:"_SetPlaceholder",value:function(e){this._placeholder!==e&&(this._placeholder=e,this.UpdateElementState())}},{key:"_GetPlaceholder",value:function(){return this._placeholder}},{key:"_SetTooltip",value:function(e){this._title!==e&&(this._title=e,this.UpdateElementState())}},{key:"_GetTooltip",value:function(){return this._title}},{key:"_SetEnabled",value:function(e){e=!!e,this._isEnabled!==e&&(this._isEnabled=e,this.UpdateElementState())}},{key:"_IsEnabled",value:function(){return this._isEnabled}},{key:"_SetReadOnly",value:function(e){e=!!e,this._isReadOnly!==e&&(this._isReadOnly=e,this.UpdateElementState())}},{key:"_IsReadOnly",value:function(){return this._isReadOnly}},{key:"_SetMaxLength",value:function(e){e=Math.max(+e,-1),this._maxLength!==e&&(this._maxLength=e,this.UpdateElementState())}},{key:"_GetMaxLength",value:function(){return this._maxLength}},{key:"_ScrollToBottom",value:function(){this.PostToDOMElement("scroll-to-bottom")}},{key:"Draw",value:function(e){}},{key:"SaveToJson",value:function(){return{t:this._text,p:this._placeholder,ti:this._title,e:this._isEnabled,r:this._isReadOnly,sp:this._spellCheck,ml:this._maxLength,type:this._type,id:this._id}}},{key:"LoadFromJson",value:function(e){this._text=e.t,this._placeholder=e.p,this._title=e.ti,this._isEnabled=e.e,this._isReadOnly=e.r,this._spellCheck=e.sp,this._maxLength=e.hasOwnProperty("ml")?e.ml:-1,this._type=e.type,this._id=e.id,this.UpdateElementState()}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case _TEXT:return this._text
|
||
case PLACEHOLDER:return this._placeholder
|
||
case TOOLTIP:return this._title
|
||
case _ENABLE2:return this._isEnabled
|
||
case READ_ONLY:return this._isReadOnly
|
||
case SPELL_CHECK:return this._spellCheck
|
||
case AUTO_FONT_SIZE:return this._autoFontSize
|
||
case _ID:return this._id}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case _TEXT:if(this._text===t)return
|
||
this._text=t,this.UpdateElementState()
|
||
break
|
||
case PLACEHOLDER:if(this._placeholder===t)return
|
||
this._placeholder=t,this.UpdateElementState()
|
||
break
|
||
case TOOLTIP:if(this._title===t)return
|
||
this._title=t,this.UpdateElementState()
|
||
break
|
||
case _ENABLE2:if(this._isEnabled===!!t)return
|
||
this._isEnabled=!!t,this.UpdateElementState()
|
||
break
|
||
case READ_ONLY:if(this._isReadOnly===!!t)return
|
||
this._isReadOnly=!!t,this.UpdateElementState()
|
||
break
|
||
case SPELL_CHECK:if(this._spellCheck===!!t)return
|
||
this._spellCheck=!!t,this.UpdateElementState()
|
||
break
|
||
case AUTO_FONT_SIZE:this._autoFontSize=!!t
|
||
break
|
||
case _ID:if(this._id===t)return
|
||
this._id=t,this.UpdateElementState()}}},{key:"GetDebuggerProperties",value:function(){var e=this,t=_C208.Plugins.TextBox.Acts,n="plugins.textbox"
|
||
return[{title:n+".name",properties:[{name:n+".properties.text.name",value:this._text,onedit:function(n){return e.CallAction(t.SetText,n)}},{name:n+".properties.enabled.name",value:this._isEnabled,onedit:function(n){return e.CallAction(t.SetEnabled,n)}},{name:n+".properties.read-only.name",value:this._isReadOnly,onedit:function(n){return e.CallAction(t.SetReadOnly,n)}}]}]}},{key:"GetScriptInterfaceClass",value:function(){return self.ITextInputInstance}}]),t}(_C208.SDKDOMInstanceBase)
|
||
var _map13=new WeakMap
|
||
self.ITextInputInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map13.set(_assertThisInitialized(e),self.IInstance._GetInitInst().GetSdkInstance()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"text",get:function(){return _map13.get(this)._GetText()},set:function(e){_map13.get(this)._SetText(e)}},{key:"placeholder",get:function(){return _map13.get(this)._GetPlaceholder()},set:function(e){_map13.get(this)._SetPlaceholder(e)}},{key:"tooltip",get:function(){return _map13.get(this)._GetTooltip()},set:function(e){_map13.get(this)._SetTooltip(e)}},{key:"isEnabled",get:function(){return _map13.get(this)._IsEnabled()},set:function(e){_map13.get(this)._SetEnabled(e)}},{key:"isReadOnly",get:function(){return _map13.get(this)._IsReadOnly()},set:function(e){_map13.get(this)._SetReadOnly(e)}},{key:"maxLength",get:function(){return _map13.get(this)._GetMaxLength()},set:function(e){_map13.get(this)._SetMaxLength(e)}},{key:"scrollToBottom",value:function(){_map13.get(this)._ScrollToBottom()}}]),t}(self.IDOMInstance)
|
||
var _C209=self.C3
|
||
_C209.Plugins.TextBox.Cnds={CompareText:function(e,t){return 0===t?_C209.equalsNoCase(this._text,e):this._text===e},OnTextChanged:function(){return!0},OnClicked:function(){return!0},OnDoubleClicked:function(){return!0}}
|
||
var _C210=self.C3
|
||
_C210.Plugins.TextBox.Acts={SetText:function(e){this._SetText(""+e)},AppendText:function(e){""!==e&&this._SetText(this._GetText()+e)},SetPlaceholder:function(e){this._SetPlaceholder(e)},SetTooltip:function(e){this._SetTooltip(e)},SetReadOnly:function(e){this._SetReadOnly(0===e)},ScrollToBottom:function(){this._ScrollToBottom()},SetMaxLength:function(e){this._SetMaxLength(e)}}
|
||
var _C211=self.C3
|
||
_C211.Plugins.TextBox.Exps={Text:function(){return this._GetText()},MaxLength:function(){return this._GetMaxLength()}}
|
||
var _C212=self.C3,_DOM_COMPONENT_ID5="sliderbar"
|
||
_C212.Plugins.sliderbar=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e,_DOM_COMPONENT_ID5),r.AddElementMessageHandler("click",function(e,t){return e._OnClick(t)}),r.AddElementMessageHandler("change",function(e,t){return e._OnChange(t)}),r.AddElementMessageHandler("input",function(e,t){return e._OnInput(t)}),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C212.SDKDOMPluginBase)
|
||
var _C213=self.C3
|
||
_C213.Plugins.sliderbar.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C213.SDKTypeBase)
|
||
var _C214=self.C3,VALUE=0,MINIMUM=1,MAXIMUM=2,_STEP=3,_TOOLTIP=4,_INITIALLY_VISIBLE5=5,_ENABLE3=6,_ID2=7,_DOM_COMPONENT_ID6="sliderbar"
|
||
_C214.Plugins.sliderbar.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID6),a._value=0,a._min=0,a._max=100,a._step=1,a._title="",a._isEnabled=!0,a._id="",r&&(a._value=r[VALUE],a._min=r[MINIMUM],a._max=r[MAXIMUM],a._step=r[_STEP],a._title=r[_TOOLTIP],a.GetWorldInfo().SetVisible(r[_INITIALLY_VISIBLE5]),a._isEnabled=r[_ENABLE3],a._id=r[_ID2]),a.CreateElement({id:a._id}),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetElementState",value:function(){return{value:this._value,min:this._min,max:this._max,step:this._step,title:this._title,isEnabled:this._isEnabled}}},{key:"_OnClick",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this.GetScriptInterface().dispatchEvent(_C214.New(_C214.Event,"click",!0)),e.next=3,this.TriggerAsync(_C214.Plugins.sliderbar.Cnds.OnClicked)
|
||
case 3:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnChange",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return this._value=e.value,this.GetScriptInterface().dispatchEvent(_C214.New(_C214.Event,"change",!0)),t.next=4,this.TriggerAsync(_C214.Plugins.sliderbar.Cnds.OnChanged)
|
||
case 4:case"end":return t.stop()}},n,this)}))
|
||
return e}()},{key:"_OnInput",value:function(e){this._value=e.value}},{key:"Draw",value:function(e){}},{key:"_SetValue",value:function(e){this._value!==e&&(this._value=e,this.UpdateElementState())}},{key:"_GetValue",value:function(){return this._value}},{key:"_SetMaximum",value:function(e){this._max!==e&&(this._max=e,this.UpdateElementState())}},{key:"_GetMaximum",value:function(){return this._max}},{key:"_SetMinimum",value:function(e){this._min!==e&&(this._min=e,this.UpdateElementState())}},{key:"_GetMinimum",value:function(){return this._min}},{key:"_SetTooltip",value:function(e){this._title!==e&&(this._title=e,this.UpdateElementState())}},{key:"_GetTooltip",value:function(){return this._title}},{key:"_SetStep",value:function(e){this._step!==e&&(this._step=e,this.UpdateElementState())}},{key:"_GetStep",value:function(){return this._step}},{key:"_SetEnabled",value:function(e){e=!!e,this._isEnabled!==e&&(this._isEnabled=e,this.UpdateElementState())}},{key:"_IsEnabled",value:function(){return this._isEnabled}},{key:"SaveToJson",value:function(){return{v:this._value,min:this._min,max:this._max,s:this._step,t:this._title,e:this._isEnabled,id:this._id}}},{key:"LoadFromJson",value:function(e){this._value=e.v,this._min=e.min,this._max=e.max,this._step=e.s,this._title=e.t,this._isEnabled=e.e,this._id=e.id,this.UpdateElementState()}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case VALUE:return this._GetValue()
|
||
case MINIMUM:return this._GetMinimum()
|
||
case MAXIMUM:return this._GetMaximum()
|
||
case _STEP:return this._GetStep()
|
||
case _TOOLTIP:return this._GetTooltip()
|
||
case _ENABLE3:return this._IsEnbled()
|
||
case _ID2:return this._id}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case VALUE:this._SetValue(t)
|
||
break
|
||
case MINIMUM:this._SetMinimum(t)
|
||
break
|
||
case MAXIMUM:this._SetMaximum(t)
|
||
break
|
||
case _STEP:this._SetStep(t)
|
||
break
|
||
case _TOOLTIP:this._SetTooltip(t)
|
||
break
|
||
case _ENABLE3:this._SetEnabled(t)
|
||
break
|
||
case _ID2:if(this._id===t)return
|
||
this._id=t,this.UpdateElementState()}}},{key:"GetDebuggerProperties",value:function(){var e=this,t=(_C214.Plugins.sliderbar.Acts,"plugins.sliderbar")
|
||
return[{title:t+".name",properties:[{name:t+".properties.value.name",value:this._GetValue(),onedit:function(t){return e._SetValue(t)}},{name:t+".properties.minimum.name",value:this._GetMinimum(),onedit:function(t){return e._SetMinimum(t)}},{name:t+".properties.maximum.name",value:this._GetMaximum(),onedit:function(t){return e._SetMaximum(t)}},{name:t+".properties.step.name",value:this._GetStep(),onedit:function(t){return e._SetStep(t)}}]}]}},{key:"GetScriptInterfaceClass",value:function(){return self.ISliderBarInstance}}]),t}(_C214.SDKDOMInstanceBase)
|
||
var _map14=new WeakMap
|
||
self.ISliderBarInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map14.set(_assertThisInitialized(e),self.IInstance._GetInitInst().GetSdkInstance()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"value",get:function(){return _map14.get(this)._GetValue()},set:function(e){_map14.get(this)._SetValue(e)}},{key:"maximum",get:function(){return _map14.get(this)._GetMaximum()},set:function(e){_map14.get(this)._SetMaximum(e)}},{key:"minimum",get:function(){return _map14.get(this)._GetMinimum()},set:function(e){_map14.get(this)._SetMinimum(e)}},{key:"step",get:function(){return _map14.get(this)._GetStep()},set:function(e){_map14.get(this)._SetStep(e)}},{key:"tooltip",get:function(){return _map14.get(this)._GetTooltip()},set:function(e){_map14.get(this)._SetTooltip(e)}},{key:"isEnabled",get:function(){return _map14.get(this)._IsEnabled()},set:function(e){_map14.get(this)._SetEnabled(e)}}]),t}(self.IDOMInstance)
|
||
var _C215=self.C3
|
||
_C215.Plugins.sliderbar.Cnds={OnClicked:function(){return!0},OnChanged:function(){return!0},CompareValue:function(e,t){return _C215.compare(this._GetValue(),e,t)}}
|
||
var _C216=self.C3
|
||
_C216.Plugins.sliderbar.Acts={SetTooltip:function(e){this._SetTooltip(e)},SetValue:function(e){this._SetValue(e)},SetMaximum:function(e){this._SetMaximum(e)},SetMinimum:function(e){this._SetMinimum(e)},SetStep:function(e){this._SetStep(e)}}
|
||
var _C217=self.C3
|
||
_C217.Plugins.sliderbar.Exps={Value:function(){return this._GetValue()},Maximum:function(){return this._GetMaximum()},Minimum:function(){return this._GetMinimum()},Step:function(){return this._GetStep()}}
|
||
var _C218=self.C3
|
||
_C218.Plugins.Browser=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C218.SDKPluginBase)
|
||
var _C219=self.C3
|
||
_C219.Plugins.Browser.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C219.SDKTypeBase)
|
||
var _C220=self.C3,_DOM_COMPONENT_ID7="browser"
|
||
_C220.Plugins.Browser.Instance=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID7),a._initLocationStr="",a._isOnline=!1,a._referrer="",a._docTitle="",a._isCookieEnabled=!1,a._screenWidth=0,a._screenHeight=0,a._windowOuterWidth=0,a._windowOuterHeight=0,a._isScirraArcade=!1,a.AddDOMMessageHandlers([["online-state",function(e){return a._OnOnlineStateChanged(e)}],["backbutton",function(){return a._OnBackButton()}],["sw-message",function(e){return a._OnSWMessage(e)}],["hashchange",function(e){return a._OnHashChange(e)}]])
|
||
var i=a.GetRuntime().Dispatcher()
|
||
return a._disposables=new _C220.CompositeDisposable(_C220.Disposable.From(i,"afterfirstlayoutstart",function(){return a._OnAfterFirstLayoutStart()}),_C220.Disposable.From(i,"window-resize",function(){return a._OnWindowResize()}),_C220.Disposable.From(i,"suspend",function(){return a._OnSuspend()}),_C220.Disposable.From(i,"resume",function(){return a._OnResume()})),a._runtime.AddLoadPromise(a.PostToDOMAsync("get-initial-state",{exportType:a._runtime.GetExportType()}).then(function(e){a._initLocationStr=e.location,a._isOnline=e.isOnline,a._referrer=e.referrer,a._docTitle=e.title,a._isCookieEnabled=e.isCookieEnabled,a._screenWidth=e.screenWidth,a._screenHeight=e.screenHeight,a._windowOuterWidth=e.windowOuterWidth,a._windowOuterHeight=e.windowOuterHeight,a._isScirraArcade=e.isScirraArcade})),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_OnAfterFirstLayoutStart",value:function(){this.PostToDOM("ready-for-sw-messages")}},{key:"_OnOnlineStateChanged",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){var t
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(t=!!e.isOnline,this._isOnline!==t){n.next=3
|
||
break}return n.abrupt("return")
|
||
case 3:if(this._isOnline=t,!this._isOnline){n.next=9
|
||
break}return n.next=7,this.TriggerAsync(_C220.Plugins.Browser.Cnds.OnOnline)
|
||
case 7:n.next=11
|
||
break
|
||
case 9:return n.next=11,this.TriggerAsync(_C220.Plugins.Browser.Cnds.OnOffline)
|
||
case 11:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_OnWindowResize",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.TriggerAsync(_C220.Plugins.Browser.Cnds.OnResize)
|
||
case 2:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnSuspend",value:function(){this.Trigger(_C220.Plugins.Browser.Cnds.OnPageHidden)}},{key:"_OnResume",value:function(){this.Trigger(_C220.Plugins.Browser.Cnds.OnPageVisible)}},{key:"_OnBackButton",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.TriggerAsync(_C220.Plugins.Browser.Cnds.OnBackButton)
|
||
case 2:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnSWMessage",value:function(e){var t=e.type
|
||
"downloading-update"===t?this.Trigger(_C220.Plugins.Browser.Cnds.OnUpdateFound):"update-ready"===t||"update-pending"===t?this.Trigger(_C220.Plugins.Browser.Cnds.OnUpdateReady):"offline-ready"===t&&this.Trigger(_C220.Plugins.Browser.Cnds.OnOfflineReady)}},{key:"_OnHashChange",value:function(e){this._initLocationStr=e.location,this.Trigger(_C220.Plugins.Browser.Cnds.OnHashChange)}},{key:"GetDebuggerProperties",value:function(){var e="plugins.browser.debugger"
|
||
return[{title:"plugins.browser.name",properties:[{name:e+".user-agent",value:navigator.userAgent},{name:e+".is-online",value:this._isOnline},{name:e+".is-fullscreen",value:this._runtime.GetCanvasManager().IsDocumentFullscreen()}]}]}}]),t}(_C220.SDKInstanceBase)
|
||
var _C221=self.C3
|
||
_C221.Plugins.Browser.Cnds={IsOnline:function(){return this._isOnline},OnOnline:function(){return!0},OnOffline:function(){return!0},OnResize:function(){return!0},CookiesEnabled:function(){return this._isCookieEnabled},IsFullscreen:function(){return this._runtime.GetCanvasManager().IsDocumentFullscreen()},OnBackButton:function(){return!0},IsPortraitLandscape:function(e){var t=this._runtime.GetCanvasManager().GetLastWidth(),n=this._runtime.GetCanvasManager().GetLastHeight(),r=n>=t?0:1
|
||
return r===e},OnUpdateFound:function(){return!0},OnUpdateReady:function(){return!0},OnOfflineReady:function(){return!0},OnHashChange:function(){return!0},PageVisible:function(){return!this._runtime.IsSuspended()},OnPageHidden:function(){return!0},OnPageVisible:function(){return!0},HasJava:function(){return!1},IsDownloadingUpdate:function(){return!1},OnMenuButton:function(){return!1},OnSearchButton:function(){return!1},IsMetered:function(){return!1},IsCharging:function(){return!0},SupportsFullscreen:function(){return!0}}
|
||
var _C222=self.C3,ORIENTATIONS=["portrait","landscape","portrait-primary","portrait-secondary","landscape-primary","landscape-secondary"]
|
||
_C222.Plugins.Browser.Acts={Alert:function(e){this.PostToDOM("alert",{message:""+e})},Close:function(){this._isScirraArcade||(this._runtime.IsDebug()?self.C3Debugger.CloseWindow():this.PostToDOM("close"))},Focus:function(){this.PostToDOM("set-focus",{isFocus:!0})},Blur:function(){this.PostToDOM("set-focus",{isFocus:!1})},GoBack:function(){this._isScirraArcade||this.PostToDOM("navigate",{type:"back"})},GoForward:function(){this._isScirraArcade||this.PostToDOM("navigate",{type:"forward"})},GoHome:function(){this._isScirraArcade||this.PostToDOM("navigate",{type:"home"})},Reload:function(){this._isScirraArcade||(this._runtime.IsDebug()?this._runtime.PostToDebugger({type:"reload"}):this.PostToDOM("navigate",{type:"reload"}))},GoToURL:function(e,t){this._PostToDOMMaybeSync("navigate",{type:"url",url:e,target:t,exportType:this._runtime.GetExportType()})},GoToURLWindow:function(e,t){this._PostToDOMMaybeSync("navigate",{type:"new-window",url:e,tag:t,exportType:this._runtime.GetExportType()})},RequestFullScreen:function(e,t){e>=2&&(e+=1),6===e&&(e=2),1===e&&(e=0)
|
||
var n=_C222.CanvasManager._FullscreenModeNumberToString(e)
|
||
this._runtime.GetCanvasManager().SetDocumentFullscreenMode(n),this._PostToDOMMaybeSync("request-fullscreen",{navUI:t})},CancelFullScreen:function(){this._PostToDOMMaybeSync("exit-fullscreen")},Vibrate:function(e){for(var t=e.split(","),n=0,r=t.length;r>n;++n)t[n]=parseInt(t[n],10)
|
||
this._PostToDOMMaybeSync("vibrate",{pattern:t})},InvokeDownload:function(e,t){var n=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function r(){var a
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(t){r.next=2
|
||
break}return r.abrupt("return")
|
||
case 2:return r.next=4,n._runtime.GetAssetManager().GetProjectFileUrl(e)
|
||
case 4:a=r.sent,n._runtime.InvokeDownload(a,t)
|
||
case 6:case"end":return r.stop()}},r)}))()},InvokeDownloadString:function(e,t,n){if(n){var r="data:".concat(t,",").concat(encodeURIComponent(e))
|
||
this._runtime.InvokeDownload(r,n)}},ConsoleLog:function(e,t){t=""+t,0===e?console.log(t):1===e?console.warn(t):2===e&&console.error(t)},ConsoleGroup:function(e){console.group(e)},ConsoleGroupEnd:function(){console.groupEnd()},ExecJs:function ExecJs(jsStr){try{eval(jsStr)}catch(err){console.error("Error executing JavaScript: ",err)}},LockOrientation:function(e){if(e=Math.floor(e),!(0>e||e>=ORIENTATIONS.length)){var t=ORIENTATIONS[e]
|
||
this._PostToDOMMaybeSync("lock-orientation",{orientation:t})}},UnlockOrientation:function(){this._PostToDOMMaybeSync("unlock-orientation")},LoadStyleSheet:function(e){this._runtime.GetAssetManager().LoadStyleSheet(e)},SetHash:function(e){this.PostToDOM("set-hash",{hash:e})}}
|
||
var _C223=self.C3
|
||
_C223.Plugins.Browser.Exps={URL:function(){return this._runtime.IsInWorker()?this._initLocationStr:""+location},Protocol:function(){return this._runtime.IsInWorker()?new URL(this._initLocationStr).protocol:location.protocol},Domain:function(){return this._runtime.IsInWorker()?new URL(this._initLocationStr).hostname:location.hostname},Port:function(){return this._runtime.IsInWorker()?new URL(this._initLocationStr).port:location.port},PathName:function(){return this._runtime.IsInWorker()?new URL(this._initLocationStr).pathname:location.pathname},Hash:function(){return this._runtime.IsInWorker()?new URL(this._initLocationStr).hash:location.hash},QueryString:function(){return this._runtime.IsInWorker()?new URL(this._initLocationStr).search:location.search},QueryParam:function(e){var t=this._runtime.IsInWorker()?new URL(this._initLocationStr).search:location.search,n=RegExp("[?&]"+e+"=([^&]*)").exec(t)
|
||
return n?decodeURIComponent(n[1].replace(/\+/g," ")):""},Referrer:function(){return this._referrer},Title:function(){return this._docTitle},Language:function(){return navigator.language},Platform:function(){return navigator.platform},UserAgent:function(){return navigator.userAgent},ExecJS:function ExecJS(jsStr){var result=0
|
||
try{result=eval(jsStr)}catch(err){console.error("Error executing JavaScript: ",err)}return"number"==typeof result||"string"==typeof result?result:"boolean"==typeof result&&result?1:0},Name:function(){return navigator.appName},Version:function(){return navigator.appVersion},Product:function(){return navigator.product},Vendor:function(){return navigator.vendor},BatteryLevel:function(){return 1},BatteryTimeLeft:function(){return 1/0},Bandwidth:function(){var e=navigator.connection
|
||
return e?e.downlink||e.downlinkMax||e.bandwidth||1/0:1/0},ConnectionType:function(){var e=navigator.connection
|
||
return e?e.type||"unknown":"unknown"},DevicePixelRatio:function(){return self.devicePixelRatio},ScreenWidth:function(){return this._screenWidth},ScreenHeight:function(){return this._screenHeight},WindowInnerWidth:function(){return this._runtime.GetCanvasManager().GetLastWidth()},WindowInnerHeight:function(){return this._runtime.GetCanvasManager().GetLastHeight()},WindowOuterWidth:function(){return this._windowOuterWidth},WindowOuterHeight:function(){return this._windowOuterWidth}}
|
||
var _C224=self.C3,_DOM_COMPONENT_ID8="progress-bar"
|
||
_C224.Plugins.progressbar=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e,_DOM_COMPONENT_ID8),r.AddElementMessageHandler("click",function(e,t){return e._OnClick(t)}),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C224.SDKDOMPluginBase)
|
||
var _C225=self.C3
|
||
_C225.Plugins.progressbar.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C225.SDKTypeBase)
|
||
var _C226=self.C3,_VALUE=0,_MAXIMUM=1,_TOOLTIP2=2,_INITIALLY_VISIBLE6=3,_ID3=4,_DOM_COMPONENT_ID9="progress-bar"
|
||
_C226.Plugins.progressbar.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID9),a._value=0,a._max=100,a._title="",a._id="",r&&(a._value=r[_VALUE],a._max=r[_MAXIMUM],a._title=r[_TOOLTIP2],a.GetWorldInfo().SetVisible(r[_INITIALLY_VISIBLE6]),a._id=r[_ID3]),a.CreateElement({id:a._id}),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetElementState",value:function(){return{value:this._value,max:this._max,title:this._title}}},{key:"_OnClick",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.TriggerAsync(_C226.Plugins.progressbar.Cnds.OnClicked)
|
||
case 2:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"Draw",value:function(e){}},{key:"SaveToJson",value:function(){return{v:this._value,m:this._max,t:this._title,id:this._id}}},{key:"LoadFromJson",value:function(e){this._value=e.v,this._max=e.m,this._title=e.t,this._id=e.id,this.UpdateElementState()}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case _VALUE:return this._value
|
||
case _MAXIMUM:return this._max
|
||
case _TOOLTIP2:return this._title
|
||
case _ID3:return this._id}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case _VALUE:if(this._value===t)return
|
||
this._value=t,this.UpdateElementState()
|
||
break
|
||
case _MAXIMUM:if(this._max===t)return
|
||
this._max=t,this.UpdateElementState()
|
||
break
|
||
case _TOOLTIP2:if(this._title===t)return
|
||
this._title=t,this.UpdateElementState()
|
||
break
|
||
case _ID3:if(this._id===t)return
|
||
this._id=t,this.UpdateElementState()}}},{key:"GetDebuggerProperties",value:function(){var e=this,t=_C226.Plugins.progressbar.Acts,n="plugins.progressbar"
|
||
return[{title:n+".name",properties:[{name:n+".properties.value.name",value:this._value,onedit:function(n){return e.CallAction(t.SetProgress,n)}},{name:n+".properties.maximum.name",value:this._max,onedit:function(n){return e.CallAction(t.SetMaximum,n)}}]}]}}]),t}(_C226.SDKDOMInstanceBase)
|
||
var _C227=self.C3
|
||
_C227.Plugins.progressbar.Cnds={OnClicked:function(){return!0},CompareProgress:function(e,t){return _C227.compare(this._value,e,t)}}
|
||
var _C228=self.C3
|
||
_C228.Plugins.progressbar.Acts={SetTooltip:function(e){this._title!==e&&(this._title=e,this.UpdateElementState())},SetProgress:function(e){this._value!==e&&(this._value=e,this.UpdateElementState())},SetMaximum:function(e){this._max!==e&&(this._max=e,this.UpdateElementState())},SetIndeterminate:function(){this._max=0,this._value=0,this.UpdateElementState()}}
|
||
var _C229=self.C3
|
||
_C229.Plugins.progressbar.Exps={Progress:function(){return this._value},Maximum:function(){return this._max}}
|
||
var _C230=self.C3
|
||
_C230.Plugins.Touch=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C230.SDKPluginBase)
|
||
var GetTouchSdkInstance=function(){return touchObjectType.GetSingleGlobalInstance().GetSdkInstance()},_C231=self.C3
|
||
_C231.Plugins.Touch.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}},{key:"GetScriptInterfaceClass",value:function(){return self.ITouchObjectType}}]),t}(_C231.SDKTypeBase)
|
||
var touchObjectType=null
|
||
self.ITouchObjectType=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),touchObjectType=e,e.GetRuntime()._GetCommonScriptInterfaces().touch=_assertThisInitialized(r),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"requestPermission",value:function(e){var t=GetTouchSdkInstance()
|
||
if("orientation"===e)return t._RequestPermission(0)
|
||
if("motion"===e)return t._RequestPermission(1)
|
||
throw Error("invalid type")}}]),t}(self.IObjectClass)
|
||
var _C232=self.C3,_DOM_COMPONENT_ID10="touch"
|
||
_C232.Plugins.Touch.Instance=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID10),a._touches=new Map,a._useMouseInput=!1,a._isMouseDown=!1,a._orientCompassHeading=0,a._orientAlpha=0,a._orientBeta=0,a._orientGamma=0,a._accX=0,a._accY=0,a._accZ=0,a._accWithGX=0,a._accWithGY=0,a._accWithGZ=0,a._triggerIndex=0,a._triggerId=0,a._triggerPermission=0,a._curTouchX=0,a._curTouchY=0,a._getTouchIndex=0,a._permissionPromises=[],r&&(a._useMouseInput=r[0]),a.AddDOMMessageHandler("permission-result",function(e){return a._OnPermissionResult(e)})
|
||
var i=a.GetRuntime().Dispatcher()
|
||
return a._disposables=new _C232.CompositeDisposable(_C232.Disposable.From(i,"pointerdown",function(e){return a._OnPointerDown(e.data)}),_C232.Disposable.From(i,"pointermove",function(e){return a._OnPointerMove(e.data)}),_C232.Disposable.From(i,"pointerup",function(e){return a._OnPointerUp(e.data,!1)}),_C232.Disposable.From(i,"pointercancel",function(e){return a._OnPointerUp(e.data,!0)}),_C232.Disposable.From(i,"deviceorientation",function(e){return a._OnDeviceOrientation(e.data)}),_C232.Disposable.From(i,"deviceorientationabsolute",function(e){return a._OnDeviceOrientationAbsolute(e.data)}),_C232.Disposable.From(i,"devicemotion",function(e){return a._OnDeviceMotion(e.data)}),_C232.Disposable.From(i,"tick2",function(e){return a._OnTick2()})),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._touches.clear(),_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_OnPointerDown",value:function(e){if("mouse"===e.pointerType){if(!this._useMouseInput)return
|
||
this._isMouseDown=!0}var t=e.pointerId
|
||
if(!this._touches.has(t)){var n=e.pageX-this._runtime.GetCanvasClientX(),r=e.pageY-this._runtime.GetCanvasClientY(),a=e.timeStamp,i=this._touches.size
|
||
this._triggerIndex=i,this._triggerId=t
|
||
var s=_C232.New(_C232.Plugins.Touch.TouchInfo)
|
||
s.Init(a,n,r,t,i),this._touches.set(t,s),this.Trigger(_C232.Plugins.Touch.Cnds.OnNthTouchStart),this.Trigger(_C232.Plugins.Touch.Cnds.OnTouchStart),this._curTouchX=n,this._curTouchY=r,this.Trigger(_C232.Plugins.Touch.Cnds.OnTouchObject)}}},{key:"_OnPointerMove",value:function(e){if("mouse"!==e.pointerType||this._isMouseDown){var t=this._touches.get(e.pointerId)
|
||
if(t){var n=e.timeStamp
|
||
if(!(n-t.GetTime()<2)){var r=e.pageX-this._runtime.GetCanvasClientX(),a=e.pageY-this._runtime.GetCanvasClientY()
|
||
t.Update(n,r,a,e.width,e.height,e.pressure)}}}}},{key:"_OnPointerUp",value:function(e,t){if("mouse"===e.pointerType){if(!this._isMouseDown)return
|
||
this._isMouseDown=!1}var n=e.timeStamp,r=e.pointerId,a=this._touches.get(r)
|
||
if(a){if(this._triggerIndex=a.GetStartIndex(),this._triggerId=a.GetId(),this.Trigger(_C232.Plugins.Touch.Cnds.OnNthTouchEnd),this.Trigger(_C232.Plugins.Touch.Cnds.OnTouchEnd),!t){var i=a.ShouldTriggerTap(n)
|
||
"single-tap"===i?(this.Trigger(_C232.Plugins.Touch.Cnds.OnTapGesture),this._curTouchX=a.GetX(),this._curTouchY=a.GetY(),this.Trigger(_C232.Plugins.Touch.Cnds.OnTapGestureObject)):"double-tap"===i&&(this.Trigger(_C232.Plugins.Touch.Cnds.OnDoubleTapGesture),this._curTouchX=a.GetX(),this._curTouchY=a.GetY(),this.Trigger(_C232.Plugins.Touch.Cnds.OnDoubleTapGestureObject))}a.Release(),this._touches["delete"](r)}}},{key:"_RequestPermission",value:function(e){var t=this
|
||
return this._PostToDOMMaybeSync("request-permission",{type:e}),new Promise(function(n,r){t._permissionPromises.push({type:e,resolve:n,reject:r})})}},{key:"_OnPermissionResult",value:function(e){var t=e.result,n=e.type
|
||
this._triggerPermission=n
|
||
var r,a=this._permissionPromises.filter(function(e){return e.type===n}),i=_createForOfIteratorHelper(a)
|
||
try{for(i.s();!(r=i.n()).done;){var s=r.value
|
||
s.resolve(t?"granted":"denied")}}catch(o){i.e(o)}finally{i.f()}this._permissionPromises=this._permissionPromises.filter(function(e){return e.type!==n}),t?(this.Trigger(_C232.Plugins.Touch.Cnds.OnPermissionGranted),0===n?this._runtime.RequestDeviceOrientationEvent():this._runtime.RequestDeviceMotionEvent()):this.Trigger(_C232.Plugins.Touch.Cnds.OnPermissionDenied)}},{key:"_OnDeviceOrientation",value:function(e){"number"==typeof e.webkitCompassHeading?this._orientCompassHeading=e.webkitCompassHeading:e.absolute&&(this._orientCompassHeading=e.alpha),this._orientAlpha=e.alpha,this._orientBeta=e.beta,this._orientGamma=e.gamma}},{key:"_OnDeviceOrientationAbsolute",value:function(e){this._orientCompassHeading=e.alpha}},{key:"_OnDeviceMotion",value:function(e){var t=e.acceleration
|
||
t&&(this._accX=t.x,this._accY=t.y,this._accZ=t.z)
|
||
var n=e.accelerationIncludingGravity
|
||
n&&(this._accWithGX=n.x,this._accWithGY=n.y,this._accWithGZ=n.z)}},{key:"_OnTick2",value:function(){var e,t=performance.now(),n=0,r=_createForOfIteratorHelper(this._touches.values())
|
||
try{for(r.s();!(e=r.n()).done;){var a=e.value
|
||
a.GetTime()<=t-50&&a._SetLastTime(t),a.ShouldTriggerHold(t)&&(this._triggerIndex=a.GetStartIndex(),this._triggerId=a.GetId(),this._getTouchIndex=n,this.Trigger(_C232.Plugins.Touch.Cnds.OnHoldGesture),this._curTouchX=a.GetX(),this._curTouchY=a.GetY(),this.Trigger(_C232.Plugins.Touch.Cnds.OnHoldGestureObject),this._getTouchIndex=0),++n}}catch(i){r.e(i)}finally{r.f()}}},{key:"_GetTouchByIndex",value:function(e){e=Math.floor(e)
|
||
var t,n=_createForOfIteratorHelper(this._touches.values())
|
||
try{for(n.s();!(t=n.n()).done;){var r=t.value
|
||
if(0===e)return r;--e}}catch(a){n.e(a)}finally{n.f()}return null}},{key:"_IsClientPosOnCanvas",value:function(e,t){return e>=0&&t>=0&&e<this._runtime.GetCanvasCssWidth()&&t<this._runtime.GetCanvasCssHeight()}},{key:"GetDebuggerProperties",value:function(){var e="plugins.touch.debugger"
|
||
return[{title:e+".touches",properties:_toConsumableArray(this._touches.values()).map(function(e){return{name:"$"+e.GetId(),value:e.GetX()+", "+e.GetY()}})}]}}]),t}(_C232.SDKInstanceBase)
|
||
var _C233=self.C3,tempArr=[]
|
||
_C233.Plugins.Touch.Cnds={OnTouchStart:function(){return!0},OnTouchEnd:function(){return!0},IsInTouch:function(){return this._touches.size>0},OnTouchObject:function(e){return e&&this._IsClientPosOnCanvas(this._curTouchX,this._curTouchY)?this._runtime.GetCollisionEngine().TestAndSelectCanvasPointOverlap(e,this._curTouchX,this._curTouchY,!1):!1},IsTouchingObject:function(e){if(!e)return!1
|
||
var t,n=e.GetCurrentSol(),r=n.GetInstances(),a=_createForOfIteratorHelper(r)
|
||
try{for(a.s();!(t=a.n()).done;){var i,s=t.value,o=s.GetWorldInfo(),u=o.GetLayer(),l=_createForOfIteratorHelper(this._touches.values())
|
||
try{for(l.s();!(i=l.n()).done;){var c=i.value
|
||
if(this._IsClientPosOnCanvas(c.GetX(),c.GetY())){var h=u.CanvasCssToLayer(c.GetX(),c.GetY(),o.GetTotalZElevation()),_=_slicedToArray(h,2),f=_[0],d=_[1]
|
||
if(o.ContainsPoint(f,d)){tempArr.push(s)
|
||
break}}}}catch(p){l.e(p)}finally{l.f()}}}catch(p){a.e(p)}finally{a.f()}return tempArr.length?(n.SetArrayPicked(tempArr),e.ApplySolToContainer(),_C233.clearArray(tempArr),!0):!1},CompareTouchSpeed:function(e,t,n){var r=this._GetTouchByIndex(e)
|
||
return r?_C233.compare(r.GetSpeed(),t,n):!1},OrientationSupported:function(){return!0},MotionSupported:function(){return!0},CompareOrientation:function(e,t,n){this._runtime.RequestDeviceOrientationEvent()
|
||
var r=0
|
||
return r=0===e?this._orientAlpha:1===e?this._orientBeta:this._orientGamma,_C233.compare(r,t,n)},CompareAcceleration:function(e,t,n){this._runtime.RequestDeviceMotionEvent()
|
||
var r=0
|
||
return r=0===e?this._accWithGX:1===e?this._accWithGY:2===e?this._accWithGZ:3===e?this._accX:4===e?this._accY:this._accZ,_C233.compare(r,t,n)},OnNthTouchStart:function(e){return e=Math.floor(e),e===this._triggerIndex},OnNthTouchEnd:function(e){return e=Math.floor(e),e===this._triggerIndex},HasNthTouch:function(e){return e=Math.floor(e),this._touches.size>=e+1},OnHoldGesture:function(){return!0},OnTapGesture:function(){return!0},OnDoubleTapGesture:function(){return!0},OnHoldGestureObject:function(e){return e&&this._IsClientPosOnCanvas(this._curTouchX,this._curTouchY)?this._runtime.GetCollisionEngine().TestAndSelectCanvasPointOverlap(e,this._curTouchX,this._curTouchY,!1):!1},OnTapGestureObject:function(e){return e&&this._IsClientPosOnCanvas(this._curTouchX,this._curTouchY)?this._runtime.GetCollisionEngine().TestAndSelectCanvasPointOverlap(e,this._curTouchX,this._curTouchY,!1):!1},OnDoubleTapGestureObject:function(e){return e&&this._IsClientPosOnCanvas(this._curTouchX,this._curTouchY)?this._runtime.GetCollisionEngine().TestAndSelectCanvasPointOverlap(e,this._curTouchX,this._curTouchY,!1):!1},OnPermissionGranted:function(e){return this._triggerPermission===e},OnPermissionDenied:function(e){return this._triggerPermission===e}}
|
||
var _C234=self.C3
|
||
_C234.Plugins.Touch.Acts={RequestPermission:function(e){this._RequestPermission(e)}}
|
||
var _C235=self.C3
|
||
_C235.Plugins.Touch.Exps={TouchCount:function(){return this._touches.size},X:function(e){var t=this._GetTouchByIndex(this._getTouchIndex)
|
||
return t?t.GetPositionForLayer(this._runtime.GetCurrentLayout(),e,!0):0},Y:function(e){var t=this._GetTouchByIndex(this._getTouchIndex)
|
||
return t?t.GetPositionForLayer(this._runtime.GetCurrentLayout(),e,!1):0},XAt:function(e,t){var n=this._GetTouchByIndex(e)
|
||
return n?n.GetPositionForLayer(this._runtime.GetCurrentLayout(),t,!0):0},YAt:function(e,t){var n=this._GetTouchByIndex(e)
|
||
return n?n.GetPositionForLayer(this._runtime.GetCurrentLayout(),t,!1):0},XForID:function(e,t){var n=this._touches.get(e)
|
||
return n?n.GetPositionForLayer(this._runtime.GetCurrentLayout(),t,!0):0},YForID:function(e,t){var n=this._touches.get(e)
|
||
return n?n.GetPositionForLayer(this._runtime.GetCurrentLayout(),t,!1):0},AbsoluteX:function(){var e=this._GetTouchByIndex(0)
|
||
return e?e.GetX():0},AbsoluteY:function(){var e=this._GetTouchByIndex(0)
|
||
return e?e.GetY():0},AbsoluteXAt:function(e){var t=this._GetTouchByIndex(e)
|
||
return t?t.GetX():0},AbsoluteYAt:function(e){var t=this._GetTouchByIndex(e)
|
||
return t?t.GetY():0},AbsoluteXForID:function(e){var t=this._touches.get(e)
|
||
return t?t.GetX():0},AbsoluteYForID:function(e){var t=this._touches.get(e)
|
||
return t?t.GetY():0},SpeedAt:function(e){var t=this._GetTouchByIndex(e)
|
||
return t?t.GetSpeed():0},SpeedForID:function(e){var t=this._touches.get(e)
|
||
return t?t.GetSpeed():0},AngleAt:function(e){var t=this._GetTouchByIndex(e)
|
||
return t?_C235.toDegrees(t.GetAngle()):0},AngleForID:function(e){var t=this._touches.get(e)
|
||
return t?_C235.toDegrees(t.GetAngle()):0},CompassHeading:function(){return this._runtime.RequestDeviceOrientationEvent(),this._orientCompassHeading},Alpha:function(){return this._runtime.RequestDeviceOrientationEvent(),this._orientAlpha},Beta:function(){return this._runtime.RequestDeviceOrientationEvent(),this._orientBeta},Gamma:function(){return this._runtime.RequestDeviceOrientationEvent(),this._orientGamma},AccelerationXWithG:function(){return this._runtime.RequestDeviceMotionEvent(),this._accWithGX},AccelerationYWithG:function(){return this._runtime.RequestDeviceMotionEvent(),this._accWithGY},AccelerationZWithG:function(){return this._runtime.RequestDeviceMotionEvent(),this._accWithGZ},AccelerationX:function(){return this._runtime.RequestDeviceMotionEvent(),this._accX},AccelerationY:function(){return this._runtime.RequestDeviceMotionEvent(),this._accY},AccelerationZ:function(){return this._runtime.RequestDeviceMotionEvent(),this._accZ},TouchIndex:function(){return this._triggerIndex},TouchID:function(){return this._triggerId},WidthForID:function(e){var t=this._touches.get(e)
|
||
return t?t.GetWidth():0},HeightForID:function(e){var t=this._touches.get(e)
|
||
return t?t.GetHeight():0},PressureForID:function(e){var t=this._touches.get(e)
|
||
return t?t.GetPressure():0}}
|
||
var _C236=self.C3,GESTURE_HOLD_THRESHOLD=15,GESTURE_HOLD_TIMEOUT=500,GESTURE_TAP_TIMEOUT=333,GESTURE_DOUBLETAP_THRESHOLD=25,lastTapX=-1e3,lastTapY=-1e3,lastTapTime=-1e4
|
||
_C236.Plugins.Touch.TouchInfo=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),e._pointerId=0,e._startIndex=0,e._startTime=0,e._time=0,e._lastTime=0,e._startX=0,e._startY=0,e._x=0,e._y=0,e._lastX=0,e._lastY=0,e._width=0,e._height=0,e._pressure=0,e._hasTriggeredHold=!1,e._isTooFarForHold=!1,e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){}},{key:"Init",value:function(e,t,n,r,a){this._pointerId=r,this._startIndex=a,this._time=e,this._lastTime=e,this._startTime=e,this._startX=t,this._startY=n,this._x=t,this._y=n,this._lastX=t,this._lastY=n}},{key:"Update",value:function(e,t,n,r,a,i){this._lastTime=this._time,this._time=e,this._lastX=this._x,this._lastY=this._y,this._x=t,this._y=n,this._width=r,this._height=a,this._pressure=i,!this._isTooFarForHold&&_C236.distanceTo(this._startX,this._startY,this._x,this._y)>=GESTURE_HOLD_THRESHOLD&&(this._isTooFarForHold=!0)}},{key:"GetId",value:function(){return this._pointerId}},{key:"GetStartIndex",value:function(){return this._startIndex}},{key:"GetTime",value:function(){return this._time}},{key:"_SetLastTime",value:function(e){this._lastTime=e}},{key:"GetX",value:function(){return this._x}},{key:"GetY",value:function(){return this._y}},{key:"GetSpeed",value:function(){var e=_C236.distanceTo(this._x,this._y,this._lastX,this._lastY),t=(this._time-this._lastTime)/1e3
|
||
return t>0?e/t:0}},{key:"GetAngle",value:function(){return _C236.angleTo(this._lastX,this._lastY,this._x,this._y)}},{key:"GetWidth",value:function(){return this._width}},{key:"GetHeight",value:function(){return this._height}},{key:"GetPressure",value:function(){return this._pressure}},{key:"ShouldTriggerHold",value:function(e){return this._hasTriggeredHold?!1:e-this._startTime>=GESTURE_HOLD_TIMEOUT&&!this._isTooFarForHold&&_C236.distanceTo(this._startX,this._startY,this._x,this._y)<GESTURE_HOLD_THRESHOLD?(this._hasTriggeredHold=!0,!0):!1}},{key:"ShouldTriggerTap",value:function(e){return this._hasTriggeredHold?"":e-this._startTime<=GESTURE_TAP_TIMEOUT&&!this._isTooFarForHold&&_C236.distanceTo(this._startX,this._startY,this._x,this._y)<GESTURE_HOLD_THRESHOLD?2*GESTURE_TAP_TIMEOUT>=e-lastTapTime&&_C236.distanceTo(lastTapX,lastTapY,this._x,this._y)<GESTURE_DOUBLETAP_THRESHOLD?(lastTapX=-1e3,lastTapY=-1e3,lastTapTime=-1e4,"double-tap"):(lastTapX=this._x,lastTapY=this._y,lastTapTime=e,"single-tap"):""}},{key:"GetPositionForLayer",value:function(e,t,n){if(void 0===t){var r=e.GetLayerByIndex(0)
|
||
return r.CanvasCssToLayer_DefaultTransform(this._x,this._y)[n?0:1]}var a=e.GetLayer(t)
|
||
return a?a.CanvasCssToLayer(this._x,this._y)[n?0:1]:0}}]),t}(_C236.DefendedBase)
|
||
var _C237=self.C3
|
||
_C237.Plugins.PlatformInfo=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C237.SDKPluginBase)
|
||
var _C238=self.C3
|
||
_C238.Plugins.PlatformInfo.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C238.SDKTypeBase)
|
||
var _C239=self.C3,_DOM_COMPONENT_ID11="platform-info"
|
||
_C239.Plugins.PlatformInfo.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID11),a._screenWidth=0,a._screenHeight=0,a._windowOuterWidth=0,a._windowOuterHeight=0,a._safeAreaInset=[0,0,0,0],a._supportsWakeLock=!1,a._isWakeLockActive=!1,a.AddDOMMessageHandlers([["window-resize",function(e){return a._OnWindowResize(e)}],["wake-lock-acquired",function(e){return a._OnWakeLockAcquired(e)}],["wake-lock-error",function(e){return a._OnWakeLockError(e)}],["wake-lock-released",function(e){return a._OnWakeLockReleased(e)}]]),navigator.connection&&navigator.connection.addEventListener("change",function(){return a._OnNetworkChange()}),a._runtime.AddLoadPromise(a.PostToDOMAsync("get-initial-state").then(function(e){a._screenWidth=e.screenWidth,a._screenHeight=e.screenHeight,a._windowOuterWidth=e.windowOuterWidth,a._windowOuterHeight=e.windowOuterHeight,a._safeAreaInset=e.safeAreaInset,a._supportsWakeLock=e.supportsWakeLock})),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_OnWindowResize",value:function(e){this._windowOuterWidth=e.windowOuterWidth,this._windowOuterHeight=e.windowOuterHeight,this._safeAreaInset=e.safeAreaInset}},{key:"_OnNetworkChange",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,this.TriggerAsync(_C239.Plugins.PlatformInfo.Cnds.OnNetworkChange)
|
||
case 2:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnWakeLockAcquired",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._isWakeLockActive=!0,e.next=3,this.TriggerAsync(_C239.Plugins.PlatformInfo.Cnds.OnWakeLockAcquired)
|
||
case 3:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnWakeLockError",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._isWakeLockActive=!1,e.next=3,this.TriggerAsync(_C239.Plugins.PlatformInfo.Cnds.OnWakeLockError)
|
||
case 3:case"end":return e.stop()}},n,this)}))
|
||
return e}()},{key:"_OnWakeLockReleased",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){return _regeneratorRuntime().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return this._isWakeLockActive=!1,e.next=3,this.TriggerAsync(_C239.Plugins.PlatformInfo.Cnds.OnWakeLockReleased)
|
||
case 3:case"end":return e.stop()}},n,this)}))
|
||
return e}()}]),t}(_C239.SDKInstanceBase)
|
||
var _C240=self.C3
|
||
_C240.Plugins.PlatformInfo.Cnds={IsOnMobile:function(){return _C240.Platform.IsMobile},IsOnWindows:function(){return"Windows"===_C240.Platform.OS},IsOnMacOS:function(){return"Mac OS X"===_C240.Platform.OS},IsOnLinux:function(){return"Linux"===_C240.Platform.OS},IsOnChromeOS:function(){return"Chrome OS"===_C240.Platform.OS},IsOnAndroid:function(){return"Android"===_C240.Platform.OS},IsOniOS:function(){return"iOS"===_C240.Platform.OS},IsWebExport:function(){var e=this._runtime.GetExportType()
|
||
return"html5"===e||"scirra-arcade"===e||"preview"===e||"instant-games"===e},IsCordovaExport:function(){return this._runtime.IsCordova()},IsNWjsExport:function(){return"nwjs"===this._runtime.GetExportType()},IsWindowsUWPExport:function(){return"windows-uwp"===this._runtime.GetExportType()},OnNetworkChange:function(){return!0},OnWakeLockAcquired:function(){return!0},OnWakeLockError:function(){return!0},OnWakeLockReleased:function(){return!0},IsWakeLockActive:function(){return this._isWakeLockActive},IsWakeLockSupported:function(){return this._supportsWakeLock}}
|
||
var _C241=self.C3
|
||
_C241.Plugins.PlatformInfo.Acts={RequestWakeLock:function(){this._supportsWakeLock&&this._PostToDOMMaybeSync("request-wake-lock")},ReleaseWakeLock:function(){this._supportsWakeLock&&(this._isWakeLockActive=!1,this.PostToDOM("release-wake-lock"))}}
|
||
var _C242=self.C3
|
||
_C242.Plugins.PlatformInfo.Exps={Renderer:function(){var e=this._runtime.GetWebGLRenderer(),t="webgl"+e.GetWebGLVersionNumber()
|
||
return e.HasMajorPerformanceCaveat()&&(t+="-software"),t},RendererDetail:function(){return this._runtime.GetWebGLRenderer().GetUnmaskedRenderer()},DevicePixelRatio:function(){return self.devicePixelRatio},ScreenWidth:function(){return this._screenWidth},ScreenHeight:function(){return this._screenHeight},WindowInnerWidth:function(){return this._runtime.GetCanvasManager().GetLastWidth()},WindowInnerHeight:function(){return this._runtime.GetCanvasManager().GetLastHeight()},WindowOuterWidth:function(){return this._windowOuterWidth},WindowOuterHeight:function(){return this._windowOuterHeight},CanvasCssWidth:function(){return this._runtime.GetCanvasManager().GetCssWidth()},CanvasCssHeight:function(){return this._runtime.GetCanvasManager().GetCssHeight()},CanvasDeviceWidth:function(){return this._runtime.GetCanvasManager().GetDeviceWidth()},CanvasDeviceHeight:function(){return this._runtime.GetCanvasManager().GetDeviceHeight()},Downlink:function(){return navigator.connection?navigator.connection.downlink||0:0},DownlinkMax:function(){return navigator.connection?navigator.connection.downlinkMax||0:0},ConnectionType:function(){return navigator.connection?navigator.connection.type||"unknown":"unknown"},ConnectionEffectiveType:function(){return navigator.connection?navigator.connection.effectiveType||"unknown":"unknown"},ConnectionRTT:function(){return navigator.connection?navigator.connection.rtt||0:0},HardwareConcurrency:function(){return navigator.hardwareConcurrency||0},DeviceMemory:function(){return navigator.deviceMemory||0},SafeAreaInsetTop:function(){return this._safeAreaInset[0]},SafeAreaInsetRight:function(){return this._safeAreaInset[1]},SafeAreaInsetBottom:function(){return this._safeAreaInset[2]},SafeAreaInsetLeft:function(){return this._safeAreaInset[3]}}
|
||
var _C243=self.C3
|
||
_C243.Plugins.shadowlight=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._penumbraAsset=r._runtime.LoadImage({url:"penumbra.png"}),r._penumbraDrawable=null,r._runtime.AddLoadPromise(r._penumbraAsset.LoadToDrawable().then(function(e){return r._penumbraDrawable=e})),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetPenumbraDrawable",value:function(){return this._penumbraDrawable}}]),t}(_C243.SDKPluginBase)
|
||
var _C244=self.C3
|
||
_C244.Plugins.shadowlight.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}},{key:"LoadTextures",value:function(e){}},{key:"ReleaseTextures",value:function(){}}]),t}(_C244.SDKTypeBase)
|
||
var _C245=self.C3,LIGHT_HEIGHT=0,LIGHT_RADIUS=1,SHADOW_COLOR=2,CAST_FROM=3,TAG=4,ALL=0,SAME=1,DIFFERENT=2,TEMP_COLOR=[0,0,0],SHADOW_CAST_TARGETS=["all","same-tag","different-tag"],_tempColor6=_C245.New(_C245.Color),tempPoly=_C245.New(_C245.CollisionPoly),_tileCollRectCandidates=[],_tempRect10=_C245.New(_C245.Rect)
|
||
_C245.Plugins.shadowlight.Instance=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e)
|
||
var i=a.GetWorldInfo()
|
||
if(a._lightX=i.GetX(),a._lightY=i.GetY(),a._lightZ=0,a._maxExtrude=1e3,a._lightRadius=0,a._color=_C245.New(_C245.Color),a._castFrom=0,a._tag="",a._lastKnownX=i.GetX(),a._lastKnownY=i.GetY(),a._penumbraTexture=null,r){a._lightZ=r[LIGHT_HEIGHT],a._lightRadius=0===a._lightZ?r[LIGHT_RADIUS]:0
|
||
var s=r[SHADOW_COLOR]
|
||
a._color.setRgb(s[0],s[1],s[2]),a._castFrom=r[CAST_FROM],a._tag=r[TAG]}return a._shadowRenderer=_C245.New(self.ShadowRenderer),a.HandleWebGLContextLoss(),a._StartTicking2(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._ReleasePenumbraTexture(),this._shadowRenderer&&(this._shadowRenderer.Release(),this._shadowRenderer=null),this._color=null,_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SaveToJson",value:function(){return{lh:this._lightZ,lr:this._lightRadius,sc:this._color.toJSON(),cf:this._castFrom,t:this._tag}}},{key:"LoadFromJson",value:function(e){this._lightZ=e.lh,this._lightRadius=e.lr,this._color.setFromJSON(e.sc),this._castFrom=e.cf,this._tag=e.t}},{key:"_ReleasePenumbraTexture",value:function(){this._penumbraTexture&&(this._runtime.GetWebGLRenderer().DeleteTexture(this._penumbraTexture),this._penumbraTexture=null)}},{key:"OnWebGLContextLost",value:function(){this._penumbraTexture=null}},{key:"OnWebGLContextRestored",value:function(){}},{key:"_CastsFrom",value:function(e){switch(this._castFrom){case ALL:return!0
|
||
case SAME:return _C245.equalsNoCase(this._tag,e)
|
||
case DIFFERENT:return!_C245.equalsNoCase(this._tag,e)}}},{key:"Tick2",value:function(){var e=this.GetWorldInfo();(this._lastKnownX!==e.GetX()||this._lastKnownY!==e.GetY())&&(this._lightX=e.GetX(),this._lightY=e.GetY())
|
||
var t=_tempRect10
|
||
e.GetLayer().GetViewportForZ(e.GetTotalZElevation(),t)
|
||
var n=t.midX(),r=t.midY(),a=t.width()+this._maxExtrude,i=t.height()+this._maxExtrude;(n!==e.GetX()||r!==e.GetY()||a!==e.GetWidth()||i!==e.GetHeight())&&(e.SetXY(n,r),e.SetSize(a,i),e.SetBboxChanged()),this._lastKnownX=e.GetX(),this._lastKnownY=e.GetY(),this._maxExtrude=15*_C245.distanceTo(t.getLeft(),t.getTop(),t.getRight(),t.getBottom())}},{key:"_GetShadowCasterCandidates",value:function(){var e=this._runtime.GetPluginManager().GetBehaviorByConstructorFunction(_C245.Behaviors.shadowcaster)
|
||
if(!e)return[]
|
||
var t=this.GetWorldInfo(),n=t.GetLayer(),r=t.GetBoundingBox(),a=e.GetObjectClasses(),i=[],s=this._runtime.GetCollisionEngine()
|
||
return s.GetObjectClassesCollisionCandidates(n,a,r,i),_toConsumableArray(new Set(i))}},{key:"_UpdateShadowRendererParameters",value:function(){this._shadowRenderer.SetLightX(this._lightX),this._shadowRenderer.SetLightY(this._lightY),this._shadowRenderer.SetLightZ(this._lightZ),this._shadowRenderer.SetLightRadius(this._lightRadius),this._shadowRenderer.SetCastFrom(SHADOW_CAST_TARGETS[this._castFrom]),this._shadowRenderer.SetTag(this._tag),this._shadowRenderer.SetMaxExtrude(this._maxExtrude)}},{key:"_MaybeCreatePenumbraTexture",value:function(e){if(!this._penumbraTexture){var t=this.GetPlugin().GetPenumbraDrawable(),n=t.width,r=t.height,a=_C245.CreateCanvas(n,r),i=a.getContext("2d")
|
||
i.drawImage(t,0,0,n,r)
|
||
for(var s=i.getImageData(0,0,n,r),o=s.data,u=Math.floor(255*this._color.getR()),l=Math.floor(255*this._color.getG()),c=Math.floor(255*this._color.getB()),h=0,_=o.length;_>h;h+=4)o[h]=u,o[h+1]=l,o[h+2]=c
|
||
i.putImageData(s,0,0),this._penumbraTexture=e.CreateStaticTexture(a,{sampling:this._runtime.GetSampling()})}}},{key:"Draw",value:function(e){this._UpdateShadowRendererParameters(),this._MaybeCreatePenumbraTexture(e),this._shadowRenderer.SetPenumbraTexture(this._penumbraTexture)
|
||
var t=this.GetWorldInfo()
|
||
_tempColor6.copyRgb(this._color),_tempColor6.setA(t.GetOpacity()),_tempColor6.premultiply(),e.SetColor(_tempColor6),e.SetColorFillMode()
|
||
var n,r=_createForOfIteratorHelper(this._GetShadowCasterCandidates())
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
this._DrawInstanceShadow(e,a)}}catch(i){r.e(i)}finally{r.f()}}},{key:"_DrawInstanceShadow",value:function(e,t){var n=t.GetSavedDataMap()
|
||
if(n.get("shadowcasterEnabled")&&this._CastsFrom(n.get("shadowcasterTag"))){var r=n.get("shadowcasterHeight")
|
||
if(t.HasTilemap())this._DrawTilemapShadow(e,t,r)
|
||
else{var a=t.GetWorldInfo(),i=a.GetTransformedCollisionPoly()
|
||
tempPoly.copy(i),tempPoly.offset(a.GetX(),a.GetY()),this._shadowRenderer.RenderShadow(e,tempPoly,r)}}}},{key:"_DrawTilemapShadow",value:function(e,t,n){var r=_tileCollRectCandidates,a=this.GetWorldInfo().GetBoundingBox()
|
||
t.GetSdkInstance().GetCollisionRectCandidates(a,r)
|
||
for(var i=t.GetWorldInfo(),s=i.GetX(),o=i.GetY(),u=0,l=r.length;l>u;++u){var c=r[u],h=c.GetRect(),_=c.GetPoly()
|
||
_?(tempPoly.copy(_),tempPoly.offset(s+h.getLeft(),o+h.getTop())):tempPoly.setFromRect(h,-s,-o),this._shadowRenderer.RenderShadow(e,tempPoly,n)}_C245.clearArray(r)}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case LIGHT_HEIGHT:return this._lightZ
|
||
case LIGHT_RADIUS:return this._lightRadius
|
||
case SHADOW_COLOR:return TEMP_COLOR[0]=this._color.getR(),TEMP_COLOR[1]=this._color.getG(),TEMP_COLOR[2]=this._color.getB(),TEMP_COLOR.slice(0)
|
||
case CAST_FROM:return this._castFrom
|
||
case TAG:return this._tag}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case LIGHT_HEIGHT:this._lightZ=t
|
||
break
|
||
case LIGHT_RADIUS:this._lightRadius=t
|
||
break
|
||
case SHADOW_COLOR:this._color.setRgb(t[0],t[1],t[2])
|
||
break
|
||
case CAST_FROM:this._castFrom=t
|
||
break
|
||
case TAG:this._tag=t}}},{key:"SetPropertyColorOffsetValueByIndex",value:function(e,t,n,r){if(0!==t||0!==n||0!==r)switch(e){case SHADOW_COLOR:this._color.addRgb(t,n,r)}}}]),t}(_C245.SDKWorldInstanceBase)
|
||
var _C246=self.C3
|
||
_C246.Plugins.shadowlight.Cnds={}
|
||
var _C247=self.C3,_tempColor7=_C247.New(_C247.Color)
|
||
_C247.Plugins.shadowlight.Acts={SetLightHeight:function(e){this._lightZ!==e&&(this._lightZ=e,this._runtime.UpdateRender())},SetLightColor:function(e){_tempColor7.setFromRgbValue(e),_tempColor7.clamp(),this._color.equalsIgnoringAlpha(_tempColor7)||(this._color.copyRgb(_tempColor7),this._ReleasePenumbraTexture(),this._runtime.UpdateRender())},SetTag:function(e){this._tag!==e&&(this._tag=e,this._runtime.UpdateRender())},SetCastFrom:function(e){this._castFrom!==e&&(this._castFrom=e,this._runtime.UpdateRender())}}
|
||
var _C248=self.C3
|
||
_C248.Plugins.shadowlight.Exps={LightX:function(){return this._lightX},LightY:function(){return this._lightY},Tag:function(){return this._tag}}
|
||
var IsBackFace=function(e,t,n,r,a,i){var s=_C249.angleTo(n,r,a,i)-Math.PI/2,o=_C249.angleTo(n,r,e,t)
|
||
return _C249.angleDiff(o,s)>=Math.PI/2},SegmentIntersectionAt=function(e,t,n,r,a,i,s,o){var u=n-e,l=r-t,c=s-a,h=o-i,_=-c*l+u*h
|
||
if(0===_)return!1
|
||
var f=(-l*(e-a)+u*(t-i))/_
|
||
if(_=-c*l+u*h,0===_)return!1
|
||
var d=(c*(t-i)-h*(e-a))/_
|
||
return f>=0&&1>=f&&d>=0&&1>=d?(segmentIntersectX=e+d*u,segmentIntersectY=t+d*l,!0):!1},_C249=self.C3,segmentIntersectX=0,segmentIntersectY=0,posQuad=new _C249.Quad,uvQuad=new _C249.Quad,VALID_CASTFROM=new Set(["all","same-tag","different-tag"])
|
||
self.ShadowRenderer=function(){function e(){_classCallCheck(this,e),this._lightX=0,this._lightY=0,this._lightZ=0,this._lightRadius=0,this._castFrom="all",this._tag="",this._maxExtrude=1e3,this._backFaces1=[],this._backFaces2=[],this._umbraPts=[],this._cwEdge1=-1,this._cwEdge2=-1,this._acwEdge1=-1,this._acwEdge2=-1,this._acwUmbraRootX=0,this._acwUmbraRootY=0,this._cwUmbraRootX=0,this._cwUmbraRootY=0,this._acwUmbraProjX=0,this._acwUmbraProjY=0,this._cwUmbraProjX=0,this._cwUmbraProjY=0,this._polyMidX=0,this._polyMidY=0,this._penumbraTexture=null}return _createClass(e,[{key:"Release",value:function(){this.Reset(),this._backFaces1=null,this._backFaces2=null,this._umbraPts=null,this._penumbraTexture=null}},{key:"Reset",value:function(){_C249.clearArray(this._backFaces1),_C249.clearArray(this._backFaces2),_C249.clearArray(this._umbraPts),this._cwEdge1=-1,this._cwEdge2=-1,this._acwEdge1=-1,this._acwEdge2=-1,this._acwUmbraRootX=0,this._acwUmbraRootY=0,this._cwUmbraRootX=0,this._cwUmbraRootY=0,this._acwUmbraProjX=0,this._acwUmbraProjY=0,this._cwUmbraProjX=0,this._cwUmbraProjY=0,this._polyMidX=0,this._polyMidY=0}},{key:"SetLightX",value:function(e){this._lightX=e}},{key:"GetLightX",value:function(){return this._lightX}},{key:"SetLightY",value:function(e){this._lightY=e}},{key:"GetLightY",value:function(){return this._lightY}},{key:"SetLightZ",value:function(e){this._lightZ=e}},{key:"GetLightZ",value:function(){return this._lightZ}},{key:"SetLightRadius",value:function(e){0>e&&(e=0),this._lightRadius=e}},{key:"GetLightRadius",value:function(){return this._lightRadius}},{key:"SetCastFrom",value:function(e){if(!VALID_CASTFROM.has(e))throw Error("invalid cast-from")
|
||
this._castFrom=e}},{key:"GetCastFrom",value:function(){return this._castFrom}},{key:"SetTag",value:function(e){this._tag=e}},{key:"GetTag",value:function(){return this._tag}},{key:"SetMaxExtrude",value:function(e){this._maxExtrude=e}},{key:"GetMaxExtrude",value:function(){return this._maxExtrude}},{key:"SetPenumbraTexture",value:function(e){this._penumbraTexture=e}},{key:"RenderShadow",value:function(e,t,n){this.Reset(),this.CalculateShadow(t,n),e.SetColorFillMode(),this._umbraPts.length>=6&&e.ConvexPoly(this._umbraPts),this._lightRadius>0&&this._penumbraTexture&&(this._cwEdge1>-1&&this._cwEdge2>-1&&(e.SetTextureFillMode(),e.SetTexture(this._penumbraTexture),this.FillPenumbra(e,t,!0)),this._acwEdge1>-1&&this._acwEdge2>-1&&(e.SetTextureFillMode(),e.SetTexture(this._penumbraTexture),this.FillPenumbra(e,t,!1)))}},{key:"CalculateShadow",value:function(e,t){this._polyMidX=e.GetMidX(),this._polyMidY=e.GetMidY(),this._lightRadius>0?this._CalculateShadowWithRadius(e,t):this._CalculateShadowWithoutRadius(e,t)}},{key:"_CalculateShadowWithRadius",value:function(e,t){this._CalcBackFaces(e,-this._lightRadius),this._FindEdges(),_C249.shallowAssignArray(this._backFaces2,this._backFaces1),this._cwEdge2=this._cwEdge1,this._acwEdge2=this._acwEdge1,_C249.clearArray(this._backFaces1),this._cwEdge1=-1,this._acwEdge1=-1,this._CalcBackFaces(e,this._lightRadius),this._FindEdges(),-1!==this._cwEdge1&&-1!==this._acwEdge1&&-1!==this._cwEdge2&&-1!==this._acwEdge2&&this._CalcUmbraWithRadius(e,t)}},{key:"_CalculateShadowWithoutRadius",value:function(e,t){this._CalcBackFaces(e,0),this._FindEdges()
|
||
for(var n=e.GetPointsArray(),r=0,a=n.length;a>r;r+=2){var i=n[r],s=n[r+1]
|
||
this._CalcShadowSegment(r/2,this._lightX,this._lightY,i,s,t)}}},{key:"_CalcBackFaces",value:function(e,t){var n=this._lightX,r=this._lightY,a=n,i=r,s=0
|
||
0!==t&&(s=_C249.angleTo(n,r,this._polyMidX,this._polyMidY)-Math.PI/2)
|
||
for(var o=e.GetPointsArray(),u=0,l=o.length;l>u;u+=2){var c=u+2
|
||
c===l&&(c=0)
|
||
var h=o[u],_=o[u+1],f=o[c],d=o[c+1]
|
||
0!==t&&(a=n+Math.cos(s)*t,i=r+Math.sin(s)*t),this._backFaces1.push(IsBackFace(a,i,h,_,f,d))}}},{key:"_GetBackFaceAt",value:function(e){return e%=this._backFaces1.length,0>e&&(e+=this._backFaces1.length),this._backFaces1[e]}},{key:"_FindEdges",value:function(){for(var e=0,t=this._backFaces1.length;t>e;++e){var n=this._backFaces1[e],r=this._GetBackFaceAt(e-1)
|
||
r&&!n&&(this._cwEdge1=e),!r&&n&&(this._acwEdge1=e)}}},{key:"_CalcShadowSegment",value:function(e,t,n,r,a,i){var s=this._backFaces1[e],o=this._GetBackFaceAt(e-1),u=e===this._cwEdge1,l=e===this._acwEdge1,c=0,h=0
|
||
if(s||o){var _=_C249.angleTo(t,n,r,a),f=_C249.distanceTo(t,n,r,a),d=this._CalculateExtrusion(t,n,r,a,i)
|
||
c=t+Math.cos(_)*(f+d),h=n+Math.sin(_)*(f+d)}else c=r,h=a
|
||
l&&(this._umbraPts.push(r),this._umbraPts.push(a)),this._umbraPts.push(c),this._umbraPts.push(h),u&&(this._umbraPts.push(r),this._umbraPts.push(a))}},{key:"_CalculateExtrusion",value:function(e,t,n,r,a){if(a>=this._lightZ)return this._maxExtrude
|
||
if(0>=a)return 0
|
||
var i=_C249.distanceTo(e,t,n,r),s=a*(i/(this._lightZ-a))
|
||
return _C249.clamp(s,0,this._maxExtrude)}},{key:"_CalcUmbraWithRadius",value:function(e,t){for(var n=this._cwEdge2,r=0,a=0,i=e.GetPointCount(),s=e.GetPointsArray();;++n){n===i&&(n=0)
|
||
var o=2*n
|
||
if(r=s[o],a=s[o+1],this._umbraPts.push(r),this._umbraPts.push(a),n===this._acwEdge1)break}var u=this._lightRadius,l=r,c=a,h=_C249.angleTo(this._lightX,this._lightY,this._polyMidX,this._polyMidY),_=this._lightX+Math.cos(h-Math.PI/2)*u,f=this._lightY+Math.sin(h-Math.PI/2)*u,d=_C249.angleTo(_,f,l,c),p=_C249.distanceTo(_,f,l,c),v=_+Math.cos(d)*(p+this._maxExtrude),m=f+Math.sin(d)*(p+this._maxExtrude),y=2*this._cwEdge2,g=s[y],C=s[y+1]
|
||
h=_C249.angleTo(this._lightX,this._lightY,this._polyMidX,this._polyMidY)
|
||
var S=this._lightX+Math.cos(h+Math.PI/2)*u,k=this._lightY+Math.sin(h+Math.PI/2)*u
|
||
d=_C249.angleTo(S,k,g,C),p=_C249.distanceTo(S,k,g,C)
|
||
var I=S+Math.cos(d)*(p+this._maxExtrude),T=k+Math.sin(d)*(p+this._maxExtrude)
|
||
this._acwUmbraRootX=l,this._acwUmbraRootY=c,this._cwUmbraRootX=g,this._cwUmbraRootY=C,SegmentIntersectionAt(l,c,v,m,g,C,I,T)?(this._umbraPts.push(segmentIntersectX),this._umbraPts.push(segmentIntersectY),this._acwUmbraProjX=segmentIntersectX,this._acwUmbraProjY=segmentIntersectY,this._cwUmbraProjX=segmentIntersectX,this._cwUmbraProjY=segmentIntersectY):(this._umbraPts.push(v),this._umbraPts.push(m),this._umbraPts.push(I),this._umbraPts.push(T),this._acwUmbraProjX=v,this._acwUmbraProjY=m,this._cwUmbraProjX=I,this._cwUmbraProjY=T)}},{key:"FillPenumbra",value:function(e,t,n){var r=this._lightX,a=this._lightY,i=t.GetPointsArray(),s=0,o=0,u=0,l=0
|
||
n?(s=this._cwUmbraRootX,o=this._cwUmbraRootY,u=this._cwUmbraProjX,l=this._cwUmbraProjY):(s=this._acwUmbraRootX,o=this._acwUmbraRootY,u=this._acwUmbraProjX,l=this._acwUmbraProjY)
|
||
var c=this._lightRadius,h=_C249.angleTo(r,a,this._polyMidX,this._polyMidY),_=Math.PI/2
|
||
n&&(_=-_),r+=Math.cos(h+_)*c,a+=Math.sin(h+_)*c
|
||
var f=!1,d=0,p=0
|
||
n?(f=this._cwEdge1!==this._cwEdge2,f&&(d=i[2*this._cwEdge1],p=i[2*this._cwEdge1+1])):(f=this._acwEdge1!==this._acwEdge2,f&&(d=i[2*this._acwEdge2],p=i[2*this._acwEdge2+1])),h=f?_C249.angleTo(d,p,s,o):_C249.angleTo(r,a,s,o)
|
||
var v=s+Math.cos(h)*this._maxExtrude,m=o+Math.sin(h)*this._maxExtrude,y=0,g=0,C=0,S=0,k=1
|
||
if(f){var I=_C249.angleTo(r,a,d,p)
|
||
y=d+Math.cos(I)*this._maxExtrude,g=p+Math.sin(I)*this._maxExtrude
|
||
var T=h,G=_C249.angleTo(s,o,u,l)
|
||
C=_C249.angleDiff(T,I)/_C249.angleDiff(G,I)
|
||
var b=_C249.distanceTo(d,p,s,o),A=b/(b+this._maxExtrude),E=_C249.angleTo(0,1,C,0),R=_C249.distanceTo(0,1,C,0)
|
||
S+=Math.cos(E)*A*R,k+=Math.sin(E)*A*R}posQuad.set(s,o,u,l,v,m,v,m),uvQuad.set(S,k,1,0,C,0,C,0),e.Quad4(posQuad,uvQuad),f&&(posQuad.set(d,p,v,m,y,g,y,g),uvQuad.set(0,1,C,0,0,0,0,0),e.Quad4(posQuad,uvQuad))}}]),e}()
|
||
var _C250=self.C3,_DOM_COMPONENT_ID12="button"
|
||
_C250.Plugins.Button=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e,_DOM_COMPONENT_ID12),r.AddElementMessageHandler("click",function(e,t){return e._OnClick(t)}),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C250.SDKDOMPluginBase)
|
||
var _C251=self.C3
|
||
_C251.Plugins.Button.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C251.SDKTypeBase)
|
||
var _C252=self.C3,_TYPE2=0,_TEXT2=1,_TOOLTIP3=2,_INITIALLY_VISIBLE7=3,_ENABLE4=4,_AUTO_FONT_SIZE=5,CHECKED=6,_ID4=7,_DOM_COMPONENT_ID13="button"
|
||
_C252.Plugins.Button.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e,_DOM_COMPONENT_ID13),a._text="OK",a._isCheckbox=!1,a._isChecked=!1,a._title="",a._id="",a._isEnabled=!0,a._autoFontSize=!0,r&&(a._isCheckbox=1===r[_TYPE2],a._text=r[_TEXT2],a._title=r[_TOOLTIP3],a.GetWorldInfo().SetVisible(r[_INITIALLY_VISIBLE7]),a._isEnabled=r[_ENABLE4],a._autoFontSize=r[_AUTO_FONT_SIZE],a._isChecked=r[CHECKED],a._id=r[_ID4]),a.CreateElement({id:a._id}),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetElementState",value:function(){return{text:this._text,isCheckbox:this._isCheckbox,isChecked:this._isChecked,title:this._title,isVisible:this.GetWorldInfo().IsVisible(),isEnabled:this._isEnabled}}},{key:"_OnClick",value:function(){function e(e){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return this._isChecked=e.isChecked,this.GetScriptInterface().dispatchEvent(_C252.New(_C252.Event,"click",!0)),t.next=4,this.TriggerAsync(_C252.Plugins.Button.Cnds.OnClicked)
|
||
case 4:case"end":return t.stop()}},n,this)}))
|
||
return e}()},{key:"_SetText",value:function(e){this._text!==e&&(this._text=e,this.UpdateElementState())}},{key:"_GetText",value:function(){return this._text}},{key:"_SetTooltip",value:function(e){this._title!==e&&(this._title=e,this.UpdateElementState())}},{key:"_GetTooltip",value:function(){return this._title}},{key:"_SetEnabled",value:function(e){e=!!e,this._isEnabled!==e&&(this._isEnabled=e,this.UpdateElementState())}},{key:"_IsEnabled",value:function(){return this._isEnabled}},{key:"_SetChecked",value:function(e){this._isCheckbox&&(e=!!e,this._isChecked!==e&&(this._isChecked=e,this.UpdateElementState()))}},{key:"_IsChecked",value:function(){return this._isChecked}},{key:"Draw",value:function(e){}},{key:"SaveToJson",value:function(){return{text:this._text,checked:this._isChecked,title:this._title,enabled:this._isEnabled}}},{key:"LoadFromJson",value:function(e){this._text=e.text,this._isChecked=e.checked,this._title=e.title,this._isEnabled=e.enabled,this.UpdateElementState()}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case _TEXT2:return this._text
|
||
case _TOOLTIP3:return this._title
|
||
case _ENABLE4:return this._isEnabled
|
||
case _AUTO_FONT_SIZE:return this._autoFontSize
|
||
case CHECKED:return this._isChecked
|
||
case _ID4:return this._id}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case _TEXT2:if(this._text===t)return
|
||
this._text=t,this.UpdateElementState()
|
||
break
|
||
case _TOOLTIP3:if(this._title===t)return
|
||
this._title=t,this.UpdateElementState()
|
||
break
|
||
case _ENABLE4:if(this._isEnabled===!!t)return
|
||
this._isEnabled=!!t,this.UpdateElementState()
|
||
break
|
||
case _AUTO_FONT_SIZE:this._autoFontSize=!!t
|
||
break
|
||
case CHECKED:if(this._isChecked===!!t)return
|
||
this._isChecked=!!t,this.UpdateElementState()
|
||
break
|
||
case _ID4:if(this._id===!!t)return
|
||
this._id=t,this.UpdateElementState()}}},{key:"GetDebuggerProperties",value:function(){var e=this,t=_C252.Plugins.Button.Acts,n="plugins.button"
|
||
return[{title:n+".name",properties:[{name:n+".properties.text.name",value:this._text,onedit:function(n){return e.CallAction(t.SetText,n)}},{name:n+".properties.enabled.name",value:this._isEnabled,onedit:function(n){return e.CallAction(t.SetEnabled,n)}},{name:n+".properties.checked.name",value:this._isChecked,onedit:function(n){return e.CallAction(t.SetChecked,n)}}]}]}},{key:"GetScriptInterfaceClass",value:function(){return self.IButtonInstance}}]),t}(_C252.SDKDOMInstanceBase)
|
||
var _map15=new WeakMap
|
||
self.IButtonInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map15.set(_assertThisInitialized(e),self.IInstance._GetInitInst().GetSdkInstance()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"text",get:function(){return _map15.get(this)._GetText()},set:function(e){_map15.get(this)._SetText(e)}},{key:"tooltip",get:function(){return _map15.get(this)._GetTooltip()},set:function(e){_map15.get(this)._SetTooltip(e)}},{key:"isEnabled",get:function(){return _map15.get(this)._IsEnabled()},set:function(e){_map15.get(this)._SetEnabled(e)}},{key:"isChecked",get:function(){return _map15.get(this)._IsChecked()},set:function(e){_map15.get(this)._SetChecked(e)}}]),t}(self.IDOMInstance)
|
||
var _C253=self.C3
|
||
_C253.Plugins.Button.Cnds={OnClicked:function(){return!0},IsChecked:function(){return this._isChecked},CompareText:function(e,t){return t?this._text===e:_C253.equalsNoCase(this._text,e)}}
|
||
var _C254=self.C3
|
||
_C254.Plugins.Button.Acts={SetText:function(e){this._SetText(e)},SetTooltip:function(e){this._SetTooltip(e)},SetChecked:function(e){this._SetChecked(0!==e)},ToggleChecked:function(){this._isCheckbox&&(this._isChecked=!this._isChecked,this.UpdateElementState())}}
|
||
var _C255=self.C3
|
||
_C255.Plugins.Button.Exps={Text:function(){return this._text}}
|
||
var _C256=self.C3,PF_OBSTACLE=Math.pow(2,26)-1,MapData=function(){function e(){_classCallCheck(this,e),this._hcells=0,this._vcells=0,this._cells=null}return _createClass(e,[{key:"SetData",value:function(e,t,n){this._hcells=e,this._vcells=t,this._cells=n}},{key:"UpdateRegion",value:function(e,t,n,r,a){var i=this._cells
|
||
if(i)for(var s=0;n>s;++s)i[e+s].set(a[s],t)}},{key:"At",value:function(e,t){return 0>e||0>t||e>=this._hcells||t>=this._vcells?PF_OBSTACLE:this._cells[e][t]}}]),e}()
|
||
_C256.Behaviors.Pathfinding=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._mapState=new Map,r._runtime.AddLoadPromise(r._runtime.AddJobWorkerScripts(["redblackset.js","pathfind.js"])),r._runtime.Dispatcher().addEventListener("beforelayoutchange",function(){return r._OnBeforeLayoutChange()}),r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetMapKey",value:function(e,t){return e+","+t}},{key:"GetPathfinderState",value:function(e){var t=this._mapState.get(e)
|
||
return t||(t={isReady:!1,mapData:new MapData,regenerate:!1,regenerateRegions:[],regeneratePromise:null,regenerateResolve:null},this._mapState.set(e,t)),t}},{key:"UpdateCellData",value:function(e,t,n,r,a){this._runtime.BroadcastJob("PFCellData",{mapKey:e,hcells:t,vcells:n,cellData:r,diagonals:a})
|
||
var i=this.GetPathfinderState(e)
|
||
i.isReady=!0,i.mapData.SetData(t,n,r),i.regenerate=!1}},{key:"UpdateRegion",value:function(e,t,n,r,a,i){this._runtime.BroadcastJob("PFUpdateRegion",{mapKey:e,cx1:t,cy1:n,lenx:r,leny:a,cellData:i}),this.GetPathfinderState(e).mapData.UpdateRegion(t,n,r,a,i)}},{key:"FindPath",value:function(e,t,n,r,a){return this._runtime.AddJob("PFFindPath",{mapKey:e,cellX:t,cellY:n,destCellX:r,destCellY:a})}},{key:"SetDiagonalsEnabled",value:function(e,t){this._runtime.BroadcastJob("PFSetDiagonals",{mapKey:e,diagonals:t})}},{key:"_OnBeforeLayoutChange",value:function(){var e,t=_createForOfIteratorHelper(this._mapState.values())
|
||
try{for(t.s();!(e=t.n()).done;){var n=e.value
|
||
n.isReady=!1,n.mapData.SetData(0,0,null),n.regenerate=!0}}catch(r){t.e(r)}finally{t.f()}this._runtime.BroadcastJob("PFResetAllCellData")}}]),t}(_C256.SDKBehaviorBase)
|
||
var _C257=self.C3
|
||
_C257.Behaviors.Pathfinding.Type=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._obstacleTypes=[],r._costTypes=[],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}},{key:"GetObstacleTypes",value:function(){return this._obstacleTypes}},{key:"GetCostTypes",value:function(){return this._costTypes}}]),t}(_C257.SDKBehaviorTypeBase)
|
||
var _C258=self.C3,CELL_SIZE=0,CELL_BORDER=1,OBSTACLES=2,MAX_SPEED=3,ACCELERATION=4,DEACCELERATION=5,ROTATE_SPEED=6,ROTATE_ENABLE=7,DIAGONALS_ENABLE=8,_ENABLE5=9,PF_CLEAR=0,_PF_OBSTACLE=Math.pow(2,26)-1,_tempRect11=new _C258.Rect,candidates=[]
|
||
_C258.Behaviors.Pathfinding.Instance=function(e){function t(e,r){var a
|
||
_classCallCheck(this,t),a=n.call(this,e)
|
||
var i=a.GetWorldInfo()
|
||
a._cellSize=30,a._cellBorder=-1,a._obstacles=0,a._maxSpeed=200,a._acc=1e3,a._dec=2e3,a._av=_C258.toRadians(135),a._isRotateEnabled=!0,a._isDiagonalsEnabled=!0,a._isEnabled=!0,a._isMoving=!1,a._movingFromStopped=!1,a._firstTickMovingWhileMoving=!1,a._hasPath=!1,a._moveNode=0,a._a=i.GetAngle(),a._lastKnownAngle=i.GetAngle(),a._s=0,a._rabbitX=0,a._rabbitY=0,a._rabbitA=0,a._myHcells=0,a._myVcells=0,a._myPath=[],a._delayFindPath=!1,a._delayFindPathResolves=[],a._delayPathX=0,a._delayPathY=0,a._isDestroyed=!1,a._isCalculating=!1,a._calcPathX=0,a._calcPathY=0,a._isFirstRun=!0,r&&(a._cellSize=r[CELL_SIZE],a._cellBorder=r[CELL_BORDER],a._obstacles=r[OBSTACLES],a._maxSpeed=r[MAX_SPEED],a._acc=r[ACCELERATION],a._dec=r[DEACCELERATION],a._av=_C258.toRadians(r[ROTATE_SPEED]),a._isRotateEnabled=!!r[ROTATE_ENABLE],a._isDiagonalsEnabled=!!r[DIAGONALS_ENABLE],a._isEnabled=!!r[_ENABLE5])
|
||
var s=i.GetLayout()
|
||
a._myHcells=Math.ceil(s.GetWidth()/a._cellSize),a._myVcells=Math.ceil(s.GetHeight()/a._cellSize)
|
||
var o=a._runtime.Dispatcher()
|
||
return a._disposables=new _C258.CompositeDisposable(_C258.Disposable.From(o,"afterload",function(e){return a._OnAfterLoad()})),a._cellSize<3&&(a._cellSize=3),a._isEnabled&&(a._StartTicking(),a._StartTicking2()),a.GetBehavior().SetDiagonalsEnabled(a.GetMapKey(),a._isDiagonalsEnabled),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._isDestroyed=!0,_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"GetMapKey",value:function(){return this.GetBehavior().GetMapKey(this._cellSize,this._cellBorder)}},{key:"GetMyState",value:function(){return this.GetBehavior().GetPathfinderState(this.GetMapKey())}},{key:"SaveToJson",value:function(){var e={cs:this._cellSize,cb:this._cellBorder,ms:this._maxSpeed,acc:this._acc,dec:this._dec,av:this._av,re:this._isRotateEnabled,de:this._isDiagonalsEnabled,o:this._obstacles,im:this._isMoving,mfs:this._movingFromStopped,ftmwm:this._firstTickMovingWhileMoving,hp:this._hasPath,mn:this._moveNode,a:this._a,lka:this._lastKnownAngle,s:this._s,rx:this._rabbitX,ry:this._rabbitY,ra:this._rabbitA,hc:this._myHcells,vc:this._myVcells,p:this._myPath,e:this._isEnabled,fr:this._isFirstRun,obs:this.GetSdkType().GetObstacleTypes().map(function(e){return e.GetSID()}),costs:this.GetSdkType().GetCostTypes().map(function(e){return{sid:e.objectClass.GetSID(),cost:e.cost}})}
|
||
return this._isCalculating?(e.dfp=!0,e.dfx=this._calcPathX,e.dfy=this._calcPathY):(e.dfp=this._delayFindPath,e.dfx=this._delayPathX,e.dfy=this._delayPathY),e}},{key:"LoadFromJson",value:function(e){this._cellSize=e.cs,this._cellBorder=e.cb,this._maxSpeed=e.ms,this._acc=e.acc,this._dec=e.dec,this._av=e.av,this._isRotateEnabled=e.re,this._isDiagonalsEnabled=e.de,this._obstacles=e.o,this._isMoving=e.im,this._movingFromStopped=e.mfs,this._firstTickMovingWhileMoving=e.ftmwm,this._hasPath=e.hp,this._moveNode=e.mn,this._a=e.a,this._lastKnownAngle=e.lka,this._s=e.s,this._rabbitX=e.rx,this._rabbitY=e.ry,this._rabbitA=e.ra,this._myHcells=e.hc,this._myVcells=e.vc,this._myPath=e.p,this._SetEnabled(e.e),this._isFirstRun=e.fr,this._delayFindPath=e.dfp,_C258.clearArray(this._delayFindPathResolves),this._delayPathX=e.dfx,this._delayPathY=e.dfy
|
||
var t=this.GetSdkType().GetObstacleTypes()
|
||
_C258.clearArray(t)
|
||
var n,r=_createForOfIteratorHelper(e.obs)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value,i=this._runtime.GetObjectClassBySID(a)
|
||
i&&t.push(i)}}catch(s){r.e(s)}finally{r.f()}var o=this.GetSdkType().GetCostTypes()
|
||
_C258.clearArray(o)
|
||
var u,l=_createForOfIteratorHelper(o)
|
||
try{for(l.s();!(u=l.n()).done;){var c=u.value,h=this._runtime.GetObjectClassBySID(c.sid)
|
||
h&&o.push({objectClass:h,cost:c.cost})}}catch(s){l.e(s)}finally{l.f()}this._cellSize<3&&(this._cellSize=3),this.GetBehavior().SetDiagonalsEnabled(this.GetMapKey(),this._isDiagonalsEnabled)}},{key:"_OnAfterLoad",value:function(){this.GetMyState().regenerate=!0}},{key:"Tick",value:function(){if(this._isEnabled&&this._isMoving){var e=this._runtime.GetDt(this._inst),t=this._inst.GetWorldInfo()
|
||
this._isRotateEnabled&&t.GetAngle()!==this._lastKnownAngle&&(this._a=t.GetAngle())
|
||
var n=this._myPath,r=Math.min(.4*this._maxSpeed,2*Math.abs(t.GetWidth())),a=Math.max(1.5*this._s,30),i=0,s=0
|
||
if(this._moveNode<n.length){i=n[this._moveNode].x,s=n[this._moveNode].y
|
||
var o=_C258.distanceTo(this._rabbitX,this._rabbitY,i,s)
|
||
3*a*e>o&&(this._moveNode++,this._rabbitX=i,this._rabbitY=s,this._moveNode<n.length&&(i=n[this._moveNode].x,s=n[this._moveNode].y))}else i=n[n.length-1].x,s=n[n.length-1].y
|
||
this._rabbitA=_C258.angleTo(this._rabbitX,this._rabbitY,i,s)
|
||
var u=_C258.distanceTo(t.GetX(),t.GetY(),this._rabbitX,this._rabbitY)
|
||
if(r>u&&this._moveNode<n.length){var l=0
|
||
this._firstTickMovingWhileMoving?(l=r,this._firstTickMovingWhileMoving=!1):l=a*e,this._rabbitX+=Math.cos(this._rabbitA)*l,this._rabbitY+=Math.sin(this._rabbitA)*l}var c=_C258.angleTo(t.GetX(),t.GetY(),this._rabbitX,this._rabbitY),h=_C258.angleDiff(this._a,c),_=_C258.distanceTo(t.GetX(),t.GetY(),n[n.length-1].x,n[n.length-1].y),f=this._maxSpeed*this._maxSpeed/(2*this._dec)
|
||
if(u>1){this._a=_C258.angleRotate(this._a,c,this._av*e)
|
||
var d=0
|
||
if(_C258.toDegrees(h)<=.5)d=this._maxSpeed
|
||
else if(_C258.toDegrees(h)>=120||this._movingFromStopped&&0===this._moveNode)this._movingFromStopped=!0
|
||
else{var p=h/this._av,v=_C258.distanceTo(t.GetX(),t.GetY(),this._rabbitX,this._rabbitY),m=v/(2*Math.sin(h)),y=m*h
|
||
d=_C258.clamp(y/p,0,this._maxSpeed)}f>_&&(d=Math.min(d,_/f*this._maxSpeed+this._maxSpeed/40)),this._s+=this._acc*e,this._s>d&&(this._s=d)}return t.OffsetXY(Math.cos(this._a)*this._s*e,Math.sin(this._a)*this._s*e),this._isRotateEnabled&&(t.SetAngle(this._a),this._lastKnownAngle=t.GetAngle()),t.SetBboxChanged(),this._moveNode===n.length&&_C258.distanceTo(t.GetX(),t.GetY(),i,s)<Math.max(3*this._s*e,10)?(this._isMoving=!1,this._hasPath=!1,this._moveNode=0,this._s=0,this.DebugTrigger(_C258.Behaviors.Pathfinding.Cnds.OnArrived)):void 0}}},{key:"Tick2",value:function(){this._isEnabled&&(this._MaybeGenerateMap(),this._DoDelayFindPath())}},{key:"_RegeneratePromise",value:function(){var e=this.GetMyState()
|
||
return e.regeneratePromise||(e.regeneratePromise=new Promise(function(t){return e.regenerateResolve=t})),e.regeneratePromise}},{key:"_MaybeGenerateMap",value:function(){var e=this.GetMyState();(!e.isReady||e.regenerate||e.regenerateRegions.length)&&(!e.isReady||e.regenerate?this._GenerateFullMap():e.regenerateRegions.length&&this._RegenerateRegions(e.regenerateRegions),_C258.clearArray(e.regenerateRegions),e.regenerateResolve&&e.regenerateResolve(),e.regeneratePromise=null,e.regenerateResolve=null)}},{key:"_GenerateFullMap",value:function(){var e=this,t=this.GetWorldInfo().GetLayout()
|
||
this._myHcells=Math.ceil(t.GetWidth()/this._cellSize),this._myVcells=Math.ceil(t.GetHeight()/this._cellSize)
|
||
for(var n=_C258.MakeFilledArray(this._myHcells,function(){return new Uint32Array(e._myVcells)}),r=this._myVcells,a=0,i=this._myHcells;i>a;++a)for(var s=0;r>s;++s)n[a][s]=this._QueryCellCollision(a,s)
|
||
this.GetBehavior().UpdateCellData(this.GetMapKey(),this._myHcells,this._myVcells,n,this._isDiagonalsEnabled)}},{key:"_AddRegenerateRegion",value:function(e,t,n,r){var a=this._cellBorder,i=this._cellSize,s=this._myHcells,o=this._myVcells,u=Math.min(e,n)-a,l=Math.min(t,r)-a,c=Math.max(e,n)+a,h=Math.max(t,r)+a,_=Math.max(Math.floor(u/i),0),f=Math.max(Math.floor(l/i),0),d=Math.min(Math.ceil(c/i),s),p=Math.min(Math.ceil(h/i),o)
|
||
return _>=d||f>=p?!1:(this.GetMyState().regenerateRegions.push([_,f,d,p]),!0)}},{key:"_RegenerateRegions",value:function(e){var t,n=_createForOfIteratorHelper(e)
|
||
try{for(n.s();!(t=n.n()).done;){var r=_slicedToArray(t.value,4),a=r[0],i=r[1],s=r[2],o=r[3]
|
||
this._RegenerateRegion(a,i,s,o)}}catch(u){n.e(u)}finally{n.f()}}},{key:"_RegenerateRegion",value:function(e,t,n,r){for(var a=n-e,i=r-t,s=_C258.MakeFilledArray(a,function(){return new Uint32Array(i)}),o=0;a>o;++o)for(var u=0;i>u;++u)s[o][u]=this._QueryCellCollision(e+o,t+u)
|
||
this.GetBehavior().UpdateRegion(this.GetMapKey(),e,t,a,i,s)}},{key:"_QueryCellCollision",value:function(e,t){var n=this.GetWorldInfo(),r=n.GetLayer(),a=this._cellSize,i=this._cellBorder,s=this._runtime.GetCollisionEngine()
|
||
if(_tempRect11.set(e*a-i,t*a-i,(e+1)*a+i,(t+1)*a+i),0===this._obstacles){if(s.TestRectOverlapSolid(_tempRect11))return _PF_OBSTACLE}else{s.GetObjectClassesCollisionCandidates(r,this._sdkType.GetObstacleTypes(),_tempRect11,candidates)
|
||
for(var o=0,u=candidates.length;u>o;++o)if(s.TestRectOverlap(_tempRect11,candidates[o]))return _C258.clearArray(candidates),_PF_OBSTACLE
|
||
_C258.clearArray(candidates)}var l,c=0,h=this._sdkType.GetCostTypes(),_=_createForOfIteratorHelper(h)
|
||
try{for(_.s();!(l=_.n()).done;){var f=l.value,d=f.objectClass,p=f.cost
|
||
s.GetCollisionCandidates(r,d,_tempRect11,candidates)
|
||
for(var v=0,m=candidates.length;m>v;++v)s.TestRectOverlap(_tempRect11,candidates[v])&&(c+=p)
|
||
_C258.clearArray(candidates)}}catch(y){_.e(y)}finally{_.f()}return Math.min(c,_PF_OBSTACLE)}},{key:"_DoDelayFindPath",value:function(){function e(){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(){var e,t,r,a,i
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(!this._delayFindPath||this._isDestroyed){n.next=9
|
||
break}return this._delayFindPath=!1,e=this._delayFindPathResolves,this._delayFindPathResolves=[],t=this.GetWorldInfo(),n.next=7,this._DoFindPath(t.GetX(),t.GetY(),this._delayPathX,this._delayPathY)
|
||
case 7:r=_createForOfIteratorHelper(e)
|
||
try{for(r.s();!(a=r.n()).done;)(i=a.value)()}catch(s){r.e(s)}finally{r.f()}case 9:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_FindNearestNonObstacleCell",value:function(e,t,n){for(var r=1/0,a=0,i=0,s=0,o=this._myHcells;o>s;++s)for(var u=0,l=this._myVcells;l>u;++u)if(e.At(s,u)!==_PF_OBSTACLE){var c=t-s,h=n-u,_=c*c+h*h
|
||
r>_&&(r=_,a=s,i=u)}return[a,i]}},{key:"_DoFindPath",value:function(){function e(e,n,r,a){return t.apply(this,arguments)}var t=_asyncToGenerator(_regeneratorRuntime().mark(function n(e,t,r,a){var i,s,o,u,l,c,h,_,f,d,p
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(i=this.GetMyState(),i.isReady){n.next=3
|
||
break}return n.abrupt("return",!1)
|
||
case 3:return s=i.mapData,this._isCalculating=!0,this._calcPathX=r,this._calcPathY=a,o=this._cellSize,u=Math.floor(e/o),l=Math.floor(t/o),c=Math.floor(r/o),h=Math.floor(a/o),s.At(c,h)===_PF_OBSTACLE&&(_=this._FindNearestNonObstacleCell(s,c,h),f=_slicedToArray(_,2),c=f[0],h=f[1]),n.next=15,this.GetBehavior().FindPath(this.GetMapKey(),u,l,c,h)
|
||
case 15:if(d=n.sent,!this._isDestroyed){n.next=18
|
||
break}return n.abrupt("return")
|
||
case 18:if(this._isCalculating=!1,this._moveNode=0,null!==d){n.next=28
|
||
break}return _C258.clearArray(this._myPath),this._hasPath=!1,this._isMoving=!1,n.next=26,this.TriggerAsync(_C258.Behaviors.Pathfinding.Cnds.OnFailedToFindPath)
|
||
case 26:n.next=33
|
||
break
|
||
case 28:return p=this._cellSize,this._myPath=d.map(function(e){return{x:(e.x+.5)*p,y:(e.y+.5)*p}}),this._hasPath=this._myPath.length>0,n.next=33,this.TriggerAsync(_C258.Behaviors.Pathfinding.Cnds.OnPathFound)
|
||
case 33:this._DoDelayFindPath()
|
||
case 34:case"end":return n.stop()}},n,this)}))
|
||
return e}()},{key:"_GetPath",value:function(){return this._myPath}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case CELL_SIZE:return this._cellSize
|
||
case CELL_BORDER:return this._cellBorder
|
||
case OBSTACLES:return this._obstacles
|
||
case MAX_SPEED:return this._maxSpeed
|
||
case ACCELERATION:return this._acc
|
||
case DEACCELERATION:return this._dec
|
||
case ROTATE_SPEED:return _C258.toDegrees(this._av)
|
||
case ROTATE_ENABLE:return this._isRotateEnabled
|
||
case DIAGONALS_ENABLE:return this._isDiagonalsEnabled
|
||
case _ENABLE5:return this._isEnabled}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case CELL_SIZE:this._cellSize=t,this._cellSize<3&&(this._cellSize=3)
|
||
break
|
||
case CELL_BORDER:this._cellBorder=t
|
||
break
|
||
case OBSTACLES:this._obstacles=t
|
||
break
|
||
case MAX_SPEED:this._maxSpeed=t
|
||
break
|
||
case ACCELERATION:this._acc=t
|
||
break
|
||
case DEACCELERATION:this._dec=t
|
||
break
|
||
case ROTATE_SPEED:this._av=_C258.toRadians(t)
|
||
break
|
||
case ROTATE_ENABLE:this._isRotateEnabled=!!t
|
||
break
|
||
case DIAGONALS_ENABLE:this._isDiagonalsEnabled=!!t,this.GetBehavior().SetDiagonalsEnabled(this.GetMapKey(),this._isDiagonalsEnabled)
|
||
break
|
||
case _ENABLE5:this._SetEnabled(t)}}},{key:"_SetEnabled",value:function(e){this._isEnabled=!!e,this._isEnabled?(this._StartTicking(),this._StartTicking2()):(this._StopTicking(),this._StopTicking2())}},{key:"GetDebuggerProperties",value:function(){var e=this,t="behaviors.pathfinding"
|
||
return[{title:"$"+this.GetBehaviorType().GetName(),properties:[{name:t+".debugger.has-path",value:this._hasPath},{name:t+".debugger.is-calculating-path",value:this._isCalculating},{name:t+".debugger.is-moving",value:this._isMoving},{name:t+".debugger.speed",value:this._isMoving?this._s:0,onedit:function(t){return e._s=t}},{name:t+".debugger.angle-of-motion",value:_C258.toDegrees(this._a),onedit:function(t){return e._a=_C258.toRadians(t)}},{name:t+".properties.max-speed.name",value:this._maxSpeed,onedit:function(t){return e._maxSpeed=t}},{name:t+".properties.acceleration.name",value:this._acc,onedit:function(t){return e._acc=t}},{name:t+".properties.deceleration.name",value:this._dec,onedit:function(t){return e._dec=t}},{name:t+".properties.rotate-speed.name",value:_C258.toDegrees(this._av),onedit:function(t){return e._av=_C258.toRadians(t)}},{name:t+".properties.enabled.name",value:this._isEnabled,onedit:function(t){return e._SetEnabled(t)}}]}]}}]),t}(_C258.SDKBehaviorInstanceBase)
|
||
var _C259=self.C3,_PF_OBSTACLE2=Math.pow(2,26)-1
|
||
_C259.Behaviors.Pathfinding.Cnds={OnPathFound:function(){return!0},OnFailedToFindPath:function(){return!0},IsCellObstacle:function(e,t){return this.GetMyState().mapData.At(e,t)===_PF_OBSTACLE2},IsCalculatingPath:function(){return this._isCalculating},IsMoving:function(){return this._isMoving},OnArrived:function(){return!0},CompareSpeed:function(e,t){return _C259.compare(this._isMoving?this._s:0,e,t)},DiagonalsEnabled:function(){return this._isDiagonalsEnabled},IsEnabled:function(){return this._isEnabled}}
|
||
var _C260=self.C3
|
||
_C260.Behaviors.Pathfinding.Acts={FindPath:function(e,t){var n=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function r(){var a,i
|
||
return _regeneratorRuntime().wrap(function(r){for(;;)switch(r.prev=r.next){case 0:if(n._isEnabled){r.next=2
|
||
break}return r.abrupt("return")
|
||
case 2:if(a=n.GetMyState(),!n._isCalculating&&a.isReady){r.next=8
|
||
break}return r.next=6,new Promise(function(r){n._delayFindPath=!0,n._delayFindPathResolves.push(r),n._delayPathX=e,n._delayPathY=t})
|
||
case 6:r.next=11
|
||
break
|
||
case 8:return i=n.GetWorldInfo(),r.next=11,n._DoFindPath(i.GetX(),i.GetY(),e,t)
|
||
case 11:case"end":return r.stop()}},r)}))()},StartMoving:function(){if(this._hasPath){this._isMoving&&(this._firstTickMovingWhileMoving=!0),this._movingFromStopped=!this._isMoving,this._isMoving=!0
|
||
var e=this.GetWorldInfo()
|
||
this._rabbitX=e.GetX(),this._rabbitY=e.GetY(),this._rabbitA=e.GetAngle()}},Stop:function(){this._isMoving=!1},SetEnabled:function(e){this._SetEnabled(0!==e)},RegenerateMap:function(){var e=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function t(){return _regeneratorRuntime().wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return e.GetMyState().regenerate=!0,t.next=3,e._RegeneratePromise()
|
||
case 3:case"end":return t.stop()}},t)}))()},AddObstacle:function(e){var t=this.GetSdkType().GetObstacleTypes()
|
||
if(!t.includes(e)){var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.IsFamily()&&a.FamilyHasMember(e))return}}catch(i){r.e(i)}finally{r.f()}t.push(e)}},ClearObstacles:function(){_C260.clearArray(this._sdkType.GetObstacleTypes())},AddCost:function(e,t){var n,r=this.GetSdkType().GetCostTypes(),a=_createForOfIteratorHelper(r)
|
||
try{for(a.s();!(n=a.n()).done;){var i=n.value,s=i.objectClass
|
||
if(s===e)return
|
||
if(s.IsFamily()&&s.FamilyHasMember(e))return}}catch(o){a.e(o)}finally{a.f()}r.push({objectClass:e,cost:t})},ClearCost:function(){_C260.clearArray(this._sdkType.GetCostTypes())},SetMaxSpeed:function(e){this._maxSpeed=e},SetSpeed:function(e){this._s=_C260.clamp(e,0,this._maxSpeed)},SetAcc:function(e){this._acc=e},SetDec:function(e){this._dec=e},SetRotateSpeed:function(e){this._av=_C260.toRadians(e)},SetDiagonalsEnabled:function(e){this._isDiagonalsEnabled=0!==e,this.GetBehavior().SetDiagonalsEnabled(this.GetMapKey(),this._isDiagonalsEnabled)},RegenerateRegion:function(e,t,n,r){var a=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function i(){return _regeneratorRuntime().wrap(function(i){for(;;)switch(i.prev=i.next){case 0:if(!a._AddRegenerateRegion(e,t,n,r)){i.next=3
|
||
break}return i.next=3,a._RegeneratePromise()
|
||
case 3:case"end":return i.stop()}},i)}))()},RegenerateObjectRegion:function(e){var t=this
|
||
return _asyncToGenerator(_regeneratorRuntime().mark(function n(){var r,a,i,s,o,u,l,c
|
||
return _regeneratorRuntime().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(e){n.next=2
|
||
break}return n.abrupt("return")
|
||
case 2:r=e.GetCurrentSol().GetInstances(),a=!1,i=_createForOfIteratorHelper(r),n.prev=5,i.s()
|
||
case 7:if((s=i.n()).done){n.next=17
|
||
break}if(o=s.value,u=o.GetWorldInfo()){n.next=12
|
||
break}return n.abrupt("continue",15)
|
||
case 12:l=u.GetBoundingBox(),c=t._AddRegenerateRegion(l.getLeft(),l.getTop(),l.getRight(),l.getBottom()),a=a||c
|
||
case 15:n.next=7
|
||
break
|
||
case 17:n.next=22
|
||
break
|
||
case 19:n.prev=19,n.t0=n["catch"](5),i.e(n.t0)
|
||
case 22:return n.prev=22,i.f(),n.finish(22)
|
||
case 25:if(!a){n.next=28
|
||
break}return n.next=28,t._RegeneratePromise()
|
||
case 28:case"end":return n.stop()}},n,null,[[5,19,22,25]])}))()}}
|
||
var _C261=self.C3
|
||
_C261.Behaviors.Pathfinding.Exps={NodeCount:function(){return this._myPath.length},NodeXAt:function(e){return e=Math.floor(e),0>e||e>=this._myPath.length?0:this._myPath[e].x},NodeYAt:function(e){return e=Math.floor(e),0>e||e>=this._myPath.length?0:this._myPath[e].y},CellSize:function(){return this._cellSize},RabbitX:function(){return this._rabbitX},RabbitY:function(){return this._rabbitY},MaxSpeed:function(){return this._maxSpeed},Acceleration:function(){return this._acc},Deceleration:function(){return this._dec},RotateSpeed:function(){return _C261.toDegrees(this._av)},MovingAngle:function(){return _C261.toDegrees(this._a)},CurrentNode:function(){return this._moveNode},Speed:function(){return this._isMoving?this._s:0}}
|
||
var _C262=self.C3
|
||
_C262.Behaviors.EightDir=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C262.SDKBehaviorBase)
|
||
var _C263=self.C3
|
||
_C263.Behaviors.EightDir.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C263.SDKBehaviorTypeBase)
|
||
var _C264=self.C3,_IBehaviorInstance=self.IBehaviorInstance,_MAX_SPEED=0,_ACCELERATION=1,_DEACCELERATION=2,_DIRECTION=3,ANGLE_MODE=4,DEFAULT_CONTROLS=5,_ENABLE6=6
|
||
_C264.Behaviors.EightDir.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._upKey=!1,a._downKey=!1,a._leftKey=!1,a._rightKey=!1,a._ignoreInput=!1,a._simUp=!1,a._simDown=!1,a._simLeft=!1,a._simRight=!1,a._dx=0,a._dy=0,a._maxSpeed=200,a._acc=600,a._dec=500,a._directions=3,a._angleMode=3,a._defaultControls=!0,a._isEnabled=!0,r&&(a._maxSpeed=r[_MAX_SPEED],a._acc=r[_ACCELERATION],a._dec=r[_DEACCELERATION],a._directions=r[_DIRECTION],a._angleMode=r[ANGLE_MODE],a._defaultControls=!!r[DEFAULT_CONTROLS],a._isEnabled=!!r[_ENABLE6]),a._isEnabled&&a._StartTicking(),a._defaultControls&&a._BindEvents(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"_BindEvents",value:function(){var e=this
|
||
if(!this._disposables){var t=this._runtime.Dispatcher()
|
||
this._disposables=new _C264.CompositeDisposable(_C264.Disposable.From(t,"keydown",function(t){return e._OnKeyDown(t.data)}),_C264.Disposable.From(t,"keyup",function(t){return e._OnKeyUp(t.data)}),_C264.Disposable.From(t,"window-blur",function(){return e._OnWindowBlur()}))}}},{key:"_UnBindEvents",value:function(){this._disposables&&(this._disposables.Release(),this._disposables=null)}},{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SaveToJson",value:function(){return{dx:this._dx,dy:this._dy,e:this._isEnabled,ms:this._maxSpeed,acc:this._acc,dec:this._dec,d:this._directions,am:this._angleMode,dc:this._defaultControls,ii:this._ignoreInput}}},{key:"LoadFromJson",value:function(e){this._dx=e.dx,this._dy=e.dy,this._SetEnabled(e.e),this._maxSpeed=e.ms,this._acc=e.acc,this._dec=e.dec,this._directions=e.d,this._angleMode=e.am,this._defaultControls=e.dc,this._ignoreInput=e.ii,this._upKey=!1,this._downKey=!1,this._leftKey=!1,this._rightKey=!1,this._simUp=!1,this._simDown=!1,this._simLeft=!1,this._simRight=!1,this._defaultControls?this._BindEvents():this._UnBindEvents()}},{key:"_OnKeyDown",value:function(e){switch(e.key){case"ArrowLeft":this._leftKey=!0
|
||
break
|
||
case"ArrowUp":this._upKey=!0
|
||
break
|
||
case"ArrowRight":this._rightKey=!0
|
||
break
|
||
case"ArrowDown":this._downKey=!0}}},{key:"_OnKeyUp",value:function(e){switch(e.key){case"ArrowLeft":this._leftKey=!1
|
||
break
|
||
case"ArrowUp":this._upKey=!1
|
||
break
|
||
case"ArrowRight":this._rightKey=!1
|
||
break
|
||
case"ArrowDown":this._downKey=!1}}},{key:"_OnWindowBlur",value:function(){this._upKey=!1,this._downKey=!1,this._leftKey=!1,this._rightKey=!1}},{key:"Tick",value:function(){var e=this._runtime.GetDt(this._inst),t=this._runtime.GetCollisionEngine(),n=this._leftKey||this._simLeft,r=this._rightKey||this._simRight,a=this._upKey||this._simUp,i=this._downKey||this._simDown
|
||
if(this._simLeft=!1,this._simRight=!1,this._simUp=!1,this._simDown=!1,this._isEnabled){var s=t.TestOverlapSolid(this._inst)
|
||
if(!s||(t.RegisterCollision(this._inst,s),t.PushOutSolidNearest(this._inst))){this._ignoreInput&&(n=r=a=i=!1),0===this._directions?n=r=!1:1===this._directions&&(a=i=!1),2===this._directions&&(a||i)&&(n=r=!1),n===r&&(this._dx<0?this._dx=Math.min(this._dx+this._dec*e,0):this._dx>0&&(this._dx=Math.max(this._dx-this._dec*e,0))),a===i&&(this._dy<0?this._dy=Math.min(this._dy+this._dec*e,0):this._dy>0&&(this._dy=Math.max(this._dy-this._dec*e,0)))
|
||
var o=0,u=0
|
||
if(n&&!r&&(o=this._dx>0?-(this._acc+this._dec):-this._acc),r&&!n&&(o=this._dx<0?this._acc+this._dec:this._acc),a&&!i&&(u=this._dy>0?-(this._acc+this._dec):-this._acc),i&&!a&&(u=this._dy<0?this._acc+this._dec:this._acc),this._dx+=o*e,this._dy+=u*e,0!==this._dx||0!==this._dy){var l=Math.sqrt(this._dx*this._dx+this._dy*this._dy),c=Math.atan2(this._dy,this._dx),h=this._maxSpeed*Math.cos(c),_=this._maxSpeed*Math.sin(c)
|
||
l>this._maxSpeed&&(this._dx=h,this._dy=_)
|
||
var f=Math.abs(h)*e,d=Math.abs(_)*e,p=this._inst.GetWorldInfo(),v=p.GetX(),m=p.GetY(),y=p.GetAngle(),g=_C264.clamp(this._dx*e+.5*o*e*e,-f,f)
|
||
p.OffsetX(g),p.SetBboxChanged(),s=t.TestOverlapSolid(this._inst),s&&(t.PushOutSolid(this._inst,this._dx<0?1:-1,0,Math.max(Math.abs(Math.floor(g)),1))||(p.SetX(v),p.SetBboxChanged()),this._dx=0,t.RegisterCollision(this._inst,s))
|
||
var C=_C264.clamp(this._dy*e+.5*u*e*e,-d,d)
|
||
p.OffsetY(C),p.SetBboxChanged(),s=t.TestOverlapSolid(this._inst),s&&(t.PushOutSolid(this._inst,0,this._dy<0?1:-1,Math.max(Math.abs(Math.floor(C)),1))||(p.SetY(m),p.SetBboxChanged()),this._dy=0,t.RegisterCollision(this._inst,s))
|
||
var S=_C264.round6dp(this._dx),k=_C264.round6dp(this._dy)
|
||
0===S&&0===k||!this._inst.GetPlugin().IsRotatable()||(1===this._angleMode?p.SetAngle(_C264.toRadians(90*Math.round(_C264.toDegrees(Math.atan2(k,S))/90))):2===this._angleMode?p.SetAngle(_C264.toRadians(45*Math.round(_C264.toDegrees(Math.atan2(k,S))/45))):3===this._angleMode&&p.SetAngle(Math.atan2(k,S))),p.SetBboxChanged(),p.GetAngle()!=y&&(s=t.TestOverlapSolid(this._inst),s&&(p.SetAngle(y),p.SetBboxChanged(),t.RegisterCollision(this._inst,s)))}}}}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case _MAX_SPEED:return this._GetMaxSpeed()
|
||
case _ACCELERATION:return this._GetAcceleration()
|
||
case _DEACCELERATION:return this._GetDeceleration()
|
||
case _DIRECTION:return this._directions
|
||
case ANGLE_MODE:return this._angleMode
|
||
case DEFAULT_CONTROLS:return this._IsDefaultControls()
|
||
case _ENABLE6:return this._IsEnabled()}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case _MAX_SPEED:this._SetMaxSpeed(t)
|
||
break
|
||
case _ACCELERATION:this._SetAcceleration(t)
|
||
break
|
||
case _DEACCELERATION:this._SetDeceleration(t)
|
||
break
|
||
case _DIRECTION:this._directions=t
|
||
break
|
||
case ANGLE_MODE:this._angleMode=t
|
||
break
|
||
case DEFAULT_CONTROLS:this._SetDefaultControls(!!t)
|
||
break
|
||
case _ENABLE6:this._SetEnabled(!!t)}}},{key:"_Stop",value:function(){this._dx=0,this._dy=0}},{key:"_Reverse",value:function(){this._dx*=-1,this._dy*=-1}},{key:"_MaybeClampSpeed",value:function(){var e=Math.hypot(this._dx,this._dy)
|
||
e>this._maxSpeed&&this._SetSpeed(e)}},{key:"_SetSpeed",value:function(e){e=_C264.clamp(e,0,this._maxSpeed)
|
||
var t=Math.atan2(this._dy,this._dx)
|
||
this._dx=e*Math.cos(t),this._dy=e*Math.sin(t)}},{key:"_GetSpeed",value:function(){return Math.hypot(this._dx,this._dy)}},{key:"_SetMaxSpeed",value:function(e){this._maxSpeed=Math.max(e,0)}},{key:"_GetMaxSpeed",value:function(){return this._maxSpeed}},{key:"_SetAcceleration",value:function(e){this._acc=Math.max(e,0)}},{key:"_GetAcceleration",value:function(){return this._acc}},{key:"_SetDeceleration",value:function(e){this._dec=Math.max(e,0)}},{key:"_GetDeceleration",value:function(){return this._dec}},{key:"_GetMovingAngle",value:function(){return Math.atan2(this._dy,this._dx)}},{key:"_SetVectorX",value:function(e){this._dx=e,this._MaybeClampSpeed()}},{key:"_GetVectorX",value:function(){return this._dx}},{key:"_SetVectorY",value:function(e){this._dy=e,this._MaybeClampSpeed()}},{key:"_GetVectorY",value:function(){return this._dy}},{key:"_SimulateControl",value:function(e){if(this._isEnabled)switch(e){case 0:this._simLeft=!0
|
||
break
|
||
case 1:this._simRight=!0
|
||
break
|
||
case 2:this._simUp=!0
|
||
break
|
||
case 3:this._simDown=!0}}},{key:"_SetDefaultControls",value:function(e){e=!!e,this._defaultControls!==e&&(this._defaultControls=e,this._defaultControls?this._BindEvents():(this._UnBindEvents(),this._OnWindowBlur()))}},{key:"_IsDefaultControls",value:function(){return this._defaultControls}},{key:"_SetIgnoreInput",value:function(e){this._ignoreInput=!!e}},{key:"_IsIgnoreInput",value:function(){return this._ignoreInput}},{key:"_SetEnabled",value:function(e){this._isEnabled=!!e,this._isEnabled?this._StartTicking():(this._simLeft=!1,this._simRight=!1,this._simUp=!1,this._simDown=!1,this._StopTicking())}},{key:"_IsEnabled",value:function(){return this._isEnabled}},{key:"GetDebuggerProperties",value:function(){var e=this,t="behaviors.eightdir"
|
||
return[{title:"$"+this.GetBehaviorType().GetName(),properties:[{name:t+".debugger.vector-x",value:this._GetVectorX(),onedit:function(t){return e._SetVectorX(t)}},{name:t+".debugger.vector-y",value:this._GetVectorY(),onedit:function(t){return e._SetVectorY(t)}},{name:t+".debugger.speed",value:this._GetSpeed(),onedit:function(t){return e._SetSpeed(t)}},{name:t+".debugger.angle-of-motion",value:_C264.toDegrees(this._GetMovingAngle())},{name:t+".properties.max-speed.name",value:this._GetMaxSpeed(),onedit:function(t){return e._SetMaxSpeed(t)}},{name:t+".properties.acceleration.name",value:this._GetAcceleration(),onedit:function(t){return e._SetAcceleration(t)}},{name:t+".properties.deceleration.name",value:this._GetDeceleration(),onedit:function(t){return e._SetDeceleration(t)}},{name:t+".properties.enabled.name",value:this._IsEnabled(),onedit:function(t){return e._SetEnabled(t)}}]}]}},{key:"GetScriptInterfaceClass",value:function(){return self.I8DirectionBehaviorInstance}}]),t}(_C264.SDKBehaviorInstanceBase)
|
||
var _map16=new WeakMap,SIMULATE_CONTROL_MAP=new Map([["left",0],["right",1],["up",2],["down",3]])
|
||
self.I8DirectionBehaviorInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map16.set(_assertThisInitialized(e),_IBehaviorInstance._GetInitInst().GetSdkInstance()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"stop",value:function(){_map16.get(this)._Stop()}},{key:"reverse",value:function(){_map16.get(this)._Reverse()}},{key:"simulateControl",value:function(e){var t=SIMULATE_CONTROL_MAP.get(e)
|
||
if("number"!=typeof t)throw Error("invalid control")
|
||
_map16.get(this)._SimulateControl(t)}},{key:"speed",get:function(){return _map16.get(this)._GetSpeed()},set:function(e){_map16.get(this)._SetSpeed(e)}},{key:"maxSpeed",get:function(){return _map16.get(this)._GetMaxSpeed()},set:function(e){_map16.get(this)._SetMaxSpeed(e)}},{key:"acceleration",get:function(){return _map16.get(this)._GetAcceleration()},set:function(e){_map16.get(this)._SetAcceleration(e)}},{key:"deceleration",get:function(){return _map16.get(this)._GetDeceleration()},set:function(e){_map16.get(this)._SetDeceleration(e)}},{key:"vectorX",get:function(){return _map16.get(this)._GetVectorX()},set:function(e){_map16.get(this)._SetVectorX(e)}},{key:"vectorY",get:function(){return _map16.get(this)._GetVectorY()},set:function(e){_map16.get(this)._SetVectorX(e)}},{key:"isDefaultControls",get:function(){return _map16.get(this)._IsDefaultControls()},set:function(e){_map16.get(this)._SetDefaultControls(!!e)}},{key:"isIgnoringInput",get:function(){return _map16.get(this)._IsIgnoreInput()},set:function(e){_map16.get(this)._SetIgnoreInput(!!e)}},{key:"isEnabled",get:function(){return _map16.get(this)._IsEnabled()},set:function(e){_map16.get(this)._SetEnabled(!!e)}}]),t}(_IBehaviorInstance)
|
||
var _C265=self.C3
|
||
_C265.Behaviors.EightDir.Cnds={IsMoving:function(){return this._GetSpeed()>1e-10},CompareSpeed:function(e,t){return _C265.compare(this._GetSpeed(),e,t)},IsEnabled:function(){return this._IsEnabled()}}
|
||
var _C266=self.C3
|
||
_C266.Behaviors.EightDir.Acts={Stop:function(){this._Stop()},Reverse:function(){this._Reverse()},SetIgnoreInput:function(e){this._SetIgnoreInput(e)},SetSpeed:function(e){this._SetSpeed(e)},SetMaxSpeed:function(e){this._SetMaxSpeed(e)},SetAcceleration:function(e){this._SetAcceleration(e)},SetDeceleration:function(e){this._SetDeceleration(e)},SimulateControl:function(e){this._SimulateControl(e)},SetEnabled:function(e){this._SetEnabled(e)},SetVectorX:function(e){this._SetVectorX(e)},SetVectorY:function(e){this._SetVectorY(e)},SetDefaultControls:function(e){this._SetDefaultControls(!!e)}}
|
||
var _C267=self.C3
|
||
_C267.Behaviors.EightDir.Exps={Speed:function(){return this._GetSpeed()},MaxSpeed:function(){return this._GetMaxSpeed()},Acceleration:function(){return this._GetAcceleration()},Deceleration:function(){return this._GetDeceleration()},MovingAngle:function(){return _C267.toDegrees(this._GetMovingAngle())},VectorX:function(){return this._GetVectorX()},VectorY:function(){return this._GetVectorY()}}
|
||
var _C268=self.C3
|
||
_C268.Behaviors.LOS=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C268.SDKBehaviorBase)
|
||
var _C269=self.C3
|
||
_C269.Behaviors.LOS.Type=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._obstacleTypes=[],r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_C269.clearArray(this._obstacleTypes),_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}},{key:"GetObstacleTypes",value:function(){return this._obstacleTypes}},{key:"FindLOSBehavior",value:function(e){var t,n=this.GetBehaviorType(),r=_createForOfIteratorHelper(e.GetBehaviorInstances())
|
||
try{for(r.s();!(t=r.n()).done;){var a=t.value
|
||
if(a.GetBehaviorType()===n)return a.GetSdkInstance()}}catch(i){r.e(i)}finally{r.f()}return null}}]),t}(_C269.SDKBehaviorTypeBase)
|
||
var _C270=self.C3,OBSTACLE_MODE=0,RANGE=1,CONE=2,USE_COLLISION_CELLS=3,MODE_SOLID=0,collisionCandidates=[]
|
||
_C270.Behaviors.LOS.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._obstacleMode=0,a._range=1e4,a._cone=_C270.toRadians(360),a._useCollisionCells=!0,a._ray=new _C270.Ray,r&&(a._obstacleMode=r[OBSTACLE_MODE],a._range=r[RANGE],a._cone=_C270.toRadians(r[CONE]),a._useCollisionCells=r[USE_COLLISION_CELLS]),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SaveToJson",value:function(){return{r:this._range,c:this._cone,om:this._obstacleMode,ucc:this._useCollisionCells,t:this.GetSdkType().GetObstacleTypes().map(function(e){return e.GetSID()})}}},{key:"LoadFromJson",value:function(e){this._range=e.r,this._cone=e.c,this._obstacleMode=e.om||0,this._useCollisionCells=!!e.ucc
|
||
var t=this.GetSdkType().GetObstacleTypes()
|
||
_C270.clearArray(t)
|
||
var n,r=_createForOfIteratorHelper(e.t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value,i=this._runtime.GetObjectClassBySID(a)
|
||
i&&t.push(i)}}catch(s){r.e(s)}finally{r.f()}}},{key:"HasLOSToInstance",value:function(e,t){var n=e.GetUID(),r=e.GetImagePoint(t),a=_slicedToArray(r,2),i=a[0],s=a[1],o=this.HasLOSTo(i,s)
|
||
return o||this._ray.hitUid===n}},{key:"HasLOSTo",value:function(e,t){var n=this.GetWorldInfo(),r=n.GetAngle()
|
||
return n.GetWidth()<0&&(r+=Math.PI),this.HasLOSBetweenPositions(n.GetX(),n.GetY(),r,e,t)}},{key:"HasLOSBetweenPositions",value:function(e,t,n,r,a){var i=this._range
|
||
if(_C270.distanceSquared(e,t,r,a)>i*i)return!1
|
||
var s=_C270.angleTo(e,t,r,a)
|
||
if(_C270.angleDiff(n,s)>this._cone/2)return!1
|
||
var o=this.CastRay(e,t,r,a,this._useCollisionCells)
|
||
return!o.DidCollide()}},{key:"_GetCollisionCandidates",value:function(e,t){if(t){var n=this.GetWorldInfo().GetLayer(),r=this._runtime.GetCollisionEngine()
|
||
return this._obstacleMode===MODE_SOLID?r.GetSolidCollisionCandidates(n,e.rect,collisionCandidates):r.GetObjectClassesCollisionCandidates(n,this._GetObstacleTypes(),e.rect,collisionCandidates),collisionCandidates}if(this._obstacleMode===MODE_SOLID){var a=this._runtime.GetSolidBehavior()
|
||
return a?a.GetInstances():collisionCandidates}var i,s=_createForOfIteratorHelper(this._GetObstacleTypes())
|
||
try{for(s.s();!(i=s.n()).done;){var o=i.value
|
||
_C270.appendArray(collisionCandidates,o.GetInstances())}}catch(u){s.e(u)}finally{s.f()}return collisionCandidates}},{key:"_GetObstacleTypes",value:function(){return this.GetSdkType().GetObstacleTypes()}},{key:"CastRay",value:function(e,t,n,r,a){for(var i=this._ray.Set(e,t,n,r),s=this._GetCollisionCandidates(i,a),o=this._runtime.GetCollisionEngine(),u=this._obstacleMode===MODE_SOLID,l=this._inst,c=0,h=s.length;h>c;++c){var _=s[c]
|
||
_!==l&&(!u||o.IsSolidCollisionAllowed(_,l))&&o.TestRayIntersectsInstance(_,i)}return i.Complete(),_C270.clearArray(collisionCandidates),i}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case OBSTACLE_MODE:return this._obstacleMode
|
||
case RANGE:return this._range
|
||
case CONE:return _C270.toDegrees(this._cone)
|
||
case USE_COLLISION_CELLS:return this._useCollisionCells}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case OBSTACLE_MODE:this._obstacleMode=t
|
||
break
|
||
case RANGE:this._range=t
|
||
break
|
||
case CONE:this._cone=_C270.toRadians(t)
|
||
break
|
||
case USE_COLLISION_CELLS:this._useCollisionCells=!!t}}},{key:"GetDebuggerProperties",value:function(){var e=this,t="behaviors.los.properties"
|
||
return[{title:"$"+this.GetBehaviorType().GetName(),properties:[{name:t+".range.name",value:this._range,onedit:function(t){return e._range=t}},{name:t+".cone-of-view.name",value:_C270.toDegrees(this._cone),onedit:function(t){return e._cone=_C270.toRadians(t)}}]}]}}]),t}(_C270.SDKBehaviorInstanceBase)
|
||
var _C271=self.C3,lToPick=new Set,_rToPick=new Set
|
||
_C271.Behaviors.LOS.Cnds={HasLOSToPosition:function(e,t){return this.HasLOSTo(e,t)},RayIntersected:function(){return this._ray.DidCollide()},HasLOSBetweenPositions:function(e,t,n,r,a){return this.HasLOSBetweenPositions(e,t,_C271.toRadians(n),r,a)},HasLOSToObject:function(e,t){if(!e)return!1
|
||
var n=this._runtime.GetCurrentCondition(),r=n.GetEventBlock().IsOrBlock(),a=n.GetRuntime(),i=n.GetObjectClass().GetCurrentSol(),s=e.GetCurrentSol(),o=i.GetInstances(),u=s.GetInstances()
|
||
i.IsSelectAll()?_C271.clearArray(i._GetOwnElseInstances()):r&&(o=a.IsCurrentConditionFirst()&&!i._GetOwnElseInstances().length&&i._GetOwnInstances().length?i._GetOwnInstances():i._GetOwnElseInstances()),s.IsSelectAll()?_C271.clearArray(s._GetOwnElseInstances()):r&&(u=a.IsCurrentConditionFirst()&&!s._GetOwnElseInstances().length&&s._GetOwnInstances().length?s._GetOwnInstances():s._GetOwnElseInstances())
|
||
var l,c=n.IsInverted(),h=this.GetSdkType(),_=_createForOfIteratorHelper(o)
|
||
try{for(_.s();!(l=_.n()).done;){var f=l.value,d=!1,p=h.FindLOSBehavior(f)
|
||
if(0===u.length)c&&(d=!0)
|
||
else{var v,m=_createForOfIteratorHelper(u)
|
||
try{for(m.s();!(v=m.n()).done;){var y=v.value
|
||
f!==y&&_C271.xor(p.HasLOSToInstance(y,t),c)&&(d=!0,_rToPick.add(y))}}catch(g){m.e(g)}finally{m.f()}}d&&lToPick.add(f)}}catch(g){_.e(g)}finally{_.f()}return r?(o===i._GetOwnElseInstances()?i.TransferElseInstancesToOwn(lToPick):(i.AddElseInstances(lToPick,o),i.SetSetPicked(lToPick)),u===s._GetOwnElseInstances()?s.TransferElseInstancesToOwn(_rToPick):(s.AddElseInstances(_rToPick,u),s.SetSetPicked(_rToPick))):(i.SetSetPicked(lToPick),s.SetSetPicked(_rToPick)),lToPick.clear(),_rToPick.clear(),i.HasAnyInstances()}}
|
||
var _C272=self.C3
|
||
_C272.Behaviors.LOS.Acts={SetRange:function(e){this._range=e},SetCone:function(e){this._cone=_C272.toRadians(e)},CastRay:function(e,t,n,r,a){this.CastRay(e,t,n,r,a)},AddObstacle:function(e){var t=this.GetSdkType().GetObstacleTypes()
|
||
if(!t.includes(e)){var n,r=_createForOfIteratorHelper(t)
|
||
try{for(r.s();!(n=r.n()).done;){var a=n.value
|
||
if(a.IsFamily()&&a.FamilyHasMember(e))return}}catch(i){r.e(i)}finally{r.f()}t.push(e)}},ClearObstacles:function(){_C272.clearArray(this.GetSdkType().GetObstacleTypes())}}
|
||
var _C273=self.C3
|
||
_C273.Behaviors.LOS.Exps={Range:function(){return this._range},ConeOfView:function(){return _C273.toDegrees(this._cone)},HitX:function(){var e=this._ray
|
||
return e.DidCollide()?e.hitX:0},HitY:function(){var e=this._ray
|
||
return e.DidCollide()?e.hitY:0},HitDistance:function(){var e=this._ray
|
||
return e.DidCollide()?e.distance:0},HitUID:function(){var e=this._ray
|
||
return e.DidCollide()?e.hitUid:-1},NormalX:function(e){var t=this._ray
|
||
return t.DidCollide()?t.hitX+e*t.normalX:0},NormalY:function(e){var t=this._ray
|
||
return t.DidCollide()?t.hitY+e*t.normalY:0},NormalAngle:function(){var e=this._ray
|
||
return e.DidCollide()?_C273.toDegrees(e.hitNormal):0},ReflectionX:function(e){var t=this._ray
|
||
return t.DidCollide()?t.hitX+e*t.reflectionX:0},ReflectionY:function(e){var t=this._ray
|
||
return t.DidCollide()?t.hitY+e*t.reflectionY:0},ReflectionAngle:function(){var e=this._ray
|
||
return e.DidCollide()?_C273.toDegrees(Math.atan2(e.reflectionY,e.reflectionX)):0}}
|
||
var _C274=self.C3
|
||
_C274.Behaviors.solid=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C274.SDKBehaviorBase)
|
||
var _C275=self.C3
|
||
_C275.Behaviors.solid.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C275.SDKBehaviorTypeBase)
|
||
var _C276=self.C3,_ENABLE7=0,_TAGS=1,EMPTY_SET=new Set
|
||
_C276.Behaviors.solid.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a.SetEnabled(!0),r&&(a.SetEnabled(r[_ENABLE7]),a.SetTags(r[_TAGS])),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SetEnabled",value:function(e){this._inst._SetSolidEnabled(!!e)}},{key:"IsEnabled",value:function(){return this._inst._IsSolidEnabled()}},{key:"SetTags",value:function(e){var t=this._inst.GetSavedDataMap()
|
||
if(!e.trim())return void t["delete"]("solidTags")
|
||
var n=t.get("solidTags")
|
||
n||(n=new Set,t.set("solidTags",n)),n.clear()
|
||
var r,a=_createForOfIteratorHelper(e.split(" "))
|
||
try{for(a.s();!(r=a.n()).done;){var i=r.value
|
||
i&&n.add(i.toLowerCase())}}catch(s){a.e(s)}finally{a.f()}}},{key:"GetTags",value:function(){return this._inst.GetSavedDataMap().get("solidTags")||EMPTY_SET}},{key:"SaveToJson",value:function(){return{e:this.IsEnabled()}}},{key:"LoadFromJson",value:function(e){this.SetEnabled(e.e)}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case _ENABLE7:return this.IsEnabled()}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case _ENABLE7:this.SetEnabled(t)}}},{key:"GetDebuggerProperties",value:function(){var e=this
|
||
return[{title:"$"+this.GetBehaviorType().GetName(),properties:[{name:"behaviors.solid.properties.enabled.name",value:this.IsEnabled(),onedit:function(t){return e.SetEnabled(t)}}]}]}}]),t}(_C276.SDKBehaviorInstanceBase)
|
||
var _C277=self.C3
|
||
_C277.Behaviors.solid.Cnds={IsEnabled:function(){return this.IsEnabled()}}
|
||
var _C278=self.C3
|
||
_C278.Behaviors.solid.Acts={SetEnabled:function(e){this.SetEnabled(e)},SetTags:function(e){this.SetTags(e)}}
|
||
var _C279=self.C3
|
||
_C279.Behaviors.solid.Exps={}
|
||
var _C280=self.C3
|
||
_C280.Behaviors.scrollto=function(e){function t(e){var r
|
||
return _classCallCheck(this,t),r=n.call(this,e),r._shakeMag=0,r._shakeStart=0,r._shakeEnd=0,r._shakeMode=0,r}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SetShakeMagnitude",value:function(e){this._shakeMag=e}},{key:"GetShakeMagnitude",value:function(){return this._shakeMag}},{key:"SetShakeStart",value:function(e){this._shakeStart=e}},{key:"GetShakeStart",value:function(){return this._shakeStart}},{key:"SetShakeEnd",value:function(e){this._shakeEnd=e}},{key:"GetShakeEnd",value:function(){return this._shakeEnd}},{key:"SetShakeMode",value:function(e){this._shakeMode=e}},{key:"GetShakeMode",value:function(){return this._shakeMode}}]),t}(_C280.SDKBehaviorBase)
|
||
var _C281=self.C3
|
||
_C281.Behaviors.scrollto.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C281.SDKBehaviorTypeBase)
|
||
var _C282=self.C3,_ENABLE8=0
|
||
_C282.Behaviors.scrollto.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._isEnabled=!0,r&&(a._isEnabled=r[_ENABLE8]),a._isEnabled&&a._StartTicking2(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SaveToJson",value:function(){var e=this.GetBehavior()
|
||
return{e:this._isEnabled,smg:e.GetShakeMagnitude(),ss:e.GetShakeStart(),se:e.GetShakeEnd(),smd:e.GetShakeMode()}}},{key:"LoadFromJson",value:function(e){var t=this.GetBehavior()
|
||
t.SetShakeMagnitude(e.smg),t.SetShakeStart(e.ss),t.SetShakeEnd(e.se),t.SetShakeMode(e.smd),this._isEnabled=e.e,this._isEnabled?this._StartTicking2():this._StopTicking2()}},{key:"IsEnabled",value:function(){return this._isEnabled}},{key:"Tick2",value:function(){if(this.IsEnabled()){var e,t=(this._runtime.GetDt(this._inst),this.GetBehavior()),n=t.GetInstances(),r=0,a=0,i=0,s=_createForOfIteratorHelper(n)
|
||
try{for(s.s();!(e=s.n()).done;){var o=e.value,u=o.GetBehaviorInstanceFromCtor(_C282.Behaviors.scrollto)
|
||
if(u&&u.GetSdkInstance().IsEnabled()){var l=o.GetWorldInfo()
|
||
r+=l.GetX(),a+=l.GetY(),++i}}}catch(c){s.e(c)}finally{s.f()}var h=this._inst.GetWorldInfo().GetLayout(),_=this._runtime.GetGameTime(),f=0,d=0
|
||
if(_>=t.GetShakeStart()&&_<t.GetShakeEnd()){var p=t.GetShakeMagnitude()*Math.min(this._runtime.GetTimeScale(),1)
|
||
0===t.GetShakeMode()&&(p*=1-(_-t.GetShakeStart())/(t.GetShakeEnd()-t.GetShakeStart()))
|
||
var v=this._runtime.Random()*Math.PI*2,m=this._runtime.Random()*p
|
||
f=Math.cos(v)*m,d=Math.sin(v)*m}h.SetScrollX(r/i+f),h.SetScrollY(a/i+d)}}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case _ENABLE8:return this._isEnabled}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case _ENABLE8:this._isEnabled=!!t,this._isEnabled?this._StartTicking2():this._StopTicking2()}}}]),t}(_C282.SDKBehaviorInstanceBase)
|
||
var _C283=self.C3
|
||
_C283.Behaviors.scrollto.Cnds={IsEnabled:function(){return this._isEnabled}}
|
||
var _C284=self.C3
|
||
_C284.Behaviors.scrollto.Acts={Shake:function(e,t,n){var r=this.GetBehavior()
|
||
r.SetShakeMagnitude(e),r.SetShakeStart(this._runtime.GetGameTime()),r.SetShakeEnd(this._runtime.GetGameTime()+t),r.SetShakeMode(n)},SetEnabled:function(e){this._isEnabled=0!==e,this._isEnabled?this._StartTicking2():this._StopTicking2()}}
|
||
var _C285=self.C3
|
||
_C285.Behaviors.scrollto.Exps={}
|
||
var _C286=self.C3
|
||
_C286.Behaviors.Sin=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C286.SDKBehaviorBase)
|
||
var _C287=self.C3
|
||
_C287.Behaviors.Sin.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C287.SDKBehaviorTypeBase)
|
||
var _C288=self.C3,MOVEMENT=0,WAVE=1,PERIOD=2,PERIOD_RANDOM=3,PERIOD_OFFSET=4,PERIOD_OFFSET_RANDOM=5,MAGNITUDE=6,MAGNITUDE_RANDOM=7,_ENABLE9=8,HORIZONTAL=0,VERTICAL=1,_SIZE=2,WIDTH=3,HEIGHT=4,ANGLE=5,OPACITY=6,_VALUE2=7,FORWARDS_BACKWARDS=8,ZELEVATION=9,SINE=0,TRIANGLE=1,SAWTOOTH=2,REVERSE_SAWTOOTH=3,SQUARE=4,_2pi=2*Math.PI,_pi_2=Math.PI/2,_3pi_2=3*Math.PI/2,MOVEMENT_LOOKUP=[0,1,8,3,4,2,5,6,9,7]
|
||
_C288.Behaviors.Sin.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._i=0,a._movement=0,a._wave=0,a._period=0,a._mag=0,a._isEnabled=!0,a._basePeriod=0,a._basePeriodOffset=0,a._baseMag=0,a._periodRandom=0,a._periodOffsetRandom=0,a._magnitudeRandom=0,a._initialValue=0,a._initialValue2=0,a._lastKnownValue=0,a._lastKnownValue2=0,a._ratio=0,r&&(a._movement=MOVEMENT_LOOKUP[r[MOVEMENT]],a._wave=r[WAVE],a._periodRandom=a._runtime.Random()*r[PERIOD_RANDOM],a._basePeriod=r[PERIOD],a._period=r[PERIOD],a._period+=a._periodRandom,a._basePeriodOffset=r[PERIOD_OFFSET],0!==a._period&&(a._periodOffsetRandom=a._runtime.Random()*r[PERIOD_OFFSET_RANDOM],a._i=r[PERIOD_OFFSET]/a._period*_2pi,a._i+=a._periodOffsetRandom/a._period*_2pi),a._magnitudeRandom=a._runtime.Random()*r[MAGNITUDE_RANDOM],a._baseMag=r[MAGNITUDE],a._mag=r[MAGNITUDE],a._mag+=a._magnitudeRandom,a._isEnabled=!!r[_ENABLE9]),a._movement===ANGLE&&(a._mag=_C288.toRadians(a._mag)),a.Init(),a._isEnabled&&a._StartTicking(),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SaveToJson",value:function(){return{i:this._i,e:this._isEnabled,mv:this._movement,w:this._wave,p:this._period,mag:this._mag,iv:this._initialValue,iv2:this._initialValue2,r:this._ratio,lkv:this._lastKnownValue,lkv2:this._lastKnownValue2}}},{key:"LoadFromJson",value:function(e){this._i=e.i,this._SetEnabled(e.e),this._movement=e.mv,this._wave=e.w,this._period=e.p,this._mag=e.mag,this._initialValue=e.iv,this._initialValue2=e.iv2,this._ratio=e.r,this._lastKnownValue=e.lkv,this._lastKnownValue2=e.lkv2}},{key:"Init",value:function(){var e=this._inst.GetWorldInfo()
|
||
switch(this._movement){case HORIZONTAL:this._initialValue=e.GetX()
|
||
break
|
||
case VERTICAL:this._initialValue=e.GetY()
|
||
break
|
||
case _SIZE:this._initialValue=e.GetWidth(),this._ratio=e.GetHeight()/e.GetWidth()
|
||
break
|
||
case WIDTH:this._initialValue=e.GetWidth()
|
||
break
|
||
case HEIGHT:this._initialValue=e.GetHeight()
|
||
break
|
||
case ANGLE:this._initialValue=e.GetAngle()
|
||
break
|
||
case OPACITY:this._initialValue=e.GetOpacity()
|
||
break
|
||
case _VALUE2:this._initialValue=0
|
||
break
|
||
case FORWARDS_BACKWARDS:this._initialValue=e.GetX(),this._initialValue2=e.GetY()
|
||
break
|
||
case ZELEVATION:this._initialValue=e.GetZElevation()}this._lastKnownValue=this._initialValue,this._lastKnownValue2=this._initialValue2}},{key:"WaveFunc",value:function(e){switch(e%=_2pi,this._wave){case SINE:return Math.sin(e)
|
||
case TRIANGLE:return _pi_2>=e?e/_pi_2:_3pi_2>=e?1-2*(e-_pi_2)/Math.PI:(e-_3pi_2)/_pi_2-1
|
||
case SAWTOOTH:return 2*e/_2pi-1
|
||
case REVERSE_SAWTOOTH:return-2*e/_2pi+1
|
||
case SQUARE:return e<Math.PI?-1:1}return 0}},{key:"Tick",value:function(){var e=this._runtime.GetDt(this._inst)
|
||
this._isEnabled&&0!==e&&(0===this._period?this._i=0:this._i=(this._i+e/this._period*_2pi)%_2pi,this._UpdateFromPhase())}},{key:"_UpdateFromPhase",value:function(){var e=this._inst.GetWorldInfo()
|
||
switch(this._movement){case HORIZONTAL:e.GetX()!==this._lastKnownValue&&(this._initialValue+=e.GetX()-this._lastKnownValue),e.SetX(this._initialValue+this.WaveFunc(this._i)*this._mag),this._lastKnownValue=e.GetX()
|
||
break
|
||
case VERTICAL:e.GetY()!==this._lastKnownValue&&(this._initialValue+=e.GetY()-this._lastKnownValue),e.SetY(this._initialValue+this.WaveFunc(this._i)*this._mag),this._lastKnownValue=e.GetY()
|
||
break
|
||
case _SIZE:e.SetWidth(this._initialValue+this.WaveFunc(this._i)*this._mag),e.SetHeight(e.GetWidth()*this._ratio)
|
||
break
|
||
case WIDTH:e.SetWidth(this._initialValue+this.WaveFunc(this._i)*this._mag)
|
||
break
|
||
case HEIGHT:e.SetHeight(this._initialValue+this.WaveFunc(this._i)*this._mag)
|
||
break
|
||
case ANGLE:e.GetAngle()!==this._lastKnownValue&&(this._initialValue=_C288.clampAngle(this._initialValue+(e.GetAngle()-this._lastKnownValue))),e.SetAngle(this._initialValue+this.WaveFunc(this._i)*this._mag),this._lastKnownValue=e.GetAngle()
|
||
break
|
||
case OPACITY:e.SetOpacity(this._initialValue+this.WaveFunc(this._i)*this._mag/100)
|
||
break
|
||
case FORWARDS_BACKWARDS:e.GetX()!==this._lastKnownValue&&(this._initialValue+=e.GetX()-this._lastKnownValue),e.GetY()!==this._lastKnownValue2&&(this._initialValue2+=e.GetY()-this._lastKnownValue2),e.SetX(this._initialValue+Math.cos(e.GetAngle())*this.WaveFunc(this._i)*this._mag),e.SetY(this._initialValue2+Math.sin(e.GetAngle())*this.WaveFunc(this._i)*this._mag),this._lastKnownValue=e.GetX(),this._lastKnownValue2=e.GetY()
|
||
break
|
||
case ZELEVATION:e.SetZElevation(this._initialValue+this.WaveFunc(this._i)*this._mag)}e.SetBboxChanged()}},{key:"_OnSpriteFrameChanged",value:function(e,t){}},{key:"_SetEnabled",value:function(e){this._isEnabled=!!e,this._isEnabled?this._StartTicking():this._StopTicking()}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case MOVEMENT:return this._movement
|
||
case WAVE:return this._wave
|
||
case PERIOD:return this._basePeriod
|
||
case MAGNITUDE:return this._baseMag
|
||
case _ENABLE9:return this._isEnabled}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case MOVEMENT:this._movement=MOVEMENT_LOOKUP[t],this.Init()
|
||
break
|
||
case WAVE:this._wave=t
|
||
break
|
||
case PERIOD:this._basePeriod=t,this._period=this._basePeriod+this._periodRandom,this._isEnabled||(0!==this._period?(this._i=this._basePeriodOffset/this._period*_2pi,this._i+=this._periodOffsetRandom/this._period*_2pi):this._i=0)
|
||
break
|
||
case MAGNITUDE:this._baseMag=t,this._mag=this._baseMag+this._magnitudeRandom,this._movement===ANGLE&&(this._mag=_C288.toRadians(this._mag))
|
||
break
|
||
case _ENABLE9:this._isEnabled=!!t}}},{key:"GetDebuggerProperties",value:function(){var e=this,t="behaviors.sin"
|
||
return[{title:"$"+this.GetBehaviorType().GetName(),properties:[{name:t+".properties.enabled.name",value:this._isEnabled,onedit:function(t){return e._SetEnabled(t)}},{name:t+".properties.period.name",value:this._period,onedit:function(t){return e._period=t}},{name:t+".properties.magnitude.name",value:this._mag,onedit:function(t){return e._mag=t}},{name:t+".debugger.value",value:this.WaveFunc(this._i)*this._mag}]}]}}]),t}(_C288.SDKBehaviorInstanceBase)
|
||
var _C289=self.C3
|
||
_C289.Behaviors.Sin.Cnds={IsEnabled:function(){return this._isEnabled},CompareMovement:function(e){return this._movement===e},ComparePeriod:function(e,t){return _C289.compare(this._period,e,t)},CompareMagnitude:function(e,t){return 5===this._movement?_C289.compare(this._mag,e,_C289.toRadians(t)):_C289.compare(this._mag,e,t)},CompareWave:function(e){return this._wave===e}}
|
||
var _C290=self.C3
|
||
_C290.Behaviors.Sin.Acts={SetEnabled:function(e){this._SetEnabled(0!==e)},SetPeriod:function(e){this._period=e},SetMagnitude:function(e){this._mag=e,5===this._movement&&(this._mag=_C290.toRadians(this._mag))},SetMovement:function(e){5===this._movement&&5!==e&&(this._mag=_C290.toDegrees(this._mag)),this._movement=e,this.Init()},SetWave:function(e){this._wave=e},SetPhase:function(e){var t=2*Math.PI
|
||
this._i=e*t%t,this._UpdateFromPhase()},UpdateInitialState:function(){this.Init()}}
|
||
var _C291=self.C3
|
||
_C291.Behaviors.Sin.Exps={CyclePosition:function(){return this._i/(2*Math.PI)},Period:function(){return this._period},Magnitude:function(){return 5===this._movement?_C291.toDegrees(this._mag):this._mag},Value:function(){return this.WaveFunc(this._i)*this._mag}}
|
||
var _C292=self.C3
|
||
_C292.Behaviors.Timer=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C292.SDKBehaviorBase)
|
||
var _C293=self.C3
|
||
_C293.Behaviors.Timer.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C293.SDKBehaviorTypeBase)
|
||
var _C294=self.C3
|
||
_C294.Behaviors.Timer.SingleTimer=function(){function e(t,n,r,a){_classCallCheck(this,e),this._current=_C294.New(_C294.KahanSum),this._current.Set(t||0),this._total=_C294.New(_C294.KahanSum),this._total.Set(n||0),this._duration=r||0,this._isRegular=!!a,this._isPaused=!1}return _createClass(e,[{key:"GetCurrentTime",value:function(){return this._current.Get()}},{key:"GetTotalTime",value:function(){return this._total.Get()}},{key:"GetDuration",value:function(){return this._duration}},{key:"SetPaused",value:function(e){this._isPaused=!!e}},{key:"IsPaused",value:function(){return this._isPaused}},{key:"Add",value:function(e){this._current.Add(e),this._total.Add(e)}},{key:"HasFinished",value:function(){return this._current.Get()>=this._duration}},{key:"Update",value:function(){if(this.HasFinished()){if(!this._isRegular)return!0
|
||
this._current.Subtract(this._duration)}return!1}},{key:"SaveToJson",value:function(){return{c:this._current.Get(),t:this._total.Get(),d:this._duration,r:this._isRegular,p:this._isPaused}}},{key:"LoadFromJson",value:function(e){this._current.Set(e.c),this._total.Set(e.t),this._duration=e.d,this._isRegular=!!e.r,this._isPaused=!!e.p}}]),e}(),_C294.Behaviors.Timer.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._timers=new Map,a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){this._timers.clear(),_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"_UpdateTickState",value:function(){this._timers.size>0?(this._StartTicking(),this._StartTicking2()):(this._StopTicking(),this._StopTicking2())}},{key:"SaveToJson",value:function(){var e,t={},n=_createForOfIteratorHelper(this._timers.entries())
|
||
try{for(n.s();!(e=n.n()).done;){var r=_slicedToArray(e.value,2),a=r[0],i=r[1]
|
||
t[a]=i.SaveToJson()}}catch(s){n.e(s)}finally{n.f()}return t}},{key:"LoadFromJson",value:function(e){this._timers.clear()
|
||
for(var t=0,n=Object.entries(e);t<n.length;t++){var r=_slicedToArray(n[t],2),a=r[0],i=r[1],s=new _C294.Behaviors.Timer.SingleTimer
|
||
s.LoadFromJson(i),this._timers.set(a,s)}this._UpdateTickState()}},{key:"Tick",value:function(){var e,t=this._runtime.GetDt(this._inst),n=_createForOfIteratorHelper(this._timers.values())
|
||
try{for(n.s();!(e=n.n()).done;){var r=e.value
|
||
r.IsPaused()||r.Add(t)}}catch(a){n.e(a)}finally{n.f()}}},{key:"Tick2",value:function(){var e,t=_createForOfIteratorHelper(this._timers.entries())
|
||
try{for(t.s();!(e=t.n()).done;){var n=_slicedToArray(e.value,2),r=n[0],a=n[1],i=a.Update()
|
||
i&&this._timers["delete"](r)}}catch(s){t.e(s)}finally{t.f()}}},{key:"GetDebuggerProperties",value:function(){return[{title:"behaviors.timer.debugger.timers",properties:_toConsumableArray(this._timers.entries()).map(function(e){return{name:"$"+e[0],value:"".concat(Math.round(10*e[1].GetCurrentTime())/10," / ").concat(Math.round(10*e[1].GetDuration())/10)}})}]}}]),t}(_C294.SDKBehaviorInstanceBase)
|
||
var _C295=self.C3
|
||
_C295.Behaviors.Timer.Cnds={OnTimer:function(e){var t=this._timers.get(e.toLowerCase())
|
||
return t?t.HasFinished():!1},IsTimerRunning:function(e){return this._timers.has(e.toLowerCase())},IsTimerPaused:function(e){var t=this._timers.get(e.toLowerCase())
|
||
return t&&t.IsPaused()}}
|
||
var _C296=self.C3
|
||
_C296.Behaviors.Timer.Acts={StartTimer:function(e,t,n){var r=new _C296.Behaviors.Timer.SingleTimer(0,0,e,1===t)
|
||
this._timers.set(n.toLowerCase(),r),this._UpdateTickState()},StopTimer:function(e){this._timers["delete"](e.toLowerCase()),this._UpdateTickState()},PauseResumeTimer:function(e,t){var n=this._timers.get(e.toLowerCase())
|
||
n&&n.SetPaused(0===t)}}
|
||
var _C297=self.C3
|
||
_C297.Behaviors.Timer.Exps={CurrentTime:function(e){var t=this._timers.get(e.toLowerCase())
|
||
return t?t.GetCurrentTime():0},TotalTime:function(e){var t=this._timers.get(e.toLowerCase())
|
||
return t?t.GetTotalTime():0},Duration:function(e){var t=this._timers.get(e.toLowerCase())
|
||
return t?t.GetDuration():0}}
|
||
var _C298=self.C3
|
||
_C298.Behaviors.shadowcaster=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C298.SDKBehaviorBase)
|
||
var _C299=self.C3
|
||
_C299.Behaviors.shadowcaster.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C299.SDKBehaviorTypeBase)
|
||
var _C300=self.C3,_HEIGHT=0,_TAG=1,_ENABLE10=2
|
||
_C300.Behaviors.shadowcaster.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),r?(a.SetHeight(r[_HEIGHT]),a.SetTag(r[_TAG]),a.SetEnabled(!!r[_ENABLE10])):(a.SetHeight(100),a.SetTag(""),a.SetEnabled(!0)),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SetHeight",value:function(e){this._inst.GetSavedDataMap().set("shadowcasterHeight",e)}},{key:"GetHeight",value:function(){return this._inst.GetSavedDataMap().get("shadowcasterHeight")}},{key:"SetTag",value:function(e){this._inst.GetSavedDataMap().set("shadowcasterTag",e)}},{key:"GetTag",value:function(){return this._inst.GetSavedDataMap().get("shadowcasterTag")}},{key:"SetEnabled",value:function(e){this._inst.GetSavedDataMap().set("shadowcasterEnabled",!!e)}},{key:"IsEnabled",value:function(){return this._inst.GetSavedDataMap().get("shadowcasterEnabled")}},{key:"SaveToJson",value:function(){return{h:this.GetHeight(),t:this.GetTag(),e:this.IsEnabled()}}},{key:"LoadFromJson",value:function(e){this.SetHeight(e.h),this.SetTag(e.t),this.SetEnabled(e.e)}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case _HEIGHT:return this.GetHeight()
|
||
case _TAG:return this.GetTag()
|
||
case _ENABLE10:return this.IsEnabled()}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case _HEIGHT:this.SetHeight(t)
|
||
break
|
||
case _TAG:this.SetTag(t)
|
||
break
|
||
case _ENABLE10:this.SetEnabled(t)}}},{key:"GetDebuggerProperties",value:function(){var e=this,t="behaviors.shadowcaster"
|
||
this._inst.GetSavedDataMap()
|
||
return[{title:"$"+this.GetBehaviorType().GetName(),properties:[{name:t+".properties.enabled.name",value:this.IsEnabled(),onedit:function(t){return e.SetEnabled(t)}},{name:t+".properties.height.name",value:this.GetHeight(),onedit:function(t){return e.SetHeight(t)}},{name:t+".properties.tag.name",value:this.GetTag(),onedit:function(t){return e.SetTag(t)}}]}]}}]),t}(_C300.SDKBehaviorInstanceBase)
|
||
var _C301=self.C3
|
||
_C301.Behaviors.shadowcaster.Cnds={IsEnabled:function(){return this.IsEnabled()},CompareHeight:function(e,t){return _C301.compare(this.GetHeight(),e,t)}}
|
||
var _C302=self.C3
|
||
_C302.Behaviors.shadowcaster.Acts={SetEnabled:function(e){this.SetEnabled(e)},SetHeight:function(e){this.GetHeight()!==e&&(this.SetHeight(e),this._runtime.UpdateRender())},SetTag:function(e){this.GetTag()!==e&&(this.SetTag(e),this._runtime.UpdateRender())}}
|
||
var _C303=self.C3
|
||
_C303.Behaviors.shadowcaster.Exps={Height:function(){return this.GetHeight()},Tag:function(){return this.GetTag()}}
|
||
var _C304=self.C3
|
||
_C304.Behaviors.MoveTo=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}}]),t}(_C304.SDKBehaviorBase)
|
||
var _C305=self.C3
|
||
_C305.Behaviors.MoveTo.Type=function(e){function t(e){return _classCallCheck(this,t),n.call(this,e)}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"OnCreate",value:function(){}}]),t}(_C305.SDKBehaviorTypeBase)
|
||
var _C306=self.C3,_IBehaviorInstance3=self.IBehaviorInstance,PROP_MAX_SPEED=0,PROP_ACCELERATION=1,PROP_DECELERATION=2,PROP_ROTATE_SPEED=3,PROP_SET_ANGLE=4,PROP_STOP_ON_SOLIDS=5,PROP_ENABLED=6
|
||
_C306.Behaviors.MoveTo.Instance=function(e){function t(e,r){var a
|
||
return _classCallCheck(this,t),a=n.call(this,e),a._maxSpeed=200,a._acc=600,a._dec=600,a._rotateSpeed=0,a._setAngle=!0,a._stopOnSolids=!1,a._isEnabled=!0,a._speed=0,a._movingAngle=a.GetWorldInfo().GetAngle(),a._waypoints=[],r&&(a._maxSpeed=r[PROP_MAX_SPEED],a._acc=r[PROP_ACCELERATION],a._dec=r[PROP_DECELERATION],a._rotateSpeed=_C306.toRadians(r[PROP_ROTATE_SPEED]),a._setAngle=r[PROP_SET_ANGLE],a._stopOnSolids=r[PROP_STOP_ON_SOLIDS],a._isEnabled=r[PROP_ENABLED]),a}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"Release",value:function(){_get(_getPrototypeOf(t.prototype),"Release",this).call(this)}},{key:"SaveToJson",value:function(){return{ms:this._maxSpeed,acc:this._acc,dec:this._dec,rs:this._rotateSpeed,sa:this._setAngle,sos:this._stopOnSolids,s:this._speed,ma:this._movingAngle,wp:this._waypoints.map(function(e){return{x:e.x,y:e.y}}),e:this._isEnabled}}},{key:"LoadFromJson",value:function(e){this._maxSpeed=e.ms,this._acc=e.acc,this._dec=e.dec,this._rotateSpeed=e.rs,this._setAngle=e.sa,this._stopOnSolids=e.sos,this._speed=e.s,this._movingAngle=e.ma,this._waypoints=e.wp.map(function(e){return{x:e.x,y:e.y}}),this._SetEnabled(e.e),this._isEnabled&&this._waypoints.length>0&&this._StartTicking()}},{key:"_AddWaypoint",value:function(e,t,n){n&&_C306.clearArray(this._waypoints),this._waypoints.push({x:e,y:t}),this._isEnabled&&this._StartTicking()}},{key:"_GetWaypointCount",value:function(){return this._waypoints.length}},{key:"_GetWaypointXAt",value:function(e){return e=Math.floor(e),0>e||e>=this._waypoints.length?0:this._waypoints[e].x}},{key:"_GetWaypointYAt",value:function(e){return e=Math.floor(e),0>e||e>=this._waypoints.length?0:this._waypoints[e].y}},{key:"_IsMoving",value:function(){return this._waypoints.length>0}},{key:"_Stop",value:function(){_C306.clearArray(this._waypoints),this._speed=0,this._StopTicking()}},{key:"_GetTargetX",value:function(){return this._waypoints.length>0?this._waypoints[0].x:0}},{key:"_GetTargetY",value:function(){return this._waypoints.length>0?this._waypoints[0].y:0}},{key:"_SetSpeed",value:function(e){this._IsMoving()&&(this._speed=Math.min(e,this._maxSpeed))}},{key:"_GetSpeed",value:function(){return this._speed}},{key:"_SetMaxSpeed",value:function(e){this._maxSpeed=Math.max(e,0),this._SetSpeed(this._speed)}},{key:"_GetMaxSpeed",value:function(){return this._maxSpeed}},{key:"_IsRotationEnabled",value:function(){return 0!==this._rotateSpeed}},{key:"Tick",value:function(){if(this._isEnabled&&this._IsMoving()){var e=this._runtime.GetDt(this._inst),t=this._inst.GetWorldInfo(),n=t.GetX(),r=t.GetY(),a=t.GetAngle(),i=this._speed,s=this._maxSpeed,o=this._acc,u=this._dec,l=this._GetTargetX(),c=this._GetTargetY(),h=_C306.angleTo(n,r,l,c),_=!1
|
||
if(u>0&&1===this._waypoints.length){var f=.5*i*i/u*1.0001
|
||
if(_=_C306.distanceSquared(n,r,l,c)<=f*f){var d=_C306.distanceTo(n,r,l,c)
|
||
i=Math.sqrt(2*u*d),s=i,this._speed=i}}if(this._IsRotationEnabled()){var p=_C306.angleDiff(this._movingAngle,h)
|
||
if(p>Number.EPSILON){var v=p/this._rotateSpeed,m=_C306.distanceTo(t.GetX(),t.GetY(),l,c),y=m/(2*Math.sin(p)),g=y*p
|
||
s=Math.min(s,_C306.clamp(g/v,0,this._maxSpeed))}}var C=_?-u:o,S=Math.min(i*e+.5*C*e*e,s*e)
|
||
if(_){if(u>0&&(this._speed=Math.max(this._speed-u*e,0),0===this._speed))return void this._OnArrived(t,l,c)}else 0===o?this._speed=s:this._speed=Math.min(this._speed+o*e,s)
|
||
if(_C306.distanceSquared(t.GetX(),t.GetY(),l,c)<=S*S)return void this._OnArrived(t,l,c)
|
||
this._IsRotationEnabled()?this._movingAngle=_C306.angleRotate(this._movingAngle,h,this._rotateSpeed*e):this._movingAngle=h,t.OffsetXY(Math.cos(this._movingAngle)*S,Math.sin(this._movingAngle)*S),this._setAngle&&t.SetAngle(this._movingAngle),t.SetBboxChanged(),this._CheckSolidCollision(n,r,a)}}},{key:"_OnArrived",value:function(e,t,n){e.SetXY(t,n),e.SetBboxChanged(),this._waypoints.shift(),0===this._waypoints.length&&(this._speed=0,this._StopTicking()),this.GetScriptInterface().dispatchEvent(_C306.New(_C306.Event,"arrived")),this.Trigger(_C306.Behaviors.MoveTo.Cnds.OnArrived)}},{key:"_CheckSolidCollision",value:function(e,t,n){var r=this._runtime.GetCollisionEngine()
|
||
if(this._stopOnSolids&&r.TestOverlapSolid(this._inst)){this._Stop()
|
||
var a=this._inst.GetWorldInfo(),i=a.GetX(),s=a.GetY(),o=_C306.angleTo(i,s,e,t),u=_C306.distanceTo(i,s,e,t)
|
||
r.PushOutSolid(this._inst,Math.cos(o),Math.sin(o),Math.max(u,1))||(a.SetXY(e,t),a.SetAngle(n),a.SetBboxChanged()),this.GetScriptInterface().dispatchEvent(_C306.New(_C306.Event,"hitsolid")),this.Trigger(_C306.Behaviors.MoveTo.Cnds.OnHitSolid)}}},{key:"_IsSetAngle",value:function(){return this._setAngle}},{key:"_SetSetAngle",value:function(e){this._setAngle=!!e}},{key:"_SetAngleOfMotion",value:function(e){if(this._movingAngle=e,this._isEnabled&&this._setAngle&&!this._IsMoving()){var t=this.GetWorldInfo()
|
||
t.SetAngle(this._movingAngle),t.SetBboxChanged()}}},{key:"_GetAngleOfMotion",value:function(){return this._movingAngle}},{key:"_SetAcceleration",value:function(e){this._acc=Math.max(e,0)}},{key:"_GetAcceleration",value:function(){return this._acc}},{key:"_SetDeceleration",value:function(e){this._dec=Math.max(e,0)}},{key:"_GetDeceleration",value:function(){return this._dec}},{key:"_SetRotateSpeed",value:function(e){this._rotateSpeed=Math.max(e,0)}},{key:"_GetRotateSpeed",value:function(){return this._rotateSpeed}},{key:"_SetStopOnSolids",value:function(e){this._stopOnSolids=!!e}},{key:"_IsStopOnSolids",value:function(){return this._stopOnSolids}},{key:"_SetEnabled",value:function(e){e=!!e,this._isEnabled!==e&&(this._isEnabled=e,this._isEnabled&&this._IsMoving()?this._StartTicking():this._StopTicking())}},{key:"_IsEnabled",value:function(){return this._isEnabled}},{key:"GetPropertyValueByIndex",value:function(e){switch(e){case PROP_MAX_SPEED:return this._GetMaxSpeed()
|
||
case PROP_ACCELERATION:return this._GetAcceleration()
|
||
case PROP_DECELERATION:return this._GetDeceleration()
|
||
case PROP_ROTATE_SPEED:return _C306.toDegrees(this._GetRotateSpeed())
|
||
case PROP_SET_ANGLE:return this._IsSetAngle()
|
||
case PROP_STOP_ON_SOLIDS:return this._IsStopOnSolids()
|
||
case PROP_ENABLED:return this._IsEnabled()}}},{key:"SetPropertyValueByIndex",value:function(e,t){switch(e){case PROP_MAX_SPEED:this._SetMaxSpeed(t)
|
||
break
|
||
case PROP_ACCELERATION:this._SetAcceleration(t)
|
||
break
|
||
case PROP_DECELERATION:this._SetDeceleration(t)
|
||
break
|
||
case PROP_ROTATE_SPEED:this._SetRotateSpeed(_C306.toRadians(t))
|
||
break
|
||
case PROP_SET_ANGLE:this._SetSetAngle(t)
|
||
break
|
||
case PROP_STOP_ON_SOLIDS:this._SetStopOnSolids(t)
|
||
break
|
||
case PROP_ENABLED:this._SetEnabled(t)}}},{key:"GetDebuggerProperties",value:function(){var e=this,t="behaviors.moveto"
|
||
return[{title:"$"+this.GetBehaviorType().GetName(),properties:[{name:t+".debugger.speed",value:this._GetSpeed(),onedit:function(t){return e._SetSpeed(t)}},{name:t+".debugger.angle-of-motion",value:_C306.toDegrees(this._GetAngleOfMotion()),onedit:function(t){return e._movingAngle=_C306.toRadians(t)}},{name:t+".debugger.target-x",value:this._GetTargetX()},{name:t+".debugger.target-y",value:this._GetTargetY()},{name:t+".debugger.waypoint-count",value:this._GetWaypointCount()},{name:t+".properties.max-speed.name",value:this._GetMaxSpeed(),onedit:function(t){return e._SetMaxSpeed(t)}},{name:t+".properties.acceleration.name",value:this._GetAcceleration(),onedit:function(t){return e._SetAcceleration(t)}},{name:t+".properties.deceleration.name",value:this._GetDeceleration(),onedit:function(t){return e._SetDeceleration(t)}},{name:t+".properties.rotate-speed.name",value:_C306.toDegrees(this._GetRotateSpeed()),onedit:function(t){return e._SetRotateSpeed(_C306.toRadians(t))}},{name:t+".properties.enabled.name",value:this._IsEnabled(),onedit:function(t){return e._SetEnabled(t)}}]}]}},{key:"GetScriptInterfaceClass",value:function(){return self.IMoveToBehaviorInstance}}]),t}(_C306.SDKBehaviorInstanceBase)
|
||
var _map17=new WeakMap
|
||
self.IMoveToBehaviorInstance=function(e){function t(){var e
|
||
return _classCallCheck(this,t),e=n.call(this),_map17.set(_assertThisInitialized(e),_IBehaviorInstance3._GetInitInst().GetSdkInstance()),e}_inherits(t,e)
|
||
var n=_createSuper(t)
|
||
return _createClass(t,[{key:"moveToPosition",value:function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:!0
|
||
_map17.get(this)._AddWaypoint(e,t,!!n)}},{key:"getTargetX",value:function(){return _map17.get(this)._GetTargetX()}},{key:"getTargetY",value:function(){return _map17.get(this)._GetTargetY()}},{key:"getTargetPosition",value:function(){var e=_map17.get(this)
|
||
return[e._GetTargetX(),e._GetTargetY()]}},{key:"getWaypointCount",value:function(){return _map17.get(this)._GetWaypointCount()}},{key:"getWaypointX",value:function(e){return _map17.get(this)._GetWaypointXAt(+e)}},{key:"getWaypointY",value:function(e){return _map17.get(this)._GetWaypointYAt(+e)}},{key:"getWaypoint",value:function(e){e=+e
|
||
var t=_map17.get(this)
|
||
return[t._GetWaypointXAt(e),t._GetWaypointYAt(e)]}},{key:"stop",value:function(){_map17.get(this)._Stop()}},{key:"isMoving",get:function(){return _map17.get(this)._IsMoving()}},{key:"speed",get:function(){return _map17.get(this)._GetSpeed()},set:function(e){_map17.get(this)._SetSpeed(e)}},{key:"maxSpeed",get:function(){return _map17.get(this)._GetMaxSpeed()},set:function(e){_map17.get(this)._SetMaxSpeed(e)}},{key:"acceleration",get:function(){return _map17.get(this)._GetAcceleration()},set:function(e){_map17.get(this)._SetAcceleration(e)}},{key:"deceleration",get:function(){return _map17.get(this)._GetDeceleration()},set:function(e){_map17.get(this)._SetDeceleration(e)}},{key:"angleOfMotion",get:function(){return _map17.get(this)._GetAngleOfMotion()},set:function(e){_map17.get(this)._SetAngleOfMotion(e)}},{key:"rotateSpeed",get:function(){return _map17.get(this)._GetRotateSpeed()},set:function(e){_map17.get(this)._SetRotateSpeed(e)}},{key:"isStopOnSolids",get:function(){return _map17.get(this)._IsStopOnSolids()},set:function(e){_map17.get(this)._SetStopOnSolids(e)}},{key:"isEnabled",get:function(){return _map17.get(this)._IsEnabled()},set:function(e){_map17.get(this)._SetEnabled(e)}}]),t}(_IBehaviorInstance3)
|
||
var _C307=self.C3
|
||
_C307.Behaviors.MoveTo.Cnds={IsMoving:function(){return this._IsMoving()},CompareSpeed:function(e,t){return _C307.compare(this._GetSpeed(),e,t)},IsEnabled:function(){return this._IsEnabled()},OnArrived:function(){return!0},OnHitSolid:function(){return!0}}
|
||
var _C308=self.C3
|
||
_C308.Behaviors.MoveTo.Acts={MoveToPosition:function(e,t,n){this._AddWaypoint(e,t,0===n)},MoveToObject:function(e,t,n){if(e){var r=e.GetPairedInstance(this._inst)
|
||
if(r&&r.GetWorldInfo()){var a=r.GetImagePoint(t),i=_slicedToArray(a,2),s=i[0],o=i[1]
|
||
this._AddWaypoint(s,o,0===n)}}},MoveAlongPathfindingPath:function(e){var t=this._inst.GetBehaviorSdkInstanceFromCtor(_C308.Behaviors.Pathfinding)
|
||
if(t){var n=t._GetPath()
|
||
if(0!==n.length)for(var r=0,a=n.length;a>r;++r){var i=n[r]
|
||
this._AddWaypoint(i.x,i.y,0===r&&0===e)}}},MoveAlongTimeline:function(e,t,n){var r=null
|
||
if(r=t?e.GetTrackById(t):_C308.first(e.GetTracks())){var a=r.GetPropertyTrack("offsetX"),i=r.GetPropertyTrack("offsetY")
|
||
if(a&&i){var s=_toConsumableArray(a.GetPropertyKeyframeValues()),o=_toConsumableArray(i.GetPropertyKeyframeValues())
|
||
if(0!==s.length&&0!==o.length){var u=0,l=0,c=this._inst.GetWorldInfo()
|
||
"relative"===a.GetResultMode()&&(u=c.GetX()),"relative"===i.GetResultMode()&&(l=c.GetY())
|
||
for(var h=0,_=Math.min(s.length,o.length);_>h;++h){var f=s[h]+u,d=o[h]+l
|
||
this._AddWaypoint(f,d,0===h&&0===n)}}}}},MoveAlongTimelineByName:function(e,t,n){var r=this._runtime.GetTimelineManager().GetTimelineByName(e)
|
||
r&&_C308.Behaviors.MoveTo.Acts.MoveAlongTimeline.call(this,r,t,n)},Stop:function(){this._Stop()},SetMovingAngle:function(e){this._SetAngleOfMotion(_C308.toRadians(e))},SetSpeed:function(e){this._SetSpeed(e)},SetMaxSpeed:function(e){this._SetMaxSpeed(e)},SetAcceleration:function(e){this._SetAcceleration(e)},SetDeceleration:function(e){this._SetDeceleration(e)},SetRotateSpeed:function(e){this._SetRotateSpeed(_C308.toRadians(e))},SetStopOnSolids:function(e){this._SetStopOnSolids(e)},SetEnabled:function(e){this._SetEnabled(e)}}
|
||
var _C309=self.C3
|
||
_C309.Behaviors.MoveTo.Exps={Speed:function(){return this._GetSpeed()},MaxSpeed:function(){return this._GetMaxSpeed()},Acceleration:function(){return this._GetAcceleration()},Deceleration:function(){return this._GetDeceleration()},MovingAngle:function(){return _C309.toDegrees(this._GetAngleOfMotion())},RotateSpeed:function(){return _C309.toDegrees(this._GetRotateSpeed())},TargetX:function(){return this._GetTargetX()},TargetY:function(){return this._GetTargetY()},WaypointCount:function(){return this._GetWaypointCount()},WaypointXAt:function(e){return this._GetWaypointXAt(e)},WaypointYAt:function(e){return this._GetWaypointYAt(e)}}
|
||
var _C310=self.C3
|
||
self.C3_GetObjectRefTable=function(){return[_C310.Plugins.Sprite,_C310.Behaviors.Pathfinding,_C310.Behaviors.EightDir,_C310.Behaviors.LOS,_C310.Plugins.Text,_C310.Plugins.Keyboard,_C310.Behaviors.solid,_C310.Behaviors.scrollto,_C310.Behaviors.Sin,_C310.Plugins.Mouse,_C310.Plugins.TiledBg,_C310.Plugins.Audio,_C310.Plugins.NinePatch,_C310.Plugins.gamepad,_C310.Behaviors.Timer,_C310.Plugins.TextBox,_C310.Plugins.sliderbar,_C310.Plugins.Browser,_C310.Plugins.progressbar,_C310.Plugins.Touch,_C310.Plugins.PlatformInfo,_C310.Plugins.shadowlight,_C310.Behaviors.shadowcaster,_C310.Plugins.Button,_C310.Behaviors.MoveTo,_C310.Plugins.System.Cnds.IsGroupActive,_C310.Plugins.System.Cnds.CompareVar,_C310.Plugins.System.Cnds.TriggerOnce,_C310.Behaviors.Pathfinding.Acts.Stop,_C310.Behaviors.Pathfinding.Acts.FindPath,_C310.Plugins.Sprite.Exps.X,_C310.Plugins.Sprite.Exps.Y,_C310.Plugins.System.Acts.WaitForPreviousActions,_C310.Behaviors.Pathfinding.Acts.StartMoving,_C310.Plugins.System.Cnds.ForEach,_C310.Plugins.Sprite.Cnds.IsOverlapping,_C310.Plugins.System.Acts.Wait,_C310.Behaviors.Timer.Acts.StopTimer,_C310.Plugins.System.Acts.SetVar,_C310.Plugins.Sprite.Cnds.CompareInstanceVar,_C310.Plugins.Sprite.Acts.SetInstanceVar,_C310.Behaviors.LOS.Cnds.HasLOSToObject,_C310.Plugins.Sprite.Cnds.IsAnimPlaying,_C310.Behaviors.Pathfinding.Cnds.OnArrived,_C310.Plugins.Audio.Acts.Stop,_C310.Plugins.Sprite.Cnds.IsVisible,_C310.Plugins.Audio.Cnds.IsTagPlaying,_C310.Plugins.Sprite.Acts.SetVisible,_C310.Plugins.Audio.Acts.Play,_C310.Plugins.System.Acts.GoToLayout,_C310.Plugins.System.Cnds.Else,_C310.Plugins.Sprite.Acts.SetAnim,_C310.Plugins.Keyboard.Cnds.OnKey,_C310.Plugins.System.Cnds.For,_C310.Behaviors.Pathfinding.Exps.CellSize,_C310.Behaviors.Pathfinding.Cnds.IsCellObstacle,_C310.Plugins.System.Exps.loopindex,_C310.Plugins.System.Acts.CreateObject,_C310.Plugins.Sprite.Acts.SetSize,_C310.Plugins.System.Cnds.Every,_C310.Plugins.System.Exps.random,_C310.Behaviors.Pathfinding.Cnds.IsMoving,_C310.Plugins.System.Cnds.PickRandom,_C310.Plugins.System.Cnds.AngleWithin,_C310.Behaviors.Pathfinding.Exps.MovingAngle,_C310.Plugins.Sprite.Acts.SetMirrored,_C310.Behaviors.Pathfinding.Acts.SetEnabled,_C310.Plugins.Sprite.Cnds.PickDistance,_C310.Behaviors.LOS.Cnds.HasLOSToPosition,_C310.Plugins.Sprite.Acts.SetPosToObject,_C310.Plugins.Mouse.Cnds.OnObjectClicked,_C310.Plugins.Touch.Cnds.OnTapGestureObject,_C310.Plugins.Sprite.Acts.SetEffectParam,_C310.Plugins.System.Acts.SubVar,_C310.Plugins.System.Cnds.EveryTick,_C310.Plugins.Text.Acts.SetText,_C310.Plugins.Text.Acts.SetVisible,_C310.Plugins.System.Acts.AddVar,_C310.Plugins.progressbar.Exps.Maximum,_C310.Plugins.Sprite.Acts.Destroy,_C310.Plugins.System.Cnds.CompareTime,_C310.Plugins.Sprite.Exps.ObjectTypeName,_C310.Plugins.System.Cnds.OnLayoutStart,_C310.Plugins.Sprite.Cnds.IsOnScreen,_C310.Plugins.Sprite.Cnds.CompareFrame,_C310.Plugins.shadowlight.Acts.SetLightHeight,_C310.Plugins.shadowlight.Acts.Destroy,_C310.Plugins.System.Acts.SetLayerVisible,_C310.Plugins.progressbar.Acts.SetCSSStyle,_C310.Plugins.progressbar.Acts.SetProgress,_C310.Plugins.progressbar.Acts.SetMaximum,_C310.Plugins.Keyboard.Cnds.IsKeyDown,_C310.Behaviors.EightDir.Acts.SimulateControl,_C310.Behaviors.EightDir.Cnds.IsMoving,_C310.Plugins.Sprite.Acts.SetPos,_C310.Plugins.Sprite.Acts.SetX,_C310.Plugins.Sprite.Acts.SetY,_C310.Plugins.System.Acts.SortZOrderByInstVar,_C310.Behaviors.LOS.Acts.SetRange,_C310.Behaviors.Pathfinding.Acts.SetMaxSpeed,_C310.Behaviors.EightDir.Acts.SetMaxSpeed,_C310.Behaviors.Pathfinding.Acts.SetAcc,_C310.Behaviors.Pathfinding.Exps.MaxSpeed,_C310.Behaviors.EightDir.Acts.SetAcceleration,_C310.Behaviors.EightDir.Exps.MaxSpeed,_C310.Plugins.Text.Acts.SetPos,_C310.Plugins.Sprite.Acts.ZMoveToObject,_C310.Plugins.Sprite.Acts.SetAnimFrame,_C310.Plugins.shadowlight.Acts.SetPosToObject,_C310.Plugins.System.Cnds.Compare,_C310.Behaviors.MoveTo.Acts.MoveToObject,_C310.Plugins.progressbar.Cnds.CompareProgress,_C310.Plugins.progressbar.Exps.Progress,_C310.Plugins.System.Exps.dt,_C310.Plugins.Sprite.Acts.SetEffectEnabled,_C310.Plugins.Keyboard.Cnds.OnKeyReleased,_C310.Plugins.Sprite.Acts.AddInstanceVar,_C310.Plugins.PlatformInfo.Cnds.IsOnMobile,_C310.Behaviors.Timer.Acts.StartTimer,_C310.Behaviors.EightDir.Acts.SetEnabled,_C310.Behaviors.Timer.Exps.CurrentTime,_C310.Plugins.Touch.Exps.TouchCount,_C310.Plugins.System.Cnds.CompareBetween,_C310.Plugins.Touch.Exps.XAt,_C310.Plugins.Sprite.Exps.BBoxLeft,_C310.Plugins.Sprite.Exps.Width,_C310.Plugins.Sprite.Exps.BBoxRight,_C310.Plugins.Touch.Exps.YAt,_C310.Plugins.Sprite.Exps.BBoxTop,_C310.Plugins.Sprite.Exps.Height,_C310.Plugins.Sprite.Exps.BBoxBottom,_C310.Plugins.System.Exps.min,_C310.Plugins.System.Cnds.IsBetweenAngles,_C310.Plugins.Audio.Acts.StopAll,_C310.Plugins.System.Exps.choose,_C310.Plugins.Mouse.Cnds.IsOverObject,_C310.Plugins.Sprite.Acts.SetDefaultColor,_C310.Plugins.Browser.Acts.Close,_C310.Plugins.NinePatch.Acts.SetVisible,_C310.Plugins.Sprite.Cnds.IsOutsideLayout,_C310.Behaviors.Sin.Acts.SetPhase,_C310.Plugins.Browser.Acts.GoToURL,_C310.ScriptsInEvents.MainMenu_Event25,_C310.Plugins.Sprite.Acts.SetScale,_C310.Plugins.Sprite.Acts.MoveAtAngle,_C310.Plugins.Sprite.Acts.RotateCounterclockwise,_C310.Plugins.Sprite.Acts.SetAngle,_C310.Plugins.Sprite.Exps.Angle,_C310.Plugins.Text.Acts.TypewriterText,_C310.Plugins.Text.Cnds.OnTypewriterTextFinished,_C310.Plugins.Button.Acts.SetChecked,_C310.Plugins.Mouse.Acts.SetCursor,_C310.Plugins.NinePatch.Acts.SetDefaultColor,_C310.Plugins.TextBox.Acts.SetText,_C310.Plugins.sliderbar.Acts.SetValue,_C310.Plugins.TextBox.Exps.Text,_C310.Plugins.sliderbar.Exps.Value,_C310.Plugins.Button.Cnds.IsChecked,_C310.ScriptsInEvents.Settings_Event73,_C310.Plugins.System.Cnds.PickByComparison,_C310.Plugins.System.Exps.loadingprogress,_C310.Plugins.System.Cnds.OnLoadFinished]},self.C3_JsPropNameTable=[{Area:0},{Area2:0},{Area3:0},{Area4:0},{Area5:0},{Area6:0},{Area7:0},{Area8:0},{Area9:0},{Area10:0},{Area11:0},{Area12:0},{Area13:0},{Area14:0},{Area15:0},{Area16:0},{Area17:0},{Area18:0},{Area19:0},{Area20:0},{Area21:0},{Area22:0},{Button:0},{Area23:0},{Area24:0},{Area25:0},{Area26:0},{Area27:0},{Area28:0},{Area29:0},{Arrow:0},{Arrow2:0},{Arrow3:0},{Arrow4:0},{Arrow5:0},{Arrow6:0},{Arrow7:0},{Arrow8:0},{Arrow9:0},{Arrow10:0},{Arrow11:0},{Arrow12:0},{Arrow13:0},{Arrow14:0},{Arrow15:0},{Arrow16:0},{Yz:0},{Deadd:0},{FYS:0},{Gone:0},{dead:0},{Pathfinding:0},{Crewmate1:0},{Crewmate3:0},{Crewmate4:0},{Crewmate8:0},{Crewmate5:0},{Crewmate6:0},{Crewmate2:0},{Crewmate7:0},{InVent:0},{"8Direction":0},{LineOfSight:0},{Player:0},{Crewmate9:0},{Crew1:0},{Crew2:0},{Crew3:0},{Crew4:0},{Crew5:0},{Crew6:0},{Crew7:0},{Crew8:0},{Crew9:0},{Crew10:0},{PlanetSprites:0},{Keyboard:0},{Solid:0},{Collision:0},{Cafeteria:0},{Cafeteria2:0},{room_weapon:0},{Light:0},{ScrollTo:0},{Sine:0},{Sine2:0},{Camera:0},{Kill:0},{Mouse:0},{CellMarker:0},{Text:0},{room_storage:0},{room_tunnel:0},{room_specimen:0},{launchPadWalls:0},{Lobby:0},{Text2:0},{TiledBackground:0},{BeforeVoting:0},{BeforeVoting2:0},{Text3:0},{Audio:0},{bannerLogo_AmongUs:0},{MainMenu:0},{MainMenu2:0},{Vent:0},{Buttons:0},{"9patch":0},{closeresourcesassets:0},{Text4:0},{AU_SmoothCriminal_S:0},{Sprite:0},{AU_SmoothCriminal_S2:0},{Mainmenubutton:0},{Gamepad:0},{sabotage:0},{Buttons2:0},{Timer:0},{Buttons3:0},{Meltdown:0},{Buttons4:0},{HQAssets:0},{Medbayscanner:0},{Coms:0},{HQAssets2:0},{AdminCommsElecEngineHallsShieldsStorage:0},{Text5:0},{Buttons5:0},{engineAlign_slider:0},{engineAlign_slider2:0},{TextInput:0},{Buttons6:0},{SliderBar:0},{Text6:0},{PlanetSprites2:0},{PlanetSprites3:0},{PlanetSprites4:0},{HQAssets3:0},{Buttons7:0},{Browser:0},{lights:0},{Buttons8:0},{Text7:0},{ProgressBar:0},{Buttons9:0},{Text8:0},{PlanetSprites5:0},{AdminCommsElecEngineHallsShieldsStorage2:0},{AdminCommsElecEngineHallsShieldsStorage3:0},{AdminCommsElecEngineHallsShieldsStorage4:0},{AdminCommsElecEngineHallsShieldsStorage5:0},{Touch:0},{a:0},{d:0},{TStick:0},{Selected:0},{offsetx:0},{offsety:0},{r:0},{TouchID:0},{left:0},{TStick2:0},{PlatformInfo:0},{SliderBar2:0},{Text9:0},{SliderBar3:0},{Text10:0},{Buttons10:0},{hats:0},{engineAlign_slider3:0},{engineAlign_slider4:0},{AdminCommsElecEngineHallsShieldsStorage6:0},{SliderBar4:0},{Text11:0},{Sprite2:0},{TiledBackground2:0},{TiledBackground3:0},{ShadowLight:0},{ShadowCaster:0},{Wallslight:0},{room_broadcast:0},{TiledBackground4:0},{PlanetSprites6:0},{room_science:0},{PlanetSprites7:0},{PlanetSprites8:0},{PlanetSprites9:0},{Button2:0},{Lobby2:0},{backbutton:0},{engineAlign_slider5:0},{engineAlign_slider6:0},{MoveTo:0},{Pets:0},{MainMenu3:0},{abcskeld:0},{Sprite3:0},{Sprite4:0},{Sprite5:0},{Sprite6:0},{Sprite7:0},{Button3:0},{Lobby3:0},{download:0},{download2:0},{Sine3:0},{MainScreenCrew:0},{Zorder:0},{Crewmates:0},{Areas:0},{Report:0},{Players:0},{Arrows:0},{Sabotagemap:0},{KillDistance:0},{KillCooldown:0},{PlayerCount:0},{Found:0},{Sabotage:0},{SabotageCooldown:0},{TUM:0},{progress:0},{sus:0},{EGR:0},{About:0},{DomainCheck:0},{link1:0},{link2:0},{link3:0},{link4:0},{link5:0},{Name1:0},{Name2:0},{Name3:0},{Name4:0},{Name5:0},{Name6:0},{Name7:0},{Name8:0},{Name9:0},{Voted:0},{Vote:0},{Color:0},{PlayerName:0},{MaxKillCooldown:0},{Speed:0},{hat:0},{TaskBar:0},{shadows:0},{pet:0},{MapNumber:0},{hdSkeld:0},{Shared:0}]
|
||
var unaryminus=function(e){return"number"==typeof e?-e:e},bothNumbers=function(e,t){return"number"==typeof e&&"number"==typeof t},_add=function(e,t){return bothNumbers(e,t)?e+t:e},subtract=function(e,t){return bothNumbers(e,t)?e-t:e},multiply=function(e,t){return bothNumbers(e,t)?e*t:e},divide=function(e,t){return bothNumbers(e,t)?e/t:e},mod=function(e,t){return bothNumbers(e,t)?e%t:e},pow=function(e,t){return bothNumbers(e,t)?Math.pow(e,t):e},and=function(e,t){if("string"==typeof e||"string"==typeof t){var n,r
|
||
return n="number"==typeof e?""+Math.round(1e10*e)/1e10:e,r="number"==typeof t?""+Math.round(1e10*t)/1e10:t,n+r}return e&&t?1:0},or=function(e,t){return bothNumbers(e,t)?e||t?1:0:e},_C311=self.C3
|
||
self.C3_ExpressionFuncs=[function(){return"Crewmate"},function(){return"Meltdown"},function(){return 1},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpObject()}},function(){return.5},function(){return"ded"},function(){return 25},function(){return 0},function(e){var t=e._GetNode(0).GetVar()
|
||
return function(){return t.GetValue()+5}},function(){return"Lights"},function(){return"Found you slipping"},function(){return"Goinginvent"},function(){return"Crewmate Report"},function(){return"die"},function(){return"r"},function(){return-5},function(){return 3},function(){return""},function(){return"Meeting"},function(){return"Crewmate Pathfinding"},function(){return"x"},function(e){var t=e._GetNode(0)
|
||
return function(){return 5926/t.ExpBehavior()}},function(){return"y"},function(e){var t=e._GetNode(0)
|
||
return function(){return 5e3/t.ExpBehavior()}},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return t("x")}},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return t("y")}},function(){return"Player"},function(e){var t=e._GetNode(0).GetBoundMethod(),n=e._GetNode(1)
|
||
return function(){return t("x")*n.ExpBehavior()}},function(e){var t=e._GetNode(0).GetBoundMethod(),n=e._GetNode(1)
|
||
return function(){return t("y")*n.ExpBehavior()}},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpBehavior()}},function(){return"Crewmate 1"},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return Math.floor(t(1,5))}},function(){return 60},function(){return 180},function(){return"walk"},function(){return"idle"},function(){return"Crewmate 2"},function(){return"Crewmate 3"},function(){return"Crewmate 4"},function(){return"Crewmate 5"},function(){return"Crewmate 6"},function(){return"Crewmate 7"},function(){return"Crewmate 8"},function(){return"Crewmate 9"},function(){return"Crewmates Killing"},function(e){var t=e._GetNode(0).GetVar()
|
||
return function(){return t.GetValue()}},function(){return"OutLine"},function(){return"Brightness"},function(){return 100},function(){return 50},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return Math.floor(t(5,10))}},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return Math.floor(t(10))}},function(){return 4},function(){return 2},function(){return-10},function(){return 6},function(){return"Collision"},function(){return"a"},function(){return"background"},function(){return"lime"},function(e){var t=e._GetNode(0).GetVar()
|
||
return function(){return t.GetValue()+2.5}},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpObject()-40}},function(e){var t=e._GetNode(0),n=e._GetNode(1)
|
||
return function(){return _C311.lerp(t.ExpObject(),n.ExpObject(),.09)}},function(e){var t=e._GetNode(0),n=e._GetNode(1)
|
||
return function(){return _C311.lerp(t.ExpObject(),n.ExpObject()-40,.09)}},function(e){var t=e._GetNode(0).GetVar()
|
||
return function(){return and("Time until Meltdown: ",t.GetValue())}},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpBehavior()+500}},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpObject()-120}},function(e){var t=e._GetNode(0),n=e._GetNode(1),r=e._GetNode(2),a=e._GetNode(3)
|
||
return function(){return _C311.distanceTo(t.ExpObject(),n.ExpObject(),r.ExpObject(),a.ExpObject())}},function(){return 75},function(){return 500},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpObject()-150}},function(e){var t=e._GetNode(0),n=e._GetNode(1).GetBoundMethod()
|
||
return function(){return t.ExpObject()+10*n()}},function(){return"On"},function(){return"Default"},function(){return"Open"},function(){return.2},function(){return 57},function(){return 30},function(){return"M"},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpBehavior("ded")}},function(){return 24.99},function(){return-7},function(){return"1"},function(){return"2"},function(){return"3"},function(){return"4"},function(){return"5"},function(){return"6"},function(){return"ReplaceSolidColor2"},function(){return 195},function(){return"ReplaceSolidColor"},function(){return 143},function(){return 8},function(){return 1781302},function(){return 856604},function(){return"ReplaceSolidColor4"},function(){return 16760576},function(){return 6840845},function(){return 3235377},function(){return 1199906},function(){return 621276},function(){return 626638},function(){return 5},function(){return 1579547},function(){return 255},function(){return"Thumbstick"},function(){return"t"},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return t()-1}},function(e){var t=e._GetNode(0).GetBoundMethod(),n=e._GetNode(1).GetBoundMethod()
|
||
return function(){return t(n(),"HUD")}},function(e){var t=e._GetNode(0),n=e._GetNode(1)
|
||
return function(){return t.ExpObject()-2*n.ExpObject()}},function(e){var t=e._GetNode(0),n=e._GetNode(1)
|
||
return function(){return t.ExpObject()+2*n.ExpObject()}},function(e){var t=e._GetNode(0),n=e._GetNode(1),r=e._GetNode(2).GetBoundMethod(),a=e._GetNode(3).GetBoundMethod(),i=e._GetNode(4).GetBoundMethod(),s=e._GetNode(5).GetBoundMethod()
|
||
return function(){return _C311.toDegrees(_C311.angleTo(t.ExpObject(),n.ExpObject(),r(a(),"HUD"),i(s(),"HUD")))}},function(e){var t=e._GetNode(0),n=e._GetNode(1),r=e._GetNode(2).GetBoundMethod(),a=e._GetNode(3).GetBoundMethod(),i=e._GetNode(4).GetBoundMethod(),s=e._GetNode(5).GetBoundMethod()
|
||
return function(){return _C311.distanceTo(t.ExpObject(),n.ExpObject(),r(a(),"HUD"),i(s(),"HUD"))}},function(e){var t=e._GetNode(0).GetBoundMethod(),n=e._GetNode(1),r=e._GetNode(2),a=e._GetNode(3)
|
||
return function(){return t(n.ExpInstVar(),r.ExpObject()/2-a.ExpObject()/3)}},function(e){var t=e._GetNode(0),n=e._GetNode(1),r=e._GetNode(2)
|
||
return function(){return t.ExpObject()+n.ExpInstVar()*Math.cos(_C311.toRadians(r.ExpInstVar()))}},function(e){var t=e._GetNode(0),n=e._GetNode(1),r=e._GetNode(2)
|
||
return function(){return t.ExpObject()+n.ExpInstVar()*Math.sin(_C311.toRadians(r.ExpInstVar()))}},function(){return"Simulate Controls"},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpInstVar()}},function(){return-60},function(){return 150},function(){return 120},function(){return 240},function(){return 210},function(){return 330},function(){return"ReplaceSolidColor3"},function(){return"31"},function(){return"0"},function(){return 9},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return t("1","2","3")}},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return t("JORDAN","AMERICA","GOANTRONI","MEXICO","1","1Malta","20","addnorthk","canada","canadawin","Canadian","DOGO","kittycorn","Love","shopatshara","superstar","teamtrees","TeamUSA","WIN","zephyr","10001","HydroFlask","TheCamilo","☢ï¸","00","00Elixr","00GUNNER","00USA4EVR","PAKAMMAD","USA","ã¥ï½¡â—•‿‿◕。ã¥","KONG","ÙwÚ","типкрутой","OTTOMAN","0","3","Dl","l","butcheckBo","FRANCE","yana","GDDaninot","HaHax2broJ","IXFIREPWR","IYIDiriliÅŸ","PParynhar","PQuestOn","SM","SMPRO","TTARGET","TTFatso","GOGREEN","Russia","SDD","MYTHICAL","AZhhhh","Trump2020","AB≤AB","Royo","siam","strontium","TypicalYT","¡COLOMBIA","¡COLOMBIA","₮ⱧɆ₳₦₲","〘☢〙","ê§à¼’☬Yee☬༒꧂","KONG","â¤Ð³Ð¼Ð°Ð¾Ð»Ð¿Ð¾Ð°Ð¿Ð»","keysmash","algeria","⫷♔ツ⫸â‚€₣â‚Ø","â—™Cubeâ—™","█▬██▀█▀","█▬██▀█▀","☾★🇵🇰","♂emily♀","♥☻☺France☺☻♥","♥ELENA♥MX♥","♥Emma♥","♥OHFRANCIS♥","✠Huxery✠","â¤AMERICAâ¤","â¥â¥ð™ªð™¬ð™ªâœ‰","✨ℱỮŘ¥✦","☙Ѻâ§","âš–ï¸for🇵🇰","0TanqR0YT","11000","11","100legal","100PLS","100BOY","10005","10001","100000like","123yurdead","1234567890hm","1W","2shotsVodka","2cuz","2cuzsweden","20BOMSPLS","20cent","22W","2bias","2mokeycat","3582","3D","3r1k","5worldcups","5worldcups","6893","69420fu","6RSKY9","700fu","7snoo","8D69","a","ABitTired","acat","agoodname","AMAAAADMAN","aperson","Asmallloan","A","aguy","APerson","AA","aaa","aaaaa","aaaaaaa","aakashtheboi","Aakhyan","aakkash","aaon","Aarav","aarope","aayashpro","aayyy","AB","ababua","abbeäbög","Äbbëï","Abby","Abc","Abc123","abcde","abcdefg","abcneat123","Abdul","Abdulaziz","abdullahhi","abdulmajid","abekat","abi","abir","ABIR216","Aboriginal","AceOfSpades","achoo","achtung","acts238bi","addevil","ADA","Adam","ADAWE","ADDJZD1029","Addie","AddieðŸ°","ADR","Adrian","ADROS","adsa","ADSF","Adventurer2","Æ","aeiouyyyy","AG31","agentx9999","Agi","Agtzsafety","ahbaba","ahh","ahhaha","ahhh","ahmad","aid","Aidan","Aiden","AIDENROBINS","aids","Aigarosik","air","AIRFORCEGIRL","Ais","aiskkdSK","aj","AJPLAYZ","AJYomastr","ak47","AK47juice","akaash","akaysha","Akbar","Akira","Al","alabama","AlanEdam","AlanWalker","alaniakacat","ALB","Alba","alban","albania","Albania4ever","albert","AlbertEnstin","Albertnoobb","alegor","AlejoToro","alek","alelilisisi","AlenJins","alenroshni","AleQu","Alex","alexa190","alexandra","Alexey","ALEXIS","alexx","Alexzandra","algeria","algerianboy","algirianboy","Ali","aliraza","AliSh","ALI07","AliA","alice","aliv","ALIVE","AllBlacks","allahakbar","allect","allia","Almidorya","alphawolf","Alred","Alvato","alx","Alyssa","AMsavage26","amanda","amantegado","Amarica","Ambushflex","Amelcia","amelie","AMERICAYEET","americabest","AMERICABABY","ametz","amgfriends","amitsharma","Ammar","Anarchy","anasaqil","Anasun","Ancalagon","ANCIENT01","AndIoop","andres","Andrey","andrey22807","android","Andromeda","andrw22","angel","angelamunt","angelo1510","angeloabas","angg31","animals101","Aninha","anis","anitaa","anna","annabortion","ANNAFEDE","Anonihouse","Anonymous","ANONYMOYS","anyád","ⒶⓄⒾⒻⒺ","AON","apepa","AppleInc","applypie","Arabsno1","araceli","aragatina","Ararat","Ardian","argentina","arhaan","AriANNA","ARIANNA77","ariel","Aritz","Arizona","armagedon","ARMENIA","Ãrpádvezér","artem","arthur","Artury","ARYANRACE","as20","Asd","asdf","asdfgh","Ash","ashe","ashley","Ashmita","AShoky","AsianMan","aspessoas","aspod","asta","ATAHAN","atankwadi","atizaz","AtletiMadrid","AtomicNut","attack70","aubrie","Audrey","Auri3","Aurora","AUS","Ausbest","Ausie","Aussie","aussie1","AUSSIE2","AUSSIE64","AussieAussi","Aussiebeast","AUSSIEROO","AussieAussi","aussie18","austin😠😇😜","Austrailia","Australia","Australia1","ava","AvadaKedavra","Avagyan","Avalak13","avalina","Avans","avd","aver","avi","AvocadoToast","Avrey","awd","awe","Awesome","awienchewie","axelliamkl","AXIS","Ayaan","ayaz","AYBARS","ayberk","ayden","Aytric","Ayuma","az","azan","AZERBAIJAN","Azerbaycan","AZÆRBAYCAN","azz","Azzyland","B","BGFCRTEN","BSAUCE3gam","b2by","bab","Babilawi","Baby","babylips","babyJack7","BACKINNAM","badbunny","badr","Baguette","Bahartet","Bahrain","bahraini3451","Baju","baka","BALI","baligeul","balÅ¡a","balta","Balzac","bam","bamam","BAN","banana","Bananaboat","bananaman","bananapotato","Bangladesh","Bara","Barni","barrhet","bart","bartsimpson","bartolo","Baryonx","Bäschti","basem","Basher","batty","bautista","bazing","BB","bbb","bbobbobo","BC190","bd212","BeakersLab","Beanos","bear","Beast","BeastMode","Beau","Becca","BEEFCURRY","beep","Bees","bejnjamin","Belarus2","belgium","Belgiumteam","Bella360","bellathecat","Bello","BelynG","ben","bendover","BÉNÉ","Benet","benitocamela","Benji","berddewalvis","Bernie2020","Bernie2020","best","BESTBOSS","BestPlayer","bestio","Bestie2","bestisindia","besty","bfcjfv","BFFs","bh","bhhygu","bhoongar","bia","biche","bicth","bielARTICO","Big","bigboi","bigbois","bigchicken","bigdad","bigdaddy","bige","BIGMAC","bignicca","bigpapa","BIGSHAQ","bigsista","bigslangers","bigboy","BigBoyNOOO","bigbrain","BIGBRAINS","bigboy1158","bigchungus","BigChungus69","BIGETRON","BIGGERSON","BIGGGGBOY","biggiecheese","bigpeen69","BigRgo","Bigs","BigT","bigtoe","BiH","BiiGMakk","BijuMike","bill","billaraa1","Billy","billybai","Billz","Bin","Binder","bip","biroBR","bishop","Bj","bjorn","BK","Bl3ckJackYT","BL7","BlackFlash","Blacky","blake","blantra","Blaster","BLClRE","Bleh","bleumeanie","bling","Blink","BlipBlop","BLITZ","Blizzard156","Blob","BLOBBOY","Blobble","blobs","blobsly","Blocked","BLOCKITY","Blood4Life","blossom","blow","blowme","bluthebest","blubblub","blue7y","blueberry","blueberrypie","blueboy","bluebronco7","bluhbluh","blur","Blur2","blur3","BM","bmw","BO","boas","bob","bobesponja","bobross","bobthenoob","bob100","bob2","boba","bobbone","bobert","BOBomb","bobplayz","bobthebuilde","bobyz","Bochisback","bode","boe","BOEF","Bog","bogleo","BogDan","Bognar","Boho","boi","boiii","boizzzzzzzzz","bojkata","bok","boneless","Bonitãobr","Bonny","boo","boof","BOOFI","booger08","Boohkkake","BOOOOOOOOOY","BOOP","boot","bop","bordbistro","börkviking","borna","bosna","BOSS","bossTWBM","BossDude20","bot","botboooooot","BOT20","BOT1","bot1212","bot12122","botaaaaaa","Bots","bouji","boy","boylovesme","BoysInGreen","boyviking","bozo","braaaaaaaaap","braaaaaap","brady","Brainiac14","Brasil","BRASILCARAI","brasilmatt","BRAXTON","Brayan","BRAZIL","Brazilmito","BRAZILMITO2","Brazilmito","BRAZILRULES","BrazilSnake","brenaopvp","Brendoo1","Brett","Brian","brickboss","BRITIAN","British","BritSpeed","bro","Brocklysan","brofourt","Brookieuwu","brooklynn","brooxslugger","BROSKITO","BrownBear","bru","Bruh","bruklin","Brunofoda","brushmyhat","BRUTE","bryleigh","BTS","btsarmy","bubba","bubby","bucins","Buddy","Buguinha13","Bulgaria","bulldog68","Buna","BUNINGSSNAG","BUNNINGSSNAG","Bunnyfur","Bunnyo","burger","Butkizz","Búúúzi","buwygib","BuzT","bye","BZX","C","cvcbgnbfm","c2","Caam","caarlaaaâ„ï¸","caca","cacawater","cade","caden","CAIO","cake","calabresa","caleb","calebb213","callum","cam","canadabest","canadasucks","canadatrash","Canadalife","CanadaLeader","CANADIANS","Candinho","CANNON","Cantu","Capitooooosh","Cappapotomus","CAPSLOCK","captain","CaPtAiNMaRs","carenzo","carl","CARLLLLLLLLL","Carlos","CarolusRex","carrot","carrots1","CARRSRSTDYYT","CARSONCAVE","cart","Carter","Cash","cat","catboyisaac","catcher","catforcanada","Cathal","CaThErIne","CatMaker","cats","CATS4LIFE","caule","CAussier","cc","ccgamer","ccccc","CerealKiller","CF","chags","chai","CHAIR","champ","Champion","chanyeol","chao","Chà o","ChaoCB","CHAOSCC101","chap","char","chariec","charliegren","charlotte","chase","ChaseH","Chaselliot9","Chavezv","ChavezVive","chckenvndlo","Checkmate","cheenema","cheekibreek","Cheerwine","cheesballxx","cheeseboi","cheeseburger","cheezydibz","chengchang","Chesse","Chewie","chgicken","chicken","chicorey","Chile","chill","chillB","Chilllllllll","CHiNA","CHINARULES","CHINGONA","chinoooo","chistmas","Chloe","Chomp","Chopper","chris","chrisbrunt","christian","christine","Christmas","chuckllboy","chuglet","chungoscrun","chynn","Cirrus","cisarmilos","cj","claire","Clara","clash","Clatter","Claudia","Clenched","Clint","CMoney","cnhwrg","coal","cobby","cobos","CocaCola","coco","codelazar","Codewolf","codelazaryet","colombia","Colombiahpt","comeonuk","cometudo","comisuamae","COMMIEKILLA","commonwealth","Communism","Computer01","Conic","conor","conquistame","controlwhax","CookieGamer","CookieGuy","cool","coolboy","coolguy39","Coolman","cooleo","coop","Cooper","CORBIN","Corey","Corvus","CosmicBagel","Costarica","Cougarclaw","CoulombCube","Cowgoesmoo","COYR213","CR7","crack","crackhead","Craftian","crainer","crainer1422","crazynonga","CRAZYARNO","CrazyKidooo9","CreeperAwMan","Crimeaisours","cristianocr7","Croatia","Croatia4Life","Crocomire","crownkiller","Croydzzz","cskns","ctrlw","ctrlwteam","ctrlw","ctrlwHACK","ctrlw","ctrlwforspee","CtrlWToHack","cube","cubix","CUCA","cujo","cullengreat","cupcake","Curry","cutehunter","Cute247","cw","CYBERHUNTER","cykablayt","CykaBlyat","cyprusdemon","Cyrus2","CzechEmpire","Czechia","d","daway","dab","dabmaster","DaCeeb","dad","dadaddy","daddy","daddyo","DaFisHBoy83","Dafloppa","daichei22","DakDudez","dakota","DALESNAIL","DaleWhite","Dallasusa","DaltonWGG13","dalyarak","DAMONKEYPREZ","dan","danceisfun","Dancequeen","danger","DangerMouse","dani21","daniel","DanielUSA👑","Daniella","Danislav","dankdoge","Danmark","dannybot","DanTDM","dantegol1432","danymany","DANZ","dapizzaman","Darius","Dark","DarkNebula","darkleader","Darkyz","darrison33","Darsh","DarthSauron","dasda","DASH","DatiMomtente","dave","David","DAWG8","dawnelle","dawsdhbabad","day","DAZ","DBTCAMERON","DBTdiesel","DBTJames","dd","ddd","ddog","De","denaam","dead","Deadpool","deanmarney","DeathItself","DEATHOFKILL","DeathPlays09","debaixoviado","dedi","deevegemie","DEEMAR","Deepak","DEEZNUTZ","Degurchaff","DeimonEXE","Dejmian","DemREREs","dEm0g0RgAn","Dema","Demid","demogorgon","demongurlie","denisa","Denmark","dennis","DerEchte","derf","DerGerman","deriveomr","DerNEGER","desmatasão","destroyer","destrukt","DEUTSCHLAND","DEUTSHCLAND","Deutshland","devansh","dfew","DGYA8805YI","dharel","DHPstudios","Diamondlucas","diana","DiarArifi","diara","die","DietoDeath","DienoOB","die25","Dieforme","DiegoChacon","Dieku2909","Dieku2909MX","Diex177","dieyou","DiggyHole","digitalkids","Diktator","diman","Dimka","Dimond","dinmamma","dingdong","Dingleberry","dingo","DINGOEZo","diosama","dio12345","Dis2008","disney","dkofjkvdfvfn","do","DOCTRLW","doge","Doh","Dom","Domiiiii","Dominate","DOMINIKXY","DonaldDuck","DonaldTrump","DonaldTRUMP","donthurtme","Dontkillme","dontkill","dontkillme","DoNtAtMEbRo","dontkillnoob","doof","DOOFIS","doom","Dooney","Dowdi","drpaper","DracoHeart","dragnealife","drago","Dragon30","Drama","dreizer","DREWSKI","dripak47","Drisikray","DrizzyAiden","Drogon","DropBear","DrUgs","DRUNKFIG","DRUNKOBAMA","ds","dsallsa","dsawwaa","dsf","DTMdan","dtrgfxfghuyg","Dubai","ducanh","duck","duckduckya","duck20","ducky","dude","dudulindo","dumpstered","dutch","dxrkshxdxw","dyl","dylanperr4","dynamois","dysha","Dziadzia","e","EMASTERMORT","eromero","Eamon","EastNed","easy1°top","Eat","eAtiT","eatme0","eatme","ebuking","ed","eden1","Eder","edgar","EDKH","eeee","eeeeeeeeeeee","Eeonegee","eevee","egg","EGGGGGGGG","EgoitzHernandez","Egypt","eh","ehan","elguero","ElSalvador","ElThirox","ELVIEJO360","elaine","ELAM0","ELENA174RUS","eli","Elias","eliassucks","elijah","Eliminater","EliTinyRex","ella","ElmastroOO","elmira","EloyFerreiro","Ælqasım","ElRoberto93","elsacha35","elvis","ELVISOMG","ElWachin","Ema","Emad","Emanuel","emerald","emil","emily","emily18","eminem","emir","Emirkohall","EmirPr14","emmet","empireofis","EMPIREMEMES","emresikecek","Engille","ENGLAND","EnsarV7123","Enzito","Enzoplays","epicnoob","epicpro","EquipoMéxico","eragon","eresmariqua","eric","erichbete","Erick","ERICLOL","Erik","Erli","ERNAR","Ernesto","erwef","Eshla","ESPAÑA","Españita","especteral","estonia","eth50","ethan","EthnicBrit","etyg6f4567v7","eua","eufwe","Eugenecom","EveGet","Everleigh224","Everydaybro","Evgenii","evil","EvilJohn","EWAFAKA","EXGuardian","expectations","EYELIGMA","eyes","eznumber1","f","fShaman","fun","FrUsSia","fk","Fckoff","Fckoff","f111","faa","facundo","fady","FAHEEM","faith","faku","Falak","FANAF","fantastic5","far5","farhan","FARİD","farleyfun","fatpig","fatpig","fatafatland","fatanah","FATHERLAND","fatty","faye","FaZejarvis","fazelucas","FazeUzamaki","FaZeAtlantic","FBI","FCKU","fddjbkhbjkdf","fdgfh","fdkjm","fearless70","Feetus","fermito2008","Fernanda","Fernanfloo","FERRIX","FEW","ff","fff","ffff","fgeetv","FGEETVFAN","fgeev","fgfd","FGTEEV","fgteevAarav","FGTEEVDAD","FGTEEVDUDDY","fgteevfan","FgteevLexi","FGTEEVDUDDY","fgtv","fgtvfan","fgtvduddy","fgtvv","fgtvvyfan","fgva","fhhcvhvdvhhg","fiawsome","Fierce","FIFI","Fightme","FightMeNOW","fighter","filipt","filipino","fire","FIREBOY","firered","FISHSTICK","fishy","FiVx","fizzgig","fj","fJWASDKNFIO","Flame","flamingo","Flash","Fletch","FLEXTAPELF","flipous","Flitzdefelar","float","floof","Flora","florida","Florijn","FLYBOY","Flyingsolo","flynn","folk","FOOT","FORAUSSIES","Forstraya","Foreigner","Forge","Forrestgump","FORTNIT2","FORTNITECOOL","Fotis","fourtwenty","Fox","foxysoap","foxysoap","fr","frahermes","Francewillwi","Franco","Franco777","francoooo","FrancsFranco","FrankPepe","Frankenstein","freank","Frece","FRED","freddy","FREEFIRE","freek","Freence","Frenchboy456","FrenchPlayer","fresh","Freya","friemelkont","friend","Frodo","froggyboy483","Frooty","FrostKing","FrostFire","frozen2","FRT","Fryskjongkje","fsd","fsu","ftgvfamboy","fu","fucjswedan","Full","Furt1","futdebt","futebol","FutureHacker","FUZIONS38","fvv","fwog","Fyre","ℱгίєηđ","g","Gaaaaaldi","Gabe","Gabeitch","gabeitches","gabeitch","GABEE","gabesdad","gabi","gabienivaldo","GABIFOOTBALL","gabigol","GABO","gabriel","gabriele","gagaga","Gage","GalaxyPaper","GalaxyBlitz","GalaxyKnown","galexyyyyyyy","Gallardin","Gamer101","gamerbent","GamerJax11","Gamers","gamingkhan","gandork","Ganesti","gang","GanjaWay420","Gapci","Garlictwins","garrett","gatopanama","gauthampro","gay","GayNiger","GB2A","gdhenrique","gdaymate","GEAR4LUFFY","GEHDT","Gemany","gemma","GemðŸ”ðŸ•ðŸŸ","gendikari","GeneralTOM","GeorgeðŸ–ðŸ·ðŸ½","Georgia","Georgian","GErma","GERMAN","GermanGuy","GermanReich","Germany","Germany1944","GermanyIan","germs","GerryAdams","gesuzzo","getclapped","getgud","getrekt","Getoff","getmethanos","GetNaeNaed","GetRektM8","gfdxhgzs","gfgdfsgdgd","gfgfg","GG","ggg","gggg","Gggggggggggg","ggman","ggs","ghost","gialy","gibs1234","giladoriz","Giocatore","Gipssksmm","giselle","GlaGlaGlaGla","Glitch222","GLORIOUS","Glue","Glugglug","gm","gmb","GMFMATTEO","GMSCORPION","go","goAUSTRALIA","GoCanada101","GoNepal","goNZ","goat","GoAustralia🇦🇺","goblin","GOCANADAGO","gogeta","gogo","gogogadget","gojira","GOKU","Goldpaper","goloma","gonnacrushU","good","goodgirl","goodoldUSA","Goodbye","google","GOOIE","GOOTED","gordominais","gorqui","GotaGER","GPDenmark","Grace","Grades","GradovskY","Gramma","Gran","Greaselight","GreatGermany","greece","GreekGeek","Green","Greg","Gregory","gretarex","Grey","greycouch","Grian","Gringo","gruccigang","Guardsman","guatemala","GuavaJuice","Gucci","gui10","Guilherme","Guizinho","gurnishan","GUS","GustavVasa","Gustav2Adolf","gustavo","guy","gyggygygygyg","h","hg","ha§cker","Habilis","hacker","HagenGANG","HagenGANGSTA","haha","HAHAHAHAHHA","hahahha","hai","hailnorway","hakan23cm","HAKER","hallahwalla","ham","hampizza","hamoodeh","hamza","Hanii","hank","HappyBoy","happyplace34","Har","hardesnarl","haranga","hardik","Harrison","harry","HARTKVTKUPV","hatz","HAWAII","hayhay","Hazbinhotel","HECTOR","hedgi","heehoo","hehe","heheeh","heipÃ¥deg","heinrik","hejhej","hejjj","Hekler","Helen","HELO","help","HELPFORNUKE","helpme","henk","henry","Henry2209","henrydanger","Henryking","Her0","Hermione","herobrine","Hexa","hey","heyyousmel","heyhey","HEYIMCASEY","Heylo","heyyyyyyy","heyyyyyyyyyy","HGC","hgfd","hhh","hhhh","hhjjhjhjjhjh","HHKB","hi","hibobandje","hiboy","hidude","hiimstan","hiluis","hipeoples","HiWalkers","hi123","hidie","hiperson","hiwyatt","hi😛😛😛😛","hid","hidde","HiddenLeaf","Hideintree","HIGHFIGH","hihi","hihihihi","hihihihihihi","hiiiiii","hiiiiiiiiiii","hikeplays","HillyBilly","hindustan","hipe","hirochima","Hitman","HiTTVbtw","hi😛😛😛😛","hjb","hjgkljÅŸsdfos","hjjj","hjk","hkiufit","hkv","hmm","hojoe","Hobbit","hockeylover4","hoddieryne","hoe","HOGWARTS","Hoi","hola","Holdenchan","hOleio","Holly","HolyRomans","HOLYJARVIS","HomerS","HONDURAS","HongKong","HONZA","HOTDEATH","hotdog","hour","houston","houthirebel","Howyoudoin","howdy","Hristijan","hrllo","HSWR","htflame","Huddy","HUEstation","Hufflepuff","HUGO","HUGOIPTV","hugoprohaker","Hungary","hunter","huts","huzefa","hvfhjjmgjvf","hwy","hxhxjjk","Hyacinth","hyh","Hyper","hytw123","iamanoob","IamCharles","IAMDAðŸ","iamdrad","IAMGROOT","IamNoob","iclappedu","igot100nvm","ikillyou","iloveCHINA","iloveyou","Inoharmu","inokill","ipro","iwannadie","IwantPeace","iwilleatu","iwin","iwinsike","Imgreece","IamDAðŸ","IAMDAðŸ","IAMMENACE","iwillbeat","i97","ialwayswin","Ian","ibad","icecream","icebear42","icecreamking","iced2","ICEman","ICEPAJINGKO","Ida","idiot","idk","IDK18","IDOS","idris","Ifyou","ifirst4evr","ifkillmeugay","igotthesnap","iHASYOU","ihatemylife","Ihjhy","iiiii","iiiiiiiiii","iiiiiiiiiiii","IKEANEMPIRE","ikjuhygtfrde","IKKO","ilie","illrollya","ilovecorn","ILoveMyMommy","Iluvcats","Imamer","imatoast","Imatree","imdepressed","imgaymama","iminschool","IMTHEBEST","Imyourboss","IMIRISSH","im100india","IMAPAPER","IMASQUARE","ImThanos","im100percent","imawinner","imachristan","Imaunicorn","imbryk","imCANADIAN","imcoming4you","IMGRINDIN4UK","ImJustDrunk","immwinbruv","immigration","IMPEACH","Impeachment","ImpeachTrump","Imperium","imtc","imusti42","india","Indiarules","india560020","Indiabest","indiaisbest","indian","INDIANBOSS","Indiangame","indianking","IndianPro","indonesia","infinity","ingooooooooo","ingrid","Inklink","INKYZ","inuyasha","Invensible","io","io2","iornmanmk75","ios0","IOU","IRA","irakot","irairaniran","IRAN","IRAQ","ireberrrr","ireland","irene","IRIS","IrishBrit","IRONMAN","IronSabbath","ironmanmk14","ironmanmk608","irshlad","isthebest","isaaac","isaac","IsaacandSa","IsaacHLACS","isaak","ISACTYB","isam","isamil","Isamilpro","ISINHA","Islambad","ismailovic15","ISMELLPENNYS","Israel","isreal","issasheep","IT","itvictory25","ITAKILLER","ITALIA","ITALIAN","italy","ItalyBoch1","ITALYYYYOwO","itsmeee","itsyeboi","ItsBrunoYT","ItsOver","ıubbjhızuui","iungiyoibbbb","Ivan","IvanBars","ivangol","IWINYOULOSER","ixpo","izahia","Izzy","I💗😘Jacob","J","JERK","jt","j0enu","jace","Jaci","jackbenimble","jacob","Jacquie","JAD","jafetv593","jaidyn","Jak","Jakdude","Jake","JakeCool","JAKEWALL","jakemerecr","jakituning","jakkiesmith","jakobandmax","jamaicajr","JAMAICA4LIFE","james","jamesw","jameswardp5","jan","janbannan","JasmineSandl","jason","javi","jaxon","Jaybae82","jayden","JAYJAYBOYY","jaylen","Jayle👟locker","JayMinecraft","JAyyy","jaz","JBEE","jbl","JD","Jdvinter","je","Jemama","jebisesrbija","jed123456789","jeef","jeff","Jeffery","jeffy","jelly","jellyfan","Jelly20","Jellybeans","jellyiscool","JEMMADAUNI","jenne","JENSNORRMAN","Jeonghyeok","Jeremiah","JeremyStoke","Jerry","jessica","JèsusCrust","JesusSaves","Jetsky","Jewh8er","Jews","jezwik","jfng","jhetalal","jhlkhlkh","jhunvhuvvc","Jicken","Jigglewiggle","JimJamJong","Jimbo","Jimenakiller","jimmy","jimmyswag","jimmybob","JingleBells","JJ","JJs","jk","jkhh","Jkk","jksdjksdqa","JL","jlovo","jmlvk","jo","jomama","joddiejo","joe","joedaddy","JOEMAMA","JOEmoma","Joe","JoeMoma","joemooomyy","jOEmAMmA","joey","Jogador","johan","johao","john","JohnEllis","JohnSA","johnson","JOJO","Jojoeeta","JoKaRy","Joker","jomo","jon","jonsnow","jonathan","joni","JOOJ","jordan1","jordankiller","jordigay","jordyn","jos","JosBanana","jose","joseA","JOSELOL","JoseMourinho","JosephiKrak","josh","JoshTSM","joshyboy","JoshyLegends","josyel","Jotarokuzo","Joueur","JR","jswag","jtt","ju","juan","JuanM","juanson","JuChEGaNg","judgerachel","Juegagerman","Juhis","juice","JUJU","julian","juliana","Julie","julien","julius","July41776","Jumbo","JuneIparis","junebee09","Jupiter","Justice","jvsqod","jx","JðŸ","k","k1rby","k1slyy","k1w1p0w3r","kaaaaarl","Kaaba","kaas","kafu","kage","Kaiismine","Kaitlynn","KaizariRum","KaKa","KAKADOCV","kakka","kaleb1204","kallölhurr","Kappetroelia","Karen","karenisab","Karl","KarlX","katgamer12","katgamer77","katrina","katsudon","kattrussian","Katya","katΣ ̄ãƒï¿£lll","Kawhi","kayaismylove","kayden","Kazakhstan","kbmnbuidhibd","kc","kcv","kd","KEBAB","kefal","Keizo","KekBur","KEKW","kenkaneki","Kendall","kendog","kenya","Kerby","Kerfuffle","KERMIT","Kevin","kez","kgf","khaled","Khattab","Kiddo","kidfury2123","kien","kier","Kilian20","kill","killme","killacat","Killer","killer","killerzombie","killmonger","KillTrump","Killz","kimjonuun","KimJongUn","kimberly","Kimitzuu","KimJungUn","kinca","king","King100","king11","KINGBOB","kingboy","KINGBRIER","kingJr","KINGKILL","Kingofall","KINGOFME","KingPengu","kingrian","kingio","kingiusti","KINGBEAST😛","kingcobra","KingGeorge","kingkinohi","kingman","kingnoah","kip","kira","KIRB","kirito","KittaM","kitty","kiwi","Kiya","kk","KKTC","KLAUS","klc","Klose","Klovborg","Knickers","knockknock","knockyghost","knowlen","koasar","Kobybilly","Kohai","kolek","kolibri","Konstantin","Konstantinos","koolcid","KOOLAIDMAN","Korea","kosi6ixx","kostis4","Krachen","KRAL","krall","Kramek","kret","krvtky","KSI","KT","KUBUS","KURVA","kuy","Kuzgret99","kvamp","kx","ky","kylancruz","kyle","kys","L","Lis4Layla","L0rdFox","L8Nick","lamalasuer","lafaucheuse","lachie","lachydachy","ladd","Lady","ladybag","Lagz","lala","lalalalalala","lalalalla","lalaland","lambolovers","lamis","lan","lance","landon","landonh","lano","Laraffel","LarsGille","LATVIJA","Laura","laurengallo","LaUruguaya","lava","laveylavey","Lavika","Layla","lazarbeam","LAZARLAZAR","lazerbeam","lazeryeet","LazerGlow","lazerkid","lbj","le","LePagg","leTUEUR","leah","leandro","lebanon","lebensraum","LEBHjr","lebronjames","lee","LeeLa","lega","Legend","Legomancalle","lel","LELO","lemmeget100","lemonisha","lenka","lentil","leo","leonekip","leopapi69","lesturmwaffe","LETITGO","letme100","letme50pls","letme100pls","letmeget100","letspiay","LetsPlay","letsswim","Letsdothis","levani","Levant","level1","levistinkt","levman","Lew","Lewiatann","LewisPlayz","lex","LexluFV","leys096","Liam","LiamYouTube","LiaoPing","liban","licea","lichtenstein","liconligers","lIeSucKs","lier","Lietuva","lightning","ligma","likeaboss","lilboat","Lilnazbol","LILpaper","lilbigbrai","lilnaxx","LILTJ","Lilac","LILBOB","lilbon","lilian","lilly","Lilo","Lilou","Lilpootpoot","lilproon","lilpump449","lilu","lily","LilyS","lilymachmakr","limbo","lina","Lionman","Lisa","LISE","litdabfam","Lithuania","littlej","littletimmy","LittleBilly","LittleBike","Liya","Liz","lk","lkd","LL","LLLLOOOOLLLL","Lloyd","lmao","lnj349","Loading","loaggy","Locky","loding","logan","logan205","LOGIN","lol","Lolhi","lolsdf","LOLUYT","lol2","LOL3D","Lolmini","lolo","LOLy","long","lord","LordPawwGame","Lordplayer","Lorenzo","loroivan","Lort","Losmejores","loser","LosinTex","Lost","LostCause","lotsofcash","Louis","lovedaniela","Love1234","lovebug","ᶫᵒᵛᵉᵧₒᵤ","lubagopzon","LUCA","LUCA83","Lucaasak747","Lucas","LUCIthelol","Lucy","Lucy3","luiz","Luk","Lukas","Luke","lukestorm","Lukerdepuuk","lukezquad","lul","LulaLivre","Lullin","lulu","lunapup","lunchtime","LUZ","LynetteNoni","M","MQaseem","MM","MVerstappen","MANDA","M10D","maas","Macedonia","macedonija","MACYMYDOG","maddog","MAD","madara","madddddd","maddy","MadHamster","Maegaard","maelspi","maguire","maitrephenix","maja","MajikPaper","mak","MakarAndM","makealgergrt","MakerFaffa","MAKI681","malala","MALAYMAN","Malaysia","MALEAH","malekBully","malik","malikye","Malta","mamaam","Mammarussia","mammamia","Man0fY33ts","mandascript","MANDO","manga","mAnixX","mannekam","ManofMelon","Manon","Map","mar","MARA","maravilhoso","MARCELO","marchelo","Marcolla","Marcos","marcproo","Margaret","mariaisabe","mariana","marianabr","Marie","MARIEM","marina","Marinette","MArio","mariotiffo7","Markelpro","Markify","markus","marquitos","marshmello","MarthaLupton","martin","MartinBrody","Martinli","marzens","MascaraMaro","mason","mason6","Mast3r4life","master","MasterT","MasterGamers","MasterJak","MatEagle","mateeney","MATEFRANCO🇪🇸🇪🇸","MATEJQQ","mateo","Mateusz","mathiscool","matheus","MATHIAS","Mathilde","Mathon54","matin","Matteo","Matthew","MATTIE","Mauri","maury2","MAX","maxmandel","maya","mayi","mazlum","Mazur","MC475","mcrhyan","mcfatty","MD","Me","me1","MEYOU","melucky","meme","menamejeff","Meow","mede100pfv","Mea","Meah","meeismarco","MEEEEE","meep","MEGAP","Megan","meh","mehmet","melis","melke","melon","MemeDawg123","memememememe","memes","meowkitty","Meowrianopi","Mephito","mepis","Merca","Merchanj","MercifulLord","merhaba","meri","merica","merlin32","Messi","mestre","met","Metamorphicl","METHFORKIDS","mew","Mexicanos","México","Mey","mhkgy","MI","miparaguay","mia","MiaD","MIALG","miau","Micah","Michael","Michel849","michiel","Mickis","micko","Midnight","Mids","miedema","mig","mightygay","Miguel","MihaxGaming","mihir","Mikaela","Mike","mikeock","mikey","mikhail","MIKI","Milk","Milliano","millie","millinum","milosh","mimai","mine","Minimorgz","minibytor14Y","minnietong","miriam","missbiggest","mit","mitchel","MITTNAMN","mitvit","Miya","Mizgin","MJ","MJOLNIR","ml","mmehdi","MMERFOREVER","mmmmmmmmeeee","mo","MOKHAN","ModelHorse","moenhide","moh321","mohamed","MohammadOmar","mokibaba","MoldovaÃŽnt","molina","Mom","momma","mommy","mommymommy","momo","momomcjol","MONEY","moneyman","monkey","Monkey13ðŸ’","monkeycat","Monster1","moo","moon","moon21","moosmilk","morgan","morganbrosct","morocco","MoÅŸMoldovan","moskow","Mother","Motherbird","motherland","MOTHERRUSSIA","motomoto","MountainMama","moutaindrew","moutasem","movelike","mqi34wejpiwf","mralmutari","mrbeast","mrcrab","mrkrabs","mrman","MrMeat","MrTurtleMan","MrMcBean","Mrblueberry","MrMinion","MrEboy27","Mrbeast6000","mrfreshasian","MrTyr16","Mrvel","Mrwoo","MSNB","MszV2","muchogracias","Mugh","muhammad","Muharrem","Muhib","muji","Mulle","Murica","murilo","muslim","muslimchild","muslimsrule","muslk","mustafa","mv","Mwahahahaha","MyDoom","Myfrienz","mynats","MYSECRET","mynameisj","Mya","MyDemons","mym","MyNameNoddy","MyNameIsJeff","N","NORGE","n54t834","na","NABIL","nacl","nadaave","naden","naimaD","naji","najib","nala","namastha","name","NameNoddyl","namit","nani","nanny","Napoleon","Nara","NARUTO","Nash","nate","Natedogg","NATII599PL","native","Nats","naughtyomega","naut","nave","naya","nayr","Nazar0360","NBA265","ndsbkhcs","Neachraoin","nebman","nederland","needreaper","Negro","NEIKO","nein","nenengbdi","NenengZ","neo","neolixy","neolixyFra","NeoTilted","Nepal","NerdyPorg99","netanel","Netherlands","Neupi","nevo","newhair","newkid","Newzealand","NextVictim","neymar","NeymarJr","NEZUKOOOO","Nf","Nguyen","ni","nice","nicepro","nici","NICK","nickgur","NickJ","NICKMANATE","Nickalberto","nickosama","Nico","nicolas","NicolasPro","nicole","nicu","NIGERIASBAD","night","nightcay","nijo","nikatsomaia","NIKART","nikefanjr","NIKO","NiNipineツðŸ","Ninja","Ninjakid","ninjaurso","NipNip","Nisaa","Nishad","NITROGALIXY","Nix","Nizam","nkls","NLgamer","nn","Nnbg","nnn","NNNsurvivor","no","nopewdiepie","nou","Noname","nou","noa","NOAH","nocapowo","noco","NOE","nohemi","NOLA","Nolan","nome","nomi","noncepedo","Nono","noob","noobbbb","noobie","Noobies2006","noobskill","nooob","nooooooobers","noooooooo","NoorPlayys","nope","Norge4theWIN","North","norway","NORWAYFORW","nosvsvos","nostopme","NotBill","notdumbey","Notyourtoy","Nothing","NotMyTail","Nova","NOVAKERIE","NOWUNITED","NowOrNever","NP1","NR077","nu3galu3","NUGGETS","Numnom","numsei02","nunes","nutnoodles","NUTYALIADO","nwo1840","nyancat","nyancat","nyck","nyoncatbye","Nz","NZBOIZ","NzRules","NZx3","o","OMuhammad","ObiWan","OBJECTION","OG","ogaurav","OGnarutobeat","OGnoobie","OHCANADA","OHYEAHHH","ohio","ohockey22","oi","oigdfggyhty","oij","ok","OKBoomer","ok","OLCAY","olddad","OldSkooler03","Oldtimer","olivia","ollallol","ollie","olliePRO","ollyisbest","ololo","omar","omarking","OMG4lif","OneF8","onepaperman","oniichan","OO","OOF","oofmaster","ookko","oooooooo","oops","op","OPTHEONE","optwisty","opiumGR","opiumIZI","opos","optimusprime","orange","orchid","Origarme","ORIGIN","ØŞ〗๖ۣۜǤнσsτ༻","Osc45","oscdosc","Oskar","oso","Österreich","otario","OTSOSU","Otto","oui","ouououououou","OurChael","ouss","outmeal","owe","owenpro","OWLCITY","Owlhoot","OwOgermany","owwnoo","OxoWhitney","Oyuncu","OZ","OzBloke","Ozmainia","P1953","PATrickO","PS6","P11","p13","p3n1s","pablo","paco","Padfoot","pahan","Paislee77","PAISLEY","paitton","Pak","pakzindabad","pakdabest","palistine","panama","PanchoVilla","pancrazienn","panda","panda16ðŸ¼","Pandix","panther","Panzer","Panzerwagen","papabear","papaio","PAPALÉGUAS","Papasmurf","PapelFolha","paper","Paper20","papermoney","paperio2","Paperio","PaperBoi","Paperiochamp","papermaster","Papers","papper","papperskalle","papy","PARASITABR","Parker","Parkerjr89Yt","partizan","party","parynhar","pastry","pat","patataxD","patilla","patria","patrickstar","patriotuluca","paul","paulina","paulius","pauly","PAX","PB","PCRagin","PCM","PCRM","PDOGELEGEND","peacemakers","Pecularis","Pedik","PedoMan69","pedro","pedroloveusa","peduncle","peeandpoo","peeen","Peen","peki","PENCILM8","pendejo","Penela","PennState","pennis","Penny","pennywise","pennywise","Pennyise","pennywisejr","penywise","people","pepalacerda","Pepe","pepo","Peppapig","Percybeth","perdy","pereira","perhaps","PERIDOT","Perko","perrro69","Persian23","Person","person20","peru","peruuu","PeterParkour","PewDiePie","peytonfanni","phantom","Pharoah","Phatan","Phe","pheobe","PHIAAAAA","Phil","philippenes","Philippines","Phloxx","phoenix","phong","PI077","Pia","pianter","pichu","pickle27","pidor","PIE","Pierce","Pierogi","pietje","Piggy","piiiiiiiiiii","pikachu","Pikachu786","pikaso","pILar","Pilipinas","pilippinas","Pineapples","PINGAS","PingPongPie","pipka","Pixalated","Pixel","pizza","pizzaman","PIZZAROLLS","pizza123","pizzaking","pizzz","PjIese","pk","plackins","Plankaster","PLANTAIN","Player","PlayerOne","player3812","player587joe","Pleasedon’","pleasedont","plolal","plonk","ploopy","plsletme100","Plywood","PLZDONTKILL","Plzdontkillm","plzdontkilme","plzplz111","pnoob","po","POJHIOP","poker","Poland","Polandbyycz","POLANDPLAYE","PolarBear","POLICECHASE","Polloh","POLO","POLSKA","POLSKAGUROM","pooh","poohfromztek","Poon888","poooooo","poooooooooop","poooooooop","poooop","pooooppppppp","pop","popcorn","popo","porcodue","Porgy","porphygennet","portabacaxi","portugal","Posada","Poseidon","poswjhygscfj","PoTLbEaR","potato","PotatoLover","POWER","pp","PPWater","pppp","pppppp","Pranked","Pratham","Prentes","PresidentXi","pressctrlw","prestoboy","preston","prettydark","primetime","princes","Pringles","PrinzEugen","pro","PROStatus","progamer","proinusa","pro360","Prooo","PROS","prosciuttix","ProudAussie","proudtobePK","ProZ","pseudo","PSM2005","PSU","PUYSTILLB","PUBGMOBILE","PUMBA","pumpkin","PumpkinKing","puppylover","pups","Pure","purplegrape","Purpureon","PurringMotor","PUTIN","putinukraine","puzzlezio","Pweedy33","Pwnd","pz9","q","QARABAG","Qeen","QINGDYNASTY","QixStar","Québec","QueebOfHeart","QUEEEEENN","Queen","Queenjuicy","QueenS","QueenjuicyðŸ˜","Quicoarpro","quim","QUINCY","QuinnDH","qwerty","qwertyio","qwertyqwerty","rrazzel","ruok","RMoldova","ra","RÄ","Raccr","RaceTraitor","rachelkgreen","RadiantOryx","Ræ","raed","rageElixer","rahmo","Raiden","RAIF","rainbow","Rainman","raja","rami","RandomUser","raphael","RAPHAEL075","rara","RATATATA","RATATAYEET0","Raven23","ray","raycon","Rayman","Rayy","raziq","RAZORBLADE","RdyPlayer1","rdyer","Realjelly","realibby","realization","reallycool","RealYourName","ReapYT","RedAxe","redfox","redrobbin","Redcenter","redpanda","ree","reee","reeee","REEEEEEEEEE","reeeeeeeeeee","rekt","REMYCRAKERS","Renato","rereeeeeee","REUTRIOX","reuven","revengetime","RexLousdal","Reyna","Rhayven","RHEC","RHENIUS","Rhubarb","rhyan","rhys","ricardo777XD","RiceFarmer","richhomie","Rick","rickenbacker","ridge","riggidy","Riket","RILEYRILEY","Ringer","RipDuko","RIPPER","rj","RM52","rob","robby","roblox","rock","Rocket","rockstar","rødgrød","rodrigao","Roey","rohit","rojos","romania","Romeo","Romes","romrom","romrorm","RonaldOMG","Ronaldo","RONALDO7","RONNIE","roosalieee","rose","RoSh","rot","Rouchdi22","rourou","roverbre","RoxaneBTW","Roxanne","roza","rozaanim","RPTROJANS","RR2","rRazvan","rrr","rrrrrrrrrrrr","rrwwertf","RSA","rtkgjgvkjgbj","RubiksMan","RUBY","RukiKazuki","rup","Ruperto","rusame","RusherTR","Ruske","Russia","RussiaPutin","RUSSIANDIMA","RussianSFSR","Russo","RUUUUUDDDDYY","ryan","Ryanthepro","Rylie","s","SARGE","SMA","s8n","SAWichmann","sabkat","saba","saba6","sabanayb","saber","Sacred","sad","sadcubeboi","Sadiq2010","safg","Sage","sai","said","SaikoBears","saitama","salgadoBR","sam","samBates","Samantha","sammysonic","SamoJako","san","SANJIN","sanone","sans","Santa","sap","sapwings","Sara","sas","SASCounqerer","sasha","Sasuke","sasuske","SaudiArabia","Saugat","savage","savageFoxy","Savagegemini","savion","Schnaubi","SCHON","schumhey","scissors","Scones","Scottzen","scp49","SCRSBRATHENS","Scrubby","sda","sdr","sdsdsd","seaku","SearchBts","sebiswaifu","SebasSZN","SEBASTIAN","sebasydani","Sec","sedres","sedric","SEF","sefs","senorpot","senorpotty","Senpai","Seppl","Serbia","Sergei","serginho","SERGIO","Serv","Servexal","Sesed","SEV7N","SGE","SGEKids","SGthe2nd","shadow","shadowkille","ShadowAlx","shae","shaheeribe","SHAI","shako","Shannon","shannonusa","ShanShan","Shanyya","sharshya","sharkpuppet","sharonsmaf","ShayanHadi","SHAZIL","shekelstein","sherry","shoj","SHopa","shortie","shorty","Shqiperia","shrek2","Shreyash","Shrungus","shutup","SiIvaGunner","SiLeNtViRgEn","SillyMrQ","sime","Singapore","sirawesome","SirGeorge","Sissy","Sixball","SJBoyz","sjonvander","Sk3tchYT","SKÃ…NEERVOR","skeletongame","skeppyBALD","skillz","skinnyafrica","skrtskrt","SKS16","SKSKSKSK","SKSKSKSKS","SKSKSKSKSKS","Skull","Skullcrusher","skypeace","Skyla","Skylanders","Slade","slak","slavdo","slemmsf","slimemoster","slimer1011","slipknot","Slitherio","Slithshowbob","Slogoman","slotz","smaker","SmallAsian","smallhead","smash","smellmutoe","Smellynegro","SnakeGamer","sneaKINGHU","Snickers007","snipsnip","Sniper","SnipezTylor","SNOR","snowflake","sobangamer","SocialismSUX","SofiaJ","sokk","SoldMyKids","someee","someone","sometimesno","somila","somo","sonia","sonic","sonicmax","Sonicspeed","sønnike","soolkig","SOPHIEKEEFE","Sorry","Sorryeh","SorryEh","sorryheather","souseupai","SouthAfrica","SOUTHKOREA","SouthKorean","Souwla","Soviet","SovietRussia","SovietUnion","sp","SPAIN","Spainisbes","Spainwinner","SpamInaCan","spangles","sparemeplz","SPARKLES","spbk","SPEEDISKEY","SpeedP01","Speler","spiderman","spiderroyd","Spieler","SpongeBob","Spottedleaf","sprinkles","SQ","squidbob","squidward","SrEzecolas","Srbija","SreeHari🎮","SrTheMeryem","SS","ssC","sskkiinn","SST","ssundee","StPierre","Stalin","STALKER","STANDREU14","StandWithHK","star","Starcastic","Starrysky","steen","stefan88","StegtFlæsk","Stephanie","StephDami","steve","SteveIrwin","SteveSmith","SteveIrwin","stfu","StickyPaper","STILAGa","StinkyMex","stnomas","StokolaN","StracheBeidl","strawberry","strong","stu","Stubbur04","stud","Stuxnet","suatunarda","sub2fgteev","Sub2SSunde","SUB2SUNDEE","Sub2sundee","SubToMe","SUB2BADGAMER","sub2blitz","sub2estib","Sub2MVRowner","sub2Patherz","sub2pewds","Sub2pudiepie","sub2RHally","Sub2Ssundee","subham","subpewdiepie","subpurpleify","SubSpyrosTDB","SubTobytalks","subtofralica","SUBTOPHANTOM","subtossundee","subtosundee","succ","suckdd","suckd","sullo","SULTAN","sunan","suomi","sup","SUPWITHYOU","supermine","superaaronAH","SUPERGI7000","SUPERHERO","supeRman","SuperNova","superpichu","superstar4n","SuperThanos","superuser","SUPREME","SUUUUU","suwayda","sv","SveaRike","Sven","Svenpro","sw","swampman","sway","swe","sweatbilol","Sweden","SwedenBörk","swedish","Sweet","sweetnsister","swetyswedn","Switzerland","ÅŸxh","syd","Sydney","sylar","SyrianRefuge","t","ta","T0mmy1010100","tamère","Tacoman","tacos","Tai108","tAimMDILG","TaiwanNO1","tajus","takethat","TaketheL","Talvisota","tamansuria","Tania","tankboy","tankyou","Tankart364","TANKSCOMIN","Tatann09","tauaneee","taxtywinky","tay","Taye","Taysian08","Tazlen","Tazzer","TBNRFRAGS","tea","TeamDenmark","Teamkanada","teamup","teamwithme","Team","TEAMUSA","teamcanada","teammalaysia","teamUSA","TeamWMe","Tedde","Teddy","TEDT","TehnoKing","tele","teletubbie","telletubi","Temas2323","teo","termico","tessa","Tessbajanger","tester","TetPez","tex","tfs","Tfue","THAHAHAHAH","thales","Thanoidugly","Thanos","ThanosSnap","Thanos1","Thanos2","thatguy","thawra","thcboi","TheGuy","thebeata","Thebest","THEBESTONE","thebestwd","THEBOSS","thebrusier","TheBuddy","thecholo","thecoolkid","TheDisowner","TheDoctor","TheEraser","thefake23","thefastest","TheGame","thegoat","TheHype","thekid","thekiller","TheKING","Thelegend","TheMaster","THEMVP","THENoob","theNXT","Theone","THEPENGUIN","thepro","ThePug","thesnowpand","TheSUCC","thebestguy","the0nlyJae","TheCatsFans","TheChukyYT","thedanklord","TheDGamer09","Thefiend","thegoat56","TheKillerBR","TheNameless","theodeng","Thepenguin50","TheProcess21","thethegiri","TheZakking","thhhhhh","THICCBOI","thiccymiky","THISISUSA","thizisUSA","THOMAS","ThomasTANK","thor","thotpatrol","thunderthe1","ti","tictocer","KSI","tifonl","TifoGang","TIGRE","TikTok","tim","Timhortons","Timo","Timorsrage","Timothee","TiNaO","tiss","TJENA","tnbq","tonemai","Todoroki","Todorov","ToeCollector","toeeater","TOESSS","Tolkeus","tom","tomn","TOMCOM","tomas","Tommy","tomtom","TonT0","tony","Tony24","tooooooooooo","TopRamen","TOPio2","torbje","tortle","ToryMusic","totalpharoh","toto","totolasticot","Totolito","TotusNata","Toyree","Tpdddd","Tr","TR3","trao","trash","Trenton","tributo","trinaty","trisha","tristan","troywilldoit","Truce","trudbucket","TrueComrade","truenopai","TrueNorth🇨🇦","Dream","xxsniperkidxx","gamer","aaaaaaaaaaaaaa","nosus","TRUMPsupport","*moan*","truse","tryme","tryme","tryghujk","Trympan","TsarIvan","tsjraj","tsmjeremiah","tsneia","Tt","TTTTT","TTVKingKay","TTVOWENLIT","TtvJaygucci","tumadarcho","tumama","Tuesday","TUKIK2009","tumadre69","tunghandsom","tuosorello","TURK","TURKEY","Türkiye","TÜRKİYE","türkk","Turky","turnip","Turpin","tushar","tutu","tutubiel","tuvieja","TUY","twinkywinky","twojastara","txera","TxRkkkk","ty","Tytheguy","u","UBOT","UeatIeat","umommy","USYAY","usuckiwin","UAE","UK","urrs","USA1","USM","USSR","UU","ugay","ulost","uaeisbest","Ubahn","ubermensh","Uchicago","Uday","udit","uhPanda","uhttikjbcxs","ui","uiiiii","UK4DAWIN","ukforlife","UKisBEST","Ukraine","Ukrainebest","ullfloat2","ultarvision","ultragoko","ULTRANK","umair","Umairica","umm","unapeca","unclephil","unicorn","unicorngirl","unicorncrazy","unicornnnnnn","Unitedking","unitedKingd","Unitedstate","UnitedStates","unknown","UNKNOWNX","UNKNOWNX","unspeakable","unspeakableb","unspeakablz","Unspeakale","uofaku5cvc","updara","upanddown","URbad","urdad","URDEATH","urmom","urmum","urdaddy","URMUM","urmumgay","urielsucks","urmomgaylul","urmumgay","urself","USAlteWay","USKiller","USMILITARY","uspatriot","UStrumpfan","USBorder","USA","USAEU","USABEST","USADEBOSS","USAdominate","Usaforlife","usaforwin","USAIsMyCity","USAkillyou","USAKING","USAMina","USAONTOP","USARULES","USAUSA","USAUSAUSA","USAUnited","URMOM","Jake","USANO1","USAಠಠ","USAAAAAAÆ","USAFORTHEWIN","USAisBetter","USAtrumpfan","USAUSAUSAUSA","usbruthers","usg","USofA","UstajSrbine","Usuck","uuuusssaaa","uwu","uy","Uzair","V","V00D00","V0rix93","vadfer","vale","Valou","Vanderboy","Vanessa","vango","Vanilla","vankata","VAR","Vargen","Vava","vb","VCcrew12","vedant","venezolano","Verby","Vesta","viavidi","victor","VietNam","viezejos","vikishow","Vikiingen","Viking","Vikinghorde","viktorblook","Vincent","VINCENTE","vinh","vinidibra","vinizx","VIRTRUS","vishvak","VisitTürkiye","viva","VivaChavez","Vivaespaña","vivaMEXICO","VivaVox","VIVEALGERIA","viveisrael","vkng","vlad","vladputin","VLADA","Vladimir","vlado","vlle","VoidZpace","voldimortina","Voldymorte","voodooking","VoughnDaBoss","Vovchik007","VOX","vs","VSCO","VSCOGirl","VSCOgirl","vuci","vufidviudhvo","vvb","vvbvbvbv","W0rldRun","WasaaaaDUD","wabble","WackyBacky","wallace","wantpunani","Wanturoil","war","Warming","warrengood","wartshoter","wasmama","wasd","wasezfe","WatarMelen","water","WaterBlaster","watermalon","Wavyy","wawa","WAYNE14","WE","weareGroot","Wewillwin","webby","weeeee","weener","wesad","WesGamer","Weston","Whaaaaat","What","WHATTHEF","WHATSAPPDIY","whiplash636","WhitherA","WhoCares","whodat","Who","whotfisnuty","WHY","WhySoMean","why","Wiiiiiiiiiii","WiiPiiFit","WiiPiiOnU","Wiktor","WilSmiff","will","william","willjoal","wilmer","WilyS","winkenya","winner","winston","Witruwiusz","wog","Wogan","Wojo","WolfLover","wolfpack","Wolfierose","wolverine700","woot","world","WorldKing","Worstplayer","wow","WOW","wowzerz","WriterGirl","wrwf","wsad","wtf","wueeee","WWPAPER","wwwww","WWWWWWWWWWWW","wyatt","wyattplays","wywy","x","xxa","X3DGamerYTX","x3m","Xagustin5111","Xavier","xazza","xc","XD","Xelan","Xhibit26ph","Xllth","XMAN","xmas","Xmasiscomin","Xoax","XS","xTman417xUSA","Xtrullor","xwolf","xx","XxJibTemixX","Xxnz4lifexX","XXOKWOWXX","xXVoidPlayzX","xyVikash","y","YUDUMB","Y1N6Y4N6","Y1N9Y4N9","YABOI","YADEDSON","yayeet","YaKingBoy","YAAHACK","yaaaaaa","yaboi4639","YahMan","yahooooo","YallAint","yallbots","Yamamoto","yamum","yanislepr00","yas","Yasqueen","yasmin","Yasmine","Yay","yea","yeah","Years","yee","yeehaw","YEEEEEEEEEET","yeeeeeeeeet","yeeeeet","yeeeet","yeeet","yeeetme","yeet","yeetboi","yeetmaster","yeetsauce","yeetsir","yeet42069","yeetgg","YeetMonters","yeetakis","YEETMAN","YEETYBOI","yeeyee","Yellowz","yelo","yes","yessirrUS","yfl","YGoUSA","yi","Yikes","YımırtaKafa","yiyiyy","YNWmelly","yo","yocheck","Yomama","Yobama","Yoboyjb13","YoGayIfKill","yogi","Yolo","yolopro","YOMAHDUDES","Yonadush","yonatanaviz","yonatanYT","yoriaplayer","yosra","You","YouAreDead","youlose157","younoobbb","yousuck","youtrash","youraBOT","YOURALTALK","yourawesome","yourdad","yourdoom","yourmama","YourMom","yourmommy","yourmomy","Yourmum","Yourname","yourpitaji","yourtheman","yourmom","YourName","yourdaddy","YourDead","YOUSEF","YoutubeViBe","youtude","yoyo","yoyoyo","yoyoyomama","yrt","YT","ythytfgvvhhh","YukheisMine","yuki","Yukiii","yukjh","yungpinch","yuriysid","yuyu999","YYeet","Yyooooythvhg","Yyyyyyyyyyyy","z","ZA","zach","zaden","zahary","zainab","zair","zaki","zammer1","zanderfire","zappierflash","Zarla","ZavenWolf","zavion335","ZAZA","zeluis","zeke","zekrom","Zemond","zen","zendel","zenitsu","zeus","ZeusNaCausa","zeuuubbbiii","zghjbnhb","ziad","ziggle","Ziggy","zimbabwe","Zispy","Zoe","zombsgaming","zoom","zoomertoons","Zorux","zuly","zVolcomBr","zwicki","zxc","zz","zzz","ZZZZZ","ʕ•ᴥ•ʔ","ΒΑÎ","Ελλαδα","Ελλάδα","ΕλλάδαGreece","οÏσαλία","алиÑаипапа","ÐнÑ","БешеныйХомÑк","Вадим","ванÑ","варпроф","ВикториÑ","Вова","выкторыÑ","ГЕРОЯМСЛÐÐ’Ð","Глеб","дима","ева","евик","жожа","иванка","игорь","Игрок","илонаш","илюхаилеха","ищупарнÑха","йуввпÑппеыаы","КатÑ","катÑÑин","Килер","Кирилл","КОЛ","Кошка","Кририлл","лаила","ЛОЛ","лох","макÑ","МÐЛЯ","мамаданила","МейблGirl","мейиржан","Молдова","Монова","наÑледник","нгпам","неИванЦойÑ","пенÑиÑ","пец","пидружка","ПОГ","праогкиа","привет","про","рорборибли6","РОССИЯ","роÑÑиÑ","рулёва","Ñлавалава","Ñмерт20","ÑмпÑм","ÑÑÑÑ€","СушиВок","ТатьÑна","уееор","человечик","ЧИКИБОМБОÐИ","читер","ЪЖСЛО","Ñцарь","Ñна","ღDairachanღ","�ð‰ð¨ð‰ð¨ï¿½","ð“™ð“žð“šð“”ð“¡","ð“¶ð“¸ð“¶ð“¶ð”‚","ð”¼ð•¦ð•Ÿð•šð•”ð•–","🇺🇸BO🇺🇸","ðŸ¢OppPSksKs","👀👀👀👀👀","👌👌👌👌","ðŸ˜","😎🇦🇱🇦🇱😎","🤓Reizuru🤓","🤩","🥖🥪ðŸŸðŸ”ðŸ¿ðŸ˜ƒ")
|
||
|
||
}},function(){return 1179392},function(){return 16777215},function(){return-15},function(){return"https://3kh0.github.io/"},function(){return 1.25},function(){return.1},function(){return 1.5},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return Math.floor(t(1,11))}},function(){return 10},function(e){var t=e._GetNode(0)
|
||
return function(){return t.ExpObject()-25}},function(){return 270},function(){return"out"},function(e){var t=e._GetNode(0).GetVar()
|
||
return function(){return t.GetValue()+" was ejected"}},function(){return"No one was ejected"},function(){return 7},function(){return-717706215031807},function(){return-30738534399},function(){return 11},function(){return-47872561120255},function(){return-717750023016447},function(){return"Outline"},function(){return"OilPainting"},function(e){var t=e._GetNode(0).GetBoundMethod()
|
||
return function(){return and(Math.round(t()),"%")}}]
|