'), _0x495bf7['close'](), _0x58a3db = _0x495bf7['parentWindow']['Object']['prototype'], _0x495bf7 = null, _0x58a3db) : (_0x5a1175 = document['createElement']('iframe'), _0xb2274d = document['body'] || document['documentElement'], _0x5a1175['style']['display'] = 'none', _0xb2274d['appendChild'](_0x5a1175), _0x5a1175['src'] = 'javascript:', _0x5141f2 = _0x5a1175['contentWindow']['Object']['prototype'], _0xb2274d['removeChild'](_0x5a1175), _0x5a1175 = null, _0x5141f2); delete _0x558152['constructor'], delete _0x558152['hasOwnProperty'], delete _0x558152['propertyIsEnumerable'], delete _0x558152['isPrototypeOf'], delete _0x558152['toLocaleString'], delete _0x558152['toString'], delete _0x558152['valueOf']; var _0x55df02 = function() {}; return _0x55df02['prototype'] = _0x558152, _0x2bc33d = function() { return new _0x55df02(); } , new _0x55df02(); } , Object['create'] = function(_0x211c49, _0x3497df) { var _0x1fa927; _0x1fa927 = function() {} ; if (null === _0x211c49) _0x1fa927 = _0x2bc33d(); else { if (null !== _0x211c49 && _0x30f5b6(_0x211c49)) throw new TypeError('Object\x20prototype\x20may\x20only\x20be\x20an\x20Object\x20or\x20null'); _0x1fa927['prototype'] = _0x211c49, (_0x1fa927 = new _0x1fa927())['__proto__'] = _0x211c49; } return void 0x0 !== _0x3497df && Object['defineProperties'](_0x1fa927, _0x3497df), _0x1fa927; } ; } var _0x2f1672, _0x3f30a9 = function(_0x2ff701) { try { return Object['defineProperty'](_0x2ff701, 'sentinel', {}), 'sentinel'in _0x2ff701; } catch (_0xe2ceea) { return !0x1; } }; if (Object['defineProperty'] && (_0x59dffb = _0x3f30a9({}), _0x3f30a9 = 'undefined' == typeof document || _0x3f30a9(document['createElement']('div')), !_0x59dffb || !_0x3f30a9)) var _0x11788b = Object['defineProperty'] , _0x57ad18 = Object['defineProperties']; if (!Object['defineProperty'] || _0x11788b) Object['defineProperty'] = function(_0x1024b8, _0x138335, _0x38001d) { if (_0x30f5b6(_0x1024b8)) throw new TypeError('Object.defineProperty\x20called\x20on\x20non-object:\x20' + _0x1024b8); if (_0x30f5b6(_0x38001d)) throw new TypeError('Property\x20description\x20must\x20be\x20an\x20object:\x20' + _0x38001d); if (_0x11788b) try { return _0x11788b['call'](Object, _0x1024b8, _0x138335, _0x38001d); } catch (_0x483dc4) {} if ('value'in _0x38001d) { if (_0x25faff && (_0x1616a7(_0x1024b8, _0x138335) || _0x3142e4(_0x1024b8, _0x138335))) { var _0x8a2871 = _0x1024b8['__proto__']; _0x1024b8['__proto__'] = _0x468d5b, delete _0x1024b8[_0x138335], _0x1024b8[_0x138335] = _0x38001d['value'], _0x1024b8['__proto__'] = _0x8a2871; } else _0x1024b8[_0x138335] = _0x38001d['value']; } else { var _0x8a2871 = 'get'in _0x38001d , _0x1aede2 = 'set'in _0x38001d; if (!_0x25faff && (_0x8a2871 || _0x1aede2)) throw new TypeError('getters\x20&\x20setters\x20can\x20not\x20be\x20defined\x20on\x20this\x20javascript\x20engine'); _0x8a2871 && _0xb5d6f6(_0x1024b8, _0x138335, _0x38001d['get']), _0x1aede2 && _0x489dee(_0x1024b8, _0x138335, _0x38001d['set']); } return _0x1024b8; } ; Object['defineProperties'] && !_0x57ad18 || (Object['defineProperties'] = function(_0x426e28, _0x429628) { if (_0x57ad18) try { return _0x57ad18['call'](Object, _0x426e28, _0x429628); } catch (_0x6c8e73) {} return Object['keys'](_0x429628)['forEach'](function(_0x54689c) { '__proto__' !== _0x54689c && Object['defineProperty'](_0x426e28, _0x54689c, _0x429628[_0x54689c]); }), _0x426e28; } ), Object['seal'] || (Object['seal'] = function(_0x1f52c0) { if (Object(_0x1f52c0) !== _0x1f52c0) throw new TypeError('Object.seal\x20can\x20only\x20be\x20called\x20on\x20Objects.'); return _0x1f52c0; } ), Object['freeze'] || (Object['freeze'] = function(_0x45df0c) { if (Object(_0x45df0c) !== _0x45df0c) throw new TypeError('Object.freeze\x20can\x20only\x20be\x20called\x20on\x20Objects.'); return _0x45df0c; } ); try { Object['freeze'](function() {}); } catch (_0x47abba) { Object['freeze'] = (_0x2f1672 = Object['freeze'], function(_0x5dd9ef) { return 'function' == typeof _0x5dd9ef ? _0x5dd9ef : _0x2f1672(_0x5dd9ef); } ); } Object['preventExtensions'] || (Object['preventExtensions'] = function(_0x519b8c) { if (Object(_0x519b8c) !== _0x519b8c) throw new TypeError('Object.preventExtensions\x20can\x20only\x20be\x20called\x20on\x20Objects.'); return _0x519b8c; } ), Object['isSealed'] || (Object['isSealed'] = function(_0x156dd1) { if (Object(_0x156dd1) !== _0x156dd1) throw new TypeError('Object.isSealed\x20can\x20only\x20be\x20called\x20on\x20Objects.'); return !0x1; } ), Object['isFrozen'] || (Object['isFrozen'] = function(_0x187732) { if (Object(_0x187732) !== _0x187732) throw new TypeError('Object.isFrozen\x20can\x20only\x20be\x20called\x20on\x20Objects.'); return !0x1; } ), Object['isExtensible'] || (Object['isExtensible'] = function(_0x2b4055) { if (Object(_0x2b4055) !== _0x2b4055) throw new TypeError('Object.isExtensible\x20can\x20only\x20be\x20called\x20on\x20Objects.'); for (var _0x420598 = ''; _0x427e38(_0x2b4055, _0x420598); ) _0x420598 += '?'; _0x2b4055[_0x420598] = !0x0; var _0x321bbd = _0x427e38(_0x2b4055, _0x420598); return delete _0x2b4055[_0x420598], _0x321bbd; } ); }; 'function' == typeof define && define['amd'] ? define(_0x1fb701) : 'object' == typeof exports ? module['exports'] = _0x1fb701() : this['returnExports'] = _0x1fb701(), !0x0, _0x5362f7['inherit'] = function(_0x412578, _0x5a0ff3) { _0x59dfb2['prototype'] = _0x5a0ff3['prototype'], _0x412578['prototype'] = new _0x59dfb2(), _0x412578['prototype']['constructor'] = _0x412578; } , _0x5362f7['generateCallback'] = function(_0x5a9ccf, _0x157153) { return function() { _0x157153['apply'](_0x5a9ccf, arguments); } ; } , _0x5362f7['NVector'] = function(_0x13c590) { _0x13c590 === _0x33a0ee && (_0x13c590 = 0x0); for (var _0x3629a6 = Array(_0x13c590 || 0x0), _0x5961dd = 0x0; _0x5961dd < _0x13c590; ++_0x5961dd) _0x3629a6[_0x5961dd] = 0x0; return _0x3629a6; } , _0x5362f7['is'] = function(_0x1b9c96, _0x5905f2) { return null === _0x1b9c96 ? !0x1 : _0x5905f2 instanceof Function && _0x1b9c96 instanceof _0x5905f2 || _0x1b9c96['constructor']['__implements'] != _0x33a0ee && _0x1b9c96['constructor']['__implements'][_0x5905f2] ? !0x0 : !0x1; } , _0x5362f7['parseUInt'] = function(_0xd22993) { return Math['abs'](parseInt(_0xd22993)); } ; }(Box2D)); var Vector = Array , Vector_a2j_Number = Box2D['NVector']; 'undefined' === typeof Box2D && (Box2D = {}), 'undefined' === typeof Box2D['Collision'] && (Box2D['Collision'] = {}), 'undefined' === typeof Box2D['Collision']['Shapes'] && (Box2D['Collision']['Shapes'] = {}), 'undefined' === typeof Box2D['Common'] && (Box2D['Common'] = {}), 'undefined' === typeof Box2D['Common']['Math'] && (Box2D['Common']['Math'] = {}), 'undefined' === typeof Box2D['Dynamics'] && (Box2D['Dynamics'] = {}), 'undefined' === typeof Box2D['Dynamics']['Contacts'] && (Box2D['Dynamics']['Contacts'] = {}), 'undefined' === typeof Box2D['Dynamics']['Controllers'] && (Box2D['Dynamics']['Controllers'] = {}), 'undefined' === typeof Box2D['Dynamics']['Joints'] && (Box2D['Dynamics']['Joints'] = {}), function() { function _0x4b0b46() { _0x4b0b46['b2AABB']['apply'](this, arguments); } function _0x1f8df6() { _0x1f8df6['b2Bound']['apply'](this, arguments); } function _0x4d3976() { _0x4d3976['b2BoundValues']['apply'](this, arguments), this['constructor'] === _0x4d3976 && this['b2BoundValues']['apply'](this, arguments); } function _0x89532a() { _0x89532a['b2Collision']['apply'](this, arguments); } function _0x3ef6a7() { _0x3ef6a7['b2ContactID']['apply'](this, arguments), this['constructor'] === _0x3ef6a7 && this['b2ContactID']['apply'](this, arguments); } function _0x5729af() { _0x5729af['b2ContactPoint']['apply'](this, arguments); } function _0x1cbb95() { _0x1cbb95['b2Distance']['apply'](this, arguments); } function _0x5ae390() { _0x5ae390['b2DistanceInput']['apply'](this, arguments); } function _0x1ef6d7() { _0x1ef6d7['b2DistanceOutput']['apply'](this, arguments); } function _0x5670f3() { _0x5670f3['b2DistanceProxy']['apply'](this, arguments); } function _0x2c66ef() { _0x2c66ef['b2DynamicTree']['apply'](this, arguments), this['constructor'] === _0x2c66ef && this['b2DynamicTree']['apply'](this, arguments); } function _0x4bcf69() { _0x4bcf69['b2DynamicTreeBroadPhase']['apply'](this, arguments); } function _0x537632() { _0x537632['b2DynamicTreeNode']['apply'](this, arguments); } function _0x1c3af7() { _0x1c3af7['b2DynamicTreePair']['apply'](this, arguments); } function _0x2a4c4b() { _0x2a4c4b['b2Manifold']['apply'](this, arguments), this['constructor'] === _0x2a4c4b && this['b2Manifold']['apply'](this, arguments); } function _0x149f76() { _0x149f76['b2ManifoldPoint']['apply'](this, arguments), this['constructor'] === _0x149f76 && this['b2ManifoldPoint']['apply'](this, arguments); } function _0x8ed9cf() { _0x8ed9cf['b2Point']['apply'](this, arguments); } function _0xc62c1f() { _0xc62c1f['b2RayCastInput']['apply'](this, arguments), this['constructor'] === _0xc62c1f && this['b2RayCastInput']['apply'](this, arguments); } function _0x396b76() { _0x396b76['b2RayCastOutput']['apply'](this, arguments); } function _0x4e69ed() { _0x4e69ed['b2Segment']['apply'](this, arguments); } function _0x248333() { _0x248333['b2SeparationFunction']['apply'](this, arguments); } function _0x822547() { _0x822547['b2Simplex']['apply'](this, arguments), this['constructor'] === _0x822547 && this['b2Simplex']['apply'](this, arguments); } function _0x5500bf() { _0x5500bf['b2SimplexCache']['apply'](this, arguments); } function _0x125a42() { _0x125a42['b2SimplexVertex']['apply'](this, arguments); } function _0x49a4a1() { _0x49a4a1['b2TimeOfImpact']['apply'](this, arguments); } function _0x598205() { _0x598205['b2TOIInput']['apply'](this, arguments); } function _0x454f37() { _0x454f37['b2WorldManifold']['apply'](this, arguments), this['constructor'] === _0x454f37 && this['b2WorldManifold']['apply'](this, arguments); } function _0x2625c9() { _0x2625c9['ClipVertex']['apply'](this, arguments); } function _0x43b51b() { _0x43b51b['Features']['apply'](this, arguments); } function _0x54c134() { _0x54c134['b2CircleShape']['apply'](this, arguments), this['constructor'] === _0x54c134 && this['b2CircleShape']['apply'](this, arguments); } function _0x445c8c() { _0x445c8c['b2EdgeChainDef']['apply'](this, arguments), this['constructor'] === _0x445c8c && this['b2EdgeChainDef']['apply'](this, arguments); } function _0x45d6b7() { _0x45d6b7['b2EdgeShape']['apply'](this, arguments), this['constructor'] === _0x45d6b7 && this['b2EdgeShape']['apply'](this, arguments); } function _0x2ac085() { _0x2ac085['b2MassData']['apply'](this, arguments); } function _0x1edeac() { _0x1edeac['b2PolygonShape']['apply'](this, arguments), this['constructor'] === _0x1edeac && this['b2PolygonShape']['apply'](this, arguments); } function _0x5b3c63() { _0x5b3c63['b2Shape']['apply'](this, arguments), this['constructor'] === _0x5b3c63 && this['b2Shape']['apply'](this, arguments); } function _0x700c40() { _0x700c40['b2Color']['apply'](this, arguments), this['constructor'] === _0x700c40 && this['b2Color']['apply'](this, arguments); } function _0x5ccd32() { _0x5ccd32['b2Settings']['apply'](this, arguments); } function _0x1f9c13() { _0x1f9c13['b2Mat22']['apply'](this, arguments), this['constructor'] === _0x1f9c13 && this['b2Mat22']['apply'](this, arguments); } function _0x3cfaaf() { _0x3cfaaf['b2Mat33']['apply'](this, arguments), this['constructor'] === _0x3cfaaf && this['b2Mat33']['apply'](this, arguments); } function _0x5b1b70() { _0x5b1b70['b2Math']['apply'](this, arguments); } function _0x184f16() { _0x184f16['b2Sweep']['apply'](this, arguments); } function _0x247156() { _0x247156['b2Transform']['apply'](this, arguments), this['constructor'] === _0x247156 && this['b2Transform']['apply'](this, arguments); } function _0x14038a() { _0x14038a['b2Vec2']['apply'](this, arguments), this['constructor'] === _0x14038a && this['b2Vec2']['apply'](this, arguments); } function _0x6bf0be() { _0x6bf0be['b2Vec3']['apply'](this, arguments), this['constructor'] === _0x6bf0be && this['b2Vec3']['apply'](this, arguments); } function _0x3f10c3() { _0x3f10c3['b2Body']['apply'](this, arguments), this['constructor'] === _0x3f10c3 && this['b2Body']['apply'](this, arguments); } function _0x43218d() { _0x43218d['b2BodyDef']['apply'](this, arguments), this['constructor'] === _0x43218d && this['b2BodyDef']['apply'](this, arguments); } function _0x5a6a9a() { _0x5a6a9a['b2ContactFilter']['apply'](this, arguments); } function _0x13a7bb() { _0x13a7bb['b2ContactImpulse']['apply'](this, arguments); } function _0xfadcd0() { _0xfadcd0['b2ContactListener']['apply'](this, arguments); } function _0xcd02fc() { _0xcd02fc['b2ContactManager']['apply'](this, arguments), this['constructor'] === _0xcd02fc && this['b2ContactManager']['apply'](this, arguments); } function _0x1cf84c() { _0x1cf84c['b2DebugDraw']['apply'](this, arguments), this['constructor'] === _0x1cf84c && this['b2DebugDraw']['apply'](this, arguments); } function _0x3bdeb6() { _0x3bdeb6['b2DestructionListener']['apply'](this, arguments); } function _0xdb145a() { _0xdb145a['b2FilterData']['apply'](this, arguments); } function _0xce79b7() { _0xce79b7['b2Fixture']['apply'](this, arguments), this['constructor'] === _0xce79b7 && this['b2Fixture']['apply'](this, arguments); } function _0x25ebba() { _0x25ebba['b2FixtureDef']['apply'](this, arguments), this['constructor'] === _0x25ebba && this['b2FixtureDef']['apply'](this, arguments); } function _0x38e103() { _0x38e103['b2Island']['apply'](this, arguments), this['constructor'] === _0x38e103 && this['b2Island']['apply'](this, arguments); } function _0x43d6de() { _0x43d6de['b2TimeStep']['apply'](this, arguments); } function _0x2caac0() { _0x2caac0['b2World']['apply'](this, arguments), this['constructor'] === _0x2caac0 && this['b2World']['apply'](this, arguments); } function _0x4ac125() { _0x4ac125['b2CircleContact']['apply'](this, arguments); } function _0x502c7a() { _0x502c7a['b2Contact']['apply'](this, arguments), this['constructor'] === _0x502c7a && this['b2Contact']['apply'](this, arguments); } function _0x2529d8() { _0x2529d8['b2ContactConstraint']['apply'](this, arguments), this['constructor'] === _0x2529d8 && this['b2ContactConstraint']['apply'](this, arguments); } function _0x5b15d7() { _0x5b15d7['b2ContactConstraintPoint']['apply'](this, arguments); } function _0x18e526() { _0x18e526['b2ContactEdge']['apply'](this, arguments); } function _0x435b9f() { _0x435b9f['b2ContactFactory']['apply'](this, arguments), this['constructor'] === _0x435b9f && this['b2ContactFactory']['apply'](this, arguments); } function _0x15234b() { _0x15234b['b2ContactRegister']['apply'](this, arguments); } function _0x2f2fa4() { _0x2f2fa4['b2ContactResult']['apply'](this, arguments); } function _0x2f9aaf() { _0x2f9aaf['b2ContactSolver']['apply'](this, arguments), this['constructor'] === _0x2f9aaf && this['b2ContactSolver']['apply'](this, arguments); } function _0x5ab259() { _0x5ab259['b2EdgeAndCircleContact']['apply'](this, arguments); } function _0x4739a0() { _0x4739a0['b2NullContact']['apply'](this, arguments), this['constructor'] === _0x4739a0 && this['b2NullContact']['apply'](this, arguments); } function _0x26212d() { _0x26212d['b2PolyAndCircleContact']['apply'](this, arguments); } function _0x3538d2() { _0x3538d2['b2PolyAndEdgeContact']['apply'](this, arguments); } function _0x3c6c7e() { _0x3c6c7e['b2PolygonContact']['apply'](this, arguments); } function _0x336f9c() { _0x336f9c['b2PositionSolverManifold']['apply'](this, arguments), this['constructor'] === _0x336f9c && this['b2PositionSolverManifold']['apply'](this, arguments); } function _0x20bb6e() { _0x20bb6e['b2BuoyancyController']['apply'](this, arguments); } function _0x163841() { _0x163841['b2ConstantAccelController']['apply'](this, arguments); } function _0x67f81c() { _0x67f81c['b2ConstantForceController']['apply'](this, arguments); } function _0x2dcfdf() { _0x2dcfdf['b2Controller']['apply'](this, arguments); } function _0x24bef3() { _0x24bef3['b2ControllerEdge']['apply'](this, arguments); } function _0x39c163() { _0x39c163['b2GravityController']['apply'](this, arguments); } function _0x46673d() { _0x46673d['b2TensorDampingController']['apply'](this, arguments); } function _0x12e13b() { _0x12e13b['b2DistanceJoint']['apply'](this, arguments), this['constructor'] === _0x12e13b && this['b2DistanceJoint']['apply'](this, arguments); } function _0x24201a() { _0x24201a['b2DistanceJointDef']['apply'](this, arguments), this['constructor'] === _0x24201a && this['b2DistanceJointDef']['apply'](this, arguments); } function _0x57ce1f() { _0x57ce1f['b2FrictionJoint']['apply'](this, arguments), this['constructor'] === _0x57ce1f && this['b2FrictionJoint']['apply'](this, arguments); } function _0x32b7f1() { _0x32b7f1['b2FrictionJointDef']['apply'](this, arguments), this['constructor'] === _0x32b7f1 && this['b2FrictionJointDef']['apply'](this, arguments); } function _0x1ea656() { _0x1ea656['b2GearJoint']['apply'](this, arguments), this['constructor'] === _0x1ea656 && this['b2GearJoint']['apply'](this, arguments); } function _0x2a3d5d() { _0x2a3d5d['b2GearJointDef']['apply'](this, arguments), this['constructor'] === _0x2a3d5d && this['b2GearJointDef']['apply'](this, arguments); } function _0x23c1b9() { _0x23c1b9['b2Jacobian']['apply'](this, arguments); } function _0x44bda6() { _0x44bda6['b2Joint']['apply'](this, arguments), this['constructor'] === _0x44bda6 && this['b2Joint']['apply'](this, arguments); } function _0x2b83c1() { _0x2b83c1['b2JointDef']['apply'](this, arguments), this['constructor'] === _0x2b83c1 && this['b2JointDef']['apply'](this, arguments); } function _0x5df8c1() { _0x5df8c1['b2JointEdge']['apply'](this, arguments); } function _0x2a67d2() { _0x2a67d2['b2LineJoint']['apply'](this, arguments), this['constructor'] === _0x2a67d2 && this['b2LineJoint']['apply'](this, arguments); } function _0x3c25d9() { _0x3c25d9['b2LineJointDef']['apply'](this, arguments), this['constructor'] === _0x3c25d9 && this['b2LineJointDef']['apply'](this, arguments); } function _0x1a8b8b() { _0x1a8b8b['b2MouseJoint']['apply'](this, arguments), this['constructor'] === _0x1a8b8b && this['b2MouseJoint']['apply'](this, arguments); } function _0x456894() { _0x456894['b2MouseJointDef']['apply'](this, arguments), this['constructor'] === _0x456894 && this['b2MouseJointDef']['apply'](this, arguments); } function _0x55ba66() { _0x55ba66['b2PrismaticJoint']['apply'](this, arguments), this['constructor'] === _0x55ba66 && this['b2PrismaticJoint']['apply'](this, arguments); } function _0x177075() { _0x177075['b2PrismaticJointDef']['apply'](this, arguments), this['constructor'] === _0x177075 && this['b2PrismaticJointDef']['apply'](this, arguments); } function _0x2807d9() { _0x2807d9['b2PulleyJoint']['apply'](this, arguments), this['constructor'] === _0x2807d9 && this['b2PulleyJoint']['apply'](this, arguments); } function _0x5b3a07() { _0x5b3a07['b2PulleyJointDef']['apply'](this, arguments), this['constructor'] === _0x5b3a07 && this['b2PulleyJointDef']['apply'](this, arguments); } function _0xafb396() { _0xafb396['b2RevoluteJoint']['apply'](this, arguments), this['constructor'] === _0xafb396 && this['b2RevoluteJoint']['apply'](this, arguments); } function _0x24fd9b() { _0x24fd9b['b2RevoluteJointDef']['apply'](this, arguments), this['constructor'] === _0x24fd9b && this['b2RevoluteJointDef']['apply'](this, arguments); } function _0x343199() { _0x343199['b2WeldJoint']['apply'](this, arguments), this['constructor'] === _0x343199 && this['b2WeldJoint']['apply'](this, arguments); } function _0x536640() { _0x536640['b2WeldJointDef']['apply'](this, arguments), this['constructor'] === _0x536640 && this['b2WeldJointDef']['apply'](this, arguments); } Box2D['Collision']['IBroadPhase'] = 'Box2D.Collision.IBroadPhase', Box2D['Collision']['b2AABB'] = _0x4b0b46, Box2D['Collision']['b2Bound'] = _0x1f8df6, Box2D['Collision']['b2BoundValues'] = _0x4d3976, Box2D['Collision']['b2Collision'] = _0x89532a, Box2D['Collision']['b2ContactID'] = _0x3ef6a7, Box2D['Collision']['b2ContactPoint'] = _0x5729af, Box2D['Collision']['b2Distance'] = _0x1cbb95, Box2D['Collision']['b2DistanceInput'] = _0x5ae390, Box2D['Collision']['b2DistanceOutput'] = _0x1ef6d7, Box2D['Collision']['b2DistanceProxy'] = _0x5670f3, Box2D['Collision']['b2DynamicTree'] = _0x2c66ef, Box2D['Collision']['b2DynamicTreeBroadPhase'] = _0x4bcf69, Box2D['Collision']['b2DynamicTreeNode'] = _0x537632, Box2D['Collision']['b2DynamicTreePair'] = _0x1c3af7, Box2D['Collision']['b2Manifold'] = _0x2a4c4b, Box2D['Collision']['b2ManifoldPoint'] = _0x149f76, Box2D['Collision']['b2Point'] = _0x8ed9cf, Box2D['Collision']['b2RayCastInput'] = _0xc62c1f, Box2D['Collision']['b2RayCastOutput'] = _0x396b76, Box2D['Collision']['b2Segment'] = _0x4e69ed, Box2D['Collision']['b2SeparationFunction'] = _0x248333, Box2D['Collision']['b2Simplex'] = _0x822547, Box2D['Collision']['b2SimplexCache'] = _0x5500bf, Box2D['Collision']['b2SimplexVertex'] = _0x125a42, Box2D['Collision']['b2TimeOfImpact'] = _0x49a4a1, Box2D['Collision']['b2TOIInput'] = _0x598205, Box2D['Collision']['b2WorldManifold'] = _0x454f37, Box2D['Collision']['ClipVertex'] = _0x2625c9, Box2D['Collision']['Features'] = _0x43b51b, Box2D['Collision']['Shapes']['b2CircleShape'] = _0x54c134, Box2D['Collision']['Shapes']['b2EdgeChainDef'] = _0x445c8c, Box2D['Collision']['Shapes']['b2EdgeShape'] = _0x45d6b7, Box2D['Collision']['Shapes']['b2MassData'] = _0x2ac085, Box2D['Collision']['Shapes']['b2PolygonShape'] = _0x1edeac, Box2D['Collision']['Shapes']['b2Shape'] = _0x5b3c63, Box2D['Common']['b2internal'] = 'Box2D.Common.b2internal', Box2D['Common']['b2Color'] = _0x700c40, Box2D['Common']['b2Settings'] = _0x5ccd32, Box2D['Common']['Math']['b2Mat22'] = _0x1f9c13, Box2D['Common']['Math']['b2Mat33'] = _0x3cfaaf, Box2D['Common']['Math']['b2Math'] = _0x5b1b70, Box2D['Common']['Math']['b2Sweep'] = _0x184f16, Box2D['Common']['Math']['b2Transform'] = _0x247156, Box2D['Common']['Math']['b2Vec2'] = _0x14038a, Box2D['Common']['Math']['b2Vec3'] = _0x6bf0be, Box2D['Dynamics']['b2Body'] = _0x3f10c3, Box2D['Dynamics']['b2BodyDef'] = _0x43218d, Box2D['Dynamics']['b2ContactFilter'] = _0x5a6a9a, Box2D['Dynamics']['b2ContactImpulse'] = _0x13a7bb, Box2D['Dynamics']['b2ContactListener'] = _0xfadcd0, Box2D['Dynamics']['b2ContactManager'] = _0xcd02fc, Box2D['Dynamics']['b2DebugDraw'] = _0x1cf84c, Box2D['Dynamics']['b2DestructionListener'] = _0x3bdeb6, Box2D['Dynamics']['b2FilterData'] = _0xdb145a, Box2D['Dynamics']['b2Fixture'] = _0xce79b7, Box2D['Dynamics']['b2FixtureDef'] = _0x25ebba, Box2D['Dynamics']['b2Island'] = _0x38e103, Box2D['Dynamics']['b2TimeStep'] = _0x43d6de, Box2D['Dynamics']['b2World'] = _0x2caac0, Box2D['Dynamics']['Contacts']['b2CircleContact'] = _0x4ac125, Box2D['Dynamics']['Contacts']['b2Contact'] = _0x502c7a, Box2D['Dynamics']['Contacts']['b2ContactConstraint'] = _0x2529d8, Box2D['Dynamics']['Contacts']['b2ContactConstraintPoint'] = _0x5b15d7, Box2D['Dynamics']['Contacts']['b2ContactEdge'] = _0x18e526, Box2D['Dynamics']['Contacts']['b2ContactFactory'] = _0x435b9f, Box2D['Dynamics']['Contacts']['b2ContactRegister'] = _0x15234b, Box2D['Dynamics']['Contacts']['b2ContactResult'] = _0x2f2fa4, Box2D['Dynamics']['Contacts']['b2ContactSolver'] = _0x2f9aaf, Box2D['Dynamics']['Contacts']['b2EdgeAndCircleContact'] = _0x5ab259, Box2D['Dynamics']['Contacts']['b2NullContact'] = _0x4739a0, Box2D['Dynamics']['Contacts']['b2PolyAndCircleContact'] = _0x26212d, Box2D['Dynamics']['Contacts']['b2PolyAndEdgeContact'] = _0x3538d2, Box2D['Dynamics']['Contacts']['b2PolygonContact'] = _0x3c6c7e, Box2D['Dynamics']['Contacts']['b2PositionSolverManifold'] = _0x336f9c, Box2D['Dynamics']['Controllers']['b2BuoyancyController'] = _0x20bb6e, Box2D['Dynamics']['Controllers']['b2ConstantAccelController'] = _0x163841, Box2D['Dynamics']['Controllers']['b2ConstantForceController'] = _0x67f81c, Box2D['Dynamics']['Controllers']['b2Controller'] = _0x2dcfdf, Box2D['Dynamics']['Controllers']['b2ControllerEdge'] = _0x24bef3, Box2D['Dynamics']['Controllers']['b2GravityController'] = _0x39c163, Box2D['Dynamics']['Controllers']['b2TensorDampingController'] = _0x46673d, Box2D['Dynamics']['Joints']['b2DistanceJoint'] = _0x12e13b, Box2D['Dynamics']['Joints']['b2DistanceJointDef'] = _0x24201a, Box2D['Dynamics']['Joints']['b2FrictionJoint'] = _0x57ce1f, Box2D['Dynamics']['Joints']['b2FrictionJointDef'] = _0x32b7f1, Box2D['Dynamics']['Joints']['b2GearJoint'] = _0x1ea656, Box2D['Dynamics']['Joints']['b2GearJointDef'] = _0x2a3d5d, Box2D['Dynamics']['Joints']['b2Jacobian'] = _0x23c1b9, Box2D['Dynamics']['Joints']['b2Joint'] = _0x44bda6, Box2D['Dynamics']['Joints']['b2JointDef'] = _0x2b83c1, Box2D['Dynamics']['Joints']['b2JointEdge'] = _0x5df8c1, Box2D['Dynamics']['Joints']['b2LineJoint'] = _0x2a67d2, Box2D['Dynamics']['Joints']['b2LineJointDef'] = _0x3c25d9, Box2D['Dynamics']['Joints']['b2MouseJoint'] = _0x1a8b8b, Box2D['Dynamics']['Joints']['b2MouseJointDef'] = _0x456894, Box2D['Dynamics']['Joints']['b2PrismaticJoint'] = _0x55ba66, Box2D['Dynamics']['Joints']['b2PrismaticJointDef'] = _0x177075, Box2D['Dynamics']['Joints']['b2PulleyJoint'] = _0x2807d9, Box2D['Dynamics']['Joints']['b2PulleyJointDef'] = _0x5b3a07, Box2D['Dynamics']['Joints']['b2RevoluteJoint'] = _0xafb396, Box2D['Dynamics']['Joints']['b2RevoluteJointDef'] = _0x24fd9b, Box2D['Dynamics']['Joints']['b2WeldJoint'] = _0x343199, Box2D['Dynamics']['Joints']['b2WeldJointDef'] = _0x536640; }(), Box2D['postDefs'] = [], function() { var _0x585b72 = Box2D['Collision']['Shapes']['b2CircleShape'] , _0x5b626c = Box2D['Collision']['Shapes']['b2PolygonShape'] , _0x1627dc = Box2D['Collision']['Shapes']['b2Shape'] , _0x5df753 = Box2D['Common']['b2Settings'] , _0x536a47 = Box2D['Common']['Math']['b2Math'] , _0x304312 = Box2D['Common']['Math']['b2Sweep'] , _0x3233a1 = Box2D['Common']['Math']['b2Transform'] , _0xf1400d = Box2D['Common']['Math']['b2Vec2'] , _0x38bec6 = Box2D['Collision']['b2AABB'] , _0x3d5dc3 = Box2D['Collision']['b2Bound'] , _0x168a18 = Box2D['Collision']['b2BoundValues'] , _0x3d5968 = Box2D['Collision']['b2Collision'] , _0x43d6a5 = Box2D['Collision']['b2ContactID'] , _0x4a6a61 = Box2D['Collision']['b2ContactPoint'] , _0x533ed7 = Box2D['Collision']['b2Distance'] , _0x13fbbf = Box2D['Collision']['b2DistanceInput'] , _0x349657 = Box2D['Collision']['b2DistanceOutput'] , _0x1d0ff0 = Box2D['Collision']['b2DistanceProxy'] , _0x118a25 = Box2D['Collision']['b2DynamicTree'] , _0xe59e2b = Box2D['Collision']['b2DynamicTreeBroadPhase'] , _0x218037 = Box2D['Collision']['b2DynamicTreeNode'] , _0xa31865 = Box2D['Collision']['b2DynamicTreePair'] , _0x445922 = Box2D['Collision']['b2Manifold'] , _0x25f880 = Box2D['Collision']['b2ManifoldPoint'] , _0x48f4f2 = Box2D['Collision']['b2Point'] , _0xa06f22 = Box2D['Collision']['b2RayCastInput'] , _0x16e9ea = Box2D['Collision']['b2RayCastOutput'] , _0x24795a = Box2D['Collision']['b2Segment'] , _0xa4191a = Box2D['Collision']['b2SeparationFunction'] , _0x423c90 = Box2D['Collision']['b2Simplex'] , _0x2d2261 = Box2D['Collision']['b2SimplexCache'] , _0x123caa = Box2D['Collision']['b2SimplexVertex'] , _0x430e1b = Box2D['Collision']['b2TimeOfImpact'] , _0x435a13 = Box2D['Collision']['b2TOIInput'] , _0x490112 = Box2D['Collision']['b2WorldManifold'] , _0x181ea5 = Box2D['Collision']['ClipVertex'] , _0xdf5c7d = Box2D['Collision']['Features'] , _0x16e4b9 = Box2D['Collision']['IBroadPhase']; _0x38bec6['b2AABB'] = function() { this['lowerBound'] = new _0xf1400d(), this['upperBound'] = new _0xf1400d(); } , _0x38bec6['prototype']['IsValid'] = function() { var _0x40901c = this['upperBound']['y'] - this['lowerBound']['y']; return 0x0 <= this['upperBound']['x'] - this['lowerBound']['x'] && 0x0 <= _0x40901c && this['lowerBound']['IsValid']() && this['upperBound']['IsValid'](); } , _0x38bec6['prototype']['GetCenter'] = function() { return new _0xf1400d((this['lowerBound']['x'] + this['upperBound']['x']) / 0x2,(this['lowerBound']['y'] + this['upperBound']['y']) / 0x2); } , _0x38bec6['prototype']['GetExtents'] = function() { return new _0xf1400d((this['upperBound']['x'] - this['lowerBound']['x']) / 0x2,(this['upperBound']['y'] - this['lowerBound']['y']) / 0x2); } , _0x38bec6['prototype']['Contains'] = function(_0x148ff8) { return this['lowerBound']['x'] <= _0x148ff8['lowerBound']['x'] && this['lowerBound']['y'] <= _0x148ff8['lowerBound']['y'] && _0x148ff8['upperBound']['x'] <= this['upperBound']['x'] && _0x148ff8['upperBound']['y'] <= this['upperBound']['y']; } , _0x38bec6['prototype']['RayCast'] = function(_0x279aba, _0x3e02cd) { var _0x5a821f = -Number['MAX_VALUE'] , _0x37fb46 = Number['MAX_VALUE'] , _0x527b83 = _0x3e02cd['p1']['x'] , _0x5e3538 = _0x3e02cd['p1']['y'] , _0x1573df = _0x3e02cd['p2']['x'] - _0x3e02cd['p1']['x'] , _0x563259 = _0x3e02cd['p2']['y'] - _0x3e02cd['p1']['y'] , _0x31338d = Math['abs'](_0x563259) , _0x20108c = _0x279aba['normal'] , _0x3ab57a = 0x0 , _0x4e6ca1 = 0x0 , _0x2d1fed = 0x0; if (Math['abs'](_0x1573df) < Number['MIN_VALUE']) { if (_0x527b83 < this['lowerBound']['x'] || this['upperBound']['x'] < _0x527b83) return !0x1; } else { if (_0x3ab57a = 0x1 / _0x1573df, _0x4e6ca1 = (this['lowerBound']['x'] - _0x527b83) * _0x3ab57a, _0x3ab57a *= this['upperBound']['x'] - _0x527b83, _0x2d1fed = -0x1, _0x4e6ca1 > _0x3ab57a && (_0x2d1fed = _0x4e6ca1, _0x4e6ca1 = _0x3ab57a, _0x3ab57a = _0x2d1fed, _0x2d1fed = 0x1), _0x4e6ca1 > _0x5a821f && (_0x20108c['x'] = _0x2d1fed, _0x20108c['y'] = 0x0, _0x5a821f = _0x4e6ca1), _0x37fb46 = Math['min'](_0x37fb46, _0x3ab57a), _0x5a821f > _0x37fb46) return !0x1; } if (_0x31338d < Number['MIN_VALUE']) { if (_0x5e3538 < this['lowerBound']['y'] || this['upperBound']['y'] < _0x5e3538) return !0x1; } else { if (_0x3ab57a = 0x1 / _0x563259, _0x4e6ca1 = (this['lowerBound']['y'] - _0x5e3538) * _0x3ab57a, _0x3ab57a *= this['upperBound']['y'] - _0x5e3538, _0x2d1fed = -0x1, _0x4e6ca1 > _0x3ab57a && (_0x2d1fed = _0x4e6ca1, _0x4e6ca1 = _0x3ab57a, _0x3ab57a = _0x2d1fed, _0x2d1fed = 0x1), _0x4e6ca1 > _0x5a821f && (_0x20108c['y'] = _0x2d1fed, _0x20108c['x'] = 0x0, _0x5a821f = _0x4e6ca1), _0x37fb46 = Math['min'](_0x37fb46, _0x3ab57a), _0x5a821f > _0x37fb46) return !0x1; } return _0x279aba['fraction'] = _0x5a821f, !0x0; } , _0x38bec6['prototype']['TestOverlap'] = function(_0x4e1dfa) { var _0x213c02 = _0x4e1dfa['lowerBound']['y'] - this['upperBound']['y'] , _0x89fe39 = this['lowerBound']['y'] - _0x4e1dfa['upperBound']['y']; return 0x0 < _0x4e1dfa['lowerBound']['x'] - this['upperBound']['x'] || 0x0 < _0x213c02 || 0x0 < this['lowerBound']['x'] - _0x4e1dfa['upperBound']['x'] || 0x0 < _0x89fe39 ? !0x1 : !0x0; } , _0x38bec6['Combine'] = function(_0x1c6339, _0x3112f5) { var _0x1f646d = new _0x38bec6(); return _0x1f646d['Combine'](_0x1c6339, _0x3112f5), _0x1f646d; } , _0x38bec6['prototype']['Combine'] = function(_0x2500eb, _0xd591fd) { this['lowerBound']['x'] = Math['min'](_0x2500eb['lowerBound']['x'], _0xd591fd['lowerBound']['x']), this['lowerBound']['y'] = Math['min'](_0x2500eb['lowerBound']['y'], _0xd591fd['lowerBound']['y']), this['upperBound']['x'] = Math['max'](_0x2500eb['upperBound']['x'], _0xd591fd['upperBound']['x']), this['upperBound']['y'] = Math['max'](_0x2500eb['upperBound']['y'], _0xd591fd['upperBound']['y']); } , _0x3d5dc3['b2Bound'] = function() {} , _0x3d5dc3['prototype']['IsLower'] = function() { return 0x0 == (this['value'] & 0x1); } , _0x3d5dc3['prototype']['IsUpper'] = function() { return 0x1 == (this['value'] & 0x1); } , _0x3d5dc3['prototype']['Swap'] = function(_0x323808) { var _0x509695 = this['value'] , _0x5ad08b = this['proxy'] , _0x4839be = this['stabbingCount']; this['value'] = _0x323808['value'], this['proxy'] = _0x323808['proxy'], this['stabbingCount'] = _0x323808['stabbingCount'], _0x323808['value'] = _0x509695, _0x323808['proxy'] = _0x5ad08b, _0x323808['stabbingCount'] = _0x4839be; } , _0x168a18['b2BoundValues'] = function() {} , _0x168a18['prototype']['b2BoundValues'] = function() { this['lowerValues'] = new Vector_a2j_Number(), this['lowerValues'][0x0] = 0x0, this['lowerValues'][0x1] = 0x0, this['upperValues'] = new Vector_a2j_Number(), this['upperValues'][0x0] = 0x0, this['upperValues'][0x1] = 0x0; } , _0x3d5968['b2Collision'] = function() {} , _0x3d5968['ClipSegmentToLine'] = function(_0x2d4c5e, _0xe7621c, _0x2ac937, _0x49f42e) { void 0x0 === _0x49f42e && (_0x49f42e = 0x0); var _0x25e2aa, _0x3bea9f = 0x0; _0x25e2aa = _0xe7621c[0x0]; var _0x1ed3ac = _0x25e2aa['v']; _0x25e2aa = _0xe7621c[0x1]; var _0x49efc1 = _0x25e2aa['v'] , _0x4d15aa = _0x2ac937['x'] * _0x1ed3ac['x'] + _0x2ac937['y'] * _0x1ed3ac['y'] - _0x49f42e; return _0x25e2aa = _0x2ac937['x'] * _0x49efc1['x'] + _0x2ac937['y'] * _0x49efc1['y'] - _0x49f42e, 0x0 >= _0x4d15aa && _0x2d4c5e[_0x3bea9f++]['Set'](_0xe7621c[0x0]), 0x0 >= _0x25e2aa && _0x2d4c5e[_0x3bea9f++]['Set'](_0xe7621c[0x1]), 0x0 > _0x4d15aa * _0x25e2aa && (_0x2ac937 = _0x4d15aa / (_0x4d15aa - _0x25e2aa), _0x25e2aa = _0x2d4c5e[_0x3bea9f], _0x25e2aa = _0x25e2aa['v'], _0x25e2aa['x'] = _0x1ed3ac['x'] + _0x2ac937 * (_0x49efc1['x'] - _0x1ed3ac['x']), _0x25e2aa['y'] = _0x1ed3ac['y'] + _0x2ac937 * (_0x49efc1['y'] - _0x1ed3ac['y']), _0x25e2aa = _0x2d4c5e[_0x3bea9f], _0x25e2aa['id'] = (0x0 < _0x4d15aa ? _0xe7621c[0x0] : _0xe7621c[0x1])['id'], ++_0x3bea9f), _0x3bea9f; } , _0x3d5968['EdgeSeparation'] = function(_0xd6e926, _0x11fcd0, _0x21a809, _0x34ff31, _0x289376) { void 0x0 === _0x21a809 && (_0x21a809 = 0x0), parseInt(_0xd6e926['m_vertexCount']); var _0x979da = _0xd6e926['m_vertices']; _0xd6e926 = _0xd6e926['m_normals']; var _0x39ade9 = parseInt(_0x34ff31['m_vertexCount']), _0x2066e9 = _0x34ff31['m_vertices'], _0x18b8a1, _0x10acb2; _0x18b8a1 = _0x11fcd0['R'], _0x10acb2 = _0xd6e926[_0x21a809], _0xd6e926 = _0x18b8a1['col1']['x'] * _0x10acb2['x'] + _0x18b8a1['col2']['x'] * _0x10acb2['y'], _0x34ff31 = _0x18b8a1['col1']['y'] * _0x10acb2['x'] + _0x18b8a1['col2']['y'] * _0x10acb2['y'], _0x18b8a1 = _0x289376['R']; var _0x166c46 = _0x18b8a1['col1']['x'] * _0xd6e926 + _0x18b8a1['col1']['y'] * _0x34ff31; _0x18b8a1 = _0x18b8a1['col2']['x'] * _0xd6e926 + _0x18b8a1['col2']['y'] * _0x34ff31; for (var _0x5e9dcd = 0x0, _0x5d6010 = Number['MAX_VALUE'], _0x3c98be = 0x0; _0x3c98be < _0x39ade9; ++_0x3c98be) _0x10acb2 = _0x2066e9[_0x3c98be], _0x10acb2 = _0x10acb2['x'] * _0x166c46 + _0x10acb2['y'] * _0x18b8a1, _0x10acb2 < _0x5d6010 && (_0x5d6010 = _0x10acb2, _0x5e9dcd = _0x3c98be); return _0x10acb2 = _0x979da[_0x21a809], _0x18b8a1 = _0x11fcd0['R'], _0x21a809 = _0x11fcd0['position']['x'] + (_0x18b8a1['col1']['x'] * _0x10acb2['x'] + _0x18b8a1['col2']['x'] * _0x10acb2['y']), _0x11fcd0 = _0x11fcd0['position']['y'] + (_0x18b8a1['col1']['y'] * _0x10acb2['x'] + _0x18b8a1['col2']['y'] * _0x10acb2['y']), _0x10acb2 = _0x2066e9[_0x5e9dcd], _0x18b8a1 = _0x289376['R'], _0x979da = _0x289376['position']['x'] + (_0x18b8a1['col1']['x'] * _0x10acb2['x'] + _0x18b8a1['col2']['x'] * _0x10acb2['y']), _0x289376 = _0x289376['position']['y'] + (_0x18b8a1['col1']['y'] * _0x10acb2['x'] + _0x18b8a1['col2']['y'] * _0x10acb2['y']), (_0x979da - _0x21a809) * _0xd6e926 + (_0x289376 - _0x11fcd0) * _0x34ff31; } , _0x3d5968['FindMaxSeparation'] = function(_0x1a3d46, _0x2c10bc, _0x4fb286, _0x259995, _0x4caabf) { var _0x3a7fde = parseInt(_0x2c10bc['m_vertexCount']), _0x23fee = _0x2c10bc['m_normals'], _0x5c919d, _0x1bd171; _0x1bd171 = _0x4caabf['R'], _0x5c919d = _0x259995['m_centroid']; var _0x3e36b0 = _0x4caabf['position']['x'] + (_0x1bd171['col1']['x'] * _0x5c919d['x'] + _0x1bd171['col2']['x'] * _0x5c919d['y']) , _0x24bbff = _0x4caabf['position']['y'] + (_0x1bd171['col1']['y'] * _0x5c919d['x'] + _0x1bd171['col2']['y'] * _0x5c919d['y']); _0x1bd171 = _0x4fb286['R'], _0x5c919d = _0x2c10bc['m_centroid'], _0x3e36b0 -= _0x4fb286['position']['x'] + (_0x1bd171['col1']['x'] * _0x5c919d['x'] + _0x1bd171['col2']['x'] * _0x5c919d['y']), _0x24bbff -= _0x4fb286['position']['y'] + (_0x1bd171['col1']['y'] * _0x5c919d['x'] + _0x1bd171['col2']['y'] * _0x5c919d['y']), _0x1bd171 = _0x3e36b0 * _0x4fb286['R']['col1']['x'] + _0x24bbff * _0x4fb286['R']['col1']['y']; for (var _0x24bbff = _0x3e36b0 * _0x4fb286['R']['col2']['x'] + _0x24bbff * _0x4fb286['R']['col2']['y'], _0x3e36b0 = 0x0, _0x26bf49 = -Number['MAX_VALUE'], _0x3c4dc2 = 0x0; _0x3c4dc2 < _0x3a7fde; ++_0x3c4dc2) _0x5c919d = _0x23fee[_0x3c4dc2], _0x5c919d = _0x5c919d['x'] * _0x1bd171 + _0x5c919d['y'] * _0x24bbff, _0x5c919d > _0x26bf49 && (_0x26bf49 = _0x5c919d, _0x3e36b0 = _0x3c4dc2); _0x23fee = _0x3d5968['EdgeSeparation'](_0x2c10bc, _0x4fb286, _0x3e36b0, _0x259995, _0x4caabf), _0x5c919d = parseInt(0x0 <= _0x3e36b0 - 0x1 ? _0x3e36b0 - 0x1 : _0x3a7fde - 0x1), _0x1bd171 = _0x3d5968['EdgeSeparation'](_0x2c10bc, _0x4fb286, _0x5c919d, _0x259995, _0x4caabf); var _0x24bbff = parseInt(_0x3e36b0 + 0x1 < _0x3a7fde ? _0x3e36b0 + 0x1 : 0x0) , _0x26bf49 = _0x3d5968['EdgeSeparation'](_0x2c10bc, _0x4fb286, _0x24bbff, _0x259995, _0x4caabf) , _0x50c6bb = 0x0 , _0x17ce4d = 0x0; if (_0x1bd171 > _0x23fee && _0x1bd171 > _0x26bf49) _0x17ce4d = -0x1, _0x3c4dc2 = _0x5c919d, _0x50c6bb = _0x1bd171; else { if (_0x26bf49 > _0x23fee) _0x17ce4d = 0x1, _0x3c4dc2 = _0x24bbff, _0x50c6bb = _0x26bf49; else return _0x1a3d46[0x0] = _0x3e36b0, _0x23fee; } for (; ; ) if (_0x3e36b0 = -0x1 == _0x17ce4d ? 0x0 <= _0x3c4dc2 - 0x1 ? _0x3c4dc2 - 0x1 : _0x3a7fde - 0x1 : _0x3c4dc2 + 0x1 < _0x3a7fde ? _0x3c4dc2 + 0x1 : 0x0, _0x23fee = _0x3d5968['EdgeSeparation'](_0x2c10bc, _0x4fb286, _0x3e36b0, _0x259995, _0x4caabf), _0x23fee > _0x50c6bb) _0x3c4dc2 = _0x3e36b0, _0x50c6bb = _0x23fee; else break; return _0x1a3d46[0x0] = _0x3c4dc2, _0x50c6bb; } , _0x3d5968['FindIncidentEdge'] = function(_0x48bfb0, _0x283220, _0x19d2c8, _0x333227, _0x1616f8, _0x1ec5fb) { void 0x0 === _0x333227 && (_0x333227 = 0x0), parseInt(_0x283220['m_vertexCount']); var _0x28cb31 = _0x283220['m_normals'] , _0x428b5f = parseInt(_0x1616f8['m_vertexCount']); _0x283220 = _0x1616f8['m_vertices'], _0x1616f8 = _0x1616f8['m_normals']; var _0x4115ad; _0x4115ad = _0x19d2c8['R'], _0x19d2c8 = _0x28cb31[_0x333227]; var _0x28cb31 = _0x4115ad['col1']['x'] * _0x19d2c8['x'] + _0x4115ad['col2']['x'] * _0x19d2c8['y'] , _0x9f5172 = _0x4115ad['col1']['y'] * _0x19d2c8['x'] + _0x4115ad['col2']['y'] * _0x19d2c8['y']; _0x4115ad = _0x1ec5fb['R'], _0x19d2c8 = _0x4115ad['col1']['x'] * _0x28cb31 + _0x4115ad['col1']['y'] * _0x9f5172, _0x9f5172 = _0x4115ad['col2']['x'] * _0x28cb31 + _0x4115ad['col2']['y'] * _0x9f5172, _0x28cb31 = _0x19d2c8, _0x4115ad = 0x0; for (var _0x321f36 = Number['MAX_VALUE'], _0x1e700e = 0x0; _0x1e700e < _0x428b5f; ++_0x1e700e) _0x19d2c8 = _0x1616f8[_0x1e700e], _0x19d2c8 = _0x28cb31 * _0x19d2c8['x'] + _0x9f5172 * _0x19d2c8['y'], _0x19d2c8 < _0x321f36 && (_0x321f36 = _0x19d2c8, _0x4115ad = _0x1e700e); _0x1616f8 = parseInt(_0x4115ad), _0x28cb31 = parseInt(_0x1616f8 + 0x1 < _0x428b5f ? _0x1616f8 + 0x1 : 0x0), _0x428b5f = _0x48bfb0[0x0], _0x19d2c8 = _0x283220[_0x1616f8], _0x4115ad = _0x1ec5fb['R'], _0x428b5f['v']['x'] = _0x1ec5fb['position']['x'] + (_0x4115ad['col1']['x'] * _0x19d2c8['x'] + _0x4115ad['col2']['x'] * _0x19d2c8['y']), _0x428b5f['v']['y'] = _0x1ec5fb['position']['y'] + (_0x4115ad['col1']['y'] * _0x19d2c8['x'] + _0x4115ad['col2']['y'] * _0x19d2c8['y']), _0x428b5f['id']['features']['referenceEdge'] = _0x333227, _0x428b5f['id']['features']['incidentEdge'] = _0x1616f8, _0x428b5f['id']['features']['incidentVertex'] = 0x0, _0x428b5f = _0x48bfb0[0x1], _0x19d2c8 = _0x283220[_0x28cb31], _0x4115ad = _0x1ec5fb['R'], _0x428b5f['v']['x'] = _0x1ec5fb['position']['x'] + (_0x4115ad['col1']['x'] * _0x19d2c8['x'] + _0x4115ad['col2']['x'] * _0x19d2c8['y']), _0x428b5f['v']['y'] = _0x1ec5fb['position']['y'] + (_0x4115ad['col1']['y'] * _0x19d2c8['x'] + _0x4115ad['col2']['y'] * _0x19d2c8['y']), _0x428b5f['id']['features']['referenceEdge'] = _0x333227, _0x428b5f['id']['features']['incidentEdge'] = _0x28cb31, _0x428b5f['id']['features']['incidentVertex'] = 0x1; } , _0x3d5968['MakeClipPointVector'] = function() { var _0x4e4e76 = new Vector(0x2); return _0x4e4e76[0x0] = new _0x181ea5(), _0x4e4e76[0x1] = new _0x181ea5(), _0x4e4e76; } , _0x3d5968['CollidePolygons'] = function(_0x175877, _0x20fee6, _0x4150d9, _0xe22645, _0x434ae1) { var _0x18cae7; _0x175877['m_pointCount'] = 0x0; var _0x2a0be7 = _0x20fee6['m_radius'] + _0xe22645['m_radius']; _0x3d5968['s_edgeAO'][0x0] = 0x0; var _0xb9b321 = _0x3d5968['FindMaxSeparation'](_0x3d5968['s_edgeAO'], _0x20fee6, _0x4150d9, _0xe22645, _0x434ae1); _0x18cae7 = _0x3d5968['s_edgeAO'][0x0]; if (!(_0xb9b321 > _0x2a0be7)) { var _0x467cba; _0x3d5968['s_edgeBO'][0x0] = 0x0; var _0x2f29a2 = _0x3d5968['FindMaxSeparation'](_0x3d5968['s_edgeBO'], _0xe22645, _0x434ae1, _0x20fee6, _0x4150d9); _0x467cba = _0x3d5968['s_edgeBO'][0x0]; if (!(_0x2f29a2 > _0x2a0be7)) { var _0xb3416c = 0x0 , _0x2262c3 = 0x0; _0x2f29a2 > 0.98 * _0xb9b321 + 0.001 ? (_0xb9b321 = _0xe22645, _0xe22645 = _0x20fee6, _0x20fee6 = _0x434ae1, _0xb3416c = _0x467cba, _0x175877['m_type'] = _0x445922['e_faceB'], _0x2262c3 = 0x1) : (_0xb9b321 = _0x20fee6, _0x20fee6 = _0x4150d9, _0x4150d9 = _0x434ae1, _0xb3416c = _0x18cae7, _0x175877['m_type'] = _0x445922['e_faceA'], _0x2262c3 = 0x0), _0x18cae7 = _0x3d5968['s_incidentEdge'], _0x3d5968['FindIncidentEdge'](_0x18cae7, _0xb9b321, _0x20fee6, _0xb3416c, _0xe22645, _0x4150d9), _0x467cba = parseInt(_0xb9b321['m_vertexCount']), _0x434ae1 = _0xb9b321['m_vertices']; var _0xb9b321 = _0x434ae1[_0xb3416c], _0x39329c; _0x39329c = _0xb3416c + 0x1 < _0x467cba ? _0x434ae1[parseInt(_0xb3416c + 0x1)] : _0x434ae1[0x0], _0xb3416c = _0x3d5968['s_localTangent'], _0xb3416c['Set'](_0x39329c['x'] - _0xb9b321['x'], _0x39329c['y'] - _0xb9b321['y']), _0xb3416c['Normalize'](), _0x434ae1 = _0x3d5968['s_localNormal'], _0x434ae1['x'] = _0xb3416c['y'], _0x434ae1['y'] = -_0xb3416c['x'], _0xe22645 = _0x3d5968['s_planePoint'], _0xe22645['Set'](0.5 * (_0xb9b321['x'] + _0x39329c['x']), 0.5 * (_0xb9b321['y'] + _0x39329c['y'])), _0x2f29a2 = _0x3d5968['s_tangent'], _0x467cba = _0x20fee6['R'], _0x2f29a2['x'] = _0x467cba['col1']['x'] * _0xb3416c['x'] + _0x467cba['col2']['x'] * _0xb3416c['y'], _0x2f29a2['y'] = _0x467cba['col1']['y'] * _0xb3416c['x'] + _0x467cba['col2']['y'] * _0xb3416c['y']; var _0x13c9a1 = _0x3d5968['s_tangent2']; _0x13c9a1['x'] = -_0x2f29a2['x'], _0x13c9a1['y'] = -_0x2f29a2['y'], _0xb3416c = _0x3d5968['s_normal'], _0xb3416c['x'] = _0x2f29a2['y'], _0xb3416c['y'] = -_0x2f29a2['x']; var _0x21d136 = _0x3d5968['s_v11'] , _0x4ab78c = _0x3d5968['s_v12']; _0x21d136['x'] = _0x20fee6['position']['x'] + (_0x467cba['col1']['x'] * _0xb9b321['x'] + _0x467cba['col2']['x'] * _0xb9b321['y']), _0x21d136['y'] = _0x20fee6['position']['y'] + (_0x467cba['col1']['y'] * _0xb9b321['x'] + _0x467cba['col2']['y'] * _0xb9b321['y']), _0x4ab78c['x'] = _0x20fee6['position']['x'] + (_0x467cba['col1']['x'] * _0x39329c['x'] + _0x467cba['col2']['x'] * _0x39329c['y']), _0x4ab78c['y'] = _0x20fee6['position']['y'] + (_0x467cba['col1']['y'] * _0x39329c['x'] + _0x467cba['col2']['y'] * _0x39329c['y']), _0x20fee6 = _0xb3416c['x'] * _0x21d136['x'] + _0xb3416c['y'] * _0x21d136['y'], _0x467cba = _0x2f29a2['x'] * _0x4ab78c['x'] + _0x2f29a2['y'] * _0x4ab78c['y'] + _0x2a0be7, _0x39329c = _0x3d5968['s_clipPoints1'], _0xb9b321 = _0x3d5968['s_clipPoints2'], _0x4ab78c = _0x3d5968['ClipSegmentToLine'](_0x39329c, _0x18cae7, _0x13c9a1, -_0x2f29a2['x'] * _0x21d136['x'] - _0x2f29a2['y'] * _0x21d136['y'] + _0x2a0be7); if (!(0x2 > _0x4ab78c) && (_0x4ab78c = _0x3d5968['ClipSegmentToLine'](_0xb9b321, _0x39329c, _0x2f29a2, _0x467cba), !(0x2 > _0x4ab78c))) { _0x175877['m_localPlaneNormal']['SetV'](_0x434ae1), _0x175877['m_localPoint']['SetV'](_0xe22645); for (_0xe22645 = _0x434ae1 = 0x0; _0xe22645 < _0x5df753['b2_maxManifoldPoints']; ++_0xe22645) _0x18cae7 = _0xb9b321[_0xe22645], _0xb3416c['x'] * _0x18cae7['v']['x'] + _0xb3416c['y'] * _0x18cae7['v']['y'] - _0x20fee6 <= _0x2a0be7 && (_0x2f29a2 = _0x175877['m_points'][_0x434ae1], _0x467cba = _0x4150d9['R'], _0x13c9a1 = _0x18cae7['v']['x'] - _0x4150d9['position']['x'], _0x21d136 = _0x18cae7['v']['y'] - _0x4150d9['position']['y'], _0x2f29a2['m_localPoint']['x'] = _0x13c9a1 * _0x467cba['col1']['x'] + _0x21d136 * _0x467cba['col1']['y'], _0x2f29a2['m_localPoint']['y'] = _0x13c9a1 * _0x467cba['col2']['x'] + _0x21d136 * _0x467cba['col2']['y'], _0x2f29a2['m_id']['Set'](_0x18cae7['id']), _0x2f29a2['m_id']['features']['flip'] = _0x2262c3, ++_0x434ae1); _0x175877['m_pointCount'] = _0x434ae1; } } } } , _0x3d5968['CollideCircles'] = function(_0x421798, _0x3c1e85, _0x1959cd, _0x5442e0, _0x223ea4) { _0x421798['m_pointCount'] = 0x0; var _0x1fcdef, _0x1b6211; _0x1fcdef = _0x1959cd['R'], _0x1b6211 = _0x3c1e85['m_p']; var _0x2d4a5c = _0x1959cd['position']['x'] + (_0x1fcdef['col1']['x'] * _0x1b6211['x'] + _0x1fcdef['col2']['x'] * _0x1b6211['y']); _0x1959cd = _0x1959cd['position']['y'] + (_0x1fcdef['col1']['y'] * _0x1b6211['x'] + _0x1fcdef['col2']['y'] * _0x1b6211['y']), _0x1fcdef = _0x223ea4['R'], _0x1b6211 = _0x5442e0['m_p'], _0x2d4a5c = _0x223ea4['position']['x'] + (_0x1fcdef['col1']['x'] * _0x1b6211['x'] + _0x1fcdef['col2']['x'] * _0x1b6211['y']) - _0x2d4a5c, _0x223ea4 = _0x223ea4['position']['y'] + (_0x1fcdef['col1']['y'] * _0x1b6211['x'] + _0x1fcdef['col2']['y'] * _0x1b6211['y']) - _0x1959cd, _0x1fcdef = _0x3c1e85['m_radius'] + _0x5442e0['m_radius'], _0x2d4a5c * _0x2d4a5c + _0x223ea4 * _0x223ea4 > _0x1fcdef * _0x1fcdef || (_0x421798['m_type'] = _0x445922['e_circles'], _0x421798['m_localPoint']['SetV'](_0x3c1e85['m_p']), _0x421798['m_localPlaneNormal']['SetZero'](), _0x421798['m_pointCount'] = 0x1, _0x421798['m_points'][0x0]['m_localPoint']['SetV'](_0x5442e0['m_p']), _0x421798['m_points'][0x0]['m_id']['key'] = 0x0); } , _0x3d5968['CollidePolygonAndCircle'] = function(_0x2cf567, _0x490dc9, _0x4acdc8, _0x83a9, _0x9e9c30) { var _0x49a3f8 = _0x2cf567['m_pointCount'] = 0x0, _0x2b48ad = 0x0, _0x5ac99b, _0x4fa331; _0x4fa331 = _0x9e9c30['R'], _0x5ac99b = _0x83a9['m_p']; var _0x2336a5 = _0x9e9c30['position']['y'] + (_0x4fa331['col1']['y'] * _0x5ac99b['x'] + _0x4fa331['col2']['y'] * _0x5ac99b['y']) , _0x49a3f8 = _0x9e9c30['position']['x'] + (_0x4fa331['col1']['x'] * _0x5ac99b['x'] + _0x4fa331['col2']['x'] * _0x5ac99b['y']) - _0x4acdc8['position']['x'] , _0x2b48ad = _0x2336a5 - _0x4acdc8['position']['y']; _0x4fa331 = _0x4acdc8['R'], _0x4acdc8 = _0x49a3f8 * _0x4fa331['col1']['x'] + _0x2b48ad * _0x4fa331['col1']['y'], _0x4fa331 = _0x49a3f8 * _0x4fa331['col2']['x'] + _0x2b48ad * _0x4fa331['col2']['y']; var _0x587a7d = 0x0 , _0x2336a5 = -Number['MAX_VALUE']; _0x9e9c30 = _0x490dc9['m_radius'] + _0x83a9['m_radius']; var _0x1eacb3 = parseInt(_0x490dc9['m_vertexCount']) , _0x152902 = _0x490dc9['m_vertices']; _0x490dc9 = _0x490dc9['m_normals']; for (var _0x1e8961 = 0x0; _0x1e8961 < _0x1eacb3; ++_0x1e8961) { _0x5ac99b = _0x152902[_0x1e8961], _0x49a3f8 = _0x4acdc8 - _0x5ac99b['x'], _0x2b48ad = _0x4fa331 - _0x5ac99b['y'], _0x5ac99b = _0x490dc9[_0x1e8961], _0x49a3f8 = _0x5ac99b['x'] * _0x49a3f8 + _0x5ac99b['y'] * _0x2b48ad; if (_0x49a3f8 > _0x9e9c30) return; _0x49a3f8 > _0x2336a5 && (_0x2336a5 = _0x49a3f8, _0x587a7d = _0x1e8961); } _0x49a3f8 = parseInt(_0x587a7d), _0x2b48ad = parseInt(_0x49a3f8 + 0x1 < _0x1eacb3 ? _0x49a3f8 + 0x1 : 0x0), _0x5ac99b = _0x152902[_0x49a3f8], _0x152902 = _0x152902[_0x2b48ad]; if (_0x2336a5 < Number['MIN_VALUE']) _0x2cf567['m_pointCount'] = 0x1, _0x2cf567['m_type'] = _0x445922['e_faceA'], _0x2cf567['m_localPlaneNormal']['SetV'](_0x490dc9[_0x587a7d]), _0x2cf567['m_localPoint']['x'] = 0.5 * (_0x5ac99b['x'] + _0x152902['x']), _0x2cf567['m_localPoint']['y'] = 0.5 * (_0x5ac99b['y'] + _0x152902['y']); else { if (_0x2336a5 = (_0x4acdc8 - _0x152902['x']) * (_0x5ac99b['x'] - _0x152902['x']) + (_0x4fa331 - _0x152902['y']) * (_0x5ac99b['y'] - _0x152902['y']), 0x0 >= (_0x4acdc8 - _0x5ac99b['x']) * (_0x152902['x'] - _0x5ac99b['x']) + (_0x4fa331 - _0x5ac99b['y']) * (_0x152902['y'] - _0x5ac99b['y'])) { if ((_0x4acdc8 - _0x5ac99b['x']) * (_0x4acdc8 - _0x5ac99b['x']) + (_0x4fa331 - _0x5ac99b['y']) * (_0x4fa331 - _0x5ac99b['y']) > _0x9e9c30 * _0x9e9c30) return; _0x2cf567['m_pointCount'] = 0x1, _0x2cf567['m_type'] = _0x445922['e_faceA'], _0x2cf567['m_localPlaneNormal']['x'] = _0x4acdc8 - _0x5ac99b['x'], _0x2cf567['m_localPlaneNormal']['y'] = _0x4fa331 - _0x5ac99b['y'], _0x2cf567['m_localPlaneNormal']['Normalize'](), _0x2cf567['m_localPoint']['SetV'](_0x5ac99b); } else { if (0x0 >= _0x2336a5) { if ((_0x4acdc8 - _0x152902['x']) * (_0x4acdc8 - _0x152902['x']) + (_0x4fa331 - _0x152902['y']) * (_0x4fa331 - _0x152902['y']) > _0x9e9c30 * _0x9e9c30) return; _0x2cf567['m_pointCount'] = 0x1, _0x2cf567['m_type'] = _0x445922['e_faceA'], _0x2cf567['m_localPlaneNormal']['x'] = _0x4acdc8 - _0x152902['x'], _0x2cf567['m_localPlaneNormal']['y'] = _0x4fa331 - _0x152902['y'], _0x2cf567['m_localPlaneNormal']['Normalize'](), _0x2cf567['m_localPoint']['SetV'](_0x152902); } else { _0x587a7d = 0.5 * (_0x5ac99b['x'] + _0x152902['x']), _0x5ac99b = 0.5 * (_0x5ac99b['y'] + _0x152902['y']), _0x2336a5 = (_0x4acdc8 - _0x587a7d) * _0x490dc9[_0x49a3f8]['x'] + (_0x4fa331 - _0x5ac99b) * _0x490dc9[_0x49a3f8]['y']; if (_0x2336a5 > _0x9e9c30) return; _0x2cf567['m_pointCount'] = 0x1, _0x2cf567['m_type'] = _0x445922['e_faceA'], _0x2cf567['m_localPlaneNormal']['x'] = _0x490dc9[_0x49a3f8]['x'], _0x2cf567['m_localPlaneNormal']['y'] = _0x490dc9[_0x49a3f8]['y'], _0x2cf567['m_localPlaneNormal']['Normalize'](), _0x2cf567['m_localPoint']['Set'](_0x587a7d, _0x5ac99b); } } } _0x2cf567['m_points'][0x0]['m_localPoint']['SetV'](_0x83a9['m_p']), _0x2cf567['m_points'][0x0]['m_id']['key'] = 0x0; } , _0x3d5968['TestOverlap'] = function(_0x1103eb, _0x2abe12) { var _0x1ed606 = _0x2abe12['lowerBound'] , _0x7df85a = _0x1103eb['upperBound'] , _0x11e7c7 = _0x1ed606['x'] - _0x7df85a['x'] , _0x56ddcf = _0x1ed606['y'] - _0x7df85a['y'] , _0x1ed606 = _0x1103eb['lowerBound'] , _0x7df85a = _0x2abe12['upperBound'] , _0x241eb4 = _0x1ed606['y'] - _0x7df85a['y']; return 0x0 < _0x11e7c7 || 0x0 < _0x56ddcf || 0x0 < _0x1ed606['x'] - _0x7df85a['x'] || 0x0 < _0x241eb4 ? !0x1 : !0x0; } , Box2D['postDefs']['push'](function() { Box2D['Collision']['b2Collision']['s_incidentEdge'] = _0x3d5968['MakeClipPointVector'](), Box2D['Collision']['b2Collision']['s_clipPoints1'] = _0x3d5968['MakeClipPointVector'](), Box2D['Collision']['b2Collision']['s_clipPoints2'] = _0x3d5968['MakeClipPointVector'](), Box2D['Collision']['b2Collision']['s_edgeAO'] = new Vector_a2j_Number(0x1), Box2D['Collision']['b2Collision']['s_edgeBO'] = new Vector_a2j_Number(0x1), Box2D['Collision']['b2Collision']['s_localTangent'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['s_localNormal'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['s_planePoint'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['s_normal'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['s_tangent'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['s_tangent2'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['s_v11'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['s_v12'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['b2CollidePolyTempVec'] = new _0xf1400d(), Box2D['Collision']['b2Collision']['b2_nullFeature'] = 0xff; }), _0x43d6a5['b2ContactID'] = function() { this['features'] = new _0xdf5c7d(); } , _0x43d6a5['prototype']['b2ContactID'] = function() { this['features']['_m_id'] = this; } , _0x43d6a5['prototype']['Set'] = function(_0x2d9abc) { this['key'] = _0x2d9abc['_key']; } , _0x43d6a5['prototype']['Copy'] = function() { var _0x56e6f6 = new _0x43d6a5(); return _0x56e6f6['key'] = this['key'], _0x56e6f6; } , Object['defineProperty'](_0x43d6a5['prototype'], 'key', { 'enumerable': !0x1, 'configurable': !0x0, 'get': function() { return this['_key']; } }), Object['defineProperty'](_0x43d6a5['prototype'], 'key', { 'enumerable': !0x1, 'configurable': !0x0, 'set': function(_0x3419f6) { void 0x0 === _0x3419f6 && (_0x3419f6 = 0x0), this['_key'] = _0x3419f6, this['features']['_referenceEdge'] = this['_key'] & 0xff, this['features']['_incidentEdge'] = (this['_key'] & 0xff00) >> 0x8 & 0xff, this['features']['_incidentVertex'] = (this['_key'] & 0xff0000) >> 0x10 & 0xff, this['features']['_flip'] = (this['_key'] & 0xff000000) >> 0x18 & 0xff; } }), _0x4a6a61['b2ContactPoint'] = function() { this['position'] = new _0xf1400d(), this['velocity'] = new _0xf1400d(), this['normal'] = new _0xf1400d(), this['id'] = new _0x43d6a5(); } , _0x533ed7['b2Distance'] = function() {} , _0x533ed7['Distance'] = function(_0x6c6b86, _0x39dbb9, _0x349c1b) { ++_0x533ed7['b2_gjkCalls']; var _0x14cb81 = _0x349c1b['proxyA'] , _0x15b374 = _0x349c1b['proxyB'] , _0x47d60f = _0x349c1b['transformA'] , _0x55c61f = _0x349c1b['transformB'] , _0x43b4fd = _0x533ed7['s_simplex']; _0x43b4fd['ReadCache'](_0x39dbb9, _0x14cb81, _0x47d60f, _0x15b374, _0x55c61f); var _0x574cbb = _0x43b4fd['m_vertices'] , _0x55c045 = _0x533ed7['s_saveA'] , _0x1bafd9 = _0x533ed7['s_saveB'] , _0x5a804a = 0x0; _0x43b4fd['GetClosestPoint']()['LengthSquared'](); for (var _0x53997c = 0x0, _0x539bb5, _0x3dddc4 = 0x0; 0x14 > _0x3dddc4; ) { _0x5a804a = _0x43b4fd['m_count']; for (_0x53997c = 0x0; _0x53997c < _0x5a804a; _0x53997c++) _0x55c045[_0x53997c] = _0x574cbb[_0x53997c]['indexA'], _0x1bafd9[_0x53997c] = _0x574cbb[_0x53997c]['indexB']; switch (_0x43b4fd['m_count']) { case 0x1: break; case 0x2: _0x43b4fd['Solve2'](); break; case 0x3: _0x43b4fd['Solve3'](); break; default: _0x5df753['b2Assert'](!0x1); } if (0x3 == _0x43b4fd['m_count']) break; _0x539bb5 = _0x43b4fd['GetClosestPoint'](), _0x539bb5['LengthSquared'](), _0x53997c = _0x43b4fd['GetSearchDirection'](); if (_0x53997c['LengthSquared']() < Number['MIN_VALUE'] * Number['MIN_VALUE']) break; _0x539bb5 = _0x574cbb[_0x43b4fd['m_count']], _0x539bb5['indexA'] = _0x14cb81['GetSupport'](_0x536a47['MulTMV'](_0x47d60f['R'], _0x53997c['GetNegative']())), _0x539bb5['wA'] = _0x536a47['MulX'](_0x47d60f, _0x14cb81['GetVertex'](_0x539bb5['indexA'])), _0x539bb5['indexB'] = _0x15b374['GetSupport'](_0x536a47['MulTMV'](_0x55c61f['R'], _0x53997c)), _0x539bb5['wB'] = _0x536a47['MulX'](_0x55c61f, _0x15b374['GetVertex'](_0x539bb5['indexB'])), _0x539bb5['w'] = _0x536a47['SubtractVV'](_0x539bb5['wB'], _0x539bb5['wA']), ++_0x3dddc4, ++_0x533ed7['b2_gjkIters']; for (var _0x36bb02 = !0x1, _0x53997c = 0x0; _0x53997c < _0x5a804a; _0x53997c++) if (_0x539bb5['indexA'] == _0x55c045[_0x53997c] && _0x539bb5['indexB'] == _0x1bafd9[_0x53997c]) { _0x36bb02 = !0x0; break; } if (_0x36bb02) break; ++_0x43b4fd['m_count']; } _0x533ed7['b2_gjkMaxIters'] = _0x536a47['Max'](_0x533ed7['b2_gjkMaxIters'], _0x3dddc4), _0x43b4fd['GetWitnessPoints'](_0x6c6b86['pointA'], _0x6c6b86['pointB']), _0x6c6b86['distance'] = _0x536a47['SubtractVV'](_0x6c6b86['pointA'], _0x6c6b86['pointB'])['Length'](), _0x6c6b86['iterations'] = _0x3dddc4, _0x43b4fd['WriteCache'](_0x39dbb9), _0x349c1b['useRadii'] && (_0x39dbb9 = _0x14cb81['m_radius'], _0x15b374 = _0x15b374['m_radius'], _0x6c6b86['distance'] > _0x39dbb9 + _0x15b374 && _0x6c6b86['distance'] > Number['MIN_VALUE'] ? (_0x6c6b86['distance'] -= _0x39dbb9 + _0x15b374, _0x349c1b = _0x536a47['SubtractVV'](_0x6c6b86['pointB'], _0x6c6b86['pointA']), _0x349c1b['Normalize'](), _0x6c6b86['pointA']['x'] += _0x39dbb9 * _0x349c1b['x'], _0x6c6b86['pointA']['y'] += _0x39dbb9 * _0x349c1b['y'], _0x6c6b86['pointB']['x'] -= _0x15b374 * _0x349c1b['x'], _0x6c6b86['pointB']['y'] -= _0x15b374 * _0x349c1b['y']) : (_0x539bb5 = new _0xf1400d(), _0x539bb5['x'] = 0.5 * (_0x6c6b86['pointA']['x'] + _0x6c6b86['pointB']['x']), _0x539bb5['y'] = 0.5 * (_0x6c6b86['pointA']['y'] + _0x6c6b86['pointB']['y']), _0x6c6b86['pointA']['x'] = _0x6c6b86['pointB']['x'] = _0x539bb5['x'], _0x6c6b86['pointA']['y'] = _0x6c6b86['pointB']['y'] = _0x539bb5['y'], _0x6c6b86['distance'] = 0x0)); } , Box2D['postDefs']['push'](function() { Box2D['Collision']['b2Distance']['s_simplex'] = new _0x423c90(), Box2D['Collision']['b2Distance']['s_saveA'] = new Vector_a2j_Number(0x3), Box2D['Collision']['b2Distance']['s_saveB'] = new Vector_a2j_Number(0x3); }), _0x13fbbf['b2DistanceInput'] = function() {} , _0x349657['b2DistanceOutput'] = function() { this['pointA'] = new _0xf1400d(), this['pointB'] = new _0xf1400d(); } , _0x1d0ff0['b2DistanceProxy'] = function() {} , _0x1d0ff0['prototype']['Set'] = function(_0x346880) { switch (_0x346880['GetType']()) { case _0x1627dc['e_circleShape']: _0x346880 = _0x346880 instanceof _0x585b72 ? _0x346880 : null, this['m_vertices'] = new Vector(0x1,!0x0), this['m_vertices'][0x0] = _0x346880['m_p'], this['m_count'] = 0x1, this['m_radius'] = _0x346880['m_radius']; break; case _0x1627dc['e_polygonShape']: _0x346880 = _0x346880 instanceof _0x5b626c ? _0x346880 : null, this['m_vertices'] = _0x346880['m_vertices'], this['m_count'] = _0x346880['m_vertexCount'], this['m_radius'] = _0x346880['m_radius']; break; default: _0x5df753['b2Assert'](!0x1); } } , _0x1d0ff0['prototype']['GetSupport'] = function(_0x186209) { for (var _0x3c8ae7 = 0x0, _0xff1d77 = this['m_vertices'][0x0]['x'] * _0x186209['x'] + this['m_vertices'][0x0]['y'] * _0x186209['y'], _0x3b0c9a = 0x1; _0x3b0c9a < this['m_count']; ++_0x3b0c9a) { var _0x12d301 = this['m_vertices'][_0x3b0c9a]['x'] * _0x186209['x'] + this['m_vertices'][_0x3b0c9a]['y'] * _0x186209['y']; _0x12d301 > _0xff1d77 && (_0x3c8ae7 = _0x3b0c9a, _0xff1d77 = _0x12d301); } return _0x3c8ae7; } , _0x1d0ff0['prototype']['GetSupportVertex'] = function(_0x65eb3f) { for (var _0x30ce8c = 0x0, _0x17de13 = this['m_vertices'][0x0]['x'] * _0x65eb3f['x'] + this['m_vertices'][0x0]['y'] * _0x65eb3f['y'], _0x323827 = 0x1; _0x323827 < this['m_count']; ++_0x323827) { var _0x55f4e9 = this['m_vertices'][_0x323827]['x'] * _0x65eb3f['x'] + this['m_vertices'][_0x323827]['y'] * _0x65eb3f['y']; _0x55f4e9 > _0x17de13 && (_0x30ce8c = _0x323827, _0x17de13 = _0x55f4e9); } return this['m_vertices'][_0x30ce8c]; } , _0x1d0ff0['prototype']['GetVertexCount'] = function() { return this['m_count']; } , _0x1d0ff0['prototype']['GetVertex'] = function(_0x1c8146) { return void 0x0 === _0x1c8146 && (_0x1c8146 = 0x0), _0x5df753['b2Assert'](0x0 <= _0x1c8146 && _0x1c8146 < this['m_count']), this['m_vertices'][_0x1c8146]; } , _0x118a25['b2DynamicTree'] = function() {} , _0x118a25['prototype']['b2DynamicTree'] = function() { this['m_freeList'] = this['m_root'] = null, this['m_insertionCount'] = this['m_path'] = 0x0; } , _0x118a25['prototype']['CreateProxy'] = function(_0x29709b, _0x1e4441) { var _0x2489f3 = this['AllocateNode']() , _0x35c484 = _0x5df753['b2_aabbExtension'] , _0x37d57e = _0x5df753['b2_aabbExtension']; return _0x2489f3['aabb']['lowerBound']['x'] = _0x29709b['lowerBound']['x'] - _0x35c484, _0x2489f3['aabb']['lowerBound']['y'] = _0x29709b['lowerBound']['y'] - _0x37d57e, _0x2489f3['aabb']['upperBound']['x'] = _0x29709b['upperBound']['x'] + _0x35c484, _0x2489f3['aabb']['upperBound']['y'] = _0x29709b['upperBound']['y'] + _0x37d57e, _0x2489f3['userData'] = _0x1e4441, this['InsertLeaf'](_0x2489f3), _0x2489f3; } , _0x118a25['prototype']['DestroyProxy'] = function(_0x1c14b5) { this['RemoveLeaf'](_0x1c14b5), this['FreeNode'](_0x1c14b5); } , _0x118a25['prototype']['MoveProxy'] = function(_0x347714, _0x5f1c68, _0x19022e) { _0x5df753['b2Assert'](_0x347714['IsLeaf']()); if (_0x347714['aabb']['Contains'](_0x5f1c68)) return !0x1; this['RemoveLeaf'](_0x347714); var _0x3ac1c0 = _0x5df753['b2_aabbExtension'] + _0x5df753['b2_aabbMultiplier'] * (0x0 < _0x19022e['x'] ? _0x19022e['x'] : -_0x19022e['x']); return _0x19022e = _0x5df753['b2_aabbExtension'] + _0x5df753['b2_aabbMultiplier'] * (0x0 < _0x19022e['y'] ? _0x19022e['y'] : -_0x19022e['y']), _0x347714['aabb']['lowerBound']['x'] = _0x5f1c68['lowerBound']['x'] - _0x3ac1c0, _0x347714['aabb']['lowerBound']['y'] = _0x5f1c68['lowerBound']['y'] - _0x19022e, _0x347714['aabb']['upperBound']['x'] = _0x5f1c68['upperBound']['x'] + _0x3ac1c0, _0x347714['aabb']['upperBound']['y'] = _0x5f1c68['upperBound']['y'] + _0x19022e, this['InsertLeaf'](_0x347714), !0x0; } , _0x118a25['prototype']['Rebalance'] = function(_0x27d654) { void 0x0 === _0x27d654 && (_0x27d654 = 0x0); if (null != this['m_root']) for (var _0x2a1e85 = 0x0; _0x2a1e85 < _0x27d654; _0x2a1e85++) { for (var _0x3be175 = this['m_root'], _0x3308e4 = 0x0; !0x1 == _0x3be175['IsLeaf'](); ) _0x3be175 = this['m_path'] >> _0x3308e4 & 0x1 ? _0x3be175['child2'] : _0x3be175['child1'], _0x3308e4 = _0x3308e4 + 0x1 & 0x1f; ++this['m_path'], this['RemoveLeaf'](_0x3be175), this['InsertLeaf'](_0x3be175); } } , _0x118a25['prototype']['GetFatAABB'] = function(_0x9ab197) { return _0x9ab197['aabb']; } , _0x118a25['prototype']['GetUserData'] = function(_0x3881e8) { return _0x3881e8['userData']; } , _0x118a25['prototype']['Query'] = function(_0x441f66, _0x4e7c23) { if (null != this['m_root']) { var _0x750ac0 = new Vector() , _0x455738 = 0x0; for (_0x750ac0[_0x455738++] = this['m_root']; 0x0 < _0x455738; ) { var _0x58b43d = _0x750ac0[--_0x455738]; if (_0x58b43d['aabb']['TestOverlap'](_0x4e7c23)) { if (_0x58b43d['IsLeaf']()) { if (!_0x441f66(_0x58b43d)) break; } else _0x750ac0[_0x455738++] = _0x58b43d['child1'], _0x750ac0[_0x455738++] = _0x58b43d['child2']; } } } } , _0x118a25['prototype']['RayCast'] = function(_0x39e43f, _0x648d77) { if (null != this['m_root']) { var _0x4d1567 = _0x648d77['p1'] , _0x527718 = _0x648d77['p2'] , _0x75390c = _0x536a47['SubtractVV'](_0x4d1567, _0x527718); _0x75390c['Normalize'](); var _0x75390c = _0x536a47['CrossFV'](0x1, _0x75390c) , _0x472c8c = _0x536a47['AbsV'](_0x75390c) , _0x3db6e6 = _0x648d77['maxFraction'] , _0x35d350 = new _0x38bec6() , _0x4dcf2b = 0x0 , _0x4dc287 = 0x0 , _0x4dcf2b = _0x4d1567['x'] + _0x3db6e6 * (_0x527718['x'] - _0x4d1567['x']) , _0x4dc287 = _0x4d1567['y'] + _0x3db6e6 * (_0x527718['y'] - _0x4d1567['y']); _0x35d350['lowerBound']['x'] = Math['min'](_0x4d1567['x'], _0x4dcf2b), _0x35d350['lowerBound']['y'] = Math['min'](_0x4d1567['y'], _0x4dc287), _0x35d350['upperBound']['x'] = Math['max'](_0x4d1567['x'], _0x4dcf2b), _0x35d350['upperBound']['y'] = Math['max'](_0x4d1567['y'], _0x4dc287); var _0x3ac963 = new Vector() , _0x44ac9b = 0x0; for (_0x3ac963[_0x44ac9b++] = this['m_root']; 0x0 < _0x44ac9b; ) if (_0x3db6e6 = _0x3ac963[--_0x44ac9b], !0x1 != _0x3db6e6['aabb']['TestOverlap'](_0x35d350) && (_0x4dcf2b = _0x3db6e6['aabb']['GetCenter'](), _0x4dc287 = _0x3db6e6['aabb']['GetExtents'](), !(0x0 < Math['abs'](_0x75390c['x'] * (_0x4d1567['x'] - _0x4dcf2b['x']) + _0x75390c['y'] * (_0x4d1567['y'] - _0x4dcf2b['y'])) - _0x472c8c['x'] * _0x4dc287['x'] - _0x472c8c['y'] * _0x4dc287['y']))) { if (_0x3db6e6['IsLeaf']()) { _0x4dcf2b = new _0xa06f22(), _0x4dcf2b['p1'] = _0x648d77['p1'], _0x4dcf2b['p2'] = _0x648d77['p2'], _0x4dcf2b['maxFraction'] = _0x648d77['maxFraction'], _0x3db6e6 = _0x39e43f(_0x4dcf2b, _0x3db6e6); if (0x0 == _0x3db6e6) break; 0x0 < _0x3db6e6 && (_0x4dcf2b = _0x4d1567['x'] + _0x3db6e6 * (_0x527718['x'] - _0x4d1567['x']), _0x4dc287 = _0x4d1567['y'] + _0x3db6e6 * (_0x527718['y'] - _0x4d1567['y']), _0x35d350['lowerBound']['x'] = Math['min'](_0x4d1567['x'], _0x4dcf2b), _0x35d350['lowerBound']['y'] = Math['min'](_0x4d1567['y'], _0x4dc287), _0x35d350['upperBound']['x'] = Math['max'](_0x4d1567['x'], _0x4dcf2b), _0x35d350['upperBound']['y'] = Math['max'](_0x4d1567['y'], _0x4dc287)); } else _0x3ac963[_0x44ac9b++] = _0x3db6e6['child1'], _0x3ac963[_0x44ac9b++] = _0x3db6e6['child2']; } } } , _0x118a25['prototype']['AllocateNode'] = function() { if (this['m_freeList']) { var _0x58b5b5 = this['m_freeList']; return this['m_freeList'] = _0x58b5b5['parent'], _0x58b5b5['parent'] = null, _0x58b5b5['child1'] = null, _0x58b5b5['child2'] = null, _0x58b5b5; } return new _0x218037(); } , _0x118a25['prototype']['FreeNode'] = function(_0x752d09) { _0x752d09['parent'] = this['m_freeList'], this['m_freeList'] = _0x752d09; } , _0x118a25['prototype']['InsertLeaf'] = function(_0x57d96b) { ++this['m_insertionCount']; if (null == this['m_root']) this['m_root'] = _0x57d96b, this['m_root']['parent'] = null; else { var _0x341079 = _0x57d96b['aabb']['GetCenter']() , _0x54421c = this['m_root']; if (!0x1 == _0x54421c['IsLeaf']()) do var _0x54ab69 = _0x54421c['child1'] , _0x54421c = _0x54421c['child2'] , _0x54421c = Math['abs']((_0x54ab69['aabb']['lowerBound']['x'] + _0x54ab69['aabb']['upperBound']['x']) / 0x2 - _0x341079['x']) + Math['abs']((_0x54ab69['aabb']['lowerBound']['y'] + _0x54ab69['aabb']['upperBound']['y']) / 0x2 - _0x341079['y']) < Math['abs']((_0x54421c['aabb']['lowerBound']['x'] + _0x54421c['aabb']['upperBound']['x']) / 0x2 - _0x341079['x']) + Math['abs']((_0x54421c['aabb']['lowerBound']['y'] + _0x54421c['aabb']['upperBound']['y']) / 0x2 - _0x341079['y']) ? _0x54ab69 : _0x54421c; while (!0x1 == _0x54421c['IsLeaf']()); _0x341079 = _0x54421c['parent'], _0x54ab69 = this['AllocateNode'](), _0x54ab69['parent'] = _0x341079, _0x54ab69['userData'] = null, _0x54ab69['aabb']['Combine'](_0x57d96b['aabb'], _0x54421c['aabb']); if (_0x341079) { _0x54421c['parent']['child1'] == _0x54421c ? _0x341079['child1'] = _0x54ab69 : _0x341079['child2'] = _0x54ab69, _0x54ab69['child1'] = _0x54421c, _0x54ab69['child2'] = _0x57d96b, _0x54421c['parent'] = _0x54ab69, _0x57d96b['parent'] = _0x54ab69; do { if (_0x341079['aabb']['Contains'](_0x54ab69['aabb'])) break; _0x341079['aabb']['Combine'](_0x341079['child1']['aabb'], _0x341079['child2']['aabb']), _0x54ab69 = _0x341079, _0x341079 = _0x341079['parent']; } while (_0x341079); } else _0x54ab69['child1'] = _0x54421c, _0x54ab69['child2'] = _0x57d96b, _0x54421c['parent'] = _0x54ab69, this['m_root'] = _0x57d96b['parent'] = _0x54ab69; } } , _0x118a25['prototype']['RemoveLeaf'] = function(_0x283340) { if (_0x283340 == this['m_root']) this['m_root'] = null; else { var _0x2b582a = _0x283340['parent'] , _0x384b6b = _0x2b582a['parent']; _0x283340 = _0x2b582a['child1'] == _0x283340 ? _0x2b582a['child2'] : _0x2b582a['child1']; if (_0x384b6b) { _0x384b6b['child1'] == _0x2b582a ? _0x384b6b['child1'] = _0x283340 : _0x384b6b['child2'] = _0x283340, _0x283340['parent'] = _0x384b6b; for (this['FreeNode'](_0x2b582a); _0x384b6b; ) { _0x2b582a = _0x384b6b['aabb'], _0x384b6b['aabb'] = _0x38bec6['Combine'](_0x384b6b['child1']['aabb'], _0x384b6b['child2']['aabb']); if (_0x2b582a['Contains'](_0x384b6b['aabb'])) break; _0x384b6b = _0x384b6b['parent']; } } else this['m_root'] = _0x283340, _0x283340['parent'] = null, this['FreeNode'](_0x2b582a); } } , _0xe59e2b['b2DynamicTreeBroadPhase'] = function() { this['m_tree'] = new _0x118a25(), this['m_moveBuffer'] = new Vector(), this['m_pairBuffer'] = new Vector(), this['m_pairCount'] = 0x0; } , _0xe59e2b['prototype']['CreateProxy'] = function(_0x303e9c, _0x472c05) { var _0x597c1d = this['m_tree']['CreateProxy'](_0x303e9c, _0x472c05); return ++this['m_proxyCount'], this['BufferMove'](_0x597c1d), _0x597c1d; } , _0xe59e2b['prototype']['DestroyProxy'] = function(_0x4d8e1f) { this['UnBufferMove'](_0x4d8e1f), --this['m_proxyCount'], this['m_tree']['DestroyProxy'](_0x4d8e1f); } , _0xe59e2b['prototype']['MoveProxy'] = function(_0x2219d3, _0xf2f08b, _0x26fcb1) { this['m_tree']['MoveProxy'](_0x2219d3, _0xf2f08b, _0x26fcb1) && this['BufferMove'](_0x2219d3); } , _0xe59e2b['prototype']['TestOverlap'] = function(_0x2888c6, _0x14f522) { var _0x39708c = this['m_tree']['GetFatAABB'](_0x2888c6) , _0x11634b = this['m_tree']['GetFatAABB'](_0x14f522); return _0x39708c['TestOverlap'](_0x11634b); } , _0xe59e2b['prototype']['GetUserData'] = function(_0x4fdcf3) { return this['m_tree']['GetUserData'](_0x4fdcf3); } , _0xe59e2b['prototype']['GetFatAABB'] = function(_0x40d713) { return this['m_tree']['GetFatAABB'](_0x40d713); } , _0xe59e2b['prototype']['GetProxyCount'] = function() { return this['m_proxyCount']; } , _0xe59e2b['prototype']['UpdatePairs'] = function(_0x38fc18) { for (var _0x4178f2 = this, _0x49306c = _0x4178f2['m_pairCount'] = 0x0, _0x25e9e9, _0x49306c = 0x0; _0x49306c < _0x4178f2['m_moveBuffer']['length']; ++_0x49306c) { _0x25e9e9 = _0x4178f2['m_moveBuffer'][_0x49306c]; var _0x1f19e1 = _0x4178f2['m_tree']['GetFatAABB'](_0x25e9e9); _0x4178f2['m_tree']['Query'](function(_0x33b8e4) { if (_0x33b8e4 == _0x25e9e9) return !0x0; _0x4178f2['m_pairCount'] == _0x4178f2['m_pairBuffer']['length'] && (_0x4178f2['m_pairBuffer'][_0x4178f2['m_pairCount']] = new _0xa31865()); var _0x295ebf = _0x4178f2['m_pairBuffer'][_0x4178f2['m_pairCount']]; return _0x295ebf['proxyA'] = _0x33b8e4 < _0x25e9e9 ? _0x33b8e4 : _0x25e9e9, _0x295ebf['proxyB'] = _0x33b8e4 >= _0x25e9e9 ? _0x33b8e4 : _0x25e9e9, ++_0x4178f2['m_pairCount'], !0x0; }, _0x1f19e1); } for (_0x49306c = _0x4178f2['m_moveBuffer']['length'] = 0x0; _0x49306c < _0x4178f2['m_pairCount']; ) { var _0x1f19e1 = _0x4178f2['m_pairBuffer'][_0x49306c] , _0x4b723a = _0x4178f2['m_tree']['GetUserData'](_0x1f19e1['proxyA']) , _0x3d8fd5 = _0x4178f2['m_tree']['GetUserData'](_0x1f19e1['proxyB']); _0x38fc18(_0x4b723a, _0x3d8fd5); for (++_0x49306c; _0x49306c < _0x4178f2['m_pairCount']; ) { _0x4b723a = _0x4178f2['m_pairBuffer'][_0x49306c]; if (_0x4b723a['proxyA'] != _0x1f19e1['proxyA'] || _0x4b723a['proxyB'] != _0x1f19e1['proxyB']) break; ++_0x49306c; } } } , _0xe59e2b['prototype']['Query'] = function(_0x5463ac, _0x237793) { this['m_tree']['Query'](_0x5463ac, _0x237793); } , _0xe59e2b['prototype']['RayCast'] = function(_0x3fefa0, _0x2c03f9) { this['m_tree']['RayCast'](_0x3fefa0, _0x2c03f9); } , _0xe59e2b['prototype']['Validate'] = function() {} , _0xe59e2b['prototype']['Rebalance'] = function(_0x4e8bce) { void 0x0 === _0x4e8bce && (_0x4e8bce = 0x0), this['m_tree']['Rebalance'](_0x4e8bce); } , _0xe59e2b['prototype']['BufferMove'] = function(_0x507f22) { this['m_moveBuffer'][this['m_moveBuffer']['length']] = _0x507f22; } , _0xe59e2b['prototype']['UnBufferMove'] = function(_0x267f43) { this['m_moveBuffer']['splice'](parseInt(this['m_moveBuffer']['indexOf'](_0x267f43)), 0x1); } , _0xe59e2b['prototype']['ComparePairs'] = function() { return 0x0; } , _0xe59e2b['__implements'] = {}, _0xe59e2b['__implements'][_0x16e4b9] = !0x0, _0x218037['b2DynamicTreeNode'] = function() { this['aabb'] = new _0x38bec6(); } , _0x218037['prototype']['IsLeaf'] = function() { return null == this['child1']; } , _0xa31865['b2DynamicTreePair'] = function() {} , _0x445922['b2Manifold'] = function() { this['m_pointCount'] = 0x0; } , _0x445922['prototype']['b2Manifold'] = function() { this['m_points'] = new Vector(_0x5df753['b2_maxManifoldPoints']); for (var _0x4c72d1 = 0x0; _0x4c72d1 < _0x5df753['b2_maxManifoldPoints']; _0x4c72d1++) this['m_points'][_0x4c72d1] = new _0x25f880(); this['m_localPlaneNormal'] = new _0xf1400d(), this['m_localPoint'] = new _0xf1400d(); } , _0x445922['prototype']['Reset'] = function() { for (var _0x4b484f = 0x0; _0x4b484f < _0x5df753['b2_maxManifoldPoints']; _0x4b484f++) (this['m_points'][_0x4b484f]instanceof _0x25f880 ? this['m_points'][_0x4b484f] : null)['Reset'](); this['m_localPlaneNormal']['SetZero'](), this['m_localPoint']['SetZero'](), this['m_pointCount'] = this['m_type'] = 0x0; } , _0x445922['prototype']['Set'] = function(_0x50b509) { this['m_pointCount'] = _0x50b509['m_pointCount']; for (var _0x318491 = 0x0; _0x318491 < _0x5df753['b2_maxManifoldPoints']; _0x318491++) (this['m_points'][_0x318491]instanceof _0x25f880 ? this['m_points'][_0x318491] : null)['Set'](_0x50b509['m_points'][_0x318491]); this['m_localPlaneNormal']['SetV'](_0x50b509['m_localPlaneNormal']), this['m_localPoint']['SetV'](_0x50b509['m_localPoint']), this['m_type'] = _0x50b509['m_type']; } , _0x445922['prototype']['Copy'] = function() { var _0x4d2c0d = new _0x445922(); return _0x4d2c0d['Set'](this), _0x4d2c0d; } , Box2D['postDefs']['push'](function() { Box2D['Collision']['b2Manifold']['e_circles'] = 0x1, Box2D['Collision']['b2Manifold']['e_faceA'] = 0x2, Box2D['Collision']['b2Manifold']['e_faceB'] = 0x4; }), _0x25f880['b2ManifoldPoint'] = function() { this['m_localPoint'] = new _0xf1400d(), this['m_id'] = new _0x43d6a5(); } , _0x25f880['prototype']['b2ManifoldPoint'] = function() { this['Reset'](); } , _0x25f880['prototype']['Reset'] = function() { this['m_localPoint']['SetZero'](), this['m_tangentImpulse'] = this['m_normalImpulse'] = 0x0, this['m_id']['key'] = 0x0; } , _0x25f880['prototype']['Set'] = function(_0xc69f4c) { this['m_localPoint']['SetV'](_0xc69f4c['m_localPoint']), this['m_normalImpulse'] = _0xc69f4c['m_normalImpulse'], this['m_tangentImpulse'] = _0xc69f4c['m_tangentImpulse'], this['m_id']['Set'](_0xc69f4c['m_id']); } , _0x48f4f2['b2Point'] = function() { this['p'] = new _0xf1400d(); } , _0x48f4f2['prototype']['Support'] = function() { return this['p']; } , _0x48f4f2['prototype']['GetFirstVertex'] = function() { return this['p']; } , _0xa06f22['b2RayCastInput'] = function() { this['p1'] = new _0xf1400d(), this['p2'] = new _0xf1400d(); } , _0xa06f22['prototype']['b2RayCastInput'] = function(_0x53c0fe, _0x50cf6f, _0x22060b) { void 0x0 === _0x53c0fe && (_0x53c0fe = null), void 0x0 === _0x50cf6f && (_0x50cf6f = null), void 0x0 === _0x22060b && (_0x22060b = 0x1), _0x53c0fe && this['p1']['SetV'](_0x53c0fe), _0x50cf6f && this['p2']['SetV'](_0x50cf6f), this['maxFraction'] = _0x22060b; } , _0x16e9ea['b2RayCastOutput'] = function() { this['normal'] = new _0xf1400d(); } , _0x24795a['b2Segment'] = function() { this['p1'] = new _0xf1400d(), this['p2'] = new _0xf1400d(); } , _0x24795a['prototype']['TestSegment'] = function(_0x42f868, _0x1348ce, _0x30221e, _0x4add0c) { void 0x0 === _0x4add0c && (_0x4add0c = 0x0); var _0x4530df = _0x30221e['p1'] , _0x2423ad = _0x30221e['p2']['x'] - _0x4530df['x'] , _0x2d1f15 = _0x30221e['p2']['y'] - _0x4530df['y']; _0x30221e = this['p2']['y'] - this['p1']['y']; var _0x1671c0 = -(this['p2']['x'] - this['p1']['x']) , _0x186a3e = 0x64 * Number['MIN_VALUE'] , _0x256b85 = -(_0x2423ad * _0x30221e + _0x2d1f15 * _0x1671c0); if (_0x256b85 > _0x186a3e) { var _0x148fc0 = _0x4530df['x'] - this['p1']['x'] , _0x5c7ec6 = _0x4530df['y'] - this['p1']['y'] , _0x4530df = _0x148fc0 * _0x30221e + _0x5c7ec6 * _0x1671c0; if (0x0 <= _0x4530df && _0x4530df <= _0x4add0c * _0x256b85 && (_0x4add0c = -_0x2423ad * _0x5c7ec6 + _0x2d1f15 * _0x148fc0, -_0x186a3e * _0x256b85 <= _0x4add0c && _0x4add0c <= _0x256b85 * (0x1 + _0x186a3e))) return _0x4530df /= _0x256b85, _0x4add0c = Math['sqrt'](_0x30221e * _0x30221e + _0x1671c0 * _0x1671c0), _0x42f868[0x0] = _0x4530df, _0x1348ce['Set'](_0x30221e / _0x4add0c, _0x1671c0 / _0x4add0c), !0x0; } return !0x1; } , _0x24795a['prototype']['Extend'] = function(_0x4db3c8) { this['ExtendForward'](_0x4db3c8), this['ExtendBackward'](_0x4db3c8); } , _0x24795a['prototype']['ExtendForward'] = function(_0x715140) { var _0x19d537 = this['p2']['x'] - this['p1']['x'] , _0x5ad9d9 = this['p2']['y'] - this['p1']['y']; _0x715140 = Math['min'](0x0 < _0x19d537 ? (_0x715140['upperBound']['x'] - this['p1']['x']) / _0x19d537 : 0x0 > _0x19d537 ? (_0x715140['lowerBound']['x'] - this['p1']['x']) / _0x19d537 : Number['POSITIVE_INFINITY'], 0x0 < _0x5ad9d9 ? (_0x715140['upperBound']['y'] - this['p1']['y']) / _0x5ad9d9 : 0x0 > _0x5ad9d9 ? (_0x715140['lowerBound']['y'] - this['p1']['y']) / _0x5ad9d9 : Number['POSITIVE_INFINITY']), this['p2']['x'] = this['p1']['x'] + _0x19d537 * _0x715140, this['p2']['y'] = this['p1']['y'] + _0x5ad9d9 * _0x715140; } , _0x24795a['prototype']['ExtendBackward'] = function(_0x223645) { var _0x3e436c = -this['p2']['x'] + this['p1']['x'] , _0x23bb0c = -this['p2']['y'] + this['p1']['y']; _0x223645 = Math['min'](0x0 < _0x3e436c ? (_0x223645['upperBound']['x'] - this['p2']['x']) / _0x3e436c : 0x0 > _0x3e436c ? (_0x223645['lowerBound']['x'] - this['p2']['x']) / _0x3e436c : Number['POSITIVE_INFINITY'], 0x0 < _0x23bb0c ? (_0x223645['upperBound']['y'] - this['p2']['y']) / _0x23bb0c : 0x0 > _0x23bb0c ? (_0x223645['lowerBound']['y'] - this['p2']['y']) / _0x23bb0c : Number['POSITIVE_INFINITY']), this['p1']['x'] = this['p2']['x'] + _0x3e436c * _0x223645, this['p1']['y'] = this['p2']['y'] + _0x23bb0c * _0x223645; } , _0xa4191a['b2SeparationFunction'] = function() { this['m_localPoint'] = new _0xf1400d(), this['m_axis'] = new _0xf1400d(); } , _0xa4191a['prototype']['Initialize'] = function(_0x1d3273, _0xca2bd3, _0x20d9cb, _0x1534d3, _0x2ec8e1) { this['m_proxyA'] = _0xca2bd3, this['m_proxyB'] = _0x1534d3; var _0x1b13b9 = parseInt(_0x1d3273['count']); _0x5df753['b2Assert'](0x0 < _0x1b13b9 && 0x3 > _0x1b13b9); var _0x1d8f9f, _0x2ce452, _0x4e2aa4, _0x3f68b3, _0x5d249f = 0x0, _0x63c7bb = 0x0; 0x1 == _0x1b13b9 ? (this['m_type'] = _0xa4191a['e_points'], _0x1d8f9f = this['m_proxyA']['GetVertex'](_0x1d3273['indexA'][0x0]), _0x2ce452 = this['m_proxyB']['GetVertex'](_0x1d3273['indexB'][0x0]), _0x1b13b9 = _0x1d8f9f, _0x1d3273 = _0x20d9cb['R'], _0xca2bd3 = _0x20d9cb['position']['x'] + (_0x1d3273['col1']['x'] * _0x1b13b9['x'] + _0x1d3273['col2']['x'] * _0x1b13b9['y']), _0x1534d3 = _0x20d9cb['position']['y'] + (_0x1d3273['col1']['y'] * _0x1b13b9['x'] + _0x1d3273['col2']['y'] * _0x1b13b9['y']), _0x1b13b9 = _0x2ce452, _0x1d3273 = _0x2ec8e1['R'], _0x4e2aa4 = _0x2ec8e1['position']['x'] + (_0x1d3273['col1']['x'] * _0x1b13b9['x'] + _0x1d3273['col2']['x'] * _0x1b13b9['y']), _0x3f68b3 = _0x2ec8e1['position']['y'] + (_0x1d3273['col1']['y'] * _0x1b13b9['x'] + _0x1d3273['col2']['y'] * _0x1b13b9['y']), this['m_axis']['x'] = _0x4e2aa4 - _0xca2bd3, this['m_axis']['y'] = _0x3f68b3 - _0x1534d3, this['m_axis']['Normalize']()) : (_0x1d3273['indexB'][0x0] == _0x1d3273['indexB'][0x1] ? (this['m_type'] = _0xa4191a['e_faceA'], _0xca2bd3 = this['m_proxyA']['GetVertex'](_0x1d3273['indexA'][0x0]), _0x1534d3 = this['m_proxyA']['GetVertex'](_0x1d3273['indexA'][0x1]), _0x2ce452 = this['m_proxyB']['GetVertex'](_0x1d3273['indexB'][0x0]), this['m_localPoint']['x'] = 0.5 * (_0xca2bd3['x'] + _0x1534d3['x']), this['m_localPoint']['y'] = 0.5 * (_0xca2bd3['y'] + _0x1534d3['y']), this['m_axis'] = _0x536a47['CrossVF'](_0x536a47['SubtractVV'](_0x1534d3, _0xca2bd3), 0x1), this['m_axis']['Normalize'](), _0x1b13b9 = this['m_axis'], _0x1d3273 = _0x20d9cb['R'], _0x5d249f = _0x1d3273['col1']['x'] * _0x1b13b9['x'] + _0x1d3273['col2']['x'] * _0x1b13b9['y'], _0x63c7bb = _0x1d3273['col1']['y'] * _0x1b13b9['x'] + _0x1d3273['col2']['y'] * _0x1b13b9['y'], _0x1b13b9 = this['m_localPoint'], _0x1d3273 = _0x20d9cb['R'], _0xca2bd3 = _0x20d9cb['position']['x'] + (_0x1d3273['col1']['x'] * _0x1b13b9['x'] + _0x1d3273['col2']['x'] * _0x1b13b9['y']), _0x1534d3 = _0x20d9cb['position']['y'] + (_0x1d3273['col1']['y'] * _0x1b13b9['x'] + _0x1d3273['col2']['y'] * _0x1b13b9['y']), _0x1b13b9 = _0x2ce452, _0x1d3273 = _0x2ec8e1['R'], _0x4e2aa4 = _0x2ec8e1['position']['x'] + (_0x1d3273['col1']['x'] * _0x1b13b9['x'] + _0x1d3273['col2']['x'] * _0x1b13b9['y']), _0x3f68b3 = _0x2ec8e1['position']['y'] + (_0x1d3273['col1']['y'] * _0x1b13b9['x'] + _0x1d3273['col2']['y'] * _0x1b13b9['y']), _0x5d249f = (_0x4e2aa4 - _0xca2bd3) * _0x5d249f + (_0x3f68b3 - _0x1534d3) * _0x63c7bb) : _0x1d3273['indexA'][0x0] == _0x1d3273['indexA'][0x0] ? (this['m_type'] = _0xa4191a['e_faceB'], _0x4e2aa4 = this['m_proxyB']['GetVertex'](_0x1d3273['indexB'][0x0]), _0x3f68b3 = this['m_proxyB']['GetVertex'](_0x1d3273['indexB'][0x1]), _0x1d8f9f = this['m_proxyA']['GetVertex'](_0x1d3273['indexA'][0x0]), this['m_localPoint']['x'] = 0.5 * (_0x4e2aa4['x'] + _0x3f68b3['x']), this['m_localPoint']['y'] = 0.5 * (_0x4e2aa4['y'] + _0x3f68b3['y']), this['m_axis'] = _0x536a47['CrossVF'](_0x536a47['SubtractVV'](_0x3f68b3, _0x4e2aa4), 0x1), this['m_axis']['Normalize'](), _0x1b13b9 = this['m_axis'], _0x1d3273 = _0x2ec8e1['R'], _0x5d249f = _0x1d3273['col1']['x'] * _0x1b13b9['x'] + _0x1d3273['col2']['x'] * _0x1b13b9['y'], _0x63c7bb = _0x1d3273['col1']['y'] * _0x1b13b9['x'] + _0x1d3273['col2']['y'] * _0x1b13b9['y'], _0x1b13b9 = this['m_localPoint'], _0x1d3273 = _0x2ec8e1['R'], _0x4e2aa4 = _0x2ec8e1['position']['x'] + (_0x1d3273['col1']['x'] * _0x1b13b9['x'] + _0x1d3273['col2']['x'] * _0x1b13b9['y']), _0x3f68b3 = _0x2ec8e1['position']['y'] + (_0x1d3273['col1']['y'] * _0x1b13b9['x'] + _0x1d3273['col2']['y'] * _0x1b13b9['y']), _0x1b13b9 = _0x1d8f9f, _0x1d3273 = _0x20d9cb['R'], _0xca2bd3 = _0x20d9cb['position']['x'] + (_0x1d3273['col1']['x'] * _0x1b13b9['x'] + _0x1d3273['col2']['x'] * _0x1b13b9['y']), _0x1534d3 = _0x20d9cb['position']['y'] + (_0x1d3273['col1']['y'] * _0x1b13b9['x'] + _0x1d3273['col2']['y'] * _0x1b13b9['y']), _0x5d249f = (_0xca2bd3 - _0x4e2aa4) * _0x5d249f + (_0x1534d3 - _0x3f68b3) * _0x63c7bb) : (_0xca2bd3 = this['m_proxyA']['GetVertex'](_0x1d3273['indexA'][0x0]), _0x1534d3 = this['m_proxyA']['GetVertex'](_0x1d3273['indexA'][0x1]), _0x4e2aa4 = this['m_proxyB']['GetVertex'](_0x1d3273['indexB'][0x0]), _0x3f68b3 = this['m_proxyB']['GetVertex'](_0x1d3273['indexB'][0x1]), _0x536a47['MulX'](_0x20d9cb, _0x1d8f9f), _0x1d8f9f = _0x536a47['MulMV'](_0x20d9cb['R'], _0x536a47['SubtractVV'](_0x1534d3, _0xca2bd3)), _0x536a47['MulX'](_0x2ec8e1, _0x2ce452), _0x5d249f = _0x536a47['MulMV'](_0x2ec8e1['R'], _0x536a47['SubtractVV'](_0x3f68b3, _0x4e2aa4)), _0x2ec8e1 = _0x1d8f9f['x'] * _0x1d8f9f['x'] + _0x1d8f9f['y'] * _0x1d8f9f['y'], _0x2ce452 = _0x5d249f['x'] * _0x5d249f['x'] + _0x5d249f['y'] * _0x5d249f['y'], _0x1d3273 = _0x536a47['SubtractVV'](_0x5d249f, _0x1d8f9f), _0x20d9cb = _0x1d8f9f['x'] * _0x1d3273['x'] + _0x1d8f9f['y'] * _0x1d3273['y'], _0x1d3273 = _0x5d249f['x'] * _0x1d3273['x'] + _0x5d249f['y'] * _0x1d3273['y'], _0x1d8f9f = _0x1d8f9f['x'] * _0x5d249f['x'] + _0x1d8f9f['y'] * _0x5d249f['y'], _0x63c7bb = _0x2ec8e1 * _0x2ce452 - _0x1d8f9f * _0x1d8f9f, _0x5d249f = 0x0, 0x0 != _0x63c7bb && (_0x5d249f = _0x536a47['Clamp']((_0x1d8f9f * _0x1d3273 - _0x20d9cb * _0x2ce452) / _0x63c7bb, 0x0, 0x1)), 0x0 > (_0x1d8f9f * _0x5d249f + _0x1d3273) / _0x2ce452 && (_0x5d249f = _0x536a47['Clamp']((_0x1d8f9f - _0x20d9cb) / _0x2ec8e1, 0x0, 0x1)), _0x1d8f9f = new _0xf1400d(), _0x1d8f9f['x'] = _0xca2bd3['x'] + _0x5d249f * (_0x1534d3['x'] - _0xca2bd3['x']), _0x1d8f9f['y'] = _0xca2bd3['y'] + _0x5d249f * (_0x1534d3['y'] - _0xca2bd3['y']), _0x2ce452 = new _0xf1400d(), _0x2ce452['x'] = _0x4e2aa4['x'] + _0x5d249f * (_0x3f68b3['x'] - _0x4e2aa4['x']), _0x2ce452['y'] = _0x4e2aa4['y'] + _0x5d249f * (_0x3f68b3['y'] - _0x4e2aa4['y']), 0x0 == _0x5d249f || 0x1 == _0x5d249f ? (this['m_type'] = _0xa4191a['e_faceB'], this['m_axis'] = _0x536a47['CrossVF'](_0x536a47['SubtractVV'](_0x3f68b3, _0x4e2aa4), 0x1), this['m_axis']['Normalize'](), this['m_localPoint'] = _0x2ce452) : (this['m_type'] = _0xa4191a['e_faceA'], this['m_axis'] = _0x536a47['CrossVF'](_0x536a47['SubtractVV'](_0x1534d3, _0xca2bd3), 0x1), this['m_localPoint'] = _0x1d8f9f)), 0x0 > _0x5d249f && this['m_axis']['NegativeSelf']()); } , _0xa4191a['prototype']['Evaluate'] = function(_0x5eecd5, _0x4d3fd8) { var _0x189c69, _0x4fa0a5, _0x469830 = 0x0; switch (this['m_type']) { case _0xa4191a['e_points']: return _0x189c69 = _0x536a47['MulTMV'](_0x5eecd5['R'], this['m_axis']), _0x4fa0a5 = _0x536a47['MulTMV'](_0x4d3fd8['R'], this['m_axis']['GetNegative']()), _0x189c69 = this['m_proxyA']['GetSupportVertex'](_0x189c69), _0x4fa0a5 = this['m_proxyB']['GetSupportVertex'](_0x4fa0a5), _0x189c69 = _0x536a47['MulX'](_0x5eecd5, _0x189c69), _0x4fa0a5 = _0x536a47['MulX'](_0x4d3fd8, _0x4fa0a5), (_0x4fa0a5['x'] - _0x189c69['x']) * this['m_axis']['x'] + (_0x4fa0a5['y'] - _0x189c69['y']) * this['m_axis']['y']; case _0xa4191a['e_faceA']: return _0x469830 = _0x536a47['MulMV'](_0x5eecd5['R'], this['m_axis']), _0x189c69 = _0x536a47['MulX'](_0x5eecd5, this['m_localPoint']), _0x4fa0a5 = _0x536a47['MulTMV'](_0x4d3fd8['R'], _0x469830['GetNegative']()), _0x4fa0a5 = this['m_proxyB']['GetSupportVertex'](_0x4fa0a5), _0x4fa0a5 = _0x536a47['MulX'](_0x4d3fd8, _0x4fa0a5), (_0x4fa0a5['x'] - _0x189c69['x']) * _0x469830['x'] + (_0x4fa0a5['y'] - _0x189c69['y']) * _0x469830['y']; case _0xa4191a['e_faceB']: return _0x469830 = _0x536a47['MulMV'](_0x4d3fd8['R'], this['m_axis']), _0x4fa0a5 = _0x536a47['MulX'](_0x4d3fd8, this['m_localPoint']), _0x189c69 = _0x536a47['MulTMV'](_0x5eecd5['R'], _0x469830['GetNegative']()), _0x189c69 = this['m_proxyA']['GetSupportVertex'](_0x189c69), _0x189c69 = _0x536a47['MulX'](_0x5eecd5, _0x189c69), (_0x189c69['x'] - _0x4fa0a5['x']) * _0x469830['x'] + (_0x189c69['y'] - _0x4fa0a5['y']) * _0x469830['y']; default: return _0x5df753['b2Assert'](!0x1), 0x0; } } , Box2D['postDefs']['push'](function() { Box2D['Collision']['b2SeparationFunction']['e_points'] = 0x1, Box2D['Collision']['b2SeparationFunction']['e_faceA'] = 0x2, Box2D['Collision']['b2SeparationFunction']['e_faceB'] = 0x4; }), _0x423c90['b2Simplex'] = function() { this['m_v1'] = new _0x123caa(), this['m_v2'] = new _0x123caa(), this['m_v3'] = new _0x123caa(), this['m_vertices'] = new Vector(0x3); } , _0x423c90['prototype']['b2Simplex'] = function() { this['m_vertices'][0x0] = this['m_v1'], this['m_vertices'][0x1] = this['m_v2'], this['m_vertices'][0x2] = this['m_v3']; } , _0x423c90['prototype']['ReadCache'] = function(_0xdae2b8, _0x1562bd, _0x5a79da, _0x1d316b, _0x422062) { _0x5df753['b2Assert'](0x0 <= _0xdae2b8['count'] && 0x3 >= _0xdae2b8['count']); var _0x5bc169, _0x223486; this['m_count'] = _0xdae2b8['count']; for (var _0x4b7403 = this['m_vertices'], _0x48fc21 = 0x0; _0x48fc21 < this['m_count']; _0x48fc21++) { var _0x1f6014 = _0x4b7403[_0x48fc21]; _0x1f6014['indexA'] = _0xdae2b8['indexA'][_0x48fc21], _0x1f6014['indexB'] = _0xdae2b8['indexB'][_0x48fc21], _0x5bc169 = _0x1562bd['GetVertex'](_0x1f6014['indexA']), _0x223486 = _0x1d316b['GetVertex'](_0x1f6014['indexB']), _0x1f6014['wA'] = _0x536a47['MulX'](_0x5a79da, _0x5bc169), _0x1f6014['wB'] = _0x536a47['MulX'](_0x422062, _0x223486), _0x1f6014['w'] = _0x536a47['SubtractVV'](_0x1f6014['wB'], _0x1f6014['wA']), _0x1f6014['a'] = 0x0; } if (0x1 < this['m_count'] && (_0xdae2b8 = _0xdae2b8['metric'], _0x5bc169 = this['GetMetric'](), _0x5bc169 < 0.5 * _0xdae2b8 || 0x2 * _0xdae2b8 < _0x5bc169 || _0x5bc169 < Number['MIN_VALUE'])) this['m_count'] = 0x0; 0x0 == this['m_count'] && (_0x1f6014 = _0x4b7403[0x0], _0x1f6014['indexA'] = 0x0, _0x1f6014['indexB'] = 0x0, _0x5bc169 = _0x1562bd['GetVertex'](0x0), _0x223486 = _0x1d316b['GetVertex'](0x0), _0x1f6014['wA'] = _0x536a47['MulX'](_0x5a79da, _0x5bc169), _0x1f6014['wB'] = _0x536a47['MulX'](_0x422062, _0x223486), _0x1f6014['w'] = _0x536a47['SubtractVV'](_0x1f6014['wB'], _0x1f6014['wA']), this['m_count'] = 0x1); } , _0x423c90['prototype']['WriteCache'] = function(_0x8455dc) { _0x8455dc['metric'] = this['GetMetric'](), _0x8455dc['count'] = Box2D['parseUInt'](this['m_count']); for (var _0x3c87bd = this['m_vertices'], _0x384b2d = 0x0; _0x384b2d < this['m_count']; _0x384b2d++) _0x8455dc['indexA'][_0x384b2d] = Box2D['parseUInt'](_0x3c87bd[_0x384b2d]['indexA']), _0x8455dc['indexB'][_0x384b2d] = Box2D['parseUInt'](_0x3c87bd[_0x384b2d]['indexB']); } , _0x423c90['prototype']['GetSearchDirection'] = function() { switch (this['m_count']) { case 0x1: return this['m_v1']['w']['GetNegative'](); case 0x2: var _0x457ecc = _0x536a47['SubtractVV'](this['m_v2']['w'], this['m_v1']['w']); return 0x0 < _0x536a47['CrossVV'](_0x457ecc, this['m_v1']['w']['GetNegative']()) ? _0x536a47['CrossFV'](0x1, _0x457ecc) : _0x536a47['CrossVF'](_0x457ecc, 0x1); default: return _0x5df753['b2Assert'](!0x1), new _0xf1400d(); } } , _0x423c90['prototype']['GetClosestPoint'] = function() { switch (this['m_count']) { case 0x0: return _0x5df753['b2Assert'](!0x1), new _0xf1400d(); case 0x1: return this['m_v1']['w']; case 0x2: return new _0xf1400d(this['m_v1']['a'] * this['m_v1']['w']['x'] + this['m_v2']['a'] * this['m_v2']['w']['x'],this['m_v1']['a'] * this['m_v1']['w']['y'] + this['m_v2']['a'] * this['m_v2']['w']['y']); default: return _0x5df753['b2Assert'](!0x1), new _0xf1400d(); } } , _0x423c90['prototype']['GetWitnessPoints'] = function(_0x54e069, _0x9cda6e) { switch (this['m_count']) { case 0x0: _0x5df753['b2Assert'](!0x1); break; case 0x1: _0x54e069['SetV'](this['m_v1']['wA']), _0x9cda6e['SetV'](this['m_v1']['wB']); break; case 0x2: _0x54e069['x'] = this['m_v1']['a'] * this['m_v1']['wA']['x'] + this['m_v2']['a'] * this['m_v2']['wA']['x'], _0x54e069['y'] = this['m_v1']['a'] * this['m_v1']['wA']['y'] + this['m_v2']['a'] * this['m_v2']['wA']['y'], _0x9cda6e['x'] = this['m_v1']['a'] * this['m_v1']['wB']['x'] + this['m_v2']['a'] * this['m_v2']['wB']['x'], _0x9cda6e['y'] = this['m_v1']['a'] * this['m_v1']['wB']['y'] + this['m_v2']['a'] * this['m_v2']['wB']['y']; break; case 0x3: _0x9cda6e['x'] = _0x54e069['x'] = this['m_v1']['a'] * this['m_v1']['wA']['x'] + this['m_v2']['a'] * this['m_v2']['wA']['x'] + this['m_v3']['a'] * this['m_v3']['wA']['x'], _0x9cda6e['y'] = _0x54e069['y'] = this['m_v1']['a'] * this['m_v1']['wA']['y'] + this['m_v2']['a'] * this['m_v2']['wA']['y'] + this['m_v3']['a'] * this['m_v3']['wA']['y']; break; default: _0x5df753['b2Assert'](!0x1); } } , _0x423c90['prototype']['GetMetric'] = function() { switch (this['m_count']) { case 0x0: return _0x5df753['b2Assert'](!0x1), 0x0; case 0x1: return 0x0; case 0x2: return _0x536a47['SubtractVV'](this['m_v1']['w'], this['m_v2']['w'])['Length'](); case 0x3: return _0x536a47['CrossVV'](_0x536a47['SubtractVV'](this['m_v2']['w'], this['m_v1']['w']), _0x536a47['SubtractVV'](this['m_v3']['w'], this['m_v1']['w'])); default: return _0x5df753['b2Assert'](!0x1), 0x0; } } , _0x423c90['prototype']['Solve2'] = function() { var _0x124bc8 = this['m_v1']['w'] , _0x4da71a = this['m_v2']['w'] , _0x92a86c = _0x536a47['SubtractVV'](_0x4da71a, _0x124bc8) , _0x124bc8 = -(_0x124bc8['x'] * _0x92a86c['x'] + _0x124bc8['y'] * _0x92a86c['y']); 0x0 >= _0x124bc8 ? this['m_count'] = this['m_v1']['a'] = 0x1 : (_0x4da71a = _0x4da71a['x'] * _0x92a86c['x'] + _0x4da71a['y'] * _0x92a86c['y'], 0x0 >= _0x4da71a ? (this['m_count'] = this['m_v2']['a'] = 0x1, this['m_v1']['Set'](this['m_v2'])) : (_0x92a86c = 0x1 / (_0x4da71a + _0x124bc8), this['m_v1']['a'] = _0x4da71a * _0x92a86c, this['m_v2']['a'] = _0x124bc8 * _0x92a86c, this['m_count'] = 0x2)); } , _0x423c90['prototype']['Solve3'] = function() { var _0x289fab = this['m_v1']['w'] , _0x275795 = this['m_v2']['w'] , _0x30c139 = this['m_v3']['w'] , _0x328494 = _0x536a47['SubtractVV'](_0x275795, _0x289fab) , _0x460a15 = _0x536a47['Dot'](_0x289fab, _0x328494) , _0x31edbf = _0x536a47['Dot'](_0x275795, _0x328494) , _0x460a15 = -_0x460a15 , _0x32eda3 = _0x536a47['SubtractVV'](_0x30c139, _0x289fab) , _0x4bb4dd = _0x536a47['Dot'](_0x289fab, _0x32eda3) , _0x40dbab = _0x536a47['Dot'](_0x30c139, _0x32eda3) , _0x4bb4dd = -_0x4bb4dd , _0x36f3c6 = _0x536a47['SubtractVV'](_0x30c139, _0x275795) , _0x46b71c = _0x536a47['Dot'](_0x275795, _0x36f3c6) , _0x36f3c6 = _0x536a47['Dot'](_0x30c139, _0x36f3c6) , _0x46b71c = -_0x46b71c , _0x32eda3 = _0x536a47['CrossVV'](_0x328494, _0x32eda3) , _0x328494 = _0x32eda3 * _0x536a47['CrossVV'](_0x275795, _0x30c139) , _0x30c139 = _0x32eda3 * _0x536a47['CrossVV'](_0x30c139, _0x289fab) , _0x289fab = _0x32eda3 * _0x536a47['CrossVV'](_0x289fab, _0x275795); 0x0 >= _0x460a15 && 0x0 >= _0x4bb4dd ? this['m_count'] = this['m_v1']['a'] = 0x1 : 0x0 < _0x31edbf && 0x0 < _0x460a15 && 0x0 >= _0x289fab ? (_0x40dbab = 0x1 / (_0x31edbf + _0x460a15), this['m_v1']['a'] = _0x31edbf * _0x40dbab, this['m_v2']['a'] = _0x460a15 * _0x40dbab, this['m_count'] = 0x2) : 0x0 < _0x40dbab && 0x0 < _0x4bb4dd && 0x0 >= _0x30c139 ? (_0x31edbf = 0x1 / (_0x40dbab + _0x4bb4dd), this['m_v1']['a'] = _0x40dbab * _0x31edbf, this['m_v3']['a'] = _0x4bb4dd * _0x31edbf, this['m_count'] = 0x2, this['m_v2']['Set'](this['m_v3'])) : 0x0 >= _0x31edbf && 0x0 >= _0x46b71c ? (this['m_count'] = this['m_v2']['a'] = 0x1, this['m_v1']['Set'](this['m_v2'])) : 0x0 >= _0x40dbab && 0x0 >= _0x36f3c6 ? (this['m_count'] = this['m_v3']['a'] = 0x1, this['m_v1']['Set'](this['m_v3'])) : 0x0 < _0x36f3c6 && 0x0 < _0x46b71c && 0x0 >= _0x328494 ? (_0x31edbf = 0x1 / (_0x36f3c6 + _0x46b71c), this['m_v2']['a'] = _0x36f3c6 * _0x31edbf, this['m_v3']['a'] = _0x46b71c * _0x31edbf, this['m_count'] = 0x2, this['m_v1']['Set'](this['m_v3'])) : (_0x31edbf = 0x1 / (_0x328494 + _0x30c139 + _0x289fab), this['m_v1']['a'] = _0x328494 * _0x31edbf, this['m_v2']['a'] = _0x30c139 * _0x31edbf, this['m_v3']['a'] = _0x289fab * _0x31edbf, this['m_count'] = 0x3); } , _0x2d2261['b2SimplexCache'] = function() { this['indexA'] = new Vector_a2j_Number(0x3), this['indexB'] = new Vector_a2j_Number(0x3); } , _0x123caa['b2SimplexVertex'] = function() {} , _0x123caa['prototype']['Set'] = function(_0x176946) { this['wA']['SetV'](_0x176946['wA']), this['wB']['SetV'](_0x176946['wB']), this['w']['SetV'](_0x176946['w']), this['a'] = _0x176946['a'], this['indexA'] = _0x176946['indexA'], this['indexB'] = _0x176946['indexB']; } , _0x430e1b['b2TimeOfImpact'] = function() {} , _0x430e1b['TimeOfImpact'] = function(_0x54ecdf) { ++_0x430e1b['b2_toiCalls']; var _0x3bf73a = _0x54ecdf['proxyA'] , _0xf97a7e = _0x54ecdf['proxyB'] , _0x13f421 = _0x54ecdf['sweepA'] , _0xc01c49 = _0x54ecdf['sweepB']; _0x5df753['b2Assert'](_0x13f421['t0'] == _0xc01c49['t0']), _0x5df753['b2Assert'](0x1 - _0x13f421['t0'] > Number['MIN_VALUE']); var _0x42eca7 = _0x3bf73a['m_radius'] + _0xf97a7e['m_radius']; _0x54ecdf = _0x54ecdf['tolerance']; var _0x56f3cb = 0x0 , _0xdf1f86 = 0x0 , _0x55d47c = 0x0; _0x430e1b['s_cache']['count'] = 0x0; for (_0x430e1b['s_distanceInput']['useRadii'] = !0x1; ; ) { _0x13f421['GetTransform'](_0x430e1b['s_xfA'], _0x56f3cb), _0xc01c49['GetTransform'](_0x430e1b['s_xfB'], _0x56f3cb), _0x430e1b['s_distanceInput']['proxyA'] = _0x3bf73a, _0x430e1b['s_distanceInput']['proxyB'] = _0xf97a7e, _0x430e1b['s_distanceInput']['transformA'] = _0x430e1b['s_xfA'], _0x430e1b['s_distanceInput']['transformB'] = _0x430e1b['s_xfB'], _0x533ed7['Distance'](_0x430e1b['s_distanceOutput'], _0x430e1b['s_cache'], _0x430e1b['s_distanceInput']); if (0x0 >= _0x430e1b['s_distanceOutput']['distance']) { _0x56f3cb = 0x1; break; } _0x430e1b['s_fcn']['Initialize'](_0x430e1b['s_cache'], _0x3bf73a, _0x430e1b['s_xfA'], _0xf97a7e, _0x430e1b['s_xfB']); var _0x453d04 = _0x430e1b['s_fcn']['Evaluate'](_0x430e1b['s_xfA'], _0x430e1b['s_xfB']); if (0x0 >= _0x453d04) { _0x56f3cb = 0x1; break; } 0x0 == _0xdf1f86 && (_0x55d47c = _0x453d04 > _0x42eca7 ? _0x536a47['Max'](_0x42eca7 - _0x54ecdf, 0.75 * _0x42eca7) : _0x536a47['Max'](_0x453d04 - _0x54ecdf, 0.02 * _0x42eca7)); if (_0x453d04 - _0x55d47c < 0.5 * _0x54ecdf) { if (0x0 == _0xdf1f86) { _0x56f3cb = 0x1; break; } break; } var _0xa655ce = _0x56f3cb , _0x6858a1 = _0x56f3cb , _0x1b00d1 = 0x1; _0x13f421['GetTransform'](_0x430e1b['s_xfA'], _0x1b00d1), _0xc01c49['GetTransform'](_0x430e1b['s_xfB'], _0x1b00d1); var _0x26d6d7 = _0x430e1b['s_fcn']['Evaluate'](_0x430e1b['s_xfA'], _0x430e1b['s_xfB']); if (_0x26d6d7 >= _0x55d47c) { _0x56f3cb = 0x1; break; } for (var _0x29ba2d = 0x0; ; ) { var _0x8f1103 = 0x0 , _0x8f1103 = _0x29ba2d & 0x1 ? _0x6858a1 + (_0x55d47c - _0x453d04) * (_0x1b00d1 - _0x6858a1) / (_0x26d6d7 - _0x453d04) : 0.5 * (_0x6858a1 + _0x1b00d1); _0x13f421['GetTransform'](_0x430e1b['s_xfA'], _0x8f1103), _0xc01c49['GetTransform'](_0x430e1b['s_xfB'], _0x8f1103); var _0x555c8e = _0x430e1b['s_fcn']['Evaluate'](_0x430e1b['s_xfA'], _0x430e1b['s_xfB']); if (_0x536a47['Abs'](_0x555c8e - _0x55d47c) < 0.025 * _0x54ecdf) { _0xa655ce = _0x8f1103; break; } _0x555c8e > _0x55d47c ? (_0x6858a1 = _0x8f1103, _0x453d04 = _0x555c8e) : (_0x1b00d1 = _0x8f1103, _0x26d6d7 = _0x555c8e), ++_0x29ba2d, ++_0x430e1b['b2_toiRootIters']; if (0x32 == _0x29ba2d) break; } _0x430e1b['b2_toiMaxRootIters'] = _0x536a47['Max'](_0x430e1b['b2_toiMaxRootIters'], _0x29ba2d); if (_0xa655ce < (0x1 + 0x64 * Number['MIN_VALUE']) * _0x56f3cb) break; _0x56f3cb = _0xa655ce, _0xdf1f86++, ++_0x430e1b['b2_toiIters']; if (0x3e8 == _0xdf1f86) break; } return _0x430e1b['b2_toiMaxIters'] = _0x536a47['Max'](_0x430e1b['b2_toiMaxIters'], _0xdf1f86), _0x56f3cb; } , Box2D['postDefs']['push'](function() { Box2D['Collision']['b2TimeOfImpact']['b2_toiCalls'] = 0x0, Box2D['Collision']['b2TimeOfImpact']['b2_toiIters'] = 0x0, Box2D['Collision']['b2TimeOfImpact']['b2_toiMaxIters'] = 0x0, Box2D['Collision']['b2TimeOfImpact']['b2_toiRootIters'] = 0x0, Box2D['Collision']['b2TimeOfImpact']['b2_toiMaxRootIters'] = 0x0, Box2D['Collision']['b2TimeOfImpact']['s_cache'] = new _0x2d2261(), Box2D['Collision']['b2TimeOfImpact']['s_distanceInput'] = new _0x13fbbf(), Box2D['Collision']['b2TimeOfImpact']['s_xfA'] = new _0x3233a1(), Box2D['Collision']['b2TimeOfImpact']['s_xfB'] = new _0x3233a1(), Box2D['Collision']['b2TimeOfImpact']['s_fcn'] = new _0xa4191a(), Box2D['Collision']['b2TimeOfImpact']['s_distanceOutput'] = new _0x349657(); }), _0x435a13['b2TOIInput'] = function() { this['proxyA'] = new _0x1d0ff0(), this['proxyB'] = new _0x1d0ff0(), this['sweepA'] = new _0x304312(), this['sweepB'] = new _0x304312(); } , _0x490112['b2WorldManifold'] = function() { this['m_normal'] = new _0xf1400d(); } , _0x490112['prototype']['b2WorldManifold'] = function() { this['m_points'] = new Vector(_0x5df753['b2_maxManifoldPoints']); for (var _0x8a15e2 = 0x0; _0x8a15e2 < _0x5df753['b2_maxManifoldPoints']; _0x8a15e2++) this['m_points'][_0x8a15e2] = new _0xf1400d(); } , _0x490112['prototype']['Initialize'] = function(_0x391aa0, _0x543d5e, _0x52cb3d, _0x7e5e41, _0x32396a) { void 0x0 === _0x52cb3d && (_0x52cb3d = 0x0), void 0x0 === _0x32396a && (_0x32396a = 0x0); if (0x0 != _0x391aa0['m_pointCount']) { var _0x59a0d9 = 0x0, _0x3c8967, _0x26f8f2, _0x2c0fde = 0x0, _0x174a2d = 0x0, _0x96b0e9 = 0x0, _0x2bec9c = 0x0, _0x539d90 = 0x0; switch (_0x391aa0['m_type']) { case _0x445922['e_circles']: _0x26f8f2 = _0x543d5e['R'], _0x3c8967 = _0x391aa0['m_localPoint'], _0x59a0d9 = _0x543d5e['position']['x'] + _0x26f8f2['col1']['x'] * _0x3c8967['x'] + _0x26f8f2['col2']['x'] * _0x3c8967['y'], _0x543d5e = _0x543d5e['position']['y'] + _0x26f8f2['col1']['y'] * _0x3c8967['x'] + _0x26f8f2['col2']['y'] * _0x3c8967['y'], _0x26f8f2 = _0x7e5e41['R'], _0x3c8967 = _0x391aa0['m_points'][0x0]['m_localPoint'], _0x391aa0 = _0x7e5e41['position']['x'] + _0x26f8f2['col1']['x'] * _0x3c8967['x'] + _0x26f8f2['col2']['x'] * _0x3c8967['y'], _0x7e5e41 = _0x7e5e41['position']['y'] + _0x26f8f2['col1']['y'] * _0x3c8967['x'] + _0x26f8f2['col2']['y'] * _0x3c8967['y'], _0x3c8967 = _0x391aa0 - _0x59a0d9, _0x26f8f2 = _0x7e5e41 - _0x543d5e, _0x2c0fde = _0x3c8967 * _0x3c8967 + _0x26f8f2 * _0x26f8f2, _0x2c0fde > Number['MIN_VALUE'] * Number['MIN_VALUE'] ? (_0x2c0fde = Math['sqrt'](_0x2c0fde), this['m_normal']['x'] = _0x3c8967 / _0x2c0fde, this['m_normal']['y'] = _0x26f8f2 / _0x2c0fde) : (this['m_normal']['x'] = 0x1, this['m_normal']['y'] = 0x0), _0x3c8967 = _0x543d5e + _0x52cb3d * this['m_normal']['y'], _0x7e5e41 -= _0x32396a * this['m_normal']['y'], this['m_points'][0x0]['x'] = 0.5 * (_0x59a0d9 + _0x52cb3d * this['m_normal']['x'] + (_0x391aa0 - _0x32396a * this['m_normal']['x'])), this['m_points'][0x0]['y'] = 0.5 * (_0x3c8967 + _0x7e5e41); break; case _0x445922['e_faceA']: _0x26f8f2 = _0x543d5e['R'], _0x3c8967 = _0x391aa0['m_localPlaneNormal'], _0x2c0fde = _0x26f8f2['col1']['x'] * _0x3c8967['x'] + _0x26f8f2['col2']['x'] * _0x3c8967['y'], _0x174a2d = _0x26f8f2['col1']['y'] * _0x3c8967['x'] + _0x26f8f2['col2']['y'] * _0x3c8967['y'], _0x26f8f2 = _0x543d5e['R'], _0x3c8967 = _0x391aa0['m_localPoint'], _0x96b0e9 = _0x543d5e['position']['x'] + _0x26f8f2['col1']['x'] * _0x3c8967['x'] + _0x26f8f2['col2']['x'] * _0x3c8967['y'], _0x2bec9c = _0x543d5e['position']['y'] + _0x26f8f2['col1']['y'] * _0x3c8967['x'] + _0x26f8f2['col2']['y'] * _0x3c8967['y'], this['m_normal']['x'] = _0x2c0fde, this['m_normal']['y'] = _0x174a2d; for (_0x59a0d9 = 0x0; _0x59a0d9 < _0x391aa0['m_pointCount']; _0x59a0d9++) _0x26f8f2 = _0x7e5e41['R'], _0x3c8967 = _0x391aa0['m_points'][_0x59a0d9]['m_localPoint'], _0x539d90 = _0x7e5e41['position']['x'] + _0x26f8f2['col1']['x'] * _0x3c8967['x'] + _0x26f8f2['col2']['x'] * _0x3c8967['y'], _0x3c8967 = _0x7e5e41['position']['y'] + _0x26f8f2['col1']['y'] * _0x3c8967['x'] + _0x26f8f2['col2']['y'] * _0x3c8967['y'], this['m_points'][_0x59a0d9]['x'] = _0x539d90 + 0.5 * (_0x52cb3d - (_0x539d90 - _0x96b0e9) * _0x2c0fde - (_0x3c8967 - _0x2bec9c) * _0x174a2d - _0x32396a) * _0x2c0fde, this['m_points'][_0x59a0d9]['y'] = _0x3c8967 + 0.5 * (_0x52cb3d - (_0x539d90 - _0x96b0e9) * _0x2c0fde - (_0x3c8967 - _0x2bec9c) * _0x174a2d - _0x32396a) * _0x174a2d; break; case _0x445922['e_faceB']: _0x26f8f2 = _0x7e5e41['R'], _0x3c8967 = _0x391aa0['m_localPlaneNormal'], _0x2c0fde = _0x26f8f2['col1']['x'] * _0x3c8967['x'] + _0x26f8f2['col2']['x'] * _0x3c8967['y'], _0x174a2d = _0x26f8f2['col1']['y'] * _0x3c8967['x'] + _0x26f8f2['col2']['y'] * _0x3c8967['y'], _0x26f8f2 = _0x7e5e41['R'], _0x3c8967 = _0x391aa0['m_localPoint'], _0x96b0e9 = _0x7e5e41['position']['x'] + _0x26f8f2['col1']['x'] * _0x3c8967['x'] + _0x26f8f2['col2']['x'] * _0x3c8967['y'], _0x2bec9c = _0x7e5e41['position']['y'] + _0x26f8f2['col1']['y'] * _0x3c8967['x'] + _0x26f8f2['col2']['y'] * _0x3c8967['y'], this['m_normal']['x'] = -_0x2c0fde, this['m_normal']['y'] = -_0x174a2d; for (_0x59a0d9 = 0x0; _0x59a0d9 < _0x391aa0['m_pointCount']; _0x59a0d9++) _0x26f8f2 = _0x543d5e['R'], _0x3c8967 = _0x391aa0['m_points'][_0x59a0d9]['m_localPoint'], _0x539d90 = _0x543d5e['position']['x'] + _0x26f8f2['col1']['x'] * _0x3c8967['x'] + _0x26f8f2['col2']['x'] * _0x3c8967['y'], _0x3c8967 = _0x543d5e['position']['y'] + _0x26f8f2['col1']['y'] * _0x3c8967['x'] + _0x26f8f2['col2']['y'] * _0x3c8967['y'], this['m_points'][_0x59a0d9]['x'] = _0x539d90 + 0.5 * (_0x32396a - (_0x539d90 - _0x96b0e9) * _0x2c0fde - (_0x3c8967 - _0x2bec9c) * _0x174a2d - _0x52cb3d) * _0x2c0fde, this['m_points'][_0x59a0d9]['y'] = _0x3c8967 + 0.5 * (_0x32396a - (_0x539d90 - _0x96b0e9) * _0x2c0fde - (_0x3c8967 - _0x2bec9c) * _0x174a2d - _0x52cb3d) * _0x174a2d; } } } , _0x181ea5['ClipVertex'] = function() { this['v'] = new _0xf1400d(), this['id'] = new _0x43d6a5(); } , _0x181ea5['prototype']['Set'] = function(_0x50884b) { this['v']['SetV'](_0x50884b['v']), this['id']['Set'](_0x50884b['id']); } , _0xdf5c7d['Features'] = function() {} , Object['defineProperty'](_0xdf5c7d['prototype'], 'referenceEdge', { 'enumerable': !0x1, 'configurable': !0x0, 'get': function() { return this['_referenceEdge']; } }), Object['defineProperty'](_0xdf5c7d['prototype'], 'referenceEdge', { 'enumerable': !0x1, 'configurable': !0x0, 'set': function(_0x33e838) { void 0x0 === _0x33e838 && (_0x33e838 = 0x0), this['_referenceEdge'] = _0x33e838, this['_m_id']['_key'] = this['_m_id']['_key'] & 0xffffff00 | this['_referenceEdge'] & 0xff; } }), Object['defineProperty'](_0xdf5c7d['prototype'], 'incidentEdge', { 'enumerable': !0x1, 'configurable': !0x0, 'get': function() { return this['_incidentEdge']; } }), Object['defineProperty'](_0xdf5c7d['prototype'], 'incidentEdge', { 'enumerable': !0x1, 'configurable': !0x0, 'set': function(_0x1f24a3) { void 0x0 === _0x1f24a3 && (_0x1f24a3 = 0x0), this['_incidentEdge'] = _0x1f24a3, this['_m_id']['_key'] = this['_m_id']['_key'] & 0xffff00ff | this['_incidentEdge'] << 0x8 & 0xff00; } }), Object['defineProperty'](_0xdf5c7d['prototype'], 'incidentVertex', { 'enumerable': !0x1, 'configurable': !0x0, 'get': function() { return this['_incidentVertex']; } }), Object['defineProperty'](_0xdf5c7d['prototype'], 'incidentVertex', { 'enumerable': !0x1, 'configurable': !0x0, 'set': function(_0x592190) { void 0x0 === _0x592190 && (_0x592190 = 0x0), this['_incidentVertex'] = _0x592190, this['_m_id']['_key'] = this['_m_id']['_key'] & 0xff00ffff | this['_incidentVertex'] << 0x10 & 0xff0000; } }), Object['defineProperty'](_0xdf5c7d['prototype'], 'flip', { 'enumerable': !0x1, 'configurable': !0x0, 'get': function() { return this['_flip']; } }), Object['defineProperty'](_0xdf5c7d['prototype'], 'flip', { 'enumerable': !0x1, 'configurable': !0x0, 'set': function(_0x2869b5) { void 0x0 === _0x2869b5 && (_0x2869b5 = 0x0), this['_flip'] = _0x2869b5, this['_m_id']['_key'] = this['_m_id']['_key'] & 0xffffff | this['_flip'] << 0x18 & 0xff000000; } }); }(), function() { var _0x28a4cf = Box2D['Common']['b2Settings'] , _0x196d5a = Box2D['Collision']['Shapes']['b2CircleShape'] , _0x3496bf = Box2D['Collision']['Shapes']['b2EdgeChainDef'] , _0x3a519c = Box2D['Collision']['Shapes']['b2EdgeShape'] , _0x424534 = Box2D['Collision']['Shapes']['b2MassData'] , _0x16959f = Box2D['Collision']['Shapes']['b2PolygonShape'] , _0x43df07 = Box2D['Collision']['Shapes']['b2Shape'] , _0x7f3df6 = Box2D['Common']['Math']['b2Mat22'] , _0x2abf6a = Box2D['Common']['Math']['b2Math'] , _0x206ca7 = Box2D['Common']['Math']['b2Transform'] , _0x211eae = Box2D['Common']['Math']['b2Vec2'] , _0x353bd7 = Box2D['Collision']['b2Distance'] , _0x55acee = Box2D['Collision']['b2DistanceInput'] , _0x34ed3d = Box2D['Collision']['b2DistanceOutput'] , _0x171a06 = Box2D['Collision']['b2DistanceProxy'] , _0x16d097 = Box2D['Collision']['b2SimplexCache']; Box2D['inherit'](_0x196d5a, Box2D['Collision']['Shapes']['b2Shape']), _0x196d5a['prototype']['__super'] = Box2D['Collision']['Shapes']['b2Shape']['prototype'], _0x196d5a['b2CircleShape'] = function() { Box2D['Collision']['Shapes']['b2Shape']['b2Shape']['apply'](this, arguments), this['m_p'] = new _0x211eae(); } , _0x196d5a['prototype']['Copy'] = function() { var _0x2baf54 = new _0x196d5a(); return _0x2baf54['Set'](this), _0x2baf54; } , _0x196d5a['prototype']['Set'] = function(_0x2a75b9) { this['__super']['Set']['call'](this, _0x2a75b9), Box2D['is'](_0x2a75b9, _0x196d5a) && this['m_p']['SetV']((_0x2a75b9 instanceof _0x196d5a ? _0x2a75b9 : null)['m_p']); } , _0x196d5a['prototype']['TestPoint'] = function(_0x41c66f, _0x550c63) { var _0x5b4a05 = _0x41c66f['R'] , _0x5338ff = _0x41c66f['position']['x'] + (_0x5b4a05['col1']['x'] * this['m_p']['x'] + _0x5b4a05['col2']['x'] * this['m_p']['y']) , _0x5b4a05 = _0x41c66f['position']['y'] + (_0x5b4a05['col1']['y'] * this['m_p']['x'] + _0x5b4a05['col2']['y'] * this['m_p']['y']) , _0x5338ff = _0x550c63['x'] - _0x5338ff , _0x5b4a05 = _0x550c63['y'] - _0x5b4a05; return _0x5338ff * _0x5338ff + _0x5b4a05 * _0x5b4a05 <= this['m_radius'] * this['m_radius']; } , _0x196d5a['prototype']['RayCast'] = function(_0x25822a, _0x47201b, _0x2a4042) { var _0xe7179b = _0x2a4042['R'] , _0x241ecd = _0x47201b['p1']['x'] - (_0x2a4042['position']['x'] + (_0xe7179b['col1']['x'] * this['m_p']['x'] + _0xe7179b['col2']['x'] * this['m_p']['y'])); _0x2a4042 = _0x47201b['p1']['y'] - (_0x2a4042['position']['y'] + (_0xe7179b['col1']['y'] * this['m_p']['x'] + _0xe7179b['col2']['y'] * this['m_p']['y'])); var _0xe7179b = _0x47201b['p2']['x'] - _0x47201b['p1']['x'] , _0x802a09 = _0x47201b['p2']['y'] - _0x47201b['p1']['y'] , _0x1c1ca7 = _0x241ecd * _0xe7179b + _0x2a4042 * _0x802a09 , _0x4fdb1f = _0xe7179b * _0xe7179b + _0x802a09 * _0x802a09 , _0x13ae0e = _0x1c1ca7 * _0x1c1ca7 - _0x4fdb1f * (_0x241ecd * _0x241ecd + _0x2a4042 * _0x2a4042 - this['m_radius'] * this['m_radius']); if (0x0 > _0x13ae0e || _0x4fdb1f < Number['MIN_VALUE']) return !0x1; return _0x1c1ca7 = -(_0x1c1ca7 + Math['sqrt'](_0x13ae0e)), 0x0 <= _0x1c1ca7 && _0x1c1ca7 <= _0x47201b['maxFraction'] * _0x4fdb1f ? (_0x1c1ca7 /= _0x4fdb1f, _0x25822a['fraction'] = _0x1c1ca7, _0x25822a['normal']['x'] = _0x241ecd + _0x1c1ca7 * _0xe7179b, _0x25822a['normal']['y'] = _0x2a4042 + _0x1c1ca7 * _0x802a09, _0x25822a['normal']['Normalize'](), !0x0) : !0x1; } , _0x196d5a['prototype']['ComputeAABB'] = function(_0x52cd61, _0x251b74) { var _0x35f58e = _0x251b74['R'] , _0x236e03 = _0x251b74['position']['x'] + (_0x35f58e['col1']['x'] * this['m_p']['x'] + _0x35f58e['col2']['x'] * this['m_p']['y']) , _0x35f58e = _0x251b74['position']['y'] + (_0x35f58e['col1']['y'] * this['m_p']['x'] + _0x35f58e['col2']['y'] * this['m_p']['y']); _0x52cd61['lowerBound']['Set'](_0x236e03 - this['m_radius'], _0x35f58e - this['m_radius']), _0x52cd61['upperBound']['Set'](_0x236e03 + this['m_radius'], _0x35f58e + this['m_radius']); } , _0x196d5a['prototype']['ComputeMass'] = function(_0x4b2428, _0x23c878) { void 0x0 === _0x23c878 && (_0x23c878 = 0x0), _0x4b2428['mass'] = _0x23c878 * _0x28a4cf['b2_pi'] * this['m_radius'] * this['m_radius'], _0x4b2428['center']['SetV'](this['m_p']), _0x4b2428['I'] = _0x4b2428['mass'] * (0.5 * this['m_radius'] * this['m_radius'] + (this['m_p']['x'] * this['m_p']['x'] + this['m_p']['y'] * this['m_p']['y'])); } , _0x196d5a['prototype']['ComputeSubmergedArea'] = function(_0x23d732, _0x1d7486, _0x4bf9c4, _0x3e6ac5) { void 0x0 === _0x1d7486 && (_0x1d7486 = 0x0), _0x4bf9c4 = _0x2abf6a['MulX'](_0x4bf9c4, this['m_p']); var _0x5cb434 = -(_0x2abf6a['Dot'](_0x23d732, _0x4bf9c4) - _0x1d7486); if (_0x5cb434 < -this['m_radius'] + Number['MIN_VALUE']) return 0x0; if (_0x5cb434 > this['m_radius']) return _0x3e6ac5['SetV'](_0x4bf9c4), Math['PI'] * this['m_radius'] * this['m_radius']; _0x1d7486 = this['m_radius'] * this['m_radius']; var _0x5cf4c8 = _0x5cb434 * _0x5cb434 , _0x5cb434 = _0x1d7486 * (Math['asin'](_0x5cb434 / this['m_radius']) + Math['PI'] / 0x2) + _0x5cb434 * Math['sqrt'](_0x1d7486 - _0x5cf4c8); return _0x1d7486 = -0x2 / 0x3 * Math['pow'](_0x1d7486 - _0x5cf4c8, 1.5) / _0x5cb434, _0x3e6ac5['x'] = _0x4bf9c4['x'] + _0x23d732['x'] * _0x1d7486, _0x3e6ac5['y'] = _0x4bf9c4['y'] + _0x23d732['y'] * _0x1d7486, _0x5cb434; } , _0x196d5a['prototype']['GetLocalPosition'] = function() { return this['m_p']; } , _0x196d5a['prototype']['SetLocalPosition'] = function(_0x2ffda5) { this['m_p']['SetV'](_0x2ffda5); } , _0x196d5a['prototype']['GetRadius'] = function() { return this['m_radius']; } , _0x196d5a['prototype']['SetRadius'] = function(_0x4a1b4e) { void 0x0 === _0x4a1b4e && (_0x4a1b4e = 0x0), this['m_radius'] = _0x4a1b4e; } , _0x196d5a['prototype']['b2CircleShape'] = function(_0x4d0fc4) { void 0x0 === _0x4d0fc4 && (_0x4d0fc4 = 0x0), this['__super']['b2Shape']['call'](this), this['m_type'] = _0x43df07['e_circleShape'], this['m_radius'] = _0x4d0fc4; } , _0x3496bf['b2EdgeChainDef'] = function() {} , _0x3496bf['prototype']['b2EdgeChainDef'] = function() { this['vertexCount'] = 0x0, this['isALoop'] = !0x0, this['vertices'] = []; } , Box2D['inherit'](_0x3a519c, Box2D['Collision']['Shapes']['b2Shape']), _0x3a519c['prototype']['__super'] = Box2D['Collision']['Shapes']['b2Shape']['prototype'], _0x3a519c['b2EdgeShape'] = function() { Box2D['Collision']['Shapes']['b2Shape']['b2Shape']['apply'](this, arguments), this['s_supportVec'] = new _0x211eae(), this['m_v1'] = new _0x211eae(), this['m_v2'] = new _0x211eae(), this['m_coreV1'] = new _0x211eae(), this['m_coreV2'] = new _0x211eae(), this['m_normal'] = new _0x211eae(), this['m_direction'] = new _0x211eae(), this['m_cornerDir1'] = new _0x211eae(), this['m_cornerDir2'] = new _0x211eae(); } , _0x3a519c['prototype']['TestPoint'] = function() { return !0x1; } , _0x3a519c['prototype']['RayCast'] = function(_0x5e45b8, _0x37bd31, _0x618c8c) { var _0x1504f8, _0x413ec9 = _0x37bd31['p2']['x'] - _0x37bd31['p1']['x'], _0x41b001 = _0x37bd31['p2']['y'] - _0x37bd31['p1']['y']; _0x1504f8 = _0x618c8c['R']; var _0x2cbabb = _0x618c8c['position']['x'] + (_0x1504f8['col1']['x'] * this['m_v1']['x'] + _0x1504f8['col2']['x'] * this['m_v1']['y']) , _0x4b6063 = _0x618c8c['position']['y'] + (_0x1504f8['col1']['y'] * this['m_v1']['x'] + _0x1504f8['col2']['y'] * this['m_v1']['y']) , _0x52c4a0 = _0x618c8c['position']['y'] + (_0x1504f8['col1']['y'] * this['m_v2']['x'] + _0x1504f8['col2']['y'] * this['m_v2']['y']) - _0x4b6063; _0x618c8c = -(_0x618c8c['position']['x'] + (_0x1504f8['col1']['x'] * this['m_v2']['x'] + _0x1504f8['col2']['x'] * this['m_v2']['y']) - _0x2cbabb), _0x1504f8 = 0x64 * Number['MIN_VALUE']; var _0x47890c = -(_0x413ec9 * _0x52c4a0 + _0x41b001 * _0x618c8c); if (_0x47890c > _0x1504f8) { var _0x2cbabb = _0x37bd31['p1']['x'] - _0x2cbabb , _0x3fa9db = _0x37bd31['p1']['y'] - _0x4b6063 , _0x4b6063 = _0x2cbabb * _0x52c4a0 + _0x3fa9db * _0x618c8c; if (0x0 <= _0x4b6063 && _0x4b6063 <= _0x37bd31['maxFraction'] * _0x47890c && (_0x37bd31 = -_0x413ec9 * _0x3fa9db + _0x41b001 * _0x2cbabb, -_0x1504f8 * _0x47890c <= _0x37bd31 && _0x37bd31 <= _0x47890c * (0x1 + _0x1504f8))) return _0x5e45b8['fraction'] = _0x4b6063 / _0x47890c, _0x37bd31 = Math['sqrt'](_0x52c4a0 * _0x52c4a0 + _0x618c8c * _0x618c8c), _0x5e45b8['normal']['x'] = _0x52c4a0 / _0x37bd31, _0x5e45b8['normal']['y'] = _0x618c8c / _0x37bd31, !0x0; } return !0x1; } , _0x3a519c['prototype']['ComputeAABB'] = function(_0x3b4c4a, _0x4ef61d) { var _0x489527 = _0x4ef61d['R'] , _0x4621f3 = _0x4ef61d['position']['x'] + (_0x489527['col1']['x'] * this['m_v1']['x'] + _0x489527['col2']['x'] * this['m_v1']['y']) , _0x3ad80c = _0x4ef61d['position']['y'] + (_0x489527['col1']['y'] * this['m_v1']['x'] + _0x489527['col2']['y'] * this['m_v1']['y']) , _0x84a7e8 = _0x4ef61d['position']['x'] + (_0x489527['col1']['x'] * this['m_v2']['x'] + _0x489527['col2']['x'] * this['m_v2']['y']) , _0x489527 = _0x4ef61d['position']['y'] + (_0x489527['col1']['y'] * this['m_v2']['x'] + _0x489527['col2']['y'] * this['m_v2']['y']); _0x4621f3 < _0x84a7e8 ? (_0x3b4c4a['lowerBound']['x'] = _0x4621f3, _0x3b4c4a['upperBound']['x'] = _0x84a7e8) : (_0x3b4c4a['lowerBound']['x'] = _0x84a7e8, _0x3b4c4a['upperBound']['x'] = _0x4621f3), _0x3ad80c < _0x489527 ? (_0x3b4c4a['lowerBound']['y'] = _0x3ad80c, _0x3b4c4a['upperBound']['y'] = _0x489527) : (_0x3b4c4a['lowerBound']['y'] = _0x489527, _0x3b4c4a['upperBound']['y'] = _0x3ad80c); } , _0x3a519c['prototype']['ComputeMass'] = function(_0x1096d4) { _0x1096d4['mass'] = 0x0, _0x1096d4['center']['SetV'](this['m_v1']), _0x1096d4['I'] = 0x0; } , _0x3a519c['prototype']['ComputeSubmergedArea'] = function(_0x1606a7, _0x16a429, _0x2c9035, _0x3becd0) { void 0x0 === _0x16a429 && (_0x16a429 = 0x0); var _0x42f8f6 = new _0x211eae(_0x1606a7['x'] * _0x16a429,_0x1606a7['y'] * _0x16a429) , _0x5c2d3b = _0x2abf6a['MulX'](_0x2c9035, this['m_v1']); _0x2c9035 = _0x2abf6a['MulX'](_0x2c9035, this['m_v2']); var _0x5bb9c0 = _0x2abf6a['Dot'](_0x1606a7, _0x5c2d3b) - _0x16a429; _0x1606a7 = _0x2abf6a['Dot'](_0x1606a7, _0x2c9035) - _0x16a429; if (0x0 < _0x5bb9c0) { if (0x0 < _0x1606a7) return 0x0; _0x5c2d3b['x'] = -_0x1606a7 / (_0x5bb9c0 - _0x1606a7) * _0x5c2d3b['x'] + _0x5bb9c0 / (_0x5bb9c0 - _0x1606a7) * _0x2c9035['x'], _0x5c2d3b['y'] = -_0x1606a7 / (_0x5bb9c0 - _0x1606a7) * _0x5c2d3b['y'] + _0x5bb9c0 / (_0x5bb9c0 - _0x1606a7) * _0x2c9035['y']; } else 0x0 < _0x1606a7 && (_0x2c9035['x'] = -_0x1606a7 / (_0x5bb9c0 - _0x1606a7) * _0x5c2d3b['x'] + _0x5bb9c0 / (_0x5bb9c0 - _0x1606a7) * _0x2c9035['x'], _0x2c9035['y'] = -_0x1606a7 / (_0x5bb9c0 - _0x1606a7) * _0x5c2d3b['y'] + _0x5bb9c0 / (_0x5bb9c0 - _0x1606a7) * _0x2c9035['y']); return _0x3becd0['x'] = (_0x42f8f6['x'] + _0x5c2d3b['x'] + _0x2c9035['x']) / 0x3, _0x3becd0['y'] = (_0x42f8f6['y'] + _0x5c2d3b['y'] + _0x2c9035['y']) / 0x3, 0.5 * ((_0x5c2d3b['x'] - _0x42f8f6['x']) * (_0x2c9035['y'] - _0x42f8f6['y']) - (_0x5c2d3b['y'] - _0x42f8f6['y']) * (_0x2c9035['x'] - _0x42f8f6['x'])); } , _0x3a519c['prototype']['GetLength'] = function() { return this['m_length']; } , _0x3a519c['prototype']['GetVertex1'] = function() { return this['m_v1']; } , _0x3a519c['prototype']['GetVertex2'] = function() { return this['m_v2']; } , _0x3a519c['prototype']['GetCoreVertex1'] = function() { return this['m_coreV1']; } , _0x3a519c['prototype']['GetCoreVertex2'] = function() { return this['m_coreV2']; } , _0x3a519c['prototype']['GetNormalVector'] = function() { return this['m_normal']; } , _0x3a519c['prototype']['GetDirectionVector'] = function() { return this['m_direction']; } , _0x3a519c['prototype']['GetCorner1Vector'] = function() { return this['m_cornerDir1']; } , _0x3a519c['prototype']['GetCorner2Vector'] = function() { return this['m_cornerDir2']; } , _0x3a519c['prototype']['Corner1IsConvex'] = function() { return this['m_cornerConvex1']; } , _0x3a519c['prototype']['Corner2IsConvex'] = function() { return this['m_cornerConvex2']; } , _0x3a519c['prototype']['GetFirstVertex'] = function(_0xd9b9bd) { var _0x223233 = _0xd9b9bd['R']; return new _0x211eae(_0xd9b9bd['position']['x'] + (_0x223233['col1']['x'] * this['m_coreV1']['x'] + _0x223233['col2']['x'] * this['m_coreV1']['y']),_0xd9b9bd['position']['y'] + (_0x223233['col1']['y'] * this['m_coreV1']['x'] + _0x223233['col2']['y'] * this['m_coreV1']['y'])); } , _0x3a519c['prototype']['GetNextEdge'] = function() { return this['m_nextEdge']; } , _0x3a519c['prototype']['GetPrevEdge'] = function() { return this['m_prevEdge']; } , _0x3a519c['prototype']['Support'] = function(_0x5ccc6a, _0x19b6fe, _0x162d24) { void 0x0 === _0x19b6fe && (_0x19b6fe = 0x0), void 0x0 === _0x162d24 && (_0x162d24 = 0x0); var _0x59ace9 = _0x5ccc6a['R'] , _0x154cde = _0x5ccc6a['position']['x'] + (_0x59ace9['col1']['x'] * this['m_coreV1']['x'] + _0x59ace9['col2']['x'] * this['m_coreV1']['y']) , _0xd67dac = _0x5ccc6a['position']['y'] + (_0x59ace9['col1']['y'] * this['m_coreV1']['x'] + _0x59ace9['col2']['y'] * this['m_coreV1']['y']) , _0x448eab = _0x5ccc6a['position']['x'] + (_0x59ace9['col1']['x'] * this['m_coreV2']['x'] + _0x59ace9['col2']['x'] * this['m_coreV2']['y']); return _0x5ccc6a = _0x5ccc6a['position']['y'] + (_0x59ace9['col1']['y'] * this['m_coreV2']['x'] + _0x59ace9['col2']['y'] * this['m_coreV2']['y']), _0x154cde * _0x19b6fe + _0xd67dac * _0x162d24 > _0x448eab * _0x19b6fe + _0x5ccc6a * _0x162d24 ? (this['s_supportVec']['x'] = _0x154cde, this['s_supportVec']['y'] = _0xd67dac) : (this['s_supportVec']['x'] = _0x448eab, this['s_supportVec']['y'] = _0x5ccc6a), this['s_supportVec']; } , _0x3a519c['prototype']['b2EdgeShape'] = function(_0x3589d4, _0x408599) { this['__super']['b2Shape']['call'](this), this['m_type'] = _0x43df07['e_edgeShape'], this['m_nextEdge'] = this['m_prevEdge'] = null, this['m_v1'] = _0x3589d4, this['m_v2'] = _0x408599, this['m_direction']['Set'](this['m_v2']['x'] - this['m_v1']['x'], this['m_v2']['y'] - this['m_v1']['y']), this['m_length'] = this['m_direction']['Normalize'](), this['m_normal']['Set'](this['m_direction']['y'], -this['m_direction']['x']), this['m_coreV1']['Set'](-_0x28a4cf['b2_toiSlop'] * (this['m_normal']['x'] - this['m_direction']['x']) + this['m_v1']['x'], -_0x28a4cf['b2_toiSlop'] * (this['m_normal']['y'] - this['m_direction']['y']) + this['m_v1']['y']), this['m_coreV2']['Set'](-_0x28a4cf['b2_toiSlop'] * (this['m_normal']['x'] + this['m_direction']['x']) + this['m_v2']['x'], -_0x28a4cf['b2_toiSlop'] * (this['m_normal']['y'] + this['m_direction']['y']) + this['m_v2']['y']), this['m_cornerDir1'] = this['m_normal'], this['m_cornerDir2']['Set'](-this['m_normal']['x'], -this['m_normal']['y']); } , _0x3a519c['prototype']['SetPrevEdge'] = function(_0x2035f7, _0x161f59, _0x29e6db, _0x17134a) { this['m_prevEdge'] = _0x2035f7, this['m_coreV1'] = _0x161f59, this['m_cornerDir1'] = _0x29e6db, this['m_cornerConvex1'] = _0x17134a; } , _0x3a519c['prototype']['SetNextEdge'] = function(_0xf7c76e, _0x4c884d, _0x3a2800, _0x1a6e90) { this['m_nextEdge'] = _0xf7c76e, this['m_coreV2'] = _0x4c884d, this['m_cornerDir2'] = _0x3a2800, this['m_cornerConvex2'] = _0x1a6e90; } , _0x424534['b2MassData'] = function() { this['mass'] = 0x0, this['center'] = new _0x211eae(0x0,0x0), this['I'] = 0x0; } , Box2D['inherit'](_0x16959f, Box2D['Collision']['Shapes']['b2Shape']), _0x16959f['prototype']['__super'] = Box2D['Collision']['Shapes']['b2Shape']['prototype'], _0x16959f['b2PolygonShape'] = function() { Box2D['Collision']['Shapes']['b2Shape']['b2Shape']['apply'](this, arguments); } , _0x16959f['prototype']['Copy'] = function() { var _0x5e6744 = new _0x16959f(); return _0x5e6744['Set'](this), _0x5e6744; } , _0x16959f['prototype']['Set'] = function(_0x3ceebc) { this['__super']['Set']['call'](this, _0x3ceebc); if (Box2D['is'](_0x3ceebc, _0x16959f)) { _0x3ceebc = _0x3ceebc instanceof _0x16959f ? _0x3ceebc : null, this['m_centroid']['SetV'](_0x3ceebc['m_centroid']), this['m_vertexCount'] = _0x3ceebc['m_vertexCount'], this['Reserve'](this['m_vertexCount']); for (var _0x4b0c75 = 0x0; _0x4b0c75 < this['m_vertexCount']; _0x4b0c75++) this['m_vertices'][_0x4b0c75]['SetV'](_0x3ceebc['m_vertices'][_0x4b0c75]), this['m_normals'][_0x4b0c75]['SetV'](_0x3ceebc['m_normals'][_0x4b0c75]); } } , _0x16959f['prototype']['SetAsArray'] = function(_0x21e5c9, _0x5becc7) { void 0x0 === _0x5becc7 && (_0x5becc7 = 0x0); for (var _0x4b2d15 = new Vector(), _0x5eb2fd = 0x0, _0x805051, _0x5eb2fd = 0x0; _0x5eb2fd < _0x21e5c9['length']; ++_0x5eb2fd) _0x805051 = _0x21e5c9[_0x5eb2fd], _0x4b2d15['push'](_0x805051); this['SetAsVector'](_0x4b2d15, _0x5becc7); } , _0x16959f['AsArray'] = function(_0x23c16, _0x1cce71) { void 0x0 === _0x1cce71 && (_0x1cce71 = 0x0); var _0x1a1af9 = new _0x16959f(); return _0x1a1af9['SetAsArray'](_0x23c16, _0x1cce71), _0x1a1af9; } , _0x16959f['prototype']['SetAsVector'] = function(_0x226087, _0x4cdecd) { void 0x0 === _0x4cdecd && (_0x4cdecd = 0x0), 0x0 == _0x4cdecd && (_0x4cdecd = _0x226087['length']), _0x28a4cf['b2Assert'](0x2 <= _0x4cdecd), this['m_vertexCount'] = _0x4cdecd, this['Reserve'](_0x4cdecd); for (var _0x5a1ef8 = 0x0, _0x5a1ef8 = 0x0; _0x5a1ef8 < this['m_vertexCount']; _0x5a1ef8++) this['m_vertices'][_0x5a1ef8]['SetV'](_0x226087[_0x5a1ef8]); for (_0x5a1ef8 = 0x0; _0x5a1ef8 < this['m_vertexCount']; ++_0x5a1ef8) { var _0x154c81 = parseInt(_0x5a1ef8) , _0x25bcb5 = parseInt(_0x5a1ef8 + 0x1 < this['m_vertexCount'] ? _0x5a1ef8 + 0x1 : 0x0) , _0x154c81 = _0x2abf6a['SubtractVV'](this['m_vertices'][_0x25bcb5], this['m_vertices'][_0x154c81]); _0x28a4cf['b2Assert'](_0x154c81['LengthSquared']() > Number['MIN_VALUE']), this['m_normals'][_0x5a1ef8]['SetV'](_0x2abf6a['CrossVF'](_0x154c81, 0x1)), this['m_normals'][_0x5a1ef8]['Normalize'](); } this['m_centroid'] = _0x16959f['ComputeCentroid'](this['m_vertices'], this['m_vertexCount']); } , _0x16959f['AsVector'] = function(_0x443cfe, _0x3872f6) { void 0x0 === _0x3872f6 && (_0x3872f6 = 0x0); var _0x48ae68 = new _0x16959f(); return _0x48ae68['SetAsVector'](_0x443cfe, _0x3872f6), _0x48ae68; } , _0x16959f['prototype']['SetAsBox'] = function(_0x422781, _0x1977d5) { void 0x0 === _0x422781 && (_0x422781 = 0x0), void 0x0 === _0x1977d5 && (_0x1977d5 = 0x0), this['m_vertexCount'] = 0x4, this['Reserve'](0x4), this['m_vertices'][0x0]['Set'](-_0x422781, -_0x1977d5), this['m_vertices'][0x1]['Set'](_0x422781, -_0x1977d5), this['m_vertices'][0x2]['Set'](_0x422781, _0x1977d5), this['m_vertices'][0x3]['Set'](-_0x422781, _0x1977d5), this['m_normals'][0x0]['Set'](0x0, -0x1), this['m_normals'][0x1]['Set'](0x1, 0x0), this['m_normals'][0x2]['Set'](0x0, 0x1), this['m_normals'][0x3]['Set'](-0x1, 0x0), this['m_centroid']['SetZero'](); } , _0x16959f['AsBox'] = function(_0x3cfc64, _0x5a5856) { void 0x0 === _0x3cfc64 && (_0x3cfc64 = 0x0), void 0x0 === _0x5a5856 && (_0x5a5856 = 0x0); var _0x299677 = new _0x16959f(); return _0x299677['SetAsBox'](_0x3cfc64, _0x5a5856), _0x299677; } , _0x16959f['prototype']['SetAsOrientedBox'] = function(_0x221553, _0x35b175, _0x3809ef, _0x312578) { void 0x0 === _0x221553 && (_0x221553 = 0x0), void 0x0 === _0x35b175 && (_0x35b175 = 0x0), void 0x0 === _0x3809ef && (_0x3809ef = null), void 0x0 === _0x312578 && (_0x312578 = 0x0), this['m_vertexCount'] = 0x4, this['Reserve'](0x4), this['m_vertices'][0x0]['Set'](-_0x221553, -_0x35b175), this['m_vertices'][0x1]['Set'](_0x221553, -_0x35b175), this['m_vertices'][0x2]['Set'](_0x221553, _0x35b175), this['m_vertices'][0x3]['Set'](-_0x221553, _0x35b175), this['m_normals'][0x0]['Set'](0x0, -0x1), this['m_normals'][0x1]['Set'](0x1, 0x0), this['m_normals'][0x2]['Set'](0x0, 0x1), this['m_normals'][0x3]['Set'](-0x1, 0x0), this['m_centroid'] = _0x3809ef, _0x221553 = new _0x206ca7(), _0x221553['position'] = _0x3809ef, _0x221553['R']['Set'](_0x312578); for (_0x3809ef = 0x0; _0x3809ef < this['m_vertexCount']; ++_0x3809ef) this['m_vertices'][_0x3809ef] = _0x2abf6a['MulX'](_0x221553, this['m_vertices'][_0x3809ef]), this['m_normals'][_0x3809ef] = _0x2abf6a['MulMV'](_0x221553['R'], this['m_normals'][_0x3809ef]); } , _0x16959f['AsOrientedBox'] = function(_0x2192f9, _0x2d6e0d, _0x25e59b, _0x71bd0c) { void 0x0 === _0x2192f9 && (_0x2192f9 = 0x0), void 0x0 === _0x2d6e0d && (_0x2d6e0d = 0x0), void 0x0 === _0x25e59b && (_0x25e59b = null), void 0x0 === _0x71bd0c && (_0x71bd0c = 0x0); var _0x109778 = new _0x16959f(); return _0x109778['SetAsOrientedBox'](_0x2192f9, _0x2d6e0d, _0x25e59b, _0x71bd0c), _0x109778; } , _0x16959f['prototype']['SetAsEdge'] = function(_0x5bbc91, _0x2d52d1) { this['m_vertexCount'] = 0x2, this['Reserve'](0x2), this['m_vertices'][0x0]['SetV'](_0x5bbc91), this['m_vertices'][0x1]['SetV'](_0x2d52d1), this['m_centroid']['x'] = 0.5 * (_0x5bbc91['x'] + _0x2d52d1['x']), this['m_centroid']['y'] = 0.5 * (_0x5bbc91['y'] + _0x2d52d1['y']), this['m_normals'][0x0] = _0x2abf6a['CrossVF'](_0x2abf6a['SubtractVV'](_0x2d52d1, _0x5bbc91), 0x1), this['m_normals'][0x0]['Normalize'](), this['m_normals'][0x1]['x'] = -this['m_normals'][0x0]['x'], this['m_normals'][0x1]['y'] = -this['m_normals'][0x0]['y']; } , _0x16959f['AsEdge'] = function(_0xe3b3ee, _0x11fd49) { var _0x163ca0 = new _0x16959f(); return _0x163ca0['SetAsEdge'](_0xe3b3ee, _0x11fd49), _0x163ca0; } , _0x16959f['prototype']['TestPoint'] = function(_0x27d6a9, _0x24b4a4) { var _0x2d5db8; _0x2d5db8 = _0x27d6a9['R']; for (var _0x489ecb = _0x24b4a4['x'] - _0x27d6a9['position']['x'], _0x4386a4 = _0x24b4a4['y'] - _0x27d6a9['position']['y'], _0x3455ad = _0x489ecb * _0x2d5db8['col1']['x'] + _0x4386a4 * _0x2d5db8['col1']['y'], _0x51b354 = _0x489ecb * _0x2d5db8['col2']['x'] + _0x4386a4 * _0x2d5db8['col2']['y'], _0x33a5c8 = 0x0; _0x33a5c8 < this['m_vertexCount']; ++_0x33a5c8) if (_0x2d5db8 = this['m_vertices'][_0x33a5c8], _0x489ecb = _0x3455ad - _0x2d5db8['x'], _0x4386a4 = _0x51b354 - _0x2d5db8['y'], _0x2d5db8 = this['m_normals'][_0x33a5c8], 0x0 < _0x2d5db8['x'] * _0x489ecb + _0x2d5db8['y'] * _0x4386a4) return !0x1; return !0x0; } , _0x16959f['prototype']['RayCast'] = function(_0x420619, _0x3965a1, _0x28385e) { var _0x1f5df5 = 0x0, _0x137c99 = _0x3965a1['maxFraction'], _0x1967a2 = 0x0, _0x3cff5c = 0x0, _0x1e09e9, _0x271a68, _0x1967a2 = _0x3965a1['p1']['x'] - _0x28385e['position']['x'], _0x3cff5c = _0x3965a1['p1']['y'] - _0x28385e['position']['y']; _0x1e09e9 = _0x28385e['R']; var _0x3d84a1 = _0x1967a2 * _0x1e09e9['col1']['x'] + _0x3cff5c * _0x1e09e9['col1']['y'] , _0x3c416e = _0x1967a2 * _0x1e09e9['col2']['x'] + _0x3cff5c * _0x1e09e9['col2']['y'] , _0x1967a2 = _0x3965a1['p2']['x'] - _0x28385e['position']['x'] , _0x3cff5c = _0x3965a1['p2']['y'] - _0x28385e['position']['y']; _0x1e09e9 = _0x28385e['R'], _0x3965a1 = _0x1967a2 * _0x1e09e9['col1']['x'] + _0x3cff5c * _0x1e09e9['col1']['y'] - _0x3d84a1, _0x1e09e9 = _0x1967a2 * _0x1e09e9['col2']['x'] + _0x3cff5c * _0x1e09e9['col2']['y'] - _0x3c416e; for (var _0x2e30ea = -0x1, _0x1991e1 = 0x0; _0x1991e1 < this['m_vertexCount']; ++_0x1991e1) { _0x271a68 = this['m_vertices'][_0x1991e1], _0x1967a2 = _0x271a68['x'] - _0x3d84a1, _0x3cff5c = _0x271a68['y'] - _0x3c416e, _0x271a68 = this['m_normals'][_0x1991e1], _0x1967a2 = _0x271a68['x'] * _0x1967a2 + _0x271a68['y'] * _0x3cff5c, _0x3cff5c = _0x271a68['x'] * _0x3965a1 + _0x271a68['y'] * _0x1e09e9; if (0x0 == _0x3cff5c) { if (0x0 > _0x1967a2) return !0x1; } else 0x0 > _0x3cff5c && _0x1967a2 < _0x1f5df5 * _0x3cff5c ? (_0x1f5df5 = _0x1967a2 / _0x3cff5c, _0x2e30ea = _0x1991e1) : 0x0 < _0x3cff5c && _0x1967a2 < _0x137c99 * _0x3cff5c && (_0x137c99 = _0x1967a2 / _0x3cff5c); if (_0x137c99 < _0x1f5df5 - Number['MIN_VALUE']) return !0x1; } return 0x0 <= _0x2e30ea ? (_0x420619['fraction'] = _0x1f5df5, _0x1e09e9 = _0x28385e['R'], _0x271a68 = this['m_normals'][_0x2e30ea], _0x420619['normal']['x'] = _0x1e09e9['col1']['x'] * _0x271a68['x'] + _0x1e09e9['col2']['x'] * _0x271a68['y'], _0x420619['normal']['y'] = _0x1e09e9['col1']['y'] * _0x271a68['x'] + _0x1e09e9['col2']['y'] * _0x271a68['y'], !0x0) : !0x1; } , _0x16959f['prototype']['ComputeAABB'] = function(_0x44ba3d, _0x29d3cb) { for (var _0x101ba7 = _0x29d3cb['R'], _0x4381a2 = this['m_vertices'][0x0], _0x34dd25 = _0x29d3cb['position']['x'] + (_0x101ba7['col1']['x'] * _0x4381a2['x'] + _0x101ba7['col2']['x'] * _0x4381a2['y']), _0x633443 = _0x29d3cb['position']['y'] + (_0x101ba7['col1']['y'] * _0x4381a2['x'] + _0x101ba7['col2']['y'] * _0x4381a2['y']), _0x2cd2e7 = _0x34dd25, _0x176500 = _0x633443, _0x1a9b75 = 0x1; _0x1a9b75 < this['m_vertexCount']; ++_0x1a9b75) var _0x4381a2 = this['m_vertices'][_0x1a9b75] , _0x841519 = _0x29d3cb['position']['x'] + (_0x101ba7['col1']['x'] * _0x4381a2['x'] + _0x101ba7['col2']['x'] * _0x4381a2['y']) , _0x4381a2 = _0x29d3cb['position']['y'] + (_0x101ba7['col1']['y'] * _0x4381a2['x'] + _0x101ba7['col2']['y'] * _0x4381a2['y']) , _0x34dd25 = _0x34dd25 < _0x841519 ? _0x34dd25 : _0x841519 , _0x633443 = _0x633443 < _0x4381a2 ? _0x633443 : _0x4381a2 , _0x2cd2e7 = _0x2cd2e7 > _0x841519 ? _0x2cd2e7 : _0x841519 , _0x176500 = _0x176500 > _0x4381a2 ? _0x176500 : _0x4381a2; _0x44ba3d['lowerBound']['x'] = _0x34dd25 - this['m_radius'], _0x44ba3d['lowerBound']['y'] = _0x633443 - this['m_radius'], _0x44ba3d['upperBound']['x'] = _0x2cd2e7 + this['m_radius'], _0x44ba3d['upperBound']['y'] = _0x176500 + this['m_radius']; } , _0x16959f['prototype']['ComputeMass'] = function(_0x2b650e, _0xe4ded3) { void 0x0 === _0xe4ded3 && (_0xe4ded3 = 0x0); if (0x2 == this['m_vertexCount']) _0x2b650e['center']['x'] = 0.5 * (this['m_vertices'][0x0]['x'] + this['m_vertices'][0x1]['x']), _0x2b650e['center']['y'] = 0.5 * (this['m_vertices'][0x0]['y'] + this['m_vertices'][0x1]['y']), _0x2b650e['mass'] = 0x0, _0x2b650e['I'] = 0x0; else { for (var _0x20f02a = 0x0, _0x53e070 = 0x0, _0x38de15 = 0x0, _0x4f42a7 = 0x0, _0x94c46b = 0x1 / 0x3, _0xcc3e09 = 0x0; _0xcc3e09 < this['m_vertexCount']; ++_0xcc3e09) var _0x3199a6 = this['m_vertices'][_0xcc3e09] , _0x3cff1e = _0xcc3e09 + 0x1 < this['m_vertexCount'] ? this['m_vertices'][parseInt(_0xcc3e09 + 0x1)] : this['m_vertices'][0x0] , _0x414c67 = _0x3199a6['x'] - 0x0 , _0x27e0a0 = _0x3199a6['y'] - 0x0 , _0x14b1b8 = _0x3cff1e['x'] - 0x0 , _0x27e240 = _0x3cff1e['y'] - 0x0 , _0x1cfef4 = _0x414c67 * _0x27e240 - _0x27e0a0 * _0x14b1b8 , _0x506e1c = 0.5 * _0x1cfef4 , _0x38de15 = _0x38de15 + _0x506e1c , _0x20f02a = _0x20f02a + _0x506e1c * _0x94c46b * (0x0 + _0x3199a6['x'] + _0x3cff1e['x']) , _0x53e070 = _0x53e070 + _0x506e1c * _0x94c46b * (0x0 + _0x3199a6['y'] + _0x3cff1e['y']) , _0x3199a6 = _0x414c67 , _0x4f42a7 = _0x4f42a7 + _0x1cfef4 * (_0x94c46b * (0.25 * (_0x3199a6 * _0x3199a6 + _0x14b1b8 * _0x3199a6 + _0x14b1b8 * _0x14b1b8) + (0x0 * _0x3199a6 + 0x0 * _0x14b1b8)) + 0x0 + (_0x94c46b * (0.25 * (_0x27e0a0 * _0x27e0a0 + _0x27e240 * _0x27e0a0 + _0x27e240 * _0x27e240) + (0x0 * _0x27e0a0 + 0x0 * _0x27e240)) + 0x0)); _0x2b650e['mass'] = _0xe4ded3 * _0x38de15, _0x2b650e['center']['Set'](_0x20f02a * (0x1 / _0x38de15), _0x53e070 * (0x1 / _0x38de15)), _0x2b650e['I'] = _0xe4ded3 * _0x4f42a7; } } , _0x16959f['prototype']['ComputeSubmergedArea'] = function(_0x5c1819, _0x8a63d, _0x5ae019, _0x1c412c) { void 0x0 === _0x8a63d && (_0x8a63d = 0x0); var _0x130c3a = _0x2abf6a['MulTMV'](_0x5ae019['R'], _0x5c1819) , _0x31c6a4 = _0x8a63d - _0x2abf6a['Dot'](_0x5c1819, _0x5ae019['position']) , _0x273ba2 = new Vector_a2j_Number() , _0x29f020 = 0x0 , _0x33c4c4 = -0x1; _0x8a63d = -0x1; var _0x49d489 = !0x1; for (_0x5c1819 = _0x5c1819 = 0x0; _0x5c1819 < this['m_vertexCount']; ++_0x5c1819) { _0x273ba2[_0x5c1819] = _0x2abf6a['Dot'](_0x130c3a, this['m_vertices'][_0x5c1819]) - _0x31c6a4; var _0x13f0cf = _0x273ba2[_0x5c1819] < -Number['MIN_VALUE']; 0x0 < _0x5c1819 && (_0x13f0cf ? _0x49d489 || (_0x33c4c4 = _0x5c1819 - 0x1, _0x29f020++) : _0x49d489 && (_0x8a63d = _0x5c1819 - 0x1, _0x29f020++)), _0x49d489 = _0x13f0cf; } switch (_0x29f020) { case 0x0: return _0x49d489 ? (_0x5c1819 = new _0x424534(), this['ComputeMass'](_0x5c1819, 0x1), _0x1c412c['SetV'](_0x2abf6a['MulX'](_0x5ae019, _0x5c1819['center'])), _0x5c1819['mass']) : 0x0; case 0x1: -0x1 == _0x33c4c4 ? _0x33c4c4 = this['m_vertexCount'] - 0x1 : _0x8a63d = this['m_vertexCount'] - 0x1; } _0x5c1819 = parseInt((_0x33c4c4 + 0x1) % this['m_vertexCount']), _0x130c3a = parseInt((_0x8a63d + 0x1) % this['m_vertexCount']), _0x31c6a4 = (0x0 - _0x273ba2[_0x33c4c4]) / (_0x273ba2[_0x5c1819] - _0x273ba2[_0x33c4c4]), _0x273ba2 = (0x0 - _0x273ba2[_0x8a63d]) / (_0x273ba2[_0x130c3a] - _0x273ba2[_0x8a63d]), _0x33c4c4 = new _0x211eae(this['m_vertices'][_0x33c4c4]['x'] * (0x1 - _0x31c6a4) + this['m_vertices'][_0x5c1819]['x'] * _0x31c6a4,this['m_vertices'][_0x33c4c4]['y'] * (0x1 - _0x31c6a4) + this['m_vertices'][_0x5c1819]['y'] * _0x31c6a4), _0x8a63d = new _0x211eae(this['m_vertices'][_0x8a63d]['x'] * (0x1 - _0x273ba2) + this['m_vertices'][_0x130c3a]['x'] * _0x273ba2,this['m_vertices'][_0x8a63d]['y'] * (0x1 - _0x273ba2) + this['m_vertices'][_0x130c3a]['y'] * _0x273ba2), _0x273ba2 = 0x0, _0x31c6a4 = new _0x211eae(); for (_0x29f020 = this['m_vertices'][_0x5c1819]; _0x5c1819 != _0x130c3a; ) _0x5c1819 = (_0x5c1819 + 0x1) % this['m_vertexCount'], _0x49d489 = _0x5c1819 == _0x130c3a ? _0x8a63d : this['m_vertices'][_0x5c1819], _0x13f0cf = 0.5 * ((_0x29f020['x'] - _0x33c4c4['x']) * (_0x49d489['y'] - _0x33c4c4['y']) - (_0x29f020['y'] - _0x33c4c4['y']) * (_0x49d489['x'] - _0x33c4c4['x'])), _0x273ba2 += _0x13f0cf, _0x31c6a4['x'] += _0x13f0cf * (_0x33c4c4['x'] + _0x29f020['x'] + _0x49d489['x']) / 0x3, _0x31c6a4['y'] += _0x13f0cf * (_0x33c4c4['y'] + _0x29f020['y'] + _0x49d489['y']) / 0x3, _0x29f020 = _0x49d489; return _0x31c6a4['Multiply'](0x1 / _0x273ba2), _0x1c412c['SetV'](_0x2abf6a['MulX'](_0x5ae019, _0x31c6a4)), _0x273ba2; } , _0x16959f['prototype']['GetVertexCount'] = function() { return this['m_vertexCount']; } , _0x16959f['prototype']['GetVertices'] = function() { return this['m_vertices']; } , _0x16959f['prototype']['GetNormals'] = function() { return this['m_normals']; } , _0x16959f['prototype']['GetSupport'] = function(_0x3c4b55) { for (var _0x354f3b = 0x0, _0x5f4e50 = this['m_vertices'][0x0]['x'] * _0x3c4b55['x'] + this['m_vertices'][0x0]['y'] * _0x3c4b55['y'], _0x18f04e = 0x1; _0x18f04e < this['m_vertexCount']; ++_0x18f04e) { var _0x29091b = this['m_vertices'][_0x18f04e]['x'] * _0x3c4b55['x'] + this['m_vertices'][_0x18f04e]['y'] * _0x3c4b55['y']; _0x29091b > _0x5f4e50 && (_0x354f3b = _0x18f04e, _0x5f4e50 = _0x29091b); } return _0x354f3b; } , _0x16959f['prototype']['GetSupportVertex'] = function(_0x187882) { for (var _0xa8beb3 = 0x0, _0x1202f0 = this['m_vertices'][0x0]['x'] * _0x187882['x'] + this['m_vertices'][0x0]['y'] * _0x187882['y'], _0x566c98 = 0x1; _0x566c98 < this['m_vertexCount']; ++_0x566c98) { var _0xf6bafd = this['m_vertices'][_0x566c98]['x'] * _0x187882['x'] + this['m_vertices'][_0x566c98]['y'] * _0x187882['y']; _0xf6bafd > _0x1202f0 && (_0xa8beb3 = _0x566c98, _0x1202f0 = _0xf6bafd); } return this['m_vertices'][_0xa8beb3]; } , _0x16959f['prototype']['Validate'] = function() { return !0x1; } , _0x16959f['prototype']['b2PolygonShape'] = function() { this['__super']['b2Shape']['call'](this), this['m_type'] = _0x43df07['e_polygonShape'], this['m_centroid'] = new _0x211eae(), this['m_vertices'] = new Vector(), this['m_normals'] = new Vector(); } , _0x16959f['prototype']['Reserve'] = function(_0x50132f) { void 0x0 === _0x50132f && (_0x50132f = 0x0); for (var _0x4b6afe = parseInt(this['m_vertices']['length']); _0x4b6afe < _0x50132f; _0x4b6afe++) this['m_vertices'][_0x4b6afe] = new _0x211eae(), this['m_normals'][_0x4b6afe] = new _0x211eae(); } , _0x16959f['ComputeCentroid'] = function(_0x1f748c, _0x41f19c) { void 0x0 === _0x41f19c && (_0x41f19c = 0x0); for (var _0x47e2cb = new _0x211eae(), _0x161deb = 0x0, _0x5c24b8 = 0x1 / 0x3, _0x5e646c = 0x0; _0x5e646c < _0x41f19c; ++_0x5e646c) { var _0x137e4c = _0x1f748c[_0x5e646c] , _0x518a1c = _0x5e646c + 0x1 < _0x41f19c ? _0x1f748c[parseInt(_0x5e646c + 0x1)] : _0x1f748c[0x0] , _0x4ec31d = 0.5 * ((_0x137e4c['x'] - 0x0) * (_0x518a1c['y'] - 0x0) - (_0x137e4c['y'] - 0x0) * (_0x518a1c['x'] - 0x0)) , _0x161deb = _0x161deb + _0x4ec31d; _0x47e2cb['x'] += _0x4ec31d * _0x5c24b8 * (0x0 + _0x137e4c['x'] + _0x518a1c['x']), _0x47e2cb['y'] += _0x4ec31d * _0x5c24b8 * (0x0 + _0x137e4c['y'] + _0x518a1c['y']); } return _0x47e2cb['x'] *= 0x1 / _0x161deb, _0x47e2cb['y'] *= 0x1 / _0x161deb, _0x47e2cb; } , _0x16959f['ComputeOBB'] = function(_0x1f4381, _0x2d326f, _0x3dfdb) { void 0x0 === _0x3dfdb && (_0x3dfdb = 0x0); for (var _0x16b006 = 0x0, _0x32223e = new Vector(_0x3dfdb + 0x1), _0x16b006 = 0x0; _0x16b006 < _0x3dfdb; ++_0x16b006) _0x32223e[_0x16b006] = _0x2d326f[_0x16b006]; _0x32223e[_0x3dfdb] = _0x32223e[0x0], _0x2d326f = Number['MAX_VALUE']; for (_0x16b006 = 0x1; _0x16b006 <= _0x3dfdb; ++_0x16b006) { for (var _0x333ace = _0x32223e[parseInt(_0x16b006 - 0x1)], _0xa57910 = _0x32223e[_0x16b006]['x'] - _0x333ace['x'], _0x18bb0f = _0x32223e[_0x16b006]['y'] - _0x333ace['y'], _0x403210 = Math['sqrt'](_0xa57910 * _0xa57910 + _0x18bb0f * _0x18bb0f), _0xa57910 = _0xa57910 / _0x403210, _0x18bb0f = _0x18bb0f / _0x403210, _0x2ed389 = -_0x18bb0f, _0x51e4d4 = _0xa57910, _0xa1fbb7 = _0x403210 = Number['MAX_VALUE'], _0xc6e07f = -Number['MAX_VALUE'], _0x4e6526 = -Number['MAX_VALUE'], _0xad604a = 0x0; _0xad604a < _0x3dfdb; ++_0xad604a) { var _0x14947b = _0x32223e[_0xad604a]['x'] - _0x333ace['x'] , _0x11ee8d = _0x32223e[_0xad604a]['y'] - _0x333ace['y'] , _0x36ec6b = _0xa57910 * _0x14947b + _0x18bb0f * _0x11ee8d , _0x14947b = _0x2ed389 * _0x14947b + _0x51e4d4 * _0x11ee8d; _0x36ec6b < _0x403210 && (_0x403210 = _0x36ec6b), _0x14947b < _0xa1fbb7 && (_0xa1fbb7 = _0x14947b), _0x36ec6b > _0xc6e07f && (_0xc6e07f = _0x36ec6b), _0x14947b > _0x4e6526 && (_0x4e6526 = _0x14947b); } _0xad604a = (_0xc6e07f - _0x403210) * (_0x4e6526 - _0xa1fbb7), _0xad604a < 0.95 * _0x2d326f && (_0x2d326f = _0xad604a, _0x1f4381['R']['col1']['x'] = _0xa57910, _0x1f4381['R']['col1']['y'] = _0x18bb0f, _0x1f4381['R']['col2']['x'] = _0x2ed389, _0x1f4381['R']['col2']['y'] = _0x51e4d4, _0xa57910 = 0.5 * (_0x403210 + _0xc6e07f), _0x18bb0f = 0.5 * (_0xa1fbb7 + _0x4e6526), _0x2ed389 = _0x1f4381['R'], _0x1f4381['center']['x'] = _0x333ace['x'] + (_0x2ed389['col1']['x'] * _0xa57910 + _0x2ed389['col2']['x'] * _0x18bb0f), _0x1f4381['center']['y'] = _0x333ace['y'] + (_0x2ed389['col1']['y'] * _0xa57910 + _0x2ed389['col2']['y'] * _0x18bb0f), _0x1f4381['extents']['x'] = 0.5 * (_0xc6e07f - _0x403210), _0x1f4381['extents']['y'] = 0.5 * (_0x4e6526 - _0xa1fbb7)); } } , Box2D['postDefs']['push'](function() { Box2D['Collision']['Shapes']['b2PolygonShape']['s_mat'] = new _0x7f3df6(); }), _0x43df07['b2Shape'] = function() {} , _0x43df07['prototype']['Copy'] = function() { return null; } , _0x43df07['prototype']['Set'] = function(_0x5a9938) { this['m_radius'] = _0x5a9938['m_radius']; } , _0x43df07['prototype']['GetType'] = function() { return this['m_type']; } , _0x43df07['prototype']['TestPoint'] = function() { return !0x1; } , _0x43df07['prototype']['RayCast'] = function() { return !0x1; } , _0x43df07['prototype']['ComputeAABB'] = function() {} , _0x43df07['prototype']['ComputeMass'] = function() {} , _0x43df07['prototype']['ComputeSubmergedArea'] = function() { return 0x0; } , _0x43df07['TestOverlap'] = function(_0x42565c, _0x4194c0, _0x38dde8, _0x5789c1) { var _0x3db25b = new _0x55acee(); return _0x3db25b['proxyA'] = new _0x171a06(), _0x3db25b['proxyA']['Set'](_0x42565c), _0x3db25b['proxyB'] = new _0x171a06(), _0x3db25b['proxyB']['Set'](_0x38dde8), _0x3db25b['transformA'] = _0x4194c0, _0x3db25b['transformB'] = _0x5789c1, _0x3db25b['useRadii'] = !0x0, _0x42565c = new _0x16d097(), _0x42565c['count'] = 0x0, _0x4194c0 = new _0x34ed3d(), _0x353bd7['Distance'](_0x4194c0, _0x42565c, _0x3db25b), _0x4194c0['distance'] < 0xa * Number['MIN_VALUE']; } , _0x43df07['prototype']['b2Shape'] = function() { this['m_type'] = _0x43df07['e_unknownShape'], this['m_radius'] = _0x28a4cf['b2_linearSlop']; } , Box2D['postDefs']['push'](function() { Box2D['Collision']['Shapes']['b2Shape']['e_unknownShape'] = -0x1, Box2D['Collision']['Shapes']['b2Shape']['e_circleShape'] = 0x0, Box2D['Collision']['Shapes']['b2Shape']['e_polygonShape'] = 0x1, Box2D['Collision']['Shapes']['b2Shape']['e_edgeShape'] = 0x2, Box2D['Collision']['Shapes']['b2Shape']['e_shapeTypeCount'] = 0x3, Box2D['Collision']['Shapes']['b2Shape']['e_hitCollide'] = 0x1, Box2D['Collision']['Shapes']['b2Shape']['e_missCollide'] = 0x0, Box2D['Collision']['Shapes']['b2Shape']['e_startsInsideCollide'] = -0x1; }); }(), function() { var _0x377915 = Box2D['Common']['b2Color'] , _0x33d39d = Box2D['Common']['b2Settings'] , _0x5375ee = Box2D['Common']['Math']['b2Math']; _0x377915['b2Color'] = function() { this['_b'] = this['_g'] = this['_r'] = 0x0; } , _0x377915['prototype']['b2Color'] = function(_0x5d6ecf, _0x3b5fb0, _0x1b184c) { void 0x0 === _0x5d6ecf && (_0x5d6ecf = 0x0), void 0x0 === _0x3b5fb0 && (_0x3b5fb0 = 0x0), void 0x0 === _0x1b184c && (_0x1b184c = 0x0), this['_r'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0x5d6ecf, 0x0, 0x1)), this['_g'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0x3b5fb0, 0x0, 0x1)), this['_b'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0x1b184c, 0x0, 0x1)); } , _0x377915['prototype']['Set'] = function(_0x1721e0, _0x35c245, _0xa1c63d) { void 0x0 === _0x1721e0 && (_0x1721e0 = 0x0), void 0x0 === _0x35c245 && (_0x35c245 = 0x0), void 0x0 === _0xa1c63d && (_0xa1c63d = 0x0), this['_r'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0x1721e0, 0x0, 0x1)), this['_g'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0x35c245, 0x0, 0x1)), this['_b'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0xa1c63d, 0x0, 0x1)); } , Object['defineProperty'](_0x377915['prototype'], 'r', { 'enumerable': !0x1, 'configurable': !0x0, 'set': function(_0x4d809c) { void 0x0 === _0x4d809c && (_0x4d809c = 0x0), this['_r'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0x4d809c, 0x0, 0x1)); } }), Object['defineProperty'](_0x377915['prototype'], 'g', { 'enumerable': !0x1, 'configurable': !0x0, 'set': function(_0x33c37f) { void 0x0 === _0x33c37f && (_0x33c37f = 0x0), this['_g'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0x33c37f, 0x0, 0x1)); } }), Object['defineProperty'](_0x377915['prototype'], 'b', { 'enumerable': !0x1, 'configurable': !0x0, 'set': function(_0x208a28) { void 0x0 === _0x208a28 && (_0x208a28 = 0x0), this['_b'] = Box2D['parseUInt'](0xff * _0x5375ee['Clamp'](_0x208a28, 0x0, 0x1)); } }), Object['defineProperty'](_0x377915['prototype'], 'color', { 'enumerable': !0x1, 'configurable': !0x0, 'get': function() { return this['_r'] << 0x10 | this['_g'] << 0x8 | this['_b']; } }), _0x33d39d['b2Settings'] = function() {} , _0x33d39d['b2MixFriction'] = function(_0x47bf7c, _0x5ae560) { return void 0x0 === _0x47bf7c && (_0x47bf7c = 0x0), void 0x0 === _0x5ae560 && (_0x5ae560 = 0x0), Math['sqrt'](_0x47bf7c * _0x5ae560); } , _0x33d39d['b2MixRestitution'] = function(_0x32809b, _0x3af9df) { return void 0x0 === _0x32809b && (_0x32809b = 0x0), void 0x0 === _0x3af9df && (_0x3af9df = 0x0), _0x32809b > _0x3af9df ? _0x32809b : _0x3af9df; } , _0x33d39d['b2Assert'] = function(_0x57d481) { if (!_0x57d481) throw 'Assertion\x20Failed'; } , Box2D['postDefs']['push'](function() { Box2D['Common']['b2Settings']['VERSION'] = '2.1alpha', Box2D['Common']['b2Settings']['USHRT_MAX'] = 0xffff, Box2D['Common']['b2Settings']['b2_pi'] = Math['PI'], Box2D['Common']['b2Settings']['b2_maxManifoldPoints'] = 0x2, Box2D['Common']['b2Settings']['b2_aabbExtension'] = 0.1, Box2D['Common']['b2Settings']['b2_aabbMultiplier'] = 0x2, Box2D['Common']['b2Settings']['b2_polygonRadius'] = 0x2 * _0x33d39d['b2_linearSlop'], Box2D['Common']['b2Settings']['b2_linearSlop'] = 0.005, Box2D['Common']['b2Settings']['b2_angularSlop'] = 0x2 / 0xb4 * _0x33d39d['b2_pi'], Box2D['Common']['b2Settings']['b2_toiSlop'] = 0x8 * _0x33d39d['b2_linearSlop'], Box2D['Common']['b2Settings']['b2_maxTOIContactsPerIsland'] = 0x20, Box2D['Common']['b2Settings']['b2_maxTOIJointsPerIsland'] = 0x20, Box2D['Common']['b2Settings']['b2_velocityThreshold'] = 0x1, Box2D['Common']['b2Settings']['b2_maxLinearCorrection'] = 0.2, Box2D['Common']['b2Settings']['b2_maxAngularCorrection'] = 0x8 / 0xb4 * _0x33d39d['b2_pi'], Box2D['Common']['b2Settings']['b2_maxTranslation'] = 0x2, Box2D['Common']['b2Settings']['b2_maxTranslationSquared'] = _0x33d39d['b2_maxTranslation'] * _0x33d39d['b2_maxTranslation'], Box2D['Common']['b2Settings']['b2_maxRotation'] = 0.5 * _0x33d39d['b2_pi'], Box2D['Common']['b2Settings']['b2_maxRotationSquared'] = _0x33d39d['b2_maxRotation'] * _0x33d39d['b2_maxRotation'], Box2D['Common']['b2Settings']['b2_contactBaumgarte'] = 0.2, Box2D['Common']['b2Settings']['b2_timeToSleep'] = 0.5, Box2D['Common']['b2Settings']['b2_linearSleepTolerance'] = 0.01, Box2D['Common']['b2Settings']['b2_angularSleepTolerance'] = 0x2 / 0xb4 * _0x33d39d['b2_pi']; }); }(), function() { var _0x504655 = Box2D['Common']['Math']['b2Mat22'] , _0x2b01ab = Box2D['Common']['Math']['b2Mat33'] , _0x17cec5 = Box2D['Common']['Math']['b2Math'] , _0x2b6fbf = Box2D['Common']['Math']['b2Sweep'] , _0x2ac3a4 = Box2D['Common']['Math']['b2Transform'] , _0x571e2b = Box2D['Common']['Math']['b2Vec2'] , _0x2178ba = Box2D['Common']['Math']['b2Vec3']; _0x504655['b2Mat22'] = function() { this['col1'] = new _0x571e2b(), this['col2'] = new _0x571e2b(); } , _0x504655['prototype']['b2Mat22'] = function() { this['SetIdentity'](); } , _0x504655['FromAngle'] = function(_0x2afcac) { void 0x0 === _0x2afcac && (_0x2afcac = 0x0); var _0x1b8286 = new _0x504655(); return _0x1b8286['Set'](_0x2afcac), _0x1b8286; } , _0x504655['FromVV'] = function(_0x4100a1, _0x48932e) { var _0x33c8ae = new _0x504655(); return _0x33c8ae['SetVV'](_0x4100a1, _0x48932e), _0x33c8ae; } , _0x504655['prototype']['Set'] = function(_0x53e6c5) { void 0x0 === _0x53e6c5 && (_0x53e6c5 = 0x0); var _0x4b17ce = Math['cos'](_0x53e6c5); _0x53e6c5 = Math['sin'](_0x53e6c5), this['col1']['x'] = _0x4b17ce, this['col2']['x'] = -_0x53e6c5, this['col1']['y'] = _0x53e6c5, this['col2']['y'] = _0x4b17ce; } , _0x504655['prototype']['SetVV'] = function(_0x21c1da, _0x51f284) { this['col1']['SetV'](_0x21c1da), this['col2']['SetV'](_0x51f284); } , _0x504655['prototype']['Copy'] = function() { var _0x283a1d = new _0x504655(); return _0x283a1d['SetM'](this), _0x283a1d; } , _0x504655['prototype']['SetM'] = function(_0xa2aba1) { this['col1']['SetV'](_0xa2aba1['col1']), this['col2']['SetV'](_0xa2aba1['col2']); } , _0x504655['prototype']['AddM'] = function(_0x7d5f11) { this['col1']['x'] += _0x7d5f11['col1']['x'], this['col1']['y'] += _0x7d5f11['col1']['y'], this['col2']['x'] += _0x7d5f11['col2']['x'], this['col2']['y'] += _0x7d5f11['col2']['y']; } , _0x504655['prototype']['SetIdentity'] = function() { this['col1']['x'] = 0x1, this['col2']['x'] = 0x0, this['col1']['y'] = 0x0, this['col2']['y'] = 0x1; } , _0x504655['prototype']['SetZero'] = function() { this['col1']['x'] = 0x0, this['col2']['x'] = 0x0, this['col1']['y'] = 0x0, this['col2']['y'] = 0x0; } , _0x504655['prototype']['GetAngle'] = function() { return Math['atan2'](this['col1']['y'], this['col1']['x']); } , _0x504655['prototype']['GetInverse'] = function(_0x1b9bd3) { var _0x5552bd = this['col1']['x'] , _0x376124 = this['col2']['x'] , _0x2edadf = this['col1']['y'] , _0x1f0670 = this['col2']['y'] , _0x2bacef = _0x5552bd * _0x1f0670 - _0x376124 * _0x2edadf; return 0x0 != _0x2bacef && (_0x2bacef = 0x1 / _0x2bacef), _0x1b9bd3['col1']['x'] = _0x2bacef * _0x1f0670, _0x1b9bd3['col2']['x'] = -_0x2bacef * _0x376124, _0x1b9bd3['col1']['y'] = -_0x2bacef * _0x2edadf, _0x1b9bd3['col2']['y'] = _0x2bacef * _0x5552bd, _0x1b9bd3; } , _0x504655['prototype']['Solve'] = function(_0x534c85, _0x5185a8, _0x56cc70) { void 0x0 === _0x5185a8 && (_0x5185a8 = 0x0), void 0x0 === _0x56cc70 && (_0x56cc70 = 0x0); var _0x113228 = this['col1']['x'] , _0x2bcb8b = this['col2']['x'] , _0x2d1891 = this['col1']['y'] , _0x30c4b5 = this['col2']['y'] , _0x4709ec = _0x113228 * _0x30c4b5 - _0x2bcb8b * _0x2d1891; return 0x0 != _0x4709ec && (_0x4709ec = 0x1 / _0x4709ec), _0x534c85['x'] = _0x4709ec * (_0x30c4b5 * _0x5185a8 - _0x2bcb8b * _0x56cc70), _0x534c85['y'] = _0x4709ec * (_0x113228 * _0x56cc70 - _0x2d1891 * _0x5185a8), _0x534c85; } , _0x504655['prototype']['Abs'] = function() { this['col1']['Abs'](), this['col2']['Abs'](); } , _0x2b01ab['b2Mat33'] = function() { this['col1'] = new _0x2178ba(), this['col2'] = new _0x2178ba(), this['col3'] = new _0x2178ba(); } , _0x2b01ab['prototype']['b2Mat33'] = function(_0xc5d5d5, _0x20beff, _0x559388) { void 0x0 === _0xc5d5d5 && (_0xc5d5d5 = null), void 0x0 === _0x20beff && (_0x20beff = null), void 0x0 === _0x559388 && (_0x559388 = null), !_0xc5d5d5 && !_0x20beff && !_0x559388 ? (this['col1']['SetZero'](), this['col2']['SetZero'](), this['col3']['SetZero']()) : (this['col1']['SetV'](_0xc5d5d5), this['col2']['SetV'](_0x20beff), this['col3']['SetV'](_0x559388)); } , _0x2b01ab['prototype']['SetVVV'] = function(_0x13a081, _0x316761, _0x4e3b87) { this['col1']['SetV'](_0x13a081), this['col2']['SetV'](_0x316761), this['col3']['SetV'](_0x4e3b87); } , _0x2b01ab['prototype']['Copy'] = function() { return new _0x2b01ab(this['col1'],this['col2'],this['col3']); } , _0x2b01ab['prototype']['SetM'] = function(_0x1b989f) { this['col1']['SetV'](_0x1b989f['col1']), this['col2']['SetV'](_0x1b989f['col2']), this['col3']['SetV'](_0x1b989f['col3']); } , _0x2b01ab['prototype']['AddM'] = function(_0x1cb821) { this['col1']['x'] += _0x1cb821['col1']['x'], this['col1']['y'] += _0x1cb821['col1']['y'], this['col1']['z'] += _0x1cb821['col1']['z'], this['col2']['x'] += _0x1cb821['col2']['x'], this['col2']['y'] += _0x1cb821['col2']['y'], this['col2']['z'] += _0x1cb821['col2']['z'], this['col3']['x'] += _0x1cb821['col3']['x'], this['col3']['y'] += _0x1cb821['col3']['y'], this['col3']['z'] += _0x1cb821['col3']['z']; } , _0x2b01ab['prototype']['SetIdentity'] = function() { this['col1']['x'] = 0x1, this['col2']['x'] = 0x0, this['col3']['x'] = 0x0, this['col1']['y'] = 0x0, this['col2']['y'] = 0x1, this['col3']['y'] = 0x0, this['col1']['z'] = 0x0, this['col2']['z'] = 0x0, this['col3']['z'] = 0x1; } , _0x2b01ab['prototype']['SetZero'] = function() { this['col1']['x'] = 0x0, this['col2']['x'] = 0x0, this['col3']['x'] = 0x0, this['col1']['y'] = 0x0, this['col2']['y'] = 0x0, this['col3']['y'] = 0x0, this['col1']['z'] = 0x0, this['col2']['z'] = 0x0, this['col3']['z'] = 0x0; } , _0x2b01ab['prototype']['Solve22'] = function(_0xf153c5, _0x587c7a, _0xb3fc3d) { void 0x0 === _0x587c7a && (_0x587c7a = 0x0), void 0x0 === _0xb3fc3d && (_0xb3fc3d = 0x0); var _0x549703 = this['col1']['x'] , _0x1bcca2 = this['col2']['x'] , _0x422cf1 = this['col1']['y'] , _0x48f4d9 = this['col2']['y'] , _0x11e129 = _0x549703 * _0x48f4d9 - _0x1bcca2 * _0x422cf1; return 0x0 != _0x11e129 && (_0x11e129 = 0x1 / _0x11e129), _0xf153c5['x'] = _0x11e129 * (_0x48f4d9 * _0x587c7a - _0x1bcca2 * _0xb3fc3d), _0xf153c5['y'] = _0x11e129 * (_0x549703 * _0xb3fc3d - _0x422cf1 * _0x587c7a), _0xf153c5; } , _0x2b01ab['prototype']['Solve33'] = function(_0x307086, _0x40ee92, _0x106c8c, _0x1e44af) { void 0x0 === _0x40ee92 && (_0x40ee92 = 0x0), void 0x0 === _0x106c8c && (_0x106c8c = 0x0), void 0x0 === _0x1e44af && (_0x1e44af = 0x0); var _0x31f0c9 = this['col1']['x'] , _0x3b0e67 = this['col1']['y'] , _0x502055 = this['col1']['z'] , _0x98a125 = this['col2']['x'] , _0x24319a = this['col2']['y'] , _0x338f91 = this['col2']['z'] , _0x51ab1e = this['col3']['x'] , _0x42ab7f = this['col3']['y'] , _0x2da917 = this['col3']['z'] , _0xb2c453 = _0x31f0c9 * (_0x24319a * _0x2da917 - _0x338f91 * _0x42ab7f) + _0x3b0e67 * (_0x338f91 * _0x51ab1e - _0x98a125 * _0x2da917) + _0x502055 * (_0x98a125 * _0x42ab7f - _0x24319a * _0x51ab1e); return 0x0 != _0xb2c453 && (_0xb2c453 = 0x1 / _0xb2c453), _0x307086['x'] = _0xb2c453 * (_0x40ee92 * (_0x24319a * _0x2da917 - _0x338f91 * _0x42ab7f) + _0x106c8c * (_0x338f91 * _0x51ab1e - _0x98a125 * _0x2da917) + _0x1e44af * (_0x98a125 * _0x42ab7f - _0x24319a * _0x51ab1e)), _0x307086['y'] = _0xb2c453 * (_0x31f0c9 * (_0x106c8c * _0x2da917 - _0x1e44af * _0x42ab7f) + _0x3b0e67 * (_0x1e44af * _0x51ab1e - _0x40ee92 * _0x2da917) + _0x502055 * (_0x40ee92 * _0x42ab7f - _0x106c8c * _0x51ab1e)), _0x307086['z'] = _0xb2c453 * (_0x31f0c9 * (_0x24319a * _0x1e44af - _0x338f91 * _0x106c8c) + _0x3b0e67 * (_0x338f91 * _0x40ee92 - _0x98a125 * _0x1e44af) + _0x502055 * (_0x98a125 * _0x106c8c - _0x24319a * _0x40ee92)), _0x307086; } , _0x17cec5['b2Math'] = function() {} , _0x17cec5['IsValid'] = function(_0xbbf3e4) { return void 0x0 === _0xbbf3e4 && (_0xbbf3e4 = 0x0), isFinite(_0xbbf3e4); } , _0x17cec5['Dot'] = function(_0x6047a6, _0x519094) { return _0x6047a6['x'] * _0x519094['x'] + _0x6047a6['y'] * _0x519094['y']; } , _0x17cec5['CrossVV'] = function(_0x2b61f5, _0x1dd37b) { return _0x2b61f5['x'] * _0x1dd37b['y'] - _0x2b61f5['y'] * _0x1dd37b['x']; } , _0x17cec5['CrossVF'] = function(_0x5f49c8, _0x51f80a) { return void 0x0 === _0x51f80a && (_0x51f80a = 0x0), new _0x571e2b(_0x51f80a * _0x5f49c8['y'],-_0x51f80a * _0x5f49c8['x']); } , _0x17cec5['CrossFV'] = function(_0x2cd768, _0x513ba7) { return void 0x0 === _0x2cd768 && (_0x2cd768 = 0x0), new _0x571e2b(-_0x2cd768 * _0x513ba7['y'],_0x2cd768 * _0x513ba7['x']); } , _0x17cec5['MulMV'] = function(_0x5ef8fe, _0x4156a3) { return new _0x571e2b(_0x5ef8fe['col1']['x'] * _0x4156a3['x'] + _0x5ef8fe['col2']['x'] * _0x4156a3['y'],_0x5ef8fe['col1']['y'] * _0x4156a3['x'] + _0x5ef8fe['col2']['y'] * _0x4156a3['y']); } , _0x17cec5['MulTMV'] = function(_0xec45d8, _0x417a62) { return new _0x571e2b(_0x17cec5['Dot'](_0x417a62, _0xec45d8['col1']),_0x17cec5['Dot'](_0x417a62, _0xec45d8['col2'])); } , _0x17cec5['MulX'] = function(_0x4b60df, _0x428af6) { var _0x100932 = _0x17cec5['MulMV'](_0x4b60df['R'], _0x428af6); return _0x100932['x'] += _0x4b60df['position']['x'], _0x100932['y'] += _0x4b60df['position']['y'], _0x100932; } , _0x17cec5['MulXT'] = function(_0x51fd73, _0x230aa8) { var _0x46725a = _0x17cec5['SubtractVV'](_0x230aa8, _0x51fd73['position']) , _0x130fd0 = _0x46725a['x'] * _0x51fd73['R']['col1']['x'] + _0x46725a['y'] * _0x51fd73['R']['col1']['y']; return _0x46725a['y'] = _0x46725a['x'] * _0x51fd73['R']['col2']['x'] + _0x46725a['y'] * _0x51fd73['R']['col2']['y'], _0x46725a['x'] = _0x130fd0, _0x46725a; } , _0x17cec5['AddVV'] = function(_0x435add, _0x3afd55) { return new _0x571e2b(_0x435add['x'] + _0x3afd55['x'],_0x435add['y'] + _0x3afd55['y']); } , _0x17cec5['SubtractVV'] = function(_0x20bd60, _0x3ebeb5) { return new _0x571e2b(_0x20bd60['x'] - _0x3ebeb5['x'],_0x20bd60['y'] - _0x3ebeb5['y']); } , _0x17cec5['Distance'] = function(_0x5acd5c, _0x286936) { var _0x28ceb4 = _0x5acd5c['x'] - _0x286936['x'] , _0x5f09fc = _0x5acd5c['y'] - _0x286936['y']; return Math['sqrt'](_0x28ceb4 * _0x28ceb4 + _0x5f09fc * _0x5f09fc); } , _0x17cec5['DistanceSquared'] = function(_0x5e392c, _0x266a51) { var _0x1fdf8f = _0x5e392c['x'] - _0x266a51['x'] , _0x79b858 = _0x5e392c['y'] - _0x266a51['y']; return _0x1fdf8f * _0x1fdf8f + _0x79b858 * _0x79b858; } , _0x17cec5['MulFV'] = function(_0x4be9d8, _0x127081) { return void 0x0 === _0x4be9d8 && (_0x4be9d8 = 0x0), new _0x571e2b(_0x4be9d8 * _0x127081['x'],_0x4be9d8 * _0x127081['y']); } , _0x17cec5['AddMM'] = function(_0xccb4dd, _0x16af94) { return _0x504655['FromVV'](_0x17cec5['AddVV'](_0xccb4dd['col1'], _0x16af94['col1']), _0x17cec5['AddVV'](_0xccb4dd['col2'], _0x16af94['col2'])); } , _0x17cec5['MulMM'] = function(_0x1d1473, _0x2c4a7c) { return _0x504655['FromVV'](_0x17cec5['MulMV'](_0x1d1473, _0x2c4a7c['col1']), _0x17cec5['MulMV'](_0x1d1473, _0x2c4a7c['col2'])); } , _0x17cec5['MulTMM'] = function(_0x2b1e54, _0x2c5d18) { var _0x8155d8 = new _0x571e2b(_0x17cec5['Dot'](_0x2b1e54['col1'], _0x2c5d18['col1']),_0x17cec5['Dot'](_0x2b1e54['col2'], _0x2c5d18['col1'])) , _0x205897 = new _0x571e2b(_0x17cec5['Dot'](_0x2b1e54['col1'], _0x2c5d18['col2']),_0x17cec5['Dot'](_0x2b1e54['col2'], _0x2c5d18['col2'])); return _0x504655['FromVV'](_0x8155d8, _0x205897); } , _0x17cec5['Abs'] = function(_0x743349) { return void 0x0 === _0x743349 && (_0x743349 = 0x0), 0x0 < _0x743349 ? _0x743349 : -_0x743349; } , _0x17cec5['AbsV'] = function(_0x332e6f) { return new _0x571e2b(_0x17cec5['Abs'](_0x332e6f['x']),_0x17cec5['Abs'](_0x332e6f['y'])); } , _0x17cec5['AbsM'] = function(_0xf2778f) { return _0x504655['FromVV'](_0x17cec5['AbsV'](_0xf2778f['col1']), _0x17cec5['AbsV'](_0xf2778f['col2'])); } , _0x17cec5['Min'] = function(_0x1dc192, _0x250667) { return void 0x0 === _0x1dc192 && (_0x1dc192 = 0x0), void 0x0 === _0x250667 && (_0x250667 = 0x0), _0x1dc192 < _0x250667 ? _0x1dc192 : _0x250667; } , _0x17cec5['MinV'] = function(_0x423510, _0x531840) { return new _0x571e2b(_0x17cec5['Min'](_0x423510['x'], _0x531840['x']),_0x17cec5['Min'](_0x423510['y'], _0x531840['y'])); } , _0x17cec5['Max'] = function(_0xa79a73, _0x503129) { return void 0x0 === _0xa79a73 && (_0xa79a73 = 0x0), void 0x0 === _0x503129 && (_0x503129 = 0x0), _0xa79a73 > _0x503129 ? _0xa79a73 : _0x503129; } , _0x17cec5['MaxV'] = function(_0x13ecf0, _0x6176c1) { return new _0x571e2b(_0x17cec5['Max'](_0x13ecf0['x'], _0x6176c1['x']),_0x17cec5['Max'](_0x13ecf0['y'], _0x6176c1['y'])); } , _0x17cec5['Clamp'] = function(_0x3862ce, _0x1b781f, _0x50074c) { return void 0x0 === _0x3862ce && (_0x3862ce = 0x0), void 0x0 === _0x1b781f && (_0x1b781f = 0x0), void 0x0 === _0x50074c && (_0x50074c = 0x0), _0x3862ce < _0x1b781f ? _0x1b781f : _0x3862ce > _0x50074c ? _0x50074c : _0x3862ce; } , _0x17cec5['ClampV'] = function(_0x2b8150, _0x328a8d, _0x2c5cfc) { return _0x17cec5['MaxV'](_0x328a8d, _0x17cec5['MinV'](_0x2b8150, _0x2c5cfc)); } , _0x17cec5['Swap'] = function(_0x431318, _0x3b4118) { var _0x3ddae3 = _0x431318[0x0]; _0x431318[0x0] = _0x3b4118[0x0], _0x3b4118[0x0] = _0x3ddae3; } , _0x17cec5['Random'] = function() { return 0x2 * Math['random']() - 0x1; } , _0x17cec5['RandomRange'] = function(_0x46ee1a, _0x5cb3c6) { void 0x0 === _0x46ee1a && (_0x46ee1a = 0x0), void 0x0 === _0x5cb3c6 && (_0x5cb3c6 = 0x0); var _0x5bf107 = Math['random'](); return (_0x5cb3c6 - _0x46ee1a) * _0x5bf107 + _0x46ee1a; } , _0x17cec5['NextPowerOfTwo'] = function(_0x369ef0) { return void 0x0 === _0x369ef0 && (_0x369ef0 = 0x0), _0x369ef0 |= _0x369ef0 >> 0x1 & 0x7fffffff, _0x369ef0 |= _0x369ef0 >> 0x2 & 0x3fffffff, _0x369ef0 |= _0x369ef0 >> 0x4 & 0xfffffff, _0x369ef0 |= _0x369ef0 >> 0x8 & 0xffffff, (_0x369ef0 | _0x369ef0 >> 0x10 & 0xffff) + 0x1; } , _0x17cec5['IsPowerOfTwo'] = function(_0x24444b) { return void 0x0 === _0x24444b && (_0x24444b = 0x0), 0x0 < _0x24444b && 0x0 == (_0x24444b & _0x24444b - 0x1); } , Box2D['postDefs']['push'](function() { Box2D['Common']['Math']['b2Math']['b2Vec2_zero'] = new _0x571e2b(0x0,0x0), Box2D['Common']['Math']['b2Math']['b2Mat22_identity'] = _0x504655['FromVV'](new _0x571e2b(0x1,0x0), new _0x571e2b(0x0,0x1)), Box2D['Common']['Math']['b2Math']['b2Transform_identity'] = new _0x2ac3a4(_0x17cec5['b2Vec2_zero'],_0x17cec5['b2Mat22_identity']); }), _0x2b6fbf['b2Sweep'] = function() { this['localCenter'] = new _0x571e2b(), this['c0'] = new _0x571e2b(), this['c'] = new _0x571e2b(); } , _0x2b6fbf['prototype']['Set'] = function(_0x47b658) { this['localCenter']['SetV'](_0x47b658['localCenter']), this['c0']['SetV'](_0x47b658['c0']), this['c']['SetV'](_0x47b658['c']), this['a0'] = _0x47b658['a0'], this['a'] = _0x47b658['a'], this['t0'] = _0x47b658['t0']; } , _0x2b6fbf['prototype']['Copy'] = function() { var _0x2444d7 = new _0x2b6fbf(); return _0x2444d7['localCenter']['SetV'](this['localCenter']), _0x2444d7['c0']['SetV'](this['c0']), _0x2444d7['c']['SetV'](this['c']), _0x2444d7['a0'] = this['a0'], _0x2444d7['a'] = this['a'], _0x2444d7['t0'] = this['t0'], _0x2444d7; } , _0x2b6fbf['prototype']['GetTransform'] = function(_0x5655aa, _0x1bcf2d) { void 0x0 === _0x1bcf2d && (_0x1bcf2d = 0x0), _0x5655aa['position']['x'] = (0x1 - _0x1bcf2d) * this['c0']['x'] + _0x1bcf2d * this['c']['x'], _0x5655aa['position']['y'] = (0x1 - _0x1bcf2d) * this['c0']['y'] + _0x1bcf2d * this['c']['y'], _0x5655aa['R']['Set']((0x1 - _0x1bcf2d) * this['a0'] + _0x1bcf2d * this['a']); var _0x1d2754 = _0x5655aa['R']; _0x5655aa['position']['x'] -= _0x1d2754['col1']['x'] * this['localCenter']['x'] + _0x1d2754['col2']['x'] * this['localCenter']['y'], _0x5655aa['position']['y'] -= _0x1d2754['col1']['y'] * this['localCenter']['x'] + _0x1d2754['col2']['y'] * this['localCenter']['y']; } , _0x2b6fbf['prototype']['Advance'] = function(_0x214e14) { void 0x0 === _0x214e14 && (_0x214e14 = 0x0); if (this['t0'] < _0x214e14 && 0x1 - this['t0'] > Number['MIN_VALUE']) { var _0x424113 = (_0x214e14 - this['t0']) / (0x1 - this['t0']); this['c0']['x'] = (0x1 - _0x424113) * this['c0']['x'] + _0x424113 * this['c']['x'], this['c0']['y'] = (0x1 - _0x424113) * this['c0']['y'] + _0x424113 * this['c']['y'], this['a0'] = (0x1 - _0x424113) * this['a0'] + _0x424113 * this['a'], this['t0'] = _0x214e14; } } , _0x2ac3a4['b2Transform'] = function() { this['position'] = new _0x571e2b(), this['R'] = new _0x504655(); } , _0x2ac3a4['prototype']['b2Transform'] = function(_0x4ab7f0, _0x958a51) { void 0x0 === _0x4ab7f0 && (_0x4ab7f0 = null), void 0x0 === _0x958a51 && (_0x958a51 = null), _0x4ab7f0 && (this['position']['SetV'](_0x4ab7f0), this['R']['SetM'](_0x958a51)); } , _0x2ac3a4['prototype']['Initialize'] = function(_0x466bdb, _0x1c1b7e) { this['position']['SetV'](_0x466bdb), this['R']['SetM'](_0x1c1b7e); } , _0x2ac3a4['prototype']['SetIdentity'] = function() { this['position']['SetZero'](), this['R']['SetIdentity'](); } , _0x2ac3a4['prototype']['Set'] = function(_0x39565d) { this['position']['SetV'](_0x39565d['position']), this['R']['SetM'](_0x39565d['R']); } , _0x2ac3a4['prototype']['GetAngle'] = function() { return Math['atan2'](this['R']['col1']['y'], this['R']['col1']['x']); } , _0x571e2b['b2Vec2'] = function() {} , _0x571e2b['prototype']['b2Vec2'] = function(_0x382485, _0x41b333) { void 0x0 === _0x382485 && (_0x382485 = 0x0), void 0x0 === _0x41b333 && (_0x41b333 = 0x0), this['x'] = _0x382485, this['y'] = _0x41b333; } , _0x571e2b['prototype']['SetZero'] = function() { this['y'] = this['x'] = 0x0; } , _0x571e2b['prototype']['Set'] = function(_0x15459a, _0x1df880) { void 0x0 === _0x15459a && (_0x15459a = 0x0), void 0x0 === _0x1df880 && (_0x1df880 = 0x0), this['x'] = _0x15459a, this['y'] = _0x1df880; } , _0x571e2b['prototype']['SetV'] = function(_0x25c220) { this['x'] = _0x25c220['x'], this['y'] = _0x25c220['y']; } , _0x571e2b['prototype']['GetNegative'] = function() { return new _0x571e2b(-this['x'],-this['y']); } , _0x571e2b['prototype']['NegativeSelf'] = function() { this['x'] = -this['x'], this['y'] = -this['y']; } , _0x571e2b['Make'] = function(_0x239d67, _0x4fddee) { return void 0x0 === _0x239d67 && (_0x239d67 = 0x0), void 0x0 === _0x4fddee && (_0x4fddee = 0x0), new _0x571e2b(_0x239d67,_0x4fddee); } , _0x571e2b['prototype']['Copy'] = function() { return new _0x571e2b(this['x'],this['y']); } , _0x571e2b['prototype']['Add'] = function(_0x2ae41f) { this['x'] += _0x2ae41f['x'], this['y'] += _0x2ae41f['y']; } , _0x571e2b['prototype']['Subtract'] = function(_0x49fe3f) { this['x'] -= _0x49fe3f['x'], this['y'] -= _0x49fe3f['y']; } , _0x571e2b['prototype']['Multiply'] = function(_0x217f56) { void 0x0 === _0x217f56 && (_0x217f56 = 0x0), this['x'] *= _0x217f56, this['y'] *= _0x217f56; } , _0x571e2b['prototype']['MulM'] = function(_0x446106) { var _0x2c9bfa = this['x']; this['x'] = _0x446106['col1']['x'] * _0x2c9bfa + _0x446106['col2']['x'] * this['y'], this['y'] = _0x446106['col1']['y'] * _0x2c9bfa + _0x446106['col2']['y'] * this['y']; } , _0x571e2b['prototype']['MulTM'] = function(_0x28d43e) { var _0x5c69f8 = _0x17cec5['Dot'](this, _0x28d43e['col1']); this['y'] = _0x17cec5['Dot'](this, _0x28d43e['col2']), this['x'] = _0x5c69f8; } , _0x571e2b['prototype']['CrossVF'] = function(_0x53313e) { void 0x0 === _0x53313e && (_0x53313e = 0x0); var _0x81b5b3 = this['x']; this['x'] = _0x53313e * this['y'], this['y'] = -_0x53313e * _0x81b5b3; } , _0x571e2b['prototype']['CrossFV'] = function(_0x28a51e) { void 0x0 === _0x28a51e && (_0x28a51e = 0x0); var _0x13fcc6 = this['x']; this['x'] = -_0x28a51e * this['y'], this['y'] = _0x28a51e * _0x13fcc6; } , _0x571e2b['prototype']['MinV'] = function(_0x392075) { this['x'] = this['x'] < _0x392075['x'] ? this['x'] : _0x392075['x'], this['y'] = this['y'] < _0x392075['y'] ? this['y'] : _0x392075['y']; } , _0x571e2b['prototype']['MaxV'] = function(_0x5cddd6) { this['x'] = this['x'] > _0x5cddd6['x'] ? this['x'] : _0x5cddd6['x'], this['y'] = this['y'] > _0x5cddd6['y'] ? this['y'] : _0x5cddd6['y']; } , _0x571e2b['prototype']['Abs'] = function() { 0x0 > this['x'] && (this['x'] = -this['x']), 0x0 > this['y'] && (this['y'] = -this['y']); } , _0x571e2b['prototype']['Length'] = function() { return Math['sqrt'](this['x'] * this['x'] + this['y'] * this['y']); } , _0x571e2b['prototype']['LengthSquared'] = function() { return this['x'] * this['x'] + this['y'] * this['y']; } , _0x571e2b['prototype']['Normalize'] = function() { var _0x5dfc9a = Math['sqrt'](this['x'] * this['x'] + this['y'] * this['y']); if (_0x5dfc9a < Number['MIN_VALUE']) return 0x0; var _0x3bb147 = 0x1 / _0x5dfc9a; return this['x'] *= _0x3bb147, this['y'] *= _0x3bb147, _0x5dfc9a; } , _0x571e2b['prototype']['IsValid'] = function() { return _0x17cec5['IsValid'](this['x']) && _0x17cec5['IsValid'](this['y']); } , _0x2178ba['b2Vec3'] = function() {} , _0x2178ba['prototype']['b2Vec3'] = function(_0x399a99, _0x4ce889, _0x5bbe97) { void 0x0 === _0x399a99 && (_0x399a99 = 0x0), void 0x0 === _0x4ce889 && (_0x4ce889 = 0x0), void 0x0 === _0x5bbe97 && (_0x5bbe97 = 0x0), this['x'] = _0x399a99, this['y'] = _0x4ce889, this['z'] = _0x5bbe97; } , _0x2178ba['prototype']['SetZero'] = function() { this['x'] = this['y'] = this['z'] = 0x0; } , _0x2178ba['prototype']['Set'] = function(_0x2d9d2e, _0x538067, _0x55b144) { void 0x0 === _0x2d9d2e && (_0x2d9d2e = 0x0), void 0x0 === _0x538067 && (_0x538067 = 0x0), void 0x0 === _0x55b144 && (_0x55b144 = 0x0), this['x'] = _0x2d9d2e, this['y'] = _0x538067, this['z'] = _0x55b144; } , _0x2178ba['prototype']['SetV'] = function(_0x1bd566) { this['x'] = _0x1bd566['x'], this['y'] = _0x1bd566['y'], this['z'] = _0x1bd566['z']; } , _0x2178ba['prototype']['GetNegative'] = function() { return new _0x2178ba(-this['x'],-this['y'],-this['z']); } , _0x2178ba['prototype']['NegativeSelf'] = function() { this['x'] = -this['x'], this['y'] = -this['y'], this['z'] = -this['z']; } , _0x2178ba['prototype']['Copy'] = function() { return new _0x2178ba(this['x'],this['y'],this['z']); } , _0x2178ba['prototype']['Add'] = function(_0x3181f5) { this['x'] += _0x3181f5['x'], this['y'] += _0x3181f5['y'], this['z'] += _0x3181f5['z']; } , _0x2178ba['prototype']['Subtract'] = function(_0x5dde57) { this['x'] -= _0x5dde57['x'], this['y'] -= _0x5dde57['y'], this['z'] -= _0x5dde57['z']; } , _0x2178ba['prototype']['Multiply'] = function(_0x46bda6) { void 0x0 === _0x46bda6 && (_0x46bda6 = 0x0), this['x'] *= _0x46bda6, this['y'] *= _0x46bda6, this['z'] *= _0x46bda6; } ; }(), function() { var _0x58f3af = Box2D['Common']['Math']['b2Math'] , _0x42b1a3 = Box2D['Common']['Math']['b2Sweep'] , _0x13b091 = Box2D['Common']['Math']['b2Transform'] , _0x54aa92 = Box2D['Common']['Math']['b2Vec2'] , _0x212faf = Box2D['Common']['b2Color'] , _0x279919 = Box2D['Common']['b2Settings'] , _0x16b2f7 = Box2D['Collision']['b2AABB'] , _0x507528 = Box2D['Collision']['b2ContactPoint'] , _0x4798ff = Box2D['Collision']['b2DynamicTreeBroadPhase'] , _0x21c1ab = Box2D['Collision']['b2RayCastInput'] , _0x5b43ef = Box2D['Collision']['b2RayCastOutput'] , _0x3f2c28 = Box2D['Collision']['Shapes']['b2CircleShape'] , _0x5efb81 = Box2D['Collision']['Shapes']['b2EdgeShape'] , _0x2db577 = Box2D['Collision']['Shapes']['b2MassData'] , _0x311dfc = Box2D['Collision']['Shapes']['b2PolygonShape'] , _0x25dac4 = Box2D['Collision']['Shapes']['b2Shape'] , _0x3f9b69 = Box2D['Dynamics']['b2Body'] , _0x40ce1d = Box2D['Dynamics']['b2BodyDef'] , _0xfa8e98 = Box2D['Dynamics']['b2ContactFilter'] , _0x2da392 = Box2D['Dynamics']['b2ContactImpulse'] , _0x3c4ed9 = Box2D['Dynamics']['b2ContactListener'] , _0x39247a = Box2D['Dynamics']['b2ContactManager'] , _0x134a3a = Box2D['Dynamics']['b2DebugDraw'] , _0xb86588 = Box2D['Dynamics']['b2DestructionListener'] , _0x3a427a = Box2D['Dynamics']['b2FilterData'] , _0x442c2b = Box2D['Dynamics']['b2Fixture'] , _0x3a1ceb = Box2D['Dynamics']['b2FixtureDef'] , _0x36f869 = Box2D['Dynamics']['b2Island'] , _0x5c54c3 = Box2D['Dynamics']['b2TimeStep'] , _0x1c8cd9 = Box2D['Dynamics']['b2World'] , _0x4af089 = Box2D['Dynamics']['Contacts']['b2Contact'] , _0x3e2560 = Box2D['Dynamics']['Contacts']['b2ContactFactory'] , _0x4f691b = Box2D['Dynamics']['Contacts']['b2ContactSolver'] , _0x358638 = Box2D['Dynamics']['Joints']['b2Joint'] , _0x4f556e = Box2D['Dynamics']['Joints']['b2PulleyJoint']; _0x3f9b69['b2Body'] = function() { this['m_xf'] = new _0x13b091(), this['m_sweep'] = new _0x42b1a3(), this['m_linearVelocity'] = new _0x54aa92(), this['m_force'] = new _0x54aa92(); } , _0x3f9b69['prototype']['connectEdges'] = function(_0x47aa4a, _0x2f0115, _0x221b22) { void 0x0 === _0x221b22 && (_0x221b22 = 0x0); var _0x36cdc0 = Math['atan2'](_0x2f0115['GetDirectionVector']()['y'], _0x2f0115['GetDirectionVector']()['x']); _0x221b22 = _0x58f3af['MulFV'](Math['tan'](0.5 * (_0x36cdc0 - _0x221b22)), _0x2f0115['GetDirectionVector']()), _0x221b22 = _0x58f3af['SubtractVV'](_0x221b22, _0x2f0115['GetNormalVector']()), _0x221b22 = _0x58f3af['MulFV'](_0x279919['b2_toiSlop'], _0x221b22), _0x221b22 = _0x58f3af['AddVV'](_0x221b22, _0x2f0115['GetVertex1']()); var _0x372cb4 = _0x58f3af['AddVV'](_0x47aa4a['GetDirectionVector'](), _0x2f0115['GetDirectionVector']()); _0x372cb4['Normalize'](); var _0x3ea006 = 0x0 < _0x58f3af['Dot'](_0x47aa4a['GetDirectionVector'](), _0x2f0115['GetNormalVector']()); return _0x47aa4a['SetNextEdge'](_0x2f0115, _0x221b22, _0x372cb4, _0x3ea006), _0x2f0115['SetPrevEdge'](_0x47aa4a, _0x221b22, _0x372cb4, _0x3ea006), _0x36cdc0; } , _0x3f9b69['prototype']['CreateFixture'] = function(_0x8b178c) { if (!0x0 == this['m_world']['IsLocked']()) return null; var _0xb849f3 = new _0x442c2b(); return _0xb849f3['Create'](this, this['m_xf'], _0x8b178c), this['m_flags'] & _0x3f9b69['e_activeFlag'] && _0xb849f3['CreateProxy'](this['m_world']['m_contactManager']['m_broadPhase'], this['m_xf']), _0xb849f3['m_next'] = this['m_fixtureList'], this['m_fixtureList'] = _0xb849f3, ++this['m_fixtureCount'], _0xb849f3['m_body'] = this, 0x0 < _0xb849f3['m_density'] && this['ResetMassData'](), this['m_world']['m_flags'] |= _0x1c8cd9['e_newFixture'], _0xb849f3; } , _0x3f9b69['prototype']['CreateFixture2'] = function(_0x3c8028, _0x3e5eae) { void 0x0 === _0x3e5eae && (_0x3e5eae = 0x0); var _0x4a0380 = new _0x3a1ceb(); return _0x4a0380['shape'] = _0x3c8028, _0x4a0380['density'] = _0x3e5eae, this['CreateFixture'](_0x4a0380); } , _0x3f9b69['prototype']['DestroyFixture'] = function(_0x4d1a0f) { if (!0x0 != this['m_world']['IsLocked']()) { for (var _0x900fa4 = this['m_fixtureList'], _0x15503e = null; null != _0x900fa4; ) { if (_0x900fa4 == _0x4d1a0f) { _0x15503e ? _0x15503e['m_next'] = _0x4d1a0f['m_next'] : this['m_fixtureList'] = _0x4d1a0f['m_next']; break; } _0x15503e = _0x900fa4, _0x900fa4 = _0x900fa4['m_next']; } for (_0x900fa4 = this['m_contactList']; _0x900fa4; ) { var _0x15503e = _0x900fa4['contact'] , _0x900fa4 = _0x900fa4['next'] , _0x450947 = _0x15503e['GetFixtureA']() , _0x4042b3 = _0x15503e['GetFixtureB'](); (_0x4d1a0f == _0x450947 || _0x4d1a0f == _0x4042b3) && this['m_world']['m_contactManager']['Destroy'](_0x15503e); } this['m_flags'] & _0x3f9b69['e_activeFlag'] && _0x4d1a0f['DestroyProxy'](this['m_world']['m_contactManager']['m_broadPhase']), _0x4d1a0f['Destroy'](), _0x4d1a0f['m_body'] = null, _0x4d1a0f['m_next'] = null, --this['m_fixtureCount'], this['ResetMassData'](); } } , _0x3f9b69['prototype']['SetPositionAndAngle'] = function(_0x58d6fc, _0x2f37d4) { void 0x0 === _0x2f37d4 && (_0x2f37d4 = 0x0); var _0x1477b2; if (!0x0 != this['m_world']['IsLocked']()) { this['m_xf']['R']['Set'](_0x2f37d4), this['m_xf']['position']['SetV'](_0x58d6fc), _0x1477b2 = this['m_xf']['R']; var _0x1f4f70 = this['m_sweep']['localCenter']; this['m_sweep']['c']['x'] = _0x1477b2['col1']['x'] * _0x1f4f70['x'] + _0x1477b2['col2']['x'] * _0x1f4f70['y'], this['m_sweep']['c']['y'] = _0x1477b2['col1']['y'] * _0x1f4f70['x'] + _0x1477b2['col2']['y'] * _0x1f4f70['y'], this['m_sweep']['c']['x'] += this['m_xf']['position']['x'], this['m_sweep']['c']['y'] += this['m_xf']['position']['y'], this['m_sweep']['c0']['SetV'](this['m_sweep']['c']), this['m_sweep']['a0'] = this['m_sweep']['a'] = _0x2f37d4, _0x1f4f70 = this['m_world']['m_contactManager']['m_broadPhase']; for (_0x1477b2 = this['m_fixtureList']; _0x1477b2; _0x1477b2 = _0x1477b2['m_next']) _0x1477b2['Synchronize'](_0x1f4f70, this['m_xf'], this['m_xf']); this['m_world']['m_contactManager']['FindNewContacts'](); } } , _0x3f9b69['prototype']['SetTransform'] = function(_0x44682c) { this['SetPositionAndAngle'](_0x44682c['position'], _0x44682c['GetAngle']()); } , _0x3f9b69['prototype']['GetTransform'] = function() { return this['m_xf']; } , _0x3f9b69['prototype']['GetPosition'] = function() { return this['m_xf']['position']; } , _0x3f9b69['prototype']['SetPosition'] = function(_0x1fabdf) { this['SetPositionAndAngle'](_0x1fabdf, this['GetAngle']()); } , _0x3f9b69['prototype']['GetAngle'] = function() { return this['m_sweep']['a']; } , _0x3f9b69['prototype']['SetAngle'] = function(_0x41fad5) { void 0x0 === _0x41fad5 && (_0x41fad5 = 0x0), this['SetPositionAndAngle'](this['GetPosition'](), _0x41fad5); } , _0x3f9b69['prototype']['GetWorldCenter'] = function() { return this['m_sweep']['c']; } , _0x3f9b69['prototype']['GetLocalCenter'] = function() { return this['m_sweep']['localCenter']; } , _0x3f9b69['prototype']['SetLinearVelocity'] = function(_0x2350ad) { this['m_type'] != _0x3f9b69['b2_staticBody'] && this['m_linearVelocity']['SetV'](_0x2350ad); } , _0x3f9b69['prototype']['GetLinearVelocity'] = function() { return this['m_linearVelocity']; } , _0x3f9b69['prototype']['SetAngularVelocity'] = function(_0x41115e) { void 0x0 === _0x41115e && (_0x41115e = 0x0), this['m_type'] != _0x3f9b69['b2_staticBody'] && (this['m_angularVelocity'] = _0x41115e); } , _0x3f9b69['prototype']['GetAngularVelocity'] = function() { return this['m_angularVelocity']; } , _0x3f9b69['prototype']['GetDefinition'] = function() { var _0x5a59fe = new _0x40ce1d(); return _0x5a59fe['type'] = this['GetType'](), _0x5a59fe['allowSleep'] = (this['m_flags'] & _0x3f9b69['e_allowSleepFlag']) == _0x3f9b69['e_allowSleepFlag'], _0x5a59fe['angle'] = this['GetAngle'](), _0x5a59fe['angularDamping'] = this['m_angularDamping'], _0x5a59fe['angularVelocity'] = this['m_angularVelocity'], _0x5a59fe['fixedRotation'] = (this['m_flags'] & _0x3f9b69['e_fixedRotationFlag']) == _0x3f9b69['e_fixedRotationFlag'], _0x5a59fe['bullet'] = (this['m_flags'] & _0x3f9b69['e_bulletFlag']) == _0x3f9b69['e_bulletFlag'], _0x5a59fe['awake'] = (this['m_flags'] & _0x3f9b69['e_awakeFlag']) == _0x3f9b69['e_awakeFlag'], _0x5a59fe['linearDamping'] = this['m_linearDamping'], _0x5a59fe['linearVelocity']['SetV'](this['GetLinearVelocity']()), _0x5a59fe['position'] = this['GetPosition'](), _0x5a59fe['userData'] = this['GetUserData'](), _0x5a59fe; } , _0x3f9b69['prototype']['ApplyForce'] = function(_0x435858, _0x4ccee3) { this['m_type'] == _0x3f9b69['b2_dynamicBody'] && (!0x1 == this['IsAwake']() && this['SetAwake'](!0x0), this['m_force']['x'] += _0x435858['x'], this['m_force']['y'] += _0x435858['y'], this['m_torque'] += (_0x4ccee3['x'] - this['m_sweep']['c']['x']) * _0x435858['y'] - (_0x4ccee3['y'] - this['m_sweep']['c']['y']) * _0x435858['x']); } , _0x3f9b69['prototype']['ApplyTorque'] = function(_0x35ff95) { void 0x0 === _0x35ff95 && (_0x35ff95 = 0x0), this['m_type'] == _0x3f9b69['b2_dynamicBody'] && (!0x1 == this['IsAwake']() && this['SetAwake'](!0x0), this['m_torque'] += _0x35ff95); } , _0x3f9b69['prototype']['ApplyImpulse'] = function(_0x45bb84, _0x373c40) { this['m_type'] == _0x3f9b69['b2_dynamicBody'] && (!0x1 == this['IsAwake']() && this['SetAwake'](!0x0), this['m_linearVelocity']['x'] += this['m_invMass'] * _0x45bb84['x'], this['m_linearVelocity']['y'] += this['m_invMass'] * _0x45bb84['y'], this['m_angularVelocity'] += this['m_invI'] * ((_0x373c40['x'] - this['m_sweep']['c']['x']) * _0x45bb84['y'] - (_0x373c40['y'] - this['m_sweep']['c']['y']) * _0x45bb84['x'])); } , _0x3f9b69['prototype']['Split'] = function(_0x197d12) { for (var _0x3d27ad = this['GetLinearVelocity']()['Copy'](), _0xa4de4 = this['GetAngularVelocity'](), _0x2eeb96 = this['GetWorldCenter'](), _0x25ddb2 = this['m_world']['CreateBody'](this['GetDefinition']()), _0x4b2376, _0x56d5c1 = this['m_fixtureList']; _0x56d5c1; ) if (_0x197d12(_0x56d5c1)) { var _0x2a0c46 = _0x56d5c1['m_next']; _0x4b2376 ? _0x4b2376['m_next'] = _0x2a0c46 : this['m_fixtureList'] = _0x2a0c46, this['m_fixtureCount']--, _0x56d5c1['m_next'] = _0x25ddb2['m_fixtureList'], _0x25ddb2['m_fixtureList'] = _0x56d5c1, _0x25ddb2['m_fixtureCount']++, _0x56d5c1['m_body'] = _0x25ddb2, _0x56d5c1 = _0x2a0c46; } else _0x4b2376 = _0x56d5c1, _0x56d5c1 = _0x56d5c1['m_next']; return this['ResetMassData'](), _0x25ddb2['ResetMassData'](), _0x4b2376 = this['GetWorldCenter'](), _0x197d12 = _0x25ddb2['GetWorldCenter'](), _0x4b2376 = _0x58f3af['AddVV'](_0x3d27ad, _0x58f3af['CrossFV'](_0xa4de4, _0x58f3af['SubtractVV'](_0x4b2376, _0x2eeb96))), _0x3d27ad = _0x58f3af['AddVV'](_0x3d27ad, _0x58f3af['CrossFV'](_0xa4de4, _0x58f3af['SubtractVV'](_0x197d12, _0x2eeb96))), this['SetLinearVelocity'](_0x4b2376), _0x25ddb2['SetLinearVelocity'](_0x3d27ad), this['SetAngularVelocity'](_0xa4de4), _0x25ddb2['SetAngularVelocity'](_0xa4de4), this['SynchronizeFixtures'](), _0x25ddb2['SynchronizeFixtures'](), _0x25ddb2; } , _0x3f9b69['prototype']['Merge'] = function(_0xfe984d) { var _0x472f8f; for (_0x472f8f = _0xfe984d['m_fixtureList']; _0x472f8f; ) { var _0x387750 = _0x472f8f['m_next']; _0xfe984d['m_fixtureCount']--, _0x472f8f['m_next'] = this['m_fixtureList'], this['m_fixtureList'] = _0x472f8f, this['m_fixtureCount']++, _0x472f8f['m_body'] = _0x1edac8, _0x472f8f = _0x387750; } _0x4c200b['m_fixtureCount'] = 0x0; var _0x4c200b = this , _0x1edac8 = _0xfe984d; _0x4c200b['GetWorldCenter'](), _0x1edac8['GetWorldCenter'](), _0x4c200b['GetLinearVelocity']()['Copy'](), _0x1edac8['GetLinearVelocity']()['Copy'](), _0x4c200b['GetAngularVelocity'](), _0x1edac8['GetAngularVelocity'](), _0x4c200b['ResetMassData'](), this['SynchronizeFixtures'](); } , _0x3f9b69['prototype']['GetMass'] = function() { return this['m_mass']; } , _0x3f9b69['prototype']['GetInertia'] = function() { return this['m_I']; } , _0x3f9b69['prototype']['GetMassData'] = function(_0x3f2e79) { _0x3f2e79['mass'] = this['m_mass'], _0x3f2e79['I'] = this['m_I'], _0x3f2e79['center']['SetV'](this['m_sweep']['localCenter']); } , _0x3f9b69['prototype']['SetMassData'] = function(_0x1e9600) { _0x279919['b2Assert'](!0x1 == this['m_world']['IsLocked']()); if (!0x0 != this['m_world']['IsLocked']() && this['m_type'] == _0x3f9b69['b2_dynamicBody']) { this['m_invI'] = this['m_I'] = this['m_invMass'] = 0x0, this['m_mass'] = _0x1e9600['mass'], 0x0 >= this['m_mass'] && (this['m_mass'] = 0x1), this['m_invMass'] = 0x1 / this['m_mass'], 0x0 < _0x1e9600['I'] && 0x0 == (this['m_flags'] & _0x3f9b69['e_fixedRotationFlag']) && (this['m_I'] = _0x1e9600['I'] - this['m_mass'] * (_0x1e9600['center']['x'] * _0x1e9600['center']['x'] + _0x1e9600['center']['y'] * _0x1e9600['center']['y']), this['m_invI'] = 0x1 / this['m_I']); var _0x5d1801 = this['m_sweep']['c']['Copy'](); this['m_sweep']['localCenter']['SetV'](_0x1e9600['center']), this['m_sweep']['c0']['SetV'](_0x58f3af['MulX'](this['m_xf'], this['m_sweep']['localCenter'])), this['m_sweep']['c']['SetV'](this['m_sweep']['c0']), this['m_linearVelocity']['x'] += this['m_angularVelocity'] * -(this['m_sweep']['c']['y'] - _0x5d1801['y']), this['m_linearVelocity']['y'] += this['m_angularVelocity'] * +(this['m_sweep']['c']['x'] - _0x5d1801['x']); } } , _0x3f9b69['prototype']['ResetMassData'] = function() { this['m_invI'] = this['m_I'] = this['m_invMass'] = this['m_mass'] = 0x0, this['m_sweep']['localCenter']['SetZero'](); if (!(this['m_type'] == _0x3f9b69['b2_staticBody'] || this['m_type'] == _0x3f9b69['b2_kinematicBody'])) { for (var _0x3cb28d = _0x54aa92['Make'](0x0, 0x0), _0x531c33 = this['m_fixtureList']; _0x531c33; _0x531c33 = _0x531c33['m_next']) if (0x0 != _0x531c33['m_density']) { var _0xa0a685 = _0x531c33['GetMassData'](); this['m_mass'] += _0xa0a685['mass'], _0x3cb28d['x'] += _0xa0a685['center']['x'] * _0xa0a685['mass'], _0x3cb28d['y'] += _0xa0a685['center']['y'] * _0xa0a685['mass'], this['m_I'] += _0xa0a685['I']; } 0x0 < this['m_mass'] ? (this['m_invMass'] = 0x1 / this['m_mass'], _0x3cb28d['x'] *= this['m_invMass'], _0x3cb28d['y'] *= this['m_invMass']) : this['m_invMass'] = this['m_mass'] = 0x1, 0x0 < this['m_I'] && 0x0 == (this['m_flags'] & _0x3f9b69['e_fixedRotationFlag']) ? (this['m_I'] -= this['m_mass'] * (_0x3cb28d['x'] * _0x3cb28d['x'] + _0x3cb28d['y'] * _0x3cb28d['y']), this['m_I'] *= this['m_inertiaScale'], _0x279919['b2Assert'](0x0 < this['m_I']), this['m_invI'] = 0x1 / this['m_I']) : this['m_invI'] = this['m_I'] = 0x0, _0x531c33 = this['m_sweep']['c']['Copy'](), this['m_sweep']['localCenter']['SetV'](_0x3cb28d), this['m_sweep']['c0']['SetV'](_0x58f3af['MulX'](this['m_xf'], this['m_sweep']['localCenter'])), this['m_sweep']['c']['SetV'](this['m_sweep']['c0']), this['m_linearVelocity']['x'] += this['m_angularVelocity'] * -(this['m_sweep']['c']['y'] - _0x531c33['y']), this['m_linearVelocity']['y'] += this['m_angularVelocity'] * +(this['m_sweep']['c']['x'] - _0x531c33['x']); } } , _0x3f9b69['prototype']['GetWorldPoint'] = function(_0x3a5fd2) { var _0x427a0c = this['m_xf']['R']; return _0x3a5fd2 = new _0x54aa92(_0x427a0c['col1']['x'] * _0x3a5fd2['x'] + _0x427a0c['col2']['x'] * _0x3a5fd2['y'],_0x427a0c['col1']['y'] * _0x3a5fd2['x'] + _0x427a0c['col2']['y'] * _0x3a5fd2['y']), _0x3a5fd2['x'] += this['m_xf']['position']['x'], _0x3a5fd2['y'] += this['m_xf']['position']['y'], _0x3a5fd2; } , _0x3f9b69['prototype']['GetWorldVector'] = function(_0x28e045) { return _0x58f3af['MulMV'](this['m_xf']['R'], _0x28e045); } , _0x3f9b69['prototype']['GetLocalPoint'] = function(_0x50ada6) { return _0x58f3af['MulXT'](this['m_xf'], _0x50ada6); } , _0x3f9b69['prototype']['GetLocalVector'] = function(_0x41a92a) { return _0x58f3af['MulTMV'](this['m_xf']['R'], _0x41a92a); } , _0x3f9b69['prototype']['GetLinearVelocityFromWorldPoint'] = function(_0xd021) { return new _0x54aa92(this['m_linearVelocity']['x'] - this['m_angularVelocity'] * (_0xd021['y'] - this['m_sweep']['c']['y']),this['m_linearVelocity']['y'] + this['m_angularVelocity'] * (_0xd021['x'] - this['m_sweep']['c']['x'])); } , _0x3f9b69['prototype']['GetLinearVelocityFromLocalPoint'] = function(_0x2eb623) { var _0x3b6c8e = this['m_xf']['R']; return _0x2eb623 = new _0x54aa92(_0x3b6c8e['col1']['x'] * _0x2eb623['x'] + _0x3b6c8e['col2']['x'] * _0x2eb623['y'],_0x3b6c8e['col1']['y'] * _0x2eb623['x'] + _0x3b6c8e['col2']['y'] * _0x2eb623['y']), _0x2eb623['x'] += this['m_xf']['position']['x'], _0x2eb623['y'] += this['m_xf']['position']['y'], new _0x54aa92(this['m_linearVelocity']['x'] - this['m_angularVelocity'] * (_0x2eb623['y'] - this['m_sweep']['c']['y']),this['m_linearVelocity']['y'] + this['m_angularVelocity'] * (_0x2eb623['x'] - this['m_sweep']['c']['x'])); } , _0x3f9b69['prototype']['GetLinearDamping'] = function() { return this['m_linearDamping']; } , _0x3f9b69['prototype']['SetLinearDamping'] = function(_0x3e4e38) { void 0x0 === _0x3e4e38 && (_0x3e4e38 = 0x0), this['m_linearDamping'] = _0x3e4e38; } , _0x3f9b69['prototype']['GetAngularDamping'] = function() { return this['m_angularDamping']; } , _0x3f9b69['prototype']['SetAngularDamping'] = function(_0x29b6e0) { void 0x0 === _0x29b6e0 && (_0x29b6e0 = 0x0), this['m_angularDamping'] = _0x29b6e0; } , _0x3f9b69['prototype']['SetType'] = function(_0x332ec6) { void 0x0 === _0x332ec6 && (_0x332ec6 = 0x0); if (this['m_type'] != _0x332ec6) { this['m_type'] = _0x332ec6, this['ResetMassData'](), this['m_type'] == _0x3f9b69['b2_staticBody'] && (this['m_linearVelocity']['SetZero'](), this['m_angularVelocity'] = 0x0), this['SetAwake'](!0x0), this['m_force']['SetZero'](), this['m_torque'] = 0x0; for (_0x332ec6 = this['m_contactList']; _0x332ec6; _0x332ec6 = _0x332ec6['next']) _0x332ec6['contact']['FlagForFiltering'](); } } , _0x3f9b69['prototype']['GetType'] = function() { return this['m_type']; } , _0x3f9b69['prototype']['SetBullet'] = function(_0x19029f) { this['m_flags'] = _0x19029f ? this['m_flags'] | _0x3f9b69['e_bulletFlag'] : this['m_flags'] & ~_0x3f9b69['e_bulletFlag']; } , _0x3f9b69['prototype']['IsBullet'] = function() { return (this['m_flags'] & _0x3f9b69['e_bulletFlag']) == _0x3f9b69['e_bulletFlag']; } , _0x3f9b69['prototype']['SetSleepingAllowed'] = function(_0x309107) { _0x309107 ? this['m_flags'] |= _0x3f9b69['e_allowSleepFlag'] : (this['m_flags'] &= ~_0x3f9b69['e_allowSleepFlag'], this['SetAwake'](!0x0)); } , _0x3f9b69['prototype']['SetAwake'] = function(_0x56d705) { _0x56d705 ? (this['m_flags'] |= _0x3f9b69['e_awakeFlag'], this['m_sleepTime'] = 0x0) : (this['m_flags'] &= ~_0x3f9b69['e_awakeFlag'], this['m_sleepTime'] = 0x0, this['m_linearVelocity']['SetZero'](), this['m_angularVelocity'] = 0x0, this['m_force']['SetZero'](), this['m_torque'] = 0x0); } , _0x3f9b69['prototype']['IsAwake'] = function() { return (this['m_flags'] & _0x3f9b69['e_awakeFlag']) == _0x3f9b69['e_awakeFlag']; } , _0x3f9b69['prototype']['SetFixedRotation'] = function(_0x31a29f) { this['m_flags'] = _0x31a29f ? this['m_flags'] | _0x3f9b69['e_fixedRotationFlag'] : this['m_flags'] & ~_0x3f9b69['e_fixedRotationFlag'], this['ResetMassData'](); } , _0x3f9b69['prototype']['IsFixedRotation'] = function() { return (this['m_flags'] & _0x3f9b69['e_fixedRotationFlag']) == _0x3f9b69['e_fixedRotationFlag']; } , _0x3f9b69['prototype']['SetActive'] = function(_0x1f71ec) { if (_0x1f71ec != this['IsActive']()) { var _0x592341; if (_0x1f71ec) { this['m_flags'] |= _0x3f9b69['e_activeFlag'], _0x1f71ec = this['m_world']['m_contactManager']['m_broadPhase']; for (_0x592341 = this['m_fixtureList']; _0x592341; _0x592341 = _0x592341['m_next']) _0x592341['CreateProxy'](_0x1f71ec, this['m_xf']); } else { this['m_flags'] &= ~_0x3f9b69['e_activeFlag'], _0x1f71ec = this['m_world']['m_contactManager']['m_broadPhase']; for (_0x592341 = this['m_fixtureList']; _0x592341; _0x592341 = _0x592341['m_next']) _0x592341['DestroyProxy'](_0x1f71ec); for (_0x1f71ec = this['m_contactList']; _0x1f71ec; ) _0x592341 = _0x1f71ec, _0x1f71ec = _0x1f71ec['next'], this['m_world']['m_contactManager']['Destroy'](_0x592341['contact']); this['m_contactList'] = null; } } } , _0x3f9b69['prototype']['IsActive'] = function() { return (this['m_flags'] & _0x3f9b69['e_activeFlag']) == _0x3f9b69['e_activeFlag']; } , _0x3f9b69['prototype']['IsSleepingAllowed'] = function() { return (this['m_flags'] & _0x3f9b69['e_allowSleepFlag']) == _0x3f9b69['e_allowSleepFlag']; } , _0x3f9b69['prototype']['GetFixtureList'] = function() { return this['m_fixtureList']; } , _0x3f9b69['prototype']['GetJointList'] = function() { return this['m_jointList']; } , _0x3f9b69['prototype']['GetControllerList'] = function() { return this['m_controllerList']; } , _0x3f9b69['prototype']['GetContactList'] = function() { return this['m_contactList']; } , _0x3f9b69['prototype']['GetNext'] = function() { return this['m_next']; } , _0x3f9b69['prototype']['GetUserData'] = function() { return this['m_userData']; } , _0x3f9b69['prototype']['SetUserData'] = function(_0x26c443) { this['m_userData'] = _0x26c443; } , _0x3f9b69['prototype']['GetWorld'] = function() { return this['m_world']; } , _0x3f9b69['prototype']['b2Body'] = function(_0x394978, _0x4d55cd) { this['m_flags'] = 0x0, _0x394978['bullet'] && (this['m_flags'] |= _0x3f9b69['e_bulletFlag']), _0x394978['fixedRotation'] && (this['m_flags'] |= _0x3f9b69['e_fixedRotationFlag']), _0x394978['allowSleep'] && (this['m_flags'] |= _0x3f9b69['e_allowSleepFlag']), _0x394978['awake'] && (this['m_flags'] |= _0x3f9b69['e_awakeFlag']), _0x394978['active'] && (this['m_flags'] |= _0x3f9b69['e_activeFlag']), this['m_world'] = _0x4d55cd, this['m_xf']['position']['SetV'](_0x394978['position']), this['m_xf']['R']['Set'](_0x394978['angle']), this['m_sweep']['localCenter']['SetZero'](), this['m_sweep']['t0'] = 0x1, this['m_sweep']['a0'] = this['m_sweep']['a'] = _0x394978['angle']; var _0x26754c = this['m_xf']['R'] , _0x3c015d = this['m_sweep']['localCenter']; this['m_sweep']['c']['x'] = _0x26754c['col1']['x'] * _0x3c015d['x'] + _0x26754c['col2']['x'] * _0x3c015d['y'], this['m_sweep']['c']['y'] = _0x26754c['col1']['y'] * _0x3c015d['x'] + _0x26754c['col2']['y'] * _0x3c015d['y'], this['m_sweep']['c']['x'] += this['m_xf']['position']['x'], this['m_sweep']['c']['y'] += this['m_xf']['position']['y'], this['m_sweep']['c0']['SetV'](this['m_sweep']['c']), this['m_contactList'] = this['m_controllerList'] = this['m_jointList'] = null, this['m_controllerCount'] = 0x0, this['m_next'] = this['m_prev'] = null, this['m_linearVelocity']['SetV'](_0x394978['linearVelocity']), this['m_angularVelocity'] = _0x394978['angularVelocity'], this['m_linearDamping'] = _0x394978['linearDamping'], this['m_angularDamping'] = _0x394978['angularDamping'], this['m_force']['Set'](0x0, 0x0), this['m_sleepTime'] = this['m_torque'] = 0x0, this['m_type'] = _0x394978['type'], this['m_invMass'] = this['m_type'] == _0x3f9b69['b2_dynamicBody'] ? this['m_mass'] = 0x1 : this['m_mass'] = 0x0, this['m_invI'] = this['m_I'] = 0x0, this['m_inertiaScale'] = _0x394978['inertiaScale'], this['m_userData'] = _0x394978['userData'], this['m_fixtureList'] = null, this['m_fixtureCount'] = 0x0; } , _0x3f9b69['prototype']['SynchronizeFixtures'] = function() { var _0x4b4cf2 = _0x3f9b69['s_xf1']; _0x4b4cf2['R']['Set'](this['m_sweep']['a0']); var _0x2d0dc9 = _0x4b4cf2['R'] , _0x4c1c67 = this['m_sweep']['localCenter']; _0x4b4cf2['position']['x'] = this['m_sweep']['c0']['x'] - (_0x2d0dc9['col1']['x'] * _0x4c1c67['x'] + _0x2d0dc9['col2']['x'] * _0x4c1c67['y']), _0x4b4cf2['position']['y'] = this['m_sweep']['c0']['y'] - (_0x2d0dc9['col1']['y'] * _0x4c1c67['x'] + _0x2d0dc9['col2']['y'] * _0x4c1c67['y']), _0x4c1c67 = this['m_world']['m_contactManager']['m_broadPhase']; for (_0x2d0dc9 = this['m_fixtureList']; _0x2d0dc9; _0x2d0dc9 = _0x2d0dc9['m_next']) _0x2d0dc9['Synchronize'](_0x4c1c67, _0x4b4cf2, this['m_xf']); } , _0x3f9b69['prototype']['SynchronizeTransform'] = function() { this['m_xf']['R']['Set'](this['m_sweep']['a']); var _0x394255 = this['m_xf']['R'] , _0x3a703d = this['m_sweep']['localCenter']; this['m_xf']['position']['x'] = this['m_sweep']['c']['x'] - (_0x394255['col1']['x'] * _0x3a703d['x'] + _0x394255['col2']['x'] * _0x3a703d['y']), this['m_xf']['position']['y'] = this['m_sweep']['c']['y'] - (_0x394255['col1']['y'] * _0x3a703d['x'] + _0x394255['col2']['y'] * _0x3a703d['y']); } , _0x3f9b69['prototype']['ShouldCollide'] = function(_0x9e43e) { if (this['m_type'] != _0x3f9b69['b2_dynamicBody'] && _0x9e43e['m_type'] != _0x3f9b69['b2_dynamicBody']) return !0x1; for (var _0x1e8243 = this['m_jointList']; _0x1e8243; _0x1e8243 = _0x1e8243['next']) if (_0x1e8243['other'] == _0x9e43e && !0x1 == _0x1e8243['joint']['m_collideConnected']) return !0x1; return !0x0; } , _0x3f9b69['prototype']['Advance'] = function(_0x2da5d8) { void 0x0 === _0x2da5d8 && (_0x2da5d8 = 0x0), this['m_sweep']['Advance'](_0x2da5d8), this['m_sweep']['c']['SetV'](this['m_sweep']['c0']), this['m_sweep']['a'] = this['m_sweep']['a0'], this['SynchronizeTransform'](); } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['b2Body']['s_xf1'] = new _0x13b091(), Box2D['Dynamics']['b2Body']['e_islandFlag'] = 0x1, Box2D['Dynamics']['b2Body']['e_awakeFlag'] = 0x2, Box2D['Dynamics']['b2Body']['e_allowSleepFlag'] = 0x4, Box2D['Dynamics']['b2Body']['e_bulletFlag'] = 0x8, Box2D['Dynamics']['b2Body']['e_fixedRotationFlag'] = 0x10, Box2D['Dynamics']['b2Body']['e_activeFlag'] = 0x20, Box2D['Dynamics']['b2Body']['b2_staticBody'] = 0x0, Box2D['Dynamics']['b2Body']['b2_kinematicBody'] = 0x1, Box2D['Dynamics']['b2Body']['b2_dynamicBody'] = 0x2; }), _0x40ce1d['b2BodyDef'] = function() { this['position'] = new _0x54aa92(), this['linearVelocity'] = new _0x54aa92(); } , _0x40ce1d['prototype']['b2BodyDef'] = function() { this['userData'] = null, this['position']['Set'](0x0, 0x0), this['angle'] = 0x0, this['linearVelocity']['Set'](0x0, 0x0), this['angularDamping'] = this['linearDamping'] = this['angularVelocity'] = 0x0, this['awake'] = this['allowSleep'] = !0x0, this['bullet'] = this['fixedRotation'] = !0x1, this['type'] = _0x3f9b69['b2_staticBody'], this['active'] = !0x0, this['inertiaScale'] = 0x1; } , _0xfa8e98['b2ContactFilter'] = function() {} , _0xfa8e98['prototype']['ShouldCollide'] = function(_0x4a00d3, _0x45e09e) { var _0x256d25 = _0x4a00d3['GetFilterData']() , _0x252b90 = _0x45e09e['GetFilterData'](); return _0x256d25['groupIndex'] == _0x252b90['groupIndex'] && 0x0 != _0x256d25['groupIndex'] ? 0x0 < _0x256d25['groupIndex'] : 0x0 != (_0x256d25['maskBits'] & _0x252b90['categoryBits']) && 0x0 != (_0x256d25['categoryBits'] & _0x252b90['maskBits']); } , _0xfa8e98['prototype']['RayCollide'] = function(_0x59f831, _0x23552e) { return !_0x59f831 ? !0x0 : this['ShouldCollide'](_0x59f831 instanceof _0x442c2b ? _0x59f831 : null, _0x23552e); } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['b2ContactFilter']['b2_defaultFilter'] = new _0xfa8e98(); }), _0x2da392['b2ContactImpulse'] = function() { this['normalImpulses'] = new Vector_a2j_Number(_0x279919['b2_maxManifoldPoints']), this['tangentImpulses'] = new Vector_a2j_Number(_0x279919['b2_maxManifoldPoints']); } , _0x3c4ed9['b2ContactListener'] = function() {} , _0x3c4ed9['prototype']['BeginContact'] = function() {} , _0x3c4ed9['prototype']['EndContact'] = function() {} , _0x3c4ed9['prototype']['PreSolve'] = function() {} , _0x3c4ed9['prototype']['PostSolve'] = function() {} , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['b2ContactListener']['b2_defaultListener'] = new _0x3c4ed9(); }), _0x39247a['b2ContactManager'] = function() {} , _0x39247a['prototype']['b2ContactManager'] = function() { this['m_world'] = null, this['m_contactCount'] = 0x0, this['m_contactFilter'] = _0xfa8e98['b2_defaultFilter'], this['m_contactListener'] = _0x3c4ed9['b2_defaultListener'], this['m_contactFactory'] = new _0x3e2560(this['m_allocator']), this['m_broadPhase'] = new _0x4798ff(); } , _0x39247a['prototype']['AddPair'] = function(_0x15f334, _0x109b98) { var _0x39c265 = _0x15f334 instanceof _0x442c2b ? _0x15f334 : null , _0x50a6e4 = _0x109b98 instanceof _0x442c2b ? _0x109b98 : null , _0x3b7725 = _0x39c265['GetBody']() , _0x51bcee = _0x50a6e4['GetBody'](); if (_0x3b7725 != _0x51bcee) { for (var _0x10f117 = _0x51bcee['GetContactList'](); _0x10f117; ) { if (_0x10f117['other'] == _0x3b7725) { var _0x3b1018 = _0x10f117['contact']['GetFixtureA']() , _0x4648d7 = _0x10f117['contact']['GetFixtureB'](); if (_0x3b1018 == _0x39c265 && _0x4648d7 == _0x50a6e4 || _0x3b1018 == _0x50a6e4 && _0x4648d7 == _0x39c265) return; } _0x10f117 = _0x10f117['next']; } !0x1 != _0x51bcee['ShouldCollide'](_0x3b7725) && !0x1 != this['m_contactFilter']['ShouldCollide'](_0x39c265, _0x50a6e4) && (_0x10f117 = this['m_contactFactory']['Create'](_0x39c265, _0x50a6e4), _0x39c265 = _0x10f117['GetFixtureA'](), _0x50a6e4 = _0x10f117['GetFixtureB'](), _0x3b7725 = _0x39c265['m_body'], _0x51bcee = _0x50a6e4['m_body'], _0x10f117['m_prev'] = null, _0x10f117['m_next'] = this['m_world']['m_contactList'], null != this['m_world']['m_contactList'] && (this['m_world']['m_contactList']['m_prev'] = _0x10f117), this['m_world']['m_contactList'] = _0x10f117, _0x10f117['m_nodeA']['contact'] = _0x10f117, _0x10f117['m_nodeA']['other'] = _0x51bcee, _0x10f117['m_nodeA']['prev'] = null, _0x10f117['m_nodeA']['next'] = _0x3b7725['m_contactList'], null != _0x3b7725['m_contactList'] && (_0x3b7725['m_contactList']['prev'] = _0x10f117['m_nodeA']), _0x3b7725['m_contactList'] = _0x10f117['m_nodeA'], _0x10f117['m_nodeB']['contact'] = _0x10f117, _0x10f117['m_nodeB']['other'] = _0x3b7725, _0x10f117['m_nodeB']['prev'] = null, _0x10f117['m_nodeB']['next'] = _0x51bcee['m_contactList'], null != _0x51bcee['m_contactList'] && (_0x51bcee['m_contactList']['prev'] = _0x10f117['m_nodeB']), _0x51bcee['m_contactList'] = _0x10f117['m_nodeB'], ++this['m_world']['m_contactCount']); } } , _0x39247a['prototype']['FindNewContacts'] = function() { this['m_broadPhase']['UpdatePairs'](Box2D['generateCallback'](this, this['AddPair'])); } , _0x39247a['prototype']['Destroy'] = function(_0x504d2f) { var _0x3f6388 = _0x504d2f['GetFixtureA']() , _0x3b3824 = _0x504d2f['GetFixtureB']() , _0x3f6388 = _0x3f6388['GetBody']() , _0x3b3824 = _0x3b3824['GetBody'](); _0x504d2f['IsTouching']() && this['m_contactListener']['EndContact'](_0x504d2f), _0x504d2f['m_prev'] && (_0x504d2f['m_prev']['m_next'] = _0x504d2f['m_next']), _0x504d2f['m_next'] && (_0x504d2f['m_next']['m_prev'] = _0x504d2f['m_prev']), _0x504d2f == this['m_world']['m_contactList'] && (this['m_world']['m_contactList'] = _0x504d2f['m_next']), _0x504d2f['m_nodeA']['prev'] && (_0x504d2f['m_nodeA']['prev']['next'] = _0x504d2f['m_nodeA']['next']), _0x504d2f['m_nodeA']['next'] && (_0x504d2f['m_nodeA']['next']['prev'] = _0x504d2f['m_nodeA']['prev']), _0x504d2f['m_nodeA'] == _0x3f6388['m_contactList'] && (_0x3f6388['m_contactList'] = _0x504d2f['m_nodeA']['next']), _0x504d2f['m_nodeB']['prev'] && (_0x504d2f['m_nodeB']['prev']['next'] = _0x504d2f['m_nodeB']['next']), _0x504d2f['m_nodeB']['next'] && (_0x504d2f['m_nodeB']['next']['prev'] = _0x504d2f['m_nodeB']['prev']), _0x504d2f['m_nodeB'] == _0x3b3824['m_contactList'] && (_0x3b3824['m_contactList'] = _0x504d2f['m_nodeB']['next']), this['m_contactFactory']['Destroy'](_0x504d2f), --this['m_contactCount']; } , _0x39247a['prototype']['Collide'] = function() { for (var _0x1d0cec = this['m_world']['m_contactList']; _0x1d0cec; ) { var _0x2df98c = _0x1d0cec['GetFixtureA']() , _0x4f4ec8 = _0x1d0cec['GetFixtureB']() , _0xf65624 = _0x2df98c['GetBody']() , _0x5e6aa1 = _0x4f4ec8['GetBody'](); if (!0x1 == _0xf65624['IsAwake']() && !0x1 == _0x5e6aa1['IsAwake']()) _0x1d0cec = _0x1d0cec['GetNext'](); else { if (_0x1d0cec['m_flags'] & _0x4af089['e_filterFlag']) { if (!0x1 == _0x5e6aa1['ShouldCollide'](_0xf65624)) { _0x2df98c = _0x1d0cec, _0x1d0cec = _0x2df98c['GetNext'](), this['Destroy'](_0x2df98c); continue; } if (!0x1 == this['m_contactFilter']['ShouldCollide'](_0x2df98c, _0x4f4ec8)) { _0x2df98c = _0x1d0cec, _0x1d0cec = _0x2df98c['GetNext'](), this['Destroy'](_0x2df98c); continue; } _0x1d0cec['m_flags'] &= ~_0x4af089['e_filterFlag']; } !0x1 == this['m_broadPhase']['TestOverlap'](_0x2df98c['m_proxy'], _0x4f4ec8['m_proxy']) ? (_0x2df98c = _0x1d0cec, _0x1d0cec = _0x2df98c['GetNext'](), this['Destroy'](_0x2df98c)) : (_0x1d0cec['Update'](this['m_contactListener']), _0x1d0cec = _0x1d0cec['GetNext']()); } } } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['b2ContactManager']['s_evalCP'] = new _0x507528(); }), _0x134a3a['b2DebugDraw'] = function() {} , _0x134a3a['prototype']['b2DebugDraw'] = function() {} , _0x134a3a['prototype']['SetFlags'] = function() {} , _0x134a3a['prototype']['GetFlags'] = function() {} , _0x134a3a['prototype']['AppendFlags'] = function() {} , _0x134a3a['prototype']['ClearFlags'] = function() {} , _0x134a3a['prototype']['SetSprite'] = function() {} , _0x134a3a['prototype']['GetSprite'] = function() {} , _0x134a3a['prototype']['SetDrawScale'] = function() {} , _0x134a3a['prototype']['GetDrawScale'] = function() {} , _0x134a3a['prototype']['SetLineThickness'] = function() {} , _0x134a3a['prototype']['GetLineThickness'] = function() {} , _0x134a3a['prototype']['SetAlpha'] = function() {} , _0x134a3a['prototype']['GetAlpha'] = function() {} , _0x134a3a['prototype']['SetFillAlpha'] = function() {} , _0x134a3a['prototype']['GetFillAlpha'] = function() {} , _0x134a3a['prototype']['SetXFormScale'] = function() {} , _0x134a3a['prototype']['GetXFormScale'] = function() {} , _0x134a3a['prototype']['DrawPolygon'] = function() {} , _0x134a3a['prototype']['DrawSolidPolygon'] = function() {} , _0x134a3a['prototype']['DrawCircle'] = function() {} , _0x134a3a['prototype']['DrawSolidCircle'] = function() {} , _0x134a3a['prototype']['DrawSegment'] = function() {} , _0x134a3a['prototype']['DrawTransform'] = function() {} , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['b2DebugDraw']['e_shapeBit'] = 0x1, Box2D['Dynamics']['b2DebugDraw']['e_jointBit'] = 0x2, Box2D['Dynamics']['b2DebugDraw']['e_aabbBit'] = 0x4, Box2D['Dynamics']['b2DebugDraw']['e_pairBit'] = 0x8, Box2D['Dynamics']['b2DebugDraw']['e_centerOfMassBit'] = 0x10, Box2D['Dynamics']['b2DebugDraw']['e_controllerBit'] = 0x20; }), _0xb86588['b2DestructionListener'] = function() {} , _0xb86588['prototype']['SayGoodbyeJoint'] = function() {} , _0xb86588['prototype']['SayGoodbyeFixture'] = function() {} , _0x3a427a['b2FilterData'] = function() { this['categoryBits'] = 0x1, this['maskBits'] = 0xffff, this['groupIndex'] = 0x0; } , _0x3a427a['prototype']['Copy'] = function() { var _0x3f3220 = new _0x3a427a(); return _0x3f3220['categoryBits'] = this['categoryBits'], _0x3f3220['maskBits'] = this['maskBits'], _0x3f3220['groupIndex'] = this['groupIndex'], _0x3f3220; } , _0x442c2b['b2Fixture'] = function() { this['m_filter'] = new _0x3a427a(); } , _0x442c2b['prototype']['GetType'] = function() { return this['m_shape']['GetType'](); } , _0x442c2b['prototype']['GetShape'] = function() { return this['m_shape']; } , _0x442c2b['prototype']['SetSensor'] = function(_0x5d4049) { if (this['m_isSensor'] != _0x5d4049 && (this['m_isSensor'] = _0x5d4049, null != this['m_body'])) for (_0x5d4049 = this['m_body']['GetContactList'](); _0x5d4049; ) { var _0x15a416 = _0x5d4049['contact'] , _0x4f9d70 = _0x15a416['GetFixtureA']() , _0xd0da4d = _0x15a416['GetFixtureB'](); if (_0x4f9d70 == this || _0xd0da4d == this) _0x15a416['SetSensor'](_0x4f9d70['IsSensor']() || _0xd0da4d['IsSensor']()); _0x5d4049 = _0x5d4049['next']; } } , _0x442c2b['prototype']['IsSensor'] = function() { return this['m_isSensor']; } , _0x442c2b['prototype']['SetFilterData'] = function(_0x1ba51e) { this['m_filter'] = _0x1ba51e['Copy'](); if (!this['m_body']) for (_0x1ba51e = this['m_body']['GetContactList'](); _0x1ba51e; ) { var _0x59cbc4 = _0x1ba51e['contact'] , _0x3e5a81 = _0x59cbc4['GetFixtureA']() , _0x55cc43 = _0x59cbc4['GetFixtureB'](); (_0x3e5a81 == this || _0x55cc43 == this) && _0x59cbc4['FlagForFiltering'](), _0x1ba51e = _0x1ba51e['next']; } } , _0x442c2b['prototype']['GetFilterData'] = function() { return this['m_filter']['Copy'](); } , _0x442c2b['prototype']['GetBody'] = function() { return this['m_body']; } , _0x442c2b['prototype']['GetNext'] = function() { return this['m_next']; } , _0x442c2b['prototype']['GetUserData'] = function() { return this['m_userData']; } , _0x442c2b['prototype']['SetUserData'] = function(_0x27ceef) { this['m_userData'] = _0x27ceef; } , _0x442c2b['prototype']['TestPoint'] = function(_0x36f094) { return this['m_shape']['TestPoint'](this['m_body']['GetTransform'](), _0x36f094); } , _0x442c2b['prototype']['RayCast'] = function(_0x33626c, _0x23ec89) { return this['m_shape']['RayCast'](_0x33626c, _0x23ec89, this['m_body']['GetTransform']()); } , _0x442c2b['prototype']['GetMassData'] = function(_0x294522) { return void 0x0 === _0x294522 && (_0x294522 = null), null == _0x294522 && (_0x294522 = new _0x2db577()), this['m_shape']['ComputeMass'](_0x294522, this['m_density']), _0x294522; } , _0x442c2b['prototype']['SetDensity'] = function(_0x53e499) { void 0x0 === _0x53e499 && (_0x53e499 = 0x0), this['m_density'] = _0x53e499; } , _0x442c2b['prototype']['GetDensity'] = function() { return this['m_density']; } , _0x442c2b['prototype']['GetFriction'] = function() { return this['m_friction']; } , _0x442c2b['prototype']['SetFriction'] = function(_0x3661bd) { void 0x0 === _0x3661bd && (_0x3661bd = 0x0), this['m_friction'] = _0x3661bd; } , _0x442c2b['prototype']['GetRestitution'] = function() { return this['m_restitution']; } , _0x442c2b['prototype']['SetRestitution'] = function(_0x306012) { void 0x0 === _0x306012 && (_0x306012 = 0x0), this['m_restitution'] = _0x306012; } , _0x442c2b['prototype']['GetAABB'] = function() { return this['m_aabb']; } , _0x442c2b['prototype']['b2Fixture'] = function() { this['m_aabb'] = new _0x16b2f7(), this['m_shape'] = this['m_next'] = this['m_body'] = this['m_userData'] = null, this['m_restitution'] = this['m_friction'] = this['m_density'] = 0x0; } , _0x442c2b['prototype']['Create'] = function(_0x397a23, _0x382f75, _0x52a60a) { this['m_userData'] = _0x52a60a['userData'], this['m_friction'] = _0x52a60a['friction'], this['m_restitution'] = _0x52a60a['restitution'], this['m_body'] = _0x397a23, this['m_next'] = null, this['m_filter'] = _0x52a60a['filter']['Copy'](), this['m_isSensor'] = _0x52a60a['isSensor'], this['m_shape'] = _0x52a60a['shape']['Copy'](), this['m_density'] = _0x52a60a['density']; } , _0x442c2b['prototype']['Destroy'] = function() { this['m_shape'] = null; } , _0x442c2b['prototype']['CreateProxy'] = function(_0x2100a2, _0x1d98b9) { this['m_shape']['ComputeAABB'](this['m_aabb'], _0x1d98b9), this['m_proxy'] = _0x2100a2['CreateProxy'](this['m_aabb'], this); } , _0x442c2b['prototype']['DestroyProxy'] = function(_0x23a2ea) { null != this['m_proxy'] && (_0x23a2ea['DestroyProxy'](this['m_proxy']), this['m_proxy'] = null); } , _0x442c2b['prototype']['Synchronize'] = function(_0x3eec2, _0x4de721, _0x31265b) { if (this['m_proxy']) { var _0x5346d0 = new _0x16b2f7() , _0x1ac0c1 = new _0x16b2f7(); this['m_shape']['ComputeAABB'](_0x5346d0, _0x4de721), this['m_shape']['ComputeAABB'](_0x1ac0c1, _0x31265b), this['m_aabb']['Combine'](_0x5346d0, _0x1ac0c1), _0x4de721 = _0x58f3af['SubtractVV'](_0x31265b['position'], _0x4de721['position']), _0x3eec2['MoveProxy'](this['m_proxy'], this['m_aabb'], _0x4de721); } } , _0x3a1ceb['b2FixtureDef'] = function() { this['filter'] = new _0x3a427a(); } , _0x3a1ceb['prototype']['b2FixtureDef'] = function() { this['userData'] = this['shape'] = null, this['friction'] = 0.2, this['density'] = this['restitution'] = 0x0, this['filter']['categoryBits'] = 0x1, this['filter']['maskBits'] = 0xffff, this['filter']['groupIndex'] = 0x0, this['isSensor'] = !0x1; } , _0x36f869['b2Island'] = function() {} , _0x36f869['prototype']['b2Island'] = function() { this['m_bodies'] = new Vector(), this['m_contacts'] = new Vector(), this['m_joints'] = new Vector(); } , _0x36f869['prototype']['Initialize'] = function(_0x133ab8, _0x2bd304, _0x48106a, _0x4b71ad, _0x124287, _0x8e77c8) { void 0x0 === _0x133ab8 && (_0x133ab8 = 0x0), void 0x0 === _0x2bd304 && (_0x2bd304 = 0x0), void 0x0 === _0x48106a && (_0x48106a = 0x0); var _0x8848dc = 0x0; this['m_bodyCapacity'] = _0x133ab8, this['m_contactCapacity'] = _0x2bd304, this['m_jointCapacity'] = _0x48106a, this['m_jointCount'] = this['m_contactCount'] = this['m_bodyCount'] = 0x0, this['m_allocator'] = _0x4b71ad, this['m_listener'] = _0x124287, this['m_contactSolver'] = _0x8e77c8; for (_0x8848dc = this['m_bodies']['length']; _0x8848dc < _0x133ab8; _0x8848dc++) this['m_bodies'][_0x8848dc] = null; for (_0x8848dc = this['m_contacts']['length']; _0x8848dc < _0x2bd304; _0x8848dc++) this['m_contacts'][_0x8848dc] = null; for (_0x8848dc = this['m_joints']['length']; _0x8848dc < _0x48106a; _0x8848dc++) this['m_joints'][_0x8848dc] = null; } , _0x36f869['prototype']['Clear'] = function() { this['m_jointCount'] = this['m_contactCount'] = this['m_bodyCount'] = 0x0; } , _0x36f869['prototype']['Solve'] = function(_0x47c5f5, _0x42ab69, _0x367212) { for (var _0x5f4daf = 0x0, _0x2dc44c = 0x0, _0x7f4017, _0x5f4daf = 0x0; _0x5f4daf < this['m_bodyCount']; ++_0x5f4daf) _0x2dc44c = this['m_bodies'][_0x5f4daf], _0x2dc44c['GetType']() == _0x3f9b69['b2_dynamicBody'] && (_0x2dc44c['m_linearVelocity']['x'] += _0x47c5f5['dt'] * (_0x42ab69['x'] + _0x2dc44c['m_invMass'] * _0x2dc44c['m_force']['x']), _0x2dc44c['m_linearVelocity']['y'] += _0x47c5f5['dt'] * (_0x42ab69['y'] + _0x2dc44c['m_invMass'] * _0x2dc44c['m_force']['y']), _0x2dc44c['m_angularVelocity'] += _0x47c5f5['dt'] * _0x2dc44c['m_invI'] * _0x2dc44c['m_torque'], _0x2dc44c['m_linearVelocity']['Multiply'](_0x58f3af['Clamp'](0x1 - _0x47c5f5['dt'] * _0x2dc44c['m_linearDamping'], 0x0, 0x1)), _0x2dc44c['m_angularVelocity'] *= _0x58f3af['Clamp'](0x1 - _0x47c5f5['dt'] * _0x2dc44c['m_angularDamping'], 0x0, 0x1)); this['m_contactSolver']['Initialize'](_0x47c5f5, this['m_contacts'], this['m_contactCount'], this['m_allocator']), _0x42ab69 = this['m_contactSolver'], _0x42ab69['InitVelocityConstraints'](_0x47c5f5); for (_0x5f4daf = 0x0; _0x5f4daf < this['m_jointCount']; ++_0x5f4daf) _0x7f4017 = this['m_joints'][_0x5f4daf], _0x7f4017['InitVelocityConstraints'](_0x47c5f5); for (_0x5f4daf = 0x0; _0x5f4daf < _0x47c5f5['velocityIterations']; ++_0x5f4daf) { for (_0x2dc44c = 0x0; _0x2dc44c < this['m_jointCount']; ++_0x2dc44c) _0x7f4017 = this['m_joints'][_0x2dc44c], _0x7f4017['SolveVelocityConstraints'](_0x47c5f5); _0x42ab69['SolveVelocityConstraints'](); } for (_0x5f4daf = 0x0; _0x5f4daf < this['m_jointCount']; ++_0x5f4daf) _0x7f4017 = this['m_joints'][_0x5f4daf], _0x7f4017['FinalizeVelocityConstraints'](); _0x42ab69['FinalizeVelocityConstraints'](); for (_0x5f4daf = 0x0; _0x5f4daf < this['m_bodyCount']; ++_0x5f4daf) if (_0x2dc44c = this['m_bodies'][_0x5f4daf], _0x2dc44c['GetType']() != _0x3f9b69['b2_staticBody']) { var _0xfdd234 = _0x47c5f5['dt'] * _0x2dc44c['m_linearVelocity']['x'] , _0x22713e = _0x47c5f5['dt'] * _0x2dc44c['m_linearVelocity']['y']; _0xfdd234 * _0xfdd234 + _0x22713e * _0x22713e > _0x279919['b2_maxTranslationSquared'] && (_0x2dc44c['m_linearVelocity']['Normalize'](), _0x2dc44c['m_linearVelocity']['x'] *= _0x279919['b2_maxTranslation'] * _0x47c5f5['inv_dt'], _0x2dc44c['m_linearVelocity']['y'] *= _0x279919['b2_maxTranslation'] * _0x47c5f5['inv_dt']), _0xfdd234 = _0x47c5f5['dt'] * _0x2dc44c['m_angularVelocity'], _0xfdd234 * _0xfdd234 > _0x279919['b2_maxRotationSquared'] && (_0x2dc44c['m_angularVelocity'] = 0x0 > _0x2dc44c['m_angularVelocity'] ? -_0x279919['b2_maxRotation'] * _0x47c5f5['inv_dt'] : _0x279919['b2_maxRotation'] * _0x47c5f5['inv_dt']), _0x2dc44c['m_sweep']['c0']['SetV'](_0x2dc44c['m_sweep']['c']), _0x2dc44c['m_sweep']['a0'] = _0x2dc44c['m_sweep']['a'], _0x2dc44c['m_sweep']['c']['x'] += _0x47c5f5['dt'] * _0x2dc44c['m_linearVelocity']['x'], _0x2dc44c['m_sweep']['c']['y'] += _0x47c5f5['dt'] * _0x2dc44c['m_linearVelocity']['y'], _0x2dc44c['m_sweep']['a'] += _0x47c5f5['dt'] * _0x2dc44c['m_angularVelocity'], _0x2dc44c['SynchronizeTransform'](); } for (_0x5f4daf = 0x0; _0x5f4daf < _0x47c5f5['positionIterations']; ++_0x5f4daf) { _0xfdd234 = _0x42ab69['SolvePositionConstraints'](_0x279919['b2_contactBaumgarte']), _0x22713e = !0x0; for (_0x2dc44c = 0x0; _0x2dc44c < this['m_jointCount']; ++_0x2dc44c) _0x7f4017 = this['m_joints'][_0x2dc44c], _0x7f4017 = _0x7f4017['SolvePositionConstraints'](_0x279919['b2_contactBaumgarte']), _0x22713e = _0x22713e && _0x7f4017; if (_0xfdd234 && _0x22713e) break; } this['Report'](_0x42ab69['m_constraints']); if (_0x367212) { _0x367212 = Number['MAX_VALUE'], _0x42ab69 = _0x279919['b2_linearSleepTolerance'] * _0x279919['b2_linearSleepTolerance'], _0xfdd234 = _0x279919['b2_angularSleepTolerance'] * _0x279919['b2_angularSleepTolerance']; for (_0x5f4daf = 0x0; _0x5f4daf < this['m_bodyCount']; ++_0x5f4daf) _0x2dc44c = this['m_bodies'][_0x5f4daf], _0x2dc44c['GetType']() != _0x3f9b69['b2_staticBody'] && (0x0 == (_0x2dc44c['m_flags'] & _0x3f9b69['e_allowSleepFlag']) && (_0x367212 = _0x2dc44c['m_sleepTime'] = 0x0), 0x0 == (_0x2dc44c['m_flags'] & _0x3f9b69['e_allowSleepFlag']) || _0x2dc44c['m_angularVelocity'] * _0x2dc44c['m_angularVelocity'] > _0xfdd234 || _0x58f3af['Dot'](_0x2dc44c['m_linearVelocity'], _0x2dc44c['m_linearVelocity']) > _0x42ab69 ? _0x367212 = _0x2dc44c['m_sleepTime'] = 0x0 : (_0x2dc44c['m_sleepTime'] += _0x47c5f5['dt'], _0x367212 = _0x58f3af['Min'](_0x367212, _0x2dc44c['m_sleepTime']))); if (_0x367212 >= _0x279919['b2_timeToSleep']) for (_0x5f4daf = 0x0; _0x5f4daf < this['m_bodyCount']; ++_0x5f4daf) _0x2dc44c = this['m_bodies'][_0x5f4daf], _0x2dc44c['SetAwake'](!0x1); } } , _0x36f869['prototype']['SolveTOI'] = function(_0x34fe6d) { var _0x4d906d = 0x0 , _0x33b530 = 0x0; this['m_contactSolver']['Initialize'](_0x34fe6d, this['m_contacts'], this['m_contactCount'], this['m_allocator']); for (var _0x300c40 = this['m_contactSolver'], _0x4d906d = 0x0; _0x4d906d < this['m_jointCount']; ++_0x4d906d) this['m_joints'][_0x4d906d]['InitVelocityConstraints'](_0x34fe6d); for (_0x4d906d = 0x0; _0x4d906d < _0x34fe6d['velocityIterations']; ++_0x4d906d) { _0x300c40['SolveVelocityConstraints'](); for (_0x33b530 = 0x0; _0x33b530 < this['m_jointCount']; ++_0x33b530) this['m_joints'][_0x33b530]['SolveVelocityConstraints'](_0x34fe6d); } for (_0x4d906d = 0x0; _0x4d906d < this['m_bodyCount']; ++_0x4d906d) if (_0x33b530 = this['m_bodies'][_0x4d906d], _0x33b530['GetType']() != _0x3f9b69['b2_staticBody']) { var _0x547bd7 = _0x34fe6d['dt'] * _0x33b530['m_linearVelocity']['x'] , _0x4a32f5 = _0x34fe6d['dt'] * _0x33b530['m_linearVelocity']['y']; _0x547bd7 * _0x547bd7 + _0x4a32f5 * _0x4a32f5 > _0x279919['b2_maxTranslationSquared'] && (_0x33b530['m_linearVelocity']['Normalize'](), _0x33b530['m_linearVelocity']['x'] *= _0x279919['b2_maxTranslation'] * _0x34fe6d['inv_dt'], _0x33b530['m_linearVelocity']['y'] *= _0x279919['b2_maxTranslation'] * _0x34fe6d['inv_dt']), _0x547bd7 = _0x34fe6d['dt'] * _0x33b530['m_angularVelocity'], _0x547bd7 * _0x547bd7 > _0x279919['b2_maxRotationSquared'] && (_0x33b530['m_angularVelocity'] = 0x0 > _0x33b530['m_angularVelocity'] ? -_0x279919['b2_maxRotation'] * _0x34fe6d['inv_dt'] : _0x279919['b2_maxRotation'] * _0x34fe6d['inv_dt']), _0x33b530['m_sweep']['c0']['SetV'](_0x33b530['m_sweep']['c']), _0x33b530['m_sweep']['a0'] = _0x33b530['m_sweep']['a'], _0x33b530['m_sweep']['c']['x'] += _0x34fe6d['dt'] * _0x33b530['m_linearVelocity']['x'], _0x33b530['m_sweep']['c']['y'] += _0x34fe6d['dt'] * _0x33b530['m_linearVelocity']['y'], _0x33b530['m_sweep']['a'] += _0x34fe6d['dt'] * _0x33b530['m_angularVelocity'], _0x33b530['SynchronizeTransform'](); } for (_0x4d906d = 0x0; _0x4d906d < _0x34fe6d['positionIterations']; ++_0x4d906d) { _0x547bd7 = _0x300c40['SolvePositionConstraints'](0.75), _0x4a32f5 = !0x0; for (_0x33b530 = 0x0; _0x33b530 < this['m_jointCount']; ++_0x33b530) var _0x4af949 = this['m_joints'][_0x33b530]['SolvePositionConstraints'](_0x279919['b2_contactBaumgarte']) , _0x4a32f5 = _0x4a32f5 && _0x4af949; if (_0x547bd7 && _0x4a32f5) break; } this['Report'](_0x300c40['m_constraints']); } , _0x36f869['prototype']['Report'] = function(_0x56b301) { if (null != this['m_listener']) for (var _0x38a303 = 0x0; _0x38a303 < this['m_contactCount']; ++_0x38a303) { for (var _0x2ccb10 = this['m_contacts'][_0x38a303], _0x382e8a = _0x56b301[_0x38a303], _0x581ea1 = 0x0; _0x581ea1 < _0x382e8a['pointCount']; ++_0x581ea1) _0x36f869['s_impulse']['normalImpulses'][_0x581ea1] = _0x382e8a['points'][_0x581ea1]['normalImpulse'], _0x36f869['s_impulse']['tangentImpulses'][_0x581ea1] = _0x382e8a['points'][_0x581ea1]['tangentImpulse']; this['m_listener']['PostSolve'](_0x2ccb10, _0x36f869['s_impulse']); } } , _0x36f869['prototype']['AddBody'] = function(_0xfd5074) { _0xfd5074['m_islandIndex'] = this['m_bodyCount'], this['m_bodies'][this['m_bodyCount']++] = _0xfd5074; } , _0x36f869['prototype']['AddContact'] = function(_0x11860e) { this['m_contacts'][this['m_contactCount']++] = _0x11860e; } , _0x36f869['prototype']['AddJoint'] = function(_0x7e195a) { this['m_joints'][this['m_jointCount']++] = _0x7e195a; } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['b2Island']['s_impulse'] = new _0x2da392(); }), _0x5c54c3['b2TimeStep'] = function() {} , _0x5c54c3['prototype']['Set'] = function(_0x4ea069) { this['dt'] = _0x4ea069['dt'], this['inv_dt'] = _0x4ea069['inv_dt'], this['positionIterations'] = _0x4ea069['positionIterations'], this['velocityIterations'] = _0x4ea069['velocityIterations'], this['warmStarting'] = _0x4ea069['warmStarting']; } , _0x1c8cd9['b2World'] = function() { this['s_stack'] = new Vector(), this['m_contactManager'] = new _0x39247a(), this['m_contactSolver'] = new _0x4f691b(), this['m_island'] = new _0x36f869(); } , _0x1c8cd9['prototype']['b2World'] = function(_0x34e00e, _0x536b1e) { this['m_controllerList'] = this['m_jointList'] = this['m_contactList'] = this['m_bodyList'] = this['m_debugDraw'] = this['m_destructionListener'] = null, this['m_controllerCount'] = this['m_jointCount'] = this['m_contactCount'] = this['m_bodyCount'] = 0x0, _0x1c8cd9['m_warmStarting'] = !0x0, _0x1c8cd9['m_continuousPhysics'] = !0x0, this['m_allowSleep'] = _0x536b1e, this['m_gravity'] = _0x34e00e, this['m_inv_dt0'] = 0x0, this['m_contactManager']['m_world'] = this, this['m_groundBody'] = this['CreateBody'](new _0x40ce1d()); } , _0x1c8cd9['prototype']['SetDestructionListener'] = function(_0x1ea42a) { this['m_destructionListener'] = _0x1ea42a; } , _0x1c8cd9['prototype']['SetContactFilter'] = function(_0x594ea9) { this['m_contactManager']['m_contactFilter'] = _0x594ea9; } , _0x1c8cd9['prototype']['SetContactListener'] = function(_0x2120a0) { this['m_contactManager']['m_contactListener'] = _0x2120a0; } , _0x1c8cd9['prototype']['SetDebugDraw'] = function(_0x43c546) { this['m_debugDraw'] = _0x43c546; } , _0x1c8cd9['prototype']['SetBroadPhase'] = function(_0x26e672) { var _0x4a4d35 = this['m_contactManager']['m_broadPhase']; this['m_contactManager']['m_broadPhase'] = _0x26e672; for (var _0x31117a = this['m_bodyList']; _0x31117a; _0x31117a = _0x31117a['m_next']) for (var _0x4b19c3 = _0x31117a['m_fixtureList']; _0x4b19c3; _0x4b19c3 = _0x4b19c3['m_next']) _0x4b19c3['m_proxy'] = _0x26e672['CreateProxy'](_0x4a4d35['GetFatAABB'](_0x4b19c3['m_proxy']), _0x4b19c3); } , _0x1c8cd9['prototype']['Validate'] = function() { this['m_contactManager']['m_broadPhase']['Validate'](); } , _0x1c8cd9['prototype']['GetProxyCount'] = function() { return this['m_contactManager']['m_broadPhase']['GetProxyCount'](); } , _0x1c8cd9['prototype']['CreateBody'] = function(_0x54dc1d) { if (!0x0 == this['IsLocked']()) return null; _0x54dc1d = new _0x3f9b69(_0x54dc1d,this), _0x54dc1d['m_prev'] = null; if (_0x54dc1d['m_next'] = this['m_bodyList']) this['m_bodyList']['m_prev'] = _0x54dc1d; return this['m_bodyList'] = _0x54dc1d, ++this['m_bodyCount'], _0x54dc1d; } , _0x1c8cd9['prototype']['DestroyBody'] = function(_0x4ed9be) { if (!0x0 != this['IsLocked']()) { for (var _0x26ee89 = _0x4ed9be['m_jointList']; _0x26ee89; ) { var _0x95bd24 = _0x26ee89 , _0x26ee89 = _0x26ee89['next']; this['m_destructionListener'] && this['m_destructionListener']['SayGoodbyeJoint'](_0x95bd24['joint']), this['DestroyJoint'](_0x95bd24['joint']); } for (_0x26ee89 = _0x4ed9be['m_controllerList']; _0x26ee89; ) _0x95bd24 = _0x26ee89, _0x26ee89 = _0x26ee89['nextController'], _0x95bd24['controller']['RemoveBody'](_0x4ed9be); for (_0x26ee89 = _0x4ed9be['m_contactList']; _0x26ee89; ) _0x95bd24 = _0x26ee89, _0x26ee89 = _0x26ee89['next'], this['m_contactManager']['Destroy'](_0x95bd24['contact']); _0x4ed9be['m_contactList'] = null; for (_0x26ee89 = _0x4ed9be['m_fixtureList']; _0x26ee89; ) _0x95bd24 = _0x26ee89, _0x26ee89 = _0x26ee89['m_next'], this['m_destructionListener'] && this['m_destructionListener']['SayGoodbyeFixture'](_0x95bd24), _0x95bd24['DestroyProxy'](this['m_contactManager']['m_broadPhase']), _0x95bd24['Destroy'](); _0x4ed9be['m_fixtureList'] = null, _0x4ed9be['m_fixtureCount'] = 0x0, _0x4ed9be['m_prev'] && (_0x4ed9be['m_prev']['m_next'] = _0x4ed9be['m_next']), _0x4ed9be['m_next'] && (_0x4ed9be['m_next']['m_prev'] = _0x4ed9be['m_prev']), _0x4ed9be == this['m_bodyList'] && (this['m_bodyList'] = _0x4ed9be['m_next']), --this['m_bodyCount']; } } , _0x1c8cd9['prototype']['CreateJoint'] = function(_0xbaf585) { var _0x4afca3 = _0x358638['Create'](_0xbaf585, null); _0x4afca3['m_prev'] = null; if (_0x4afca3['m_next'] = this['m_jointList']) this['m_jointList']['m_prev'] = _0x4afca3; this['m_jointList'] = _0x4afca3, ++this['m_jointCount'], _0x4afca3['m_edgeA']['joint'] = _0x4afca3, _0x4afca3['m_edgeA']['other'] = _0x4afca3['m_bodyB'], _0x4afca3['m_edgeA']['prev'] = null; if (_0x4afca3['m_edgeA']['next'] = _0x4afca3['m_bodyA']['m_jointList']) _0x4afca3['m_bodyA']['m_jointList']['prev'] = _0x4afca3['m_edgeA']; _0x4afca3['m_bodyA']['m_jointList'] = _0x4afca3['m_edgeA'], _0x4afca3['m_edgeB']['joint'] = _0x4afca3, _0x4afca3['m_edgeB']['other'] = _0x4afca3['m_bodyA'], _0x4afca3['m_edgeB']['prev'] = null; if (_0x4afca3['m_edgeB']['next'] = _0x4afca3['m_bodyB']['m_jointList']) _0x4afca3['m_bodyB']['m_jointList']['prev'] = _0x4afca3['m_edgeB']; _0x4afca3['m_bodyB']['m_jointList'] = _0x4afca3['m_edgeB']; var _0x3d84bf = _0xbaf585['bodyA'] , _0x38e202 = _0xbaf585['bodyB']; if (!0x1 == _0xbaf585['collideConnected']) for (_0xbaf585 = _0x38e202['GetContactList'](); _0xbaf585; ) _0xbaf585['other'] == _0x3d84bf && _0xbaf585['contact']['FlagForFiltering'](), _0xbaf585 = _0xbaf585['next']; return _0x4afca3; } , _0x1c8cd9['prototype']['DestroyJoint'] = function(_0x32844e) { var _0x2ec868 = _0x32844e['m_collideConnected']; _0x32844e['m_prev'] && (_0x32844e['m_prev']['m_next'] = _0x32844e['m_next']), _0x32844e['m_next'] && (_0x32844e['m_next']['m_prev'] = _0x32844e['m_prev']), _0x32844e == this['m_jointList'] && (this['m_jointList'] = _0x32844e['m_next']); var _0x60fb1d = _0x32844e['m_bodyA'] , _0x2c8a2a = _0x32844e['m_bodyB']; _0x60fb1d['SetAwake'](!0x0), _0x2c8a2a['SetAwake'](!0x0), _0x32844e['m_edgeA']['prev'] && (_0x32844e['m_edgeA']['prev']['next'] = _0x32844e['m_edgeA']['next']), _0x32844e['m_edgeA']['next'] && (_0x32844e['m_edgeA']['next']['prev'] = _0x32844e['m_edgeA']['prev']), _0x32844e['m_edgeA'] == _0x60fb1d['m_jointList'] && (_0x60fb1d['m_jointList'] = _0x32844e['m_edgeA']['next']), _0x32844e['m_edgeA']['prev'] = null, _0x32844e['m_edgeA']['next'] = null, _0x32844e['m_edgeB']['prev'] && (_0x32844e['m_edgeB']['prev']['next'] = _0x32844e['m_edgeB']['next']), _0x32844e['m_edgeB']['next'] && (_0x32844e['m_edgeB']['next']['prev'] = _0x32844e['m_edgeB']['prev']), _0x32844e['m_edgeB'] == _0x2c8a2a['m_jointList'] && (_0x2c8a2a['m_jointList'] = _0x32844e['m_edgeB']['next']), _0x32844e['m_edgeB']['prev'] = null, _0x32844e['m_edgeB']['next'] = null, _0x358638['Destroy'](_0x32844e, null), --this['m_jointCount']; if (!0x1 == _0x2ec868) for (_0x32844e = _0x2c8a2a['GetContactList'](); _0x32844e; ) _0x32844e['other'] == _0x60fb1d && _0x32844e['contact']['FlagForFiltering'](), _0x32844e = _0x32844e['next']; } , _0x1c8cd9['prototype']['AddController'] = function(_0x3b180d) { return _0x3b180d['m_next'] = this['m_controllerList'], _0x3b180d['m_prev'] = null, this['m_controllerList'] = _0x3b180d, _0x3b180d['m_world'] = this, this['m_controllerCount']++, _0x3b180d; } , _0x1c8cd9['prototype']['RemoveController'] = function(_0x158dcc) { _0x158dcc['m_prev'] && (_0x158dcc['m_prev']['m_next'] = _0x158dcc['m_next']), _0x158dcc['m_next'] && (_0x158dcc['m_next']['m_prev'] = _0x158dcc['m_prev']), this['m_controllerList'] == _0x158dcc && (this['m_controllerList'] = _0x158dcc['m_next']), this['m_controllerCount']--; } , _0x1c8cd9['prototype']['CreateController'] = function(_0x200821) { if (_0x200821['m_world'] != this) throw Error('Controller\x20can\x20only\x20be\x20a\x20member\x20of\x20one\x20world'); return _0x200821['m_next'] = this['m_controllerList'], _0x200821['m_prev'] = null, this['m_controllerList'] && (this['m_controllerList']['m_prev'] = _0x200821), this['m_controllerList'] = _0x200821, ++this['m_controllerCount'], _0x200821['m_world'] = this, _0x200821; } , _0x1c8cd9['prototype']['DestroyController'] = function(_0x3336f4) { _0x3336f4['Clear'](), _0x3336f4['m_next'] && (_0x3336f4['m_next']['m_prev'] = _0x3336f4['m_prev']), _0x3336f4['m_prev'] && (_0x3336f4['m_prev']['m_next'] = _0x3336f4['m_next']), _0x3336f4 == this['m_controllerList'] && (this['m_controllerList'] = _0x3336f4['m_next']), --this['m_controllerCount']; } , _0x1c8cd9['prototype']['SetWarmStarting'] = function(_0x32148c) { _0x1c8cd9['m_warmStarting'] = _0x32148c; } , _0x1c8cd9['prototype']['SetContinuousPhysics'] = function(_0x9738b2) { _0x1c8cd9['m_continuousPhysics'] = _0x9738b2; } , _0x1c8cd9['prototype']['GetBodyCount'] = function() { return this['m_bodyCount']; } , _0x1c8cd9['prototype']['GetJointCount'] = function() { return this['m_jointCount']; } , _0x1c8cd9['prototype']['GetContactCount'] = function() { return this['m_contactCount']; } , _0x1c8cd9['prototype']['SetGravity'] = function(_0x59dfeb) { this['m_gravity'] = _0x59dfeb; } , _0x1c8cd9['prototype']['GetGravity'] = function() { return this['m_gravity']; } , _0x1c8cd9['prototype']['GetGroundBody'] = function() { return this['m_groundBody']; } , _0x1c8cd9['prototype']['Step'] = function(_0x47ac82, _0x5a121a, _0x28bd1f) { void 0x0 === _0x47ac82 && (_0x47ac82 = 0x0), void 0x0 === _0x5a121a && (_0x5a121a = 0x0), void 0x0 === _0x28bd1f && (_0x28bd1f = 0x0), this['m_flags'] & _0x1c8cd9['e_newFixture'] && (this['m_contactManager']['FindNewContacts'](), this['m_flags'] &= ~_0x1c8cd9['e_newFixture']), this['m_flags'] |= _0x1c8cd9['e_locked']; var _0x1162ea = _0x1c8cd9['s_timestep2']; _0x1162ea['dt'] = _0x47ac82, _0x1162ea['velocityIterations'] = _0x5a121a, _0x1162ea['positionIterations'] = _0x28bd1f, _0x1162ea['inv_dt'] = 0x0 < _0x47ac82 ? 0x1 / _0x47ac82 : 0x0, _0x1162ea['dtRatio'] = this['m_inv_dt0'] * _0x47ac82, _0x1162ea['warmStarting'] = _0x1c8cd9['m_warmStarting'], this['m_contactManager']['Collide'](), 0x0 < _0x1162ea['dt'] && this['Solve'](_0x1162ea), _0x1c8cd9['m_continuousPhysics'] && 0x0 < _0x1162ea['dt'] && this['SolveTOI'](_0x1162ea), 0x0 < _0x1162ea['dt'] && (this['m_inv_dt0'] = _0x1162ea['inv_dt']), this['m_flags'] &= ~_0x1c8cd9['e_locked']; } , _0x1c8cd9['prototype']['ClearForces'] = function() { for (var _0x1829aa = this['m_bodyList']; _0x1829aa; _0x1829aa = _0x1829aa['m_next']) _0x1829aa['m_force']['SetZero'](), _0x1829aa['m_torque'] = 0x0; } , _0x1c8cd9['prototype']['DrawDebugData'] = function() { if (null != this['m_debugDraw']) { this['m_debugDraw']['m_sprite']['graphics']['clear'](); var _0x4b96b8 = this['m_debugDraw']['GetFlags'](), _0xb46928, _0x5794f8, _0xacf6ce; new _0x54aa92(), new _0x54aa92(), new _0x54aa92(); var _0x1d7563; new _0x16b2f7(), new _0x16b2f7(), new _0x54aa92(), new _0x54aa92(), new _0x54aa92(), new _0x54aa92(); var _0x7f2698 = new _0x212faf(0x0,0x0,0x0); if (_0x4b96b8 & _0x134a3a['e_shapeBit']) for (_0xb46928 = this['m_bodyList']; _0xb46928; _0xb46928 = _0xb46928['m_next']) { _0x1d7563 = _0xb46928['m_xf']; for (_0x5794f8 = _0xb46928['GetFixtureList'](); _0x5794f8; _0x5794f8 = _0x5794f8['m_next']) _0xacf6ce = _0x5794f8['GetShape'](), !0x1 == _0xb46928['IsActive']() ? _0x7f2698['Set'](0.5, 0.5, 0.3) : _0xb46928['GetType']() == _0x3f9b69['b2_staticBody'] ? _0x7f2698['Set'](0.5, 0.9, 0.5) : _0xb46928['GetType']() == _0x3f9b69['b2_kinematicBody'] ? _0x7f2698['Set'](0.5, 0.5, 0.9) : !0x1 == _0xb46928['IsAwake']() ? _0x7f2698['Set'](0.6, 0.6, 0.6) : _0x7f2698['Set'](0.9, 0.7, 0.7), this['DrawShape'](_0xacf6ce, _0x1d7563, _0x7f2698); } if (_0x4b96b8 & _0x134a3a['e_jointBit']) for (_0xb46928 = this['m_jointList']; _0xb46928; _0xb46928 = _0xb46928['m_next']) this['DrawJoint'](_0xb46928); if (_0x4b96b8 & _0x134a3a['e_controllerBit']) for (_0xb46928 = this['m_controllerList']; _0xb46928; _0xb46928 = _0xb46928['m_next']) _0xb46928['Draw'](this['m_debugDraw']); if (_0x4b96b8 & _0x134a3a['e_pairBit']) { _0x7f2698['Set'](0.3, 0.9, 0.9); for (_0xb46928 = this['m_contactManager']['m_contactList']; _0xb46928; _0xb46928 = _0xb46928['GetNext']()) _0xacf6ce = _0xb46928['GetFixtureA'](), _0x5794f8 = _0xb46928['GetFixtureB'](), _0xacf6ce = _0xacf6ce['GetAABB']()['GetCenter'](), _0x5794f8 = _0x5794f8['GetAABB']()['GetCenter'](), this['m_debugDraw']['DrawSegment'](_0xacf6ce, _0x5794f8, _0x7f2698); } if (_0x4b96b8 & _0x134a3a['e_aabbBit']) { _0xacf6ce = this['m_contactManager']['m_broadPhase'], _0x1d7563 = [new _0x54aa92(), new _0x54aa92(), new _0x54aa92(), new _0x54aa92()]; for (_0xb46928 = this['m_bodyList']; _0xb46928; _0xb46928 = _0xb46928['GetNext']()) if (!0x1 != _0xb46928['IsActive']()) for (_0x5794f8 = _0xb46928['GetFixtureList'](); _0x5794f8; _0x5794f8 = _0x5794f8['GetNext']()) { var _0x5edbbc = _0xacf6ce['GetFatAABB'](_0x5794f8['m_proxy']); _0x1d7563[0x0]['Set'](_0x5edbbc['lowerBound']['x'], _0x5edbbc['lowerBound']['y']), _0x1d7563[0x1]['Set'](_0x5edbbc['upperBound']['x'], _0x5edbbc['lowerBound']['y']), _0x1d7563[0x2]['Set'](_0x5edbbc['upperBound']['x'], _0x5edbbc['upperBound']['y']), _0x1d7563[0x3]['Set'](_0x5edbbc['lowerBound']['x'], _0x5edbbc['upperBound']['y']), this['m_debugDraw']['DrawPolygon'](_0x1d7563, 0x4, _0x7f2698); } } if (_0x4b96b8 & _0x134a3a['e_centerOfMassBit']) for (_0xb46928 = this['m_bodyList']; _0xb46928; _0xb46928 = _0xb46928['m_next']) _0x1d7563 = _0x1c8cd9['s_xf'], _0x1d7563['R'] = _0xb46928['m_xf']['R'], _0x1d7563['position'] = _0xb46928['GetWorldCenter'](), this['m_debugDraw']['DrawTransform'](_0x1d7563); } } , _0x1c8cd9['prototype']['QueryAABB'] = function(_0x463527, _0x5b9b7a) { var _0x20f784 = this['m_contactManager']['m_broadPhase']; _0x20f784['Query'](function(_0xb8d815) { return _0x463527(_0x20f784['GetUserData'](_0xb8d815)); }, _0x5b9b7a); } , _0x1c8cd9['prototype']['QueryShape'] = function(_0x158be7, _0x444770, _0x2fe4ac) { void 0x0 === _0x2fe4ac && (_0x2fe4ac = null), null == _0x2fe4ac && (_0x2fe4ac = new _0x13b091(), _0x2fe4ac['SetIdentity']()); var _0x232162 = this['m_contactManager']['m_broadPhase'] , _0x433b6b = new _0x16b2f7(); _0x444770['ComputeAABB'](_0x433b6b, _0x2fe4ac), _0x232162['Query'](function(_0x4a2f51) { return _0x4a2f51 = _0x232162['GetUserData'](_0x4a2f51)instanceof _0x442c2b ? _0x232162['GetUserData'](_0x4a2f51) : null, _0x25dac4['TestOverlap'](_0x444770, _0x2fe4ac, _0x4a2f51['GetShape'](), _0x4a2f51['GetBody']()['GetTransform']()) ? _0x158be7(_0x4a2f51) : !0x0; }, _0x433b6b); } , _0x1c8cd9['prototype']['QueryPoint'] = function(_0x5e567b, _0x26491b) { var _0x28793e = this['m_contactManager']['m_broadPhase'] , _0x26c182 = new _0x16b2f7(); _0x26c182['lowerBound']['Set'](_0x26491b['x'] - _0x279919['b2_linearSlop'], _0x26491b['y'] - _0x279919['b2_linearSlop']), _0x26c182['upperBound']['Set'](_0x26491b['x'] + _0x279919['b2_linearSlop'], _0x26491b['y'] + _0x279919['b2_linearSlop']), _0x28793e['Query'](function(_0x901eaf) { return _0x901eaf = _0x28793e['GetUserData'](_0x901eaf)instanceof _0x442c2b ? _0x28793e['GetUserData'](_0x901eaf) : null, _0x901eaf['TestPoint'](_0x26491b) ? _0x5e567b(_0x901eaf) : !0x0; }, _0x26c182); } , _0x1c8cd9['prototype']['RayCast'] = function(_0x332faa, _0x1b1603, _0xb08481) { var _0xfbe91e = this['m_contactManager']['m_broadPhase'] , _0x206648 = new _0x5b43ef() , _0x1bfeb6 = new _0x21c1ab(_0x1b1603,_0xb08481); _0xfbe91e['RayCast'](function(_0xbe064a, _0xf56f38) { var _0x560fa9 = _0xfbe91e['GetUserData'](_0xf56f38) , _0x560fa9 = _0x560fa9 instanceof _0x442c2b ? _0x560fa9 : null; if (_0x560fa9['RayCast'](_0x206648, _0xbe064a)) { var _0x2680dc = _0x206648['fraction'] , _0x349ea4 = new _0x54aa92((0x1 - _0x2680dc) * _0x1b1603['x'] + _0x2680dc * _0xb08481['x'],(0x1 - _0x2680dc) * _0x1b1603['y'] + _0x2680dc * _0xb08481['y']); return _0x332faa(_0x560fa9, _0x349ea4, _0x206648['normal'], _0x2680dc); } return _0xbe064a['maxFraction']; }, _0x1bfeb6); } , _0x1c8cd9['prototype']['RayCastOne'] = function(_0x64dc60, _0xa59e41) { var _0x9cd71; return this['RayCast'](function(_0x5af1e1, _0x4e1c13, _0x2656ec, _0x49c315) { return void 0x0 === _0x49c315 && (_0x49c315 = 0x0), _0x9cd71 = _0x5af1e1, _0x49c315; }, _0x64dc60, _0xa59e41), _0x9cd71; } , _0x1c8cd9['prototype']['RayCastAll'] = function(_0x10ba54, _0x4ecf4c) { var _0x175e6e = new Vector(); return this['RayCast'](function(_0x540263) { return _0x175e6e[_0x175e6e['length']] = _0x540263, 0x1; }, _0x10ba54, _0x4ecf4c), _0x175e6e; } , _0x1c8cd9['prototype']['GetBodyList'] = function() { return this['m_bodyList']; } , _0x1c8cd9['prototype']['GetJointList'] = function() { return this['m_jointList']; } , _0x1c8cd9['prototype']['GetContactList'] = function() { return this['m_contactList']; } , _0x1c8cd9['prototype']['IsLocked'] = function() { return 0x0 < (this['m_flags'] & _0x1c8cd9['e_locked']); } , _0x1c8cd9['prototype']['Solve'] = function(_0x58fff4) { for (var _0xf2dcb7, _0x44b0c2 = this['m_controllerList']; _0x44b0c2; _0x44b0c2 = _0x44b0c2['m_next']) _0x44b0c2['Step'](_0x58fff4); _0x44b0c2 = this['m_island'], _0x44b0c2['Initialize'](this['m_bodyCount'], this['m_contactCount'], this['m_jointCount'], null, this['m_contactManager']['m_contactListener'], this['m_contactSolver']); for (_0xf2dcb7 = this['m_bodyList']; _0xf2dcb7; _0xf2dcb7 = _0xf2dcb7['m_next']) _0xf2dcb7['m_flags'] &= ~_0x3f9b69['e_islandFlag']; for (var _0x36affd = this['m_contactList']; _0x36affd; _0x36affd = _0x36affd['m_next']) _0x36affd['m_flags'] &= ~_0x4af089['e_islandFlag']; for (_0x36affd = this['m_jointList']; _0x36affd; _0x36affd = _0x36affd['m_next']) _0x36affd['m_islandFlag'] = !0x1; parseInt(this['m_bodyCount']); for (var _0x36affd = this['s_stack'], _0x5abfdd = this['m_bodyList']; _0x5abfdd; _0x5abfdd = _0x5abfdd['m_next']) if (!(_0x5abfdd['m_flags'] & _0x3f9b69['e_islandFlag']) && !(!0x1 == _0x5abfdd['IsAwake']() || !0x1 == _0x5abfdd['IsActive']()) && _0x5abfdd['GetType']() != _0x3f9b69['b2_staticBody']) { _0x44b0c2['Clear'](); var _0x25589f = 0x0; _0x36affd[_0x25589f++] = _0x5abfdd; for (_0x5abfdd['m_flags'] |= _0x3f9b69['e_islandFlag']; 0x0 < _0x25589f; ) if (_0xf2dcb7 = _0x36affd[--_0x25589f], _0x44b0c2['AddBody'](_0xf2dcb7), !0x1 == _0xf2dcb7['IsAwake']() && _0xf2dcb7['SetAwake'](!0x0), _0xf2dcb7['GetType']() != _0x3f9b69['b2_staticBody']) { for (var _0x52abf7, _0x102b64 = _0xf2dcb7['m_contactList']; _0x102b64; _0x102b64 = _0x102b64['next']) if (!(_0x102b64['contact']['m_flags'] & _0x4af089['e_islandFlag']) && !(!0x0 == _0x102b64['contact']['IsSensor']() || !0x1 == _0x102b64['contact']['IsEnabled']() || !0x1 == _0x102b64['contact']['IsTouching']())) _0x44b0c2['AddContact'](_0x102b64['contact']), _0x102b64['contact']['m_flags'] |= _0x4af089['e_islandFlag'], _0x52abf7 = _0x102b64['other'], _0x52abf7['m_flags'] & _0x3f9b69['e_islandFlag'] || (_0x36affd[_0x25589f++] = _0x52abf7, _0x52abf7['m_flags'] |= _0x3f9b69['e_islandFlag']); for (_0xf2dcb7 = _0xf2dcb7['m_jointList']; _0xf2dcb7; _0xf2dcb7 = _0xf2dcb7['next']) !0x0 != _0xf2dcb7['joint']['m_islandFlag'] && (_0x52abf7 = _0xf2dcb7['other'], !0x1 != _0x52abf7['IsActive']() && (_0x44b0c2['AddJoint'](_0xf2dcb7['joint']), _0xf2dcb7['joint']['m_islandFlag'] = !0x0, _0x52abf7['m_flags'] & _0x3f9b69['e_islandFlag'] || (_0x36affd[_0x25589f++] = _0x52abf7, _0x52abf7['m_flags'] |= _0x3f9b69['e_islandFlag']))); } _0x44b0c2['Solve'](_0x58fff4, this['m_gravity'], this['m_allowSleep']); for (_0x25589f = 0x0; _0x25589f < _0x44b0c2['m_bodyCount']; ++_0x25589f) _0xf2dcb7 = _0x44b0c2['m_bodies'][_0x25589f], _0xf2dcb7['GetType']() == _0x3f9b69['b2_staticBody'] && (_0xf2dcb7['m_flags'] &= ~_0x3f9b69['e_islandFlag']); } for (_0x25589f = 0x0; _0x25589f < _0x36affd['length'] && _0x36affd[_0x25589f]; ++_0x25589f) _0x36affd[_0x25589f] = null; for (_0xf2dcb7 = this['m_bodyList']; _0xf2dcb7; _0xf2dcb7 = _0xf2dcb7['m_next']) !0x1 == _0xf2dcb7['IsAwake']() || !0x1 == _0xf2dcb7['IsActive']() || _0xf2dcb7['GetType']() != _0x3f9b69['b2_staticBody'] && _0xf2dcb7['SynchronizeFixtures'](); this['m_contactManager']['FindNewContacts'](); } , _0x1c8cd9['prototype']['SolveTOI'] = function(_0x159083) { var _0x2dd532, _0x326189, _0x292368, _0x8f0f7d = this['m_island']; _0x8f0f7d['Initialize'](this['m_bodyCount'], _0x279919['b2_maxTOIContactsPerIsland'], _0x279919['b2_maxTOIJointsPerIsland'], null, this['m_contactManager']['m_contactListener'], this['m_contactSolver']); var _0x54e04e = _0x1c8cd9['s_queue']; for (_0x2dd532 = this['m_bodyList']; _0x2dd532; _0x2dd532 = _0x2dd532['m_next']) _0x2dd532['m_flags'] &= ~_0x3f9b69['e_islandFlag'], _0x2dd532['m_sweep']['t0'] = 0x0; for (_0x292368 = this['m_contactList']; _0x292368; _0x292368 = _0x292368['m_next']) _0x292368['m_flags'] &= ~(_0x4af089['e_toiFlag'] | _0x4af089['e_islandFlag']); for (_0x292368 = this['m_jointList']; _0x292368; _0x292368 = _0x292368['m_next']) _0x292368['m_islandFlag'] = !0x1; for (; ; ) { var _0x28a6d7 = null , _0x764163 = 0x1; for (_0x292368 = this['m_contactList']; _0x292368; _0x292368 = _0x292368['m_next']) if (!(!0x0 == _0x292368['IsSensor']() || !0x1 == _0x292368['IsEnabled']() || !0x1 == _0x292368['IsContinuous']())) { if (_0x292368['m_flags'] & _0x4af089['e_toiFlag']) _0x2dd532 = _0x292368['m_toi']; else { _0x2dd532 = _0x292368['m_fixtureA'], _0x326189 = _0x292368['m_fixtureB'], _0x2dd532 = _0x2dd532['m_body'], _0x326189 = _0x326189['m_body']; if ((_0x2dd532['GetType']() != _0x3f9b69['b2_dynamicBody'] || !0x1 == _0x2dd532['IsAwake']()) && (_0x326189['GetType']() != _0x3f9b69['b2_dynamicBody'] || !0x1 == _0x326189['IsAwake']())) continue; var _0x39c3dc = _0x2dd532['m_sweep']['t0']; _0x2dd532['m_sweep']['t0'] < _0x326189['m_sweep']['t0'] ? (_0x39c3dc = _0x326189['m_sweep']['t0'], _0x2dd532['m_sweep']['Advance'](_0x39c3dc)) : _0x326189['m_sweep']['t0'] < _0x2dd532['m_sweep']['t0'] && (_0x39c3dc = _0x2dd532['m_sweep']['t0'], _0x326189['m_sweep']['Advance'](_0x39c3dc)), _0x2dd532 = _0x292368['ComputeTOI'](_0x2dd532['m_sweep'], _0x326189['m_sweep']), _0x279919['b2Assert'](0x0 <= _0x2dd532 && 0x1 >= _0x2dd532), 0x0 < _0x2dd532 && 0x1 > _0x2dd532 && (_0x2dd532 = (0x1 - _0x2dd532) * _0x39c3dc + _0x2dd532, 0x1 < _0x2dd532 && (_0x2dd532 = 0x1)), _0x292368['m_toi'] = _0x2dd532, _0x292368['m_flags'] |= _0x4af089['e_toiFlag']; } Number['MIN_VALUE'] < _0x2dd532 && _0x2dd532 < _0x764163 && (_0x28a6d7 = _0x292368, _0x764163 = _0x2dd532); } if (null == _0x28a6d7 || 0x1 - 0x64 * Number['MIN_VALUE'] < _0x764163) break; _0x2dd532 = _0x28a6d7['m_fixtureA'], _0x326189 = _0x28a6d7['m_fixtureB'], _0x2dd532 = _0x2dd532['m_body'], _0x326189 = _0x326189['m_body'], _0x1c8cd9['s_backupA']['Set'](_0x2dd532['m_sweep']), _0x1c8cd9['s_backupB']['Set'](_0x326189['m_sweep']), _0x2dd532['Advance'](_0x764163), _0x326189['Advance'](_0x764163), _0x28a6d7['Update'](this['m_contactManager']['m_contactListener']), _0x28a6d7['m_flags'] &= ~_0x4af089['e_toiFlag']; if (!0x0 == _0x28a6d7['IsSensor']() || !0x1 == _0x28a6d7['IsEnabled']()) _0x2dd532['m_sweep']['Set'](_0x1c8cd9['s_backupA']), _0x326189['m_sweep']['Set'](_0x1c8cd9['s_backupB']), _0x2dd532['SynchronizeTransform'](), _0x326189['SynchronizeTransform'](); else { if (!0x1 != _0x28a6d7['IsTouching']()) { _0x2dd532['GetType']() != _0x3f9b69['b2_dynamicBody'] && (_0x2dd532 = _0x326189), _0x8f0f7d['Clear'](), _0x28a6d7 = _0x292368 = 0x0, _0x54e04e[_0x292368 + _0x28a6d7++] = _0x2dd532; for (_0x2dd532['m_flags'] |= _0x3f9b69['e_islandFlag']; 0x0 < _0x28a6d7; ) if (_0x2dd532 = _0x54e04e[_0x292368++], --_0x28a6d7, _0x8f0f7d['AddBody'](_0x2dd532), !0x1 == _0x2dd532['IsAwake']() && _0x2dd532['SetAwake'](!0x0), _0x2dd532['GetType']() == _0x3f9b69['b2_dynamicBody']) { for (_0x326189 = _0x2dd532['m_contactList']; _0x326189 && _0x8f0f7d['m_contactCount'] != _0x8f0f7d['m_contactCapacity']; _0x326189 = _0x326189['next']) if (!(_0x326189['contact']['m_flags'] & _0x4af089['e_islandFlag']) && !(!0x0 == _0x326189['contact']['IsSensor']() || !0x1 == _0x326189['contact']['IsEnabled']() || !0x1 == _0x326189['contact']['IsTouching']())) _0x8f0f7d['AddContact'](_0x326189['contact']), _0x326189['contact']['m_flags'] |= _0x4af089['e_islandFlag'], _0x39c3dc = _0x326189['other'], _0x39c3dc['m_flags'] & _0x3f9b69['e_islandFlag'] || (_0x39c3dc['GetType']() != _0x3f9b69['b2_staticBody'] && (_0x39c3dc['Advance'](_0x764163), _0x39c3dc['SetAwake'](!0x0)), _0x54e04e[_0x292368 + _0x28a6d7] = _0x39c3dc, ++_0x28a6d7, _0x39c3dc['m_flags'] |= _0x3f9b69['e_islandFlag']); for (_0x2dd532 = _0x2dd532['m_jointList']; _0x2dd532; _0x2dd532 = _0x2dd532['next']) _0x8f0f7d['m_jointCount'] != _0x8f0f7d['m_jointCapacity'] && !0x0 != _0x2dd532['joint']['m_islandFlag'] && (_0x39c3dc = _0x2dd532['other'], !0x1 != _0x39c3dc['IsActive']() && (_0x8f0f7d['AddJoint'](_0x2dd532['joint']), _0x2dd532['joint']['m_islandFlag'] = !0x0, _0x39c3dc['m_flags'] & _0x3f9b69['e_islandFlag'] || (_0x39c3dc['GetType']() != _0x3f9b69['b2_staticBody'] && (_0x39c3dc['Advance'](_0x764163), _0x39c3dc['SetAwake'](!0x0)), _0x54e04e[_0x292368 + _0x28a6d7] = _0x39c3dc, ++_0x28a6d7, _0x39c3dc['m_flags'] |= _0x3f9b69['e_islandFlag']))); } _0x292368 = _0x1c8cd9['s_timestep'], _0x292368['warmStarting'] = !0x1, _0x292368['dt'] = (0x1 - _0x764163) * _0x159083['dt'], _0x292368['inv_dt'] = 0x1 / _0x292368['dt'], _0x292368['dtRatio'] = 0x0, _0x292368['velocityIterations'] = _0x159083['velocityIterations'], _0x292368['positionIterations'] = _0x159083['positionIterations'], _0x8f0f7d['SolveTOI'](_0x292368); for (_0x764163 = _0x764163 = 0x0; _0x764163 < _0x8f0f7d['m_bodyCount']; ++_0x764163) if (_0x2dd532 = _0x8f0f7d['m_bodies'][_0x764163], _0x2dd532['m_flags'] &= ~_0x3f9b69['e_islandFlag'], !0x1 != _0x2dd532['IsAwake']() && _0x2dd532['GetType']() == _0x3f9b69['b2_dynamicBody']) { _0x2dd532['SynchronizeFixtures'](); for (_0x326189 = _0x2dd532['m_contactList']; _0x326189; _0x326189 = _0x326189['next']) _0x326189['contact']['m_flags'] &= ~_0x4af089['e_toiFlag']; } for (_0x764163 = 0x0; _0x764163 < _0x8f0f7d['m_contactCount']; ++_0x764163) _0x292368 = _0x8f0f7d['m_contacts'][_0x764163], _0x292368['m_flags'] &= ~(_0x4af089['e_toiFlag'] | _0x4af089['e_islandFlag']); for (_0x764163 = 0x0; _0x764163 < _0x8f0f7d['m_jointCount']; ++_0x764163) _0x292368 = _0x8f0f7d['m_joints'][_0x764163], _0x292368['m_islandFlag'] = !0x1; this['m_contactManager']['FindNewContacts'](); } } } } , _0x1c8cd9['prototype']['DrawJoint'] = function(_0x170794) { var _0xcae71 = _0x170794['GetBodyA']() , _0xc99c84 = _0x170794['GetBodyB']() , _0x1ab4dc = _0xcae71['m_xf']['position'] , _0xd1d012 = _0xc99c84['m_xf']['position'] , _0x4831c8 = _0x170794['GetAnchorA']() , _0x5be10e = _0x170794['GetAnchorB']() , _0x46b721 = _0x1c8cd9['s_jointColor']; switch (_0x170794['m_type']) { case _0x358638['e_distanceJoint']: this['m_debugDraw']['DrawSegment'](_0x4831c8, _0x5be10e, _0x46b721); break; case _0x358638['e_pulleyJoint']: _0xcae71 = _0x170794 instanceof _0x4f556e ? _0x170794 : null, _0x170794 = _0xcae71['GetGroundAnchorA'](), _0xcae71 = _0xcae71['GetGroundAnchorB'](), this['m_debugDraw']['DrawSegment'](_0x170794, _0x4831c8, _0x46b721), this['m_debugDraw']['DrawSegment'](_0xcae71, _0x5be10e, _0x46b721), this['m_debugDraw']['DrawSegment'](_0x170794, _0xcae71, _0x46b721); break; case _0x358638['e_mouseJoint']: this['m_debugDraw']['DrawSegment'](_0x4831c8, _0x5be10e, _0x46b721); break; default: _0xcae71 != this['m_groundBody'] && this['m_debugDraw']['DrawSegment'](_0x1ab4dc, _0x4831c8, _0x46b721), this['m_debugDraw']['DrawSegment'](_0x4831c8, _0x5be10e, _0x46b721), _0xc99c84 != this['m_groundBody'] && this['m_debugDraw']['DrawSegment'](_0xd1d012, _0x5be10e, _0x46b721); } } , _0x1c8cd9['prototype']['DrawShape'] = function(_0x5771ce, _0x597fc8, _0x2926ed) { switch (_0x5771ce['m_type']) { case _0x25dac4['e_circleShape']: var _0xd844ff = _0x5771ce instanceof _0x3f2c28 ? _0x5771ce : null; this['m_debugDraw']['DrawSolidCircle'](_0x58f3af['MulX'](_0x597fc8, _0xd844ff['m_p']), _0xd844ff['m_radius'], _0x597fc8['R']['col1'], _0x2926ed); break; case _0x25dac4['e_polygonShape']: _0xd844ff = _0x5771ce instanceof _0x311dfc ? _0x5771ce : null, _0x5771ce = parseInt(_0xd844ff['GetVertexCount']()); for (var _0x51d130 = _0xd844ff['GetVertices'](), _0x2a0288 = new Vector(_0x5771ce), _0xd844ff = 0x0; _0xd844ff < _0x5771ce; ++_0xd844ff) _0x2a0288[_0xd844ff] = _0x58f3af['MulX'](_0x597fc8, _0x51d130[_0xd844ff]); this['m_debugDraw']['DrawSolidPolygon'](_0x2a0288, _0x5771ce, _0x2926ed); break; case _0x25dac4['e_edgeShape']: _0xd844ff = _0x5771ce instanceof _0x5efb81 ? _0x5771ce : null, this['m_debugDraw']['DrawSegment'](_0x58f3af['MulX'](_0x597fc8, _0xd844ff['GetVertex1']()), _0x58f3af['MulX'](_0x597fc8, _0xd844ff['GetVertex2']()), _0x2926ed); } } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['b2World']['s_timestep2'] = new _0x5c54c3(), Box2D['Dynamics']['b2World']['s_xf'] = new _0x13b091(), Box2D['Dynamics']['b2World']['s_backupA'] = new _0x42b1a3(), Box2D['Dynamics']['b2World']['s_backupB'] = new _0x42b1a3(), Box2D['Dynamics']['b2World']['s_timestep'] = new _0x5c54c3(), Box2D['Dynamics']['b2World']['s_queue'] = new Vector(), Box2D['Dynamics']['b2World']['s_jointColor'] = new _0x212faf(0.5,0.8,0.8), Box2D['Dynamics']['b2World']['e_newFixture'] = 0x1, Box2D['Dynamics']['b2World']['e_locked'] = 0x2; }); }(), function() { var _0x3a424a = Box2D['Collision']['Shapes']['b2CircleShape'] , _0x439deb = Box2D['Collision']['Shapes']['b2EdgeShape'] , _0x1e8e34 = Box2D['Collision']['Shapes']['b2PolygonShape'] , _0x4609e9 = Box2D['Collision']['Shapes']['b2Shape'] , _0x144a61 = Box2D['Dynamics']['Contacts']['b2CircleContact'] , _0x39365c = Box2D['Dynamics']['Contacts']['b2Contact'] , _0x1bc68f = Box2D['Dynamics']['Contacts']['b2ContactConstraint'] , _0x7cce28 = Box2D['Dynamics']['Contacts']['b2ContactConstraintPoint'] , _0xa042fd = Box2D['Dynamics']['Contacts']['b2ContactEdge'] , _0x1ea6bc = Box2D['Dynamics']['Contacts']['b2ContactFactory'] , _0x557b88 = Box2D['Dynamics']['Contacts']['b2ContactRegister'] , _0x30f458 = Box2D['Dynamics']['Contacts']['b2ContactResult'] , _0x4ad5a0 = Box2D['Dynamics']['Contacts']['b2ContactSolver'] , _0x5022be = Box2D['Dynamics']['Contacts']['b2EdgeAndCircleContact'] , _0x24b804 = Box2D['Dynamics']['Contacts']['b2NullContact'] , _0x307168 = Box2D['Dynamics']['Contacts']['b2PolyAndCircleContact'] , _0x3a7c7f = Box2D['Dynamics']['Contacts']['b2PolyAndEdgeContact'] , _0x1a7725 = Box2D['Dynamics']['Contacts']['b2PolygonContact'] , _0x36b402 = Box2D['Dynamics']['Contacts']['b2PositionSolverManifold'] , _0x174d71 = Box2D['Dynamics']['b2Body'] , _0x28f95a = Box2D['Dynamics']['b2TimeStep'] , _0x30ab1a = Box2D['Common']['b2Settings'] , _0x5d456a = Box2D['Common']['Math']['b2Mat22'] , _0x1369eb = Box2D['Common']['Math']['b2Math'] , _0x1541e5 = Box2D['Common']['Math']['b2Vec2'] , _0x238177 = Box2D['Collision']['b2Collision'] , _0x8ffcad = Box2D['Collision']['b2ContactID'] , _0x29af51 = Box2D['Collision']['b2Manifold'] , _0x419190 = Box2D['Collision']['b2TimeOfImpact'] , _0x27533e = Box2D['Collision']['b2TOIInput'] , _0x2efe8d = Box2D['Collision']['b2WorldManifold']; Box2D['inherit'](_0x144a61, Box2D['Dynamics']['Contacts']['b2Contact']), _0x144a61['prototype']['__super'] = Box2D['Dynamics']['Contacts']['b2Contact']['prototype'], _0x144a61['b2CircleContact'] = function() { Box2D['Dynamics']['Contacts']['b2Contact']['b2Contact']['apply'](this, arguments); } , _0x144a61['Create'] = function() { return new _0x144a61(); } , _0x144a61['Destroy'] = function() {} , _0x144a61['prototype']['Reset'] = function(_0x12f146, _0x1936b7) { this['__super']['Reset']['call'](this, _0x12f146, _0x1936b7); } , _0x144a61['prototype']['Evaluate'] = function() { var _0x1866a8 = this['m_fixtureA']['GetBody']() , _0x279422 = this['m_fixtureB']['GetBody'](); _0x238177['CollideCircles'](this['m_manifold'], this['m_fixtureA']['GetShape']()instanceof _0x3a424a ? this['m_fixtureA']['GetShape']() : null, _0x1866a8['m_xf'], this['m_fixtureB']['GetShape']()instanceof _0x3a424a ? this['m_fixtureB']['GetShape']() : null, _0x279422['m_xf']); } , _0x39365c['b2Contact'] = function() { this['m_nodeA'] = new _0xa042fd(), this['m_nodeB'] = new _0xa042fd(), this['m_manifold'] = new _0x29af51(), this['m_oldManifold'] = new _0x29af51(); } , _0x39365c['prototype']['GetManifold'] = function() { return this['m_manifold']; } , _0x39365c['prototype']['GetWorldManifold'] = function(_0x18ad1c) { var _0x5919d5 = this['m_fixtureA']['GetBody']() , _0x2a173e = this['m_fixtureB']['GetBody']() , _0x5cfeee = this['m_fixtureA']['GetShape']() , _0x2edb44 = this['m_fixtureB']['GetShape'](); _0x18ad1c['Initialize'](this['m_manifold'], _0x5919d5['GetTransform'](), _0x5cfeee['m_radius'], _0x2a173e['GetTransform'](), _0x2edb44['m_radius']); } , _0x39365c['prototype']['IsTouching'] = function() { return (this['m_flags'] & _0x39365c['e_touchingFlag']) == _0x39365c['e_touchingFlag']; } , _0x39365c['prototype']['IsContinuous'] = function() { return (this['m_flags'] & _0x39365c['e_continuousFlag']) == _0x39365c['e_continuousFlag']; } , _0x39365c['prototype']['SetSensor'] = function(_0x282943) { this['m_flags'] = _0x282943 ? this['m_flags'] | _0x39365c['e_sensorFlag'] : this['m_flags'] & ~_0x39365c['e_sensorFlag']; } , _0x39365c['prototype']['IsSensor'] = function() { return (this['m_flags'] & _0x39365c['e_sensorFlag']) == _0x39365c['e_sensorFlag']; } , _0x39365c['prototype']['SetEnabled'] = function(_0x3b4f58) { this['m_flags'] = _0x3b4f58 ? this['m_flags'] | _0x39365c['e_enabledFlag'] : this['m_flags'] & ~_0x39365c['e_enabledFlag']; } , _0x39365c['prototype']['IsEnabled'] = function() { return (this['m_flags'] & _0x39365c['e_enabledFlag']) == _0x39365c['e_enabledFlag']; } , _0x39365c['prototype']['GetNext'] = function() { return this['m_next']; } , _0x39365c['prototype']['GetFixtureA'] = function() { return this['m_fixtureA']; } , _0x39365c['prototype']['GetFixtureB'] = function() { return this['m_fixtureB']; } , _0x39365c['prototype']['FlagForFiltering'] = function() { this['m_flags'] |= _0x39365c['e_filterFlag']; } , _0x39365c['prototype']['b2Contact'] = function() {} , _0x39365c['prototype']['Reset'] = function(_0x44bcb3, _0x56441a) { void 0x0 === _0x44bcb3 && (_0x44bcb3 = null), void 0x0 === _0x56441a && (_0x56441a = null), this['m_flags'] = _0x39365c['e_enabledFlag']; if (!_0x44bcb3 || !_0x56441a) this['m_fixtureB'] = this['m_fixtureA'] = null; else { if (_0x44bcb3['IsSensor']() || _0x56441a['IsSensor']()) this['m_flags'] |= _0x39365c['e_sensorFlag']; var _0x15ee46 = _0x44bcb3['GetBody']() , _0x4ecdb0 = _0x56441a['GetBody'](); if (_0x15ee46['GetType']() != _0x174d71['b2_dynamicBody'] || _0x15ee46['IsBullet']() || _0x4ecdb0['GetType']() != _0x174d71['b2_dynamicBody'] || _0x4ecdb0['IsBullet']()) this['m_flags'] |= _0x39365c['e_continuousFlag']; this['m_fixtureA'] = _0x44bcb3, this['m_fixtureB'] = _0x56441a, this['m_manifold']['m_pointCount'] = 0x0, this['m_next'] = this['m_prev'] = null, this['m_nodeA']['contact'] = null, this['m_nodeA']['prev'] = null, this['m_nodeA']['next'] = null, this['m_nodeA']['other'] = null, this['m_nodeB']['contact'] = null, this['m_nodeB']['prev'] = null, this['m_nodeB']['next'] = null, this['m_nodeB']['other'] = null; } } , _0x39365c['prototype']['Update'] = function(_0x33b820) { var _0x91e721 = this['m_oldManifold']; this['m_oldManifold'] = this['m_manifold'], this['m_manifold'] = _0x91e721, this['m_flags'] |= _0x39365c['e_enabledFlag']; var _0x48e8fd = !0x1 , _0x91e721 = (this['m_flags'] & _0x39365c['e_touchingFlag']) == _0x39365c['e_touchingFlag'] , _0x29b5e9 = this['m_fixtureA']['m_body'] , _0x309d16 = this['m_fixtureB']['m_body'] , _0x5a840a = this['m_fixtureA']['m_aabb']['TestOverlap'](this['m_fixtureB']['m_aabb']); if (this['m_flags'] & _0x39365c['e_sensorFlag']) _0x5a840a && (_0x48e8fd = this['m_fixtureA']['GetShape'](), _0x5a840a = this['m_fixtureB']['GetShape'](), _0x29b5e9 = _0x29b5e9['GetTransform'](), _0x309d16 = _0x309d16['GetTransform'](), _0x48e8fd = _0x4609e9['TestOverlap'](_0x48e8fd, _0x29b5e9, _0x5a840a, _0x309d16)), this['m_manifold']['m_pointCount'] = 0x0; else { this['m_flags'] = _0x29b5e9['GetType']() != _0x174d71['b2_dynamicBody'] || _0x29b5e9['IsBullet']() || _0x309d16['GetType']() != _0x174d71['b2_dynamicBody'] || _0x309d16['IsBullet']() ? this['m_flags'] | _0x39365c['e_continuousFlag'] : this['m_flags'] & ~_0x39365c['e_continuousFlag']; if (_0x5a840a) { this['Evaluate'](), _0x48e8fd = 0x0 < this['m_manifold']['m_pointCount']; for (_0x5a840a = 0x0; _0x5a840a < this['m_manifold']['m_pointCount']; ++_0x5a840a) { var _0x4dc9a3 = this['m_manifold']['m_points'][_0x5a840a]; _0x4dc9a3['m_normalImpulse'] = 0x0, _0x4dc9a3['m_tangentImpulse'] = 0x0; for (var _0x244048 = _0x4dc9a3['m_id'], _0x2ad022 = 0x0; _0x2ad022 < this['m_oldManifold']['m_pointCount']; ++_0x2ad022) { var _0x5398ae = this['m_oldManifold']['m_points'][_0x2ad022]; if (_0x5398ae['m_id']['key'] == _0x244048['key']) { _0x4dc9a3['m_normalImpulse'] = _0x5398ae['m_normalImpulse'], _0x4dc9a3['m_tangentImpulse'] = _0x5398ae['m_tangentImpulse']; break; } } } } else this['m_manifold']['m_pointCount'] = 0x0; _0x48e8fd != _0x91e721 && (_0x29b5e9['SetAwake'](!0x0), _0x309d16['SetAwake'](!0x0)); } this['m_flags'] = _0x48e8fd ? this['m_flags'] | _0x39365c['e_touchingFlag'] : this['m_flags'] & ~_0x39365c['e_touchingFlag'], !0x1 == _0x91e721 && !0x0 == _0x48e8fd && _0x33b820['BeginContact'](this), !0x0 == _0x91e721 && !0x1 == _0x48e8fd && _0x33b820['EndContact'](this), 0x0 == (this['m_flags'] & _0x39365c['e_sensorFlag']) && _0x33b820['PreSolve'](this, this['m_oldManifold']); } , _0x39365c['prototype']['Evaluate'] = function() {} , _0x39365c['prototype']['ComputeTOI'] = function(_0x4a0f0e, _0xfd96cc) { return _0x39365c['s_input']['proxyA']['Set'](this['m_fixtureA']['GetShape']()), _0x39365c['s_input']['proxyB']['Set'](this['m_fixtureB']['GetShape']()), _0x39365c['s_input']['sweepA'] = _0x4a0f0e, _0x39365c['s_input']['sweepB'] = _0xfd96cc, _0x39365c['s_input']['tolerance'] = _0x30ab1a['b2_linearSlop'], _0x419190['TimeOfImpact'](_0x39365c['s_input']); } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['Contacts']['b2Contact']['e_sensorFlag'] = 0x1, Box2D['Dynamics']['Contacts']['b2Contact']['e_continuousFlag'] = 0x2, Box2D['Dynamics']['Contacts']['b2Contact']['e_islandFlag'] = 0x4, Box2D['Dynamics']['Contacts']['b2Contact']['e_toiFlag'] = 0x8, Box2D['Dynamics']['Contacts']['b2Contact']['e_touchingFlag'] = 0x10, Box2D['Dynamics']['Contacts']['b2Contact']['e_enabledFlag'] = 0x20, Box2D['Dynamics']['Contacts']['b2Contact']['e_filterFlag'] = 0x40, Box2D['Dynamics']['Contacts']['b2Contact']['s_input'] = new _0x27533e(); }), _0x1bc68f['b2ContactConstraint'] = function() { this['localPlaneNormal'] = new _0x1541e5(), this['localPoint'] = new _0x1541e5(), this['normal'] = new _0x1541e5(), this['normalMass'] = new _0x5d456a(), this['K'] = new _0x5d456a(); } , _0x1bc68f['prototype']['b2ContactConstraint'] = function() { this['points'] = new Vector(_0x30ab1a['b2_maxManifoldPoints']); for (var _0x898e35 = 0x0; _0x898e35 < _0x30ab1a['b2_maxManifoldPoints']; _0x898e35++) this['points'][_0x898e35] = new _0x7cce28(); } , _0x7cce28['b2ContactConstraintPoint'] = function() { this['localPoint'] = new _0x1541e5(), this['rA'] = new _0x1541e5(), this['rB'] = new _0x1541e5(); } , _0xa042fd['b2ContactEdge'] = function() {} , _0x1ea6bc['b2ContactFactory'] = function() {} , _0x1ea6bc['prototype']['b2ContactFactory'] = function(_0x7db243) { this['m_allocator'] = _0x7db243, this['InitializeRegisters'](); } , _0x1ea6bc['prototype']['AddType'] = function(_0x2ddcc5, _0x5d6da4, _0x344190, _0x480cf2) { void 0x0 === _0x344190 && (_0x344190 = 0x0), void 0x0 === _0x480cf2 && (_0x480cf2 = 0x0), this['m_registers'][_0x344190][_0x480cf2]['createFcn'] = _0x2ddcc5, this['m_registers'][_0x344190][_0x480cf2]['destroyFcn'] = _0x5d6da4, this['m_registers'][_0x344190][_0x480cf2]['primary'] = !0x0, _0x344190 != _0x480cf2 && (this['m_registers'][_0x480cf2][_0x344190]['createFcn'] = _0x2ddcc5, this['m_registers'][_0x480cf2][_0x344190]['destroyFcn'] = _0x5d6da4, this['m_registers'][_0x480cf2][_0x344190]['primary'] = !0x1); } , _0x1ea6bc['prototype']['InitializeRegisters'] = function() { this['m_registers'] = new Vector(_0x4609e9['e_shapeTypeCount']); for (var _0x519f09 = 0x0; _0x519f09 < _0x4609e9['e_shapeTypeCount']; _0x519f09++) { this['m_registers'][_0x519f09] = new Vector(_0x4609e9['e_shapeTypeCount']); for (var _0x12df6a = 0x0; _0x12df6a < _0x4609e9['e_shapeTypeCount']; _0x12df6a++) this['m_registers'][_0x519f09][_0x12df6a] = new _0x557b88(); } this['AddType'](_0x144a61['Create'], _0x144a61['Destroy'], _0x4609e9['e_circleShape'], _0x4609e9['e_circleShape']), this['AddType'](_0x307168['Create'], _0x307168['Destroy'], _0x4609e9['e_polygonShape'], _0x4609e9['e_circleShape']), this['AddType'](_0x1a7725['Create'], _0x1a7725['Destroy'], _0x4609e9['e_polygonShape'], _0x4609e9['e_polygonShape']), this['AddType'](_0x5022be['Create'], _0x5022be['Destroy'], _0x4609e9['e_edgeShape'], _0x4609e9['e_circleShape']), this['AddType'](_0x3a7c7f['Create'], _0x3a7c7f['Destroy'], _0x4609e9['e_polygonShape'], _0x4609e9['e_edgeShape']); } , _0x1ea6bc['prototype']['Create'] = function(_0x5ce184, _0x5f23e0) { var _0x5f558f = parseInt(_0x5ce184['GetType']()) , _0x2901fb = parseInt(_0x5f23e0['GetType']()) , _0x5f558f = this['m_registers'][_0x5f558f][_0x2901fb]; if (_0x5f558f['pool']) return _0x2901fb = _0x5f558f['pool'], _0x5f558f['pool'] = _0x2901fb['m_next'], _0x5f558f['poolCount']--, _0x2901fb['Reset'](_0x5ce184, _0x5f23e0), _0x2901fb; return _0x2901fb = _0x5f558f['createFcn'], null != _0x2901fb ? (_0x5f558f['primary'] ? (_0x2901fb = _0x2901fb(this['m_allocator']), _0x2901fb['Reset'](_0x5ce184, _0x5f23e0)) : (_0x2901fb = _0x2901fb(this['m_allocator']), _0x2901fb['Reset'](_0x5f23e0, _0x5ce184)), _0x2901fb) : null; } , _0x1ea6bc['prototype']['Destroy'] = function(_0x5bc7da) { 0x0 < _0x5bc7da['m_manifold']['m_pointCount'] && (_0x5bc7da['m_fixtureA']['m_body']['SetAwake'](!0x0), _0x5bc7da['m_fixtureB']['m_body']['SetAwake'](!0x0)); var _0x37a9e7 = parseInt(_0x5bc7da['m_fixtureA']['GetType']()) , _0x4f524f = parseInt(_0x5bc7da['m_fixtureB']['GetType']()) , _0x37a9e7 = this['m_registers'][_0x37a9e7][_0x4f524f]; _0x37a9e7['poolCount']++, _0x5bc7da['m_next'] = _0x37a9e7['pool'], _0x37a9e7['pool'] = _0x5bc7da, _0x37a9e7 = _0x37a9e7['destroyFcn'], _0x37a9e7(_0x5bc7da, this['m_allocator']); } , _0x557b88['b2ContactRegister'] = function() {} , _0x30f458['b2ContactResult'] = function() { this['position'] = new _0x1541e5(), this['normal'] = new _0x1541e5(), this['id'] = new _0x8ffcad(); } , _0x4ad5a0['b2ContactSolver'] = function() { this['m_step'] = new _0x28f95a(), this['m_constraints'] = new Vector(); } , _0x4ad5a0['prototype']['b2ContactSolver'] = function() {} , _0x4ad5a0['prototype']['Initialize'] = function(_0x4d52ee, _0x1cbd9c, _0x3770ff, _0x335abb) { void 0x0 === _0x3770ff && (_0x3770ff = 0x0); var _0x140cb2; this['m_step']['Set'](_0x4d52ee), this['m_allocator'] = _0x335abb; for (this['m_constraintCount'] = _0x3770ff; this['m_constraints']['length'] < this['m_constraintCount']; ) this['m_constraints'][this['m_constraints']['length']] = new _0x1bc68f(); for (_0x4d52ee = 0x0; _0x4d52ee < _0x3770ff; ++_0x4d52ee) { _0x140cb2 = _0x1cbd9c[_0x4d52ee], _0x335abb = _0x140cb2['m_fixtureA']; var _0x4fe6f8 = _0x140cb2['m_fixtureB'] , _0x22d114 = _0x335abb['m_shape']['m_radius'] , _0x20ad3f = _0x4fe6f8['m_shape']['m_radius'] , _0x257771 = _0x335abb['m_body'] , _0x59f64e = _0x4fe6f8['m_body'] , _0x2cddc1 = _0x140cb2['GetManifold']() , _0x2c589c = _0x30ab1a['b2MixFriction'](_0x335abb['GetFriction'](), _0x4fe6f8['GetFriction']()) , _0x7b683f = _0x30ab1a['b2MixRestitution'](_0x335abb['GetRestitution'](), _0x4fe6f8['GetRestitution']()) , _0x4f4d95 = _0x257771['m_linearVelocity']['x'] , _0x1d36bb = _0x257771['m_linearVelocity']['y'] , _0x1f7440 = _0x59f64e['m_linearVelocity']['x'] , _0x56652b = _0x59f64e['m_linearVelocity']['y'] , _0x5dd4f5 = _0x257771['m_angularVelocity'] , _0x3b703c = _0x59f64e['m_angularVelocity']; _0x30ab1a['b2Assert'](0x0 < _0x2cddc1['m_pointCount']), _0x4ad5a0['s_worldManifold']['Initialize'](_0x2cddc1, _0x257771['m_xf'], _0x22d114, _0x59f64e['m_xf'], _0x20ad3f), _0x4fe6f8 = _0x4ad5a0['s_worldManifold']['m_normal']['x'], _0x140cb2 = _0x4ad5a0['s_worldManifold']['m_normal']['y'], _0x335abb = this['m_constraints'][_0x4d52ee], _0x335abb['bodyA'] = _0x257771, _0x335abb['bodyB'] = _0x59f64e, _0x335abb['manifold'] = _0x2cddc1, _0x335abb['normal']['x'] = _0x4fe6f8, _0x335abb['normal']['y'] = _0x140cb2, _0x335abb['pointCount'] = _0x2cddc1['m_pointCount'], _0x335abb['friction'] = _0x2c589c, _0x335abb['restitution'] = _0x7b683f, _0x335abb['localPlaneNormal']['x'] = _0x2cddc1['m_localPlaneNormal']['x'], _0x335abb['localPlaneNormal']['y'] = _0x2cddc1['m_localPlaneNormal']['y'], _0x335abb['localPoint']['x'] = _0x2cddc1['m_localPoint']['x'], _0x335abb['localPoint']['y'] = _0x2cddc1['m_localPoint']['y'], _0x335abb['radius'] = _0x22d114 + _0x20ad3f, _0x335abb['type'] = _0x2cddc1['m_type']; for (_0x22d114 = 0x0; _0x22d114 < _0x335abb['pointCount']; ++_0x22d114) { _0x2c589c = _0x2cddc1['m_points'][_0x22d114], _0x20ad3f = _0x335abb['points'][_0x22d114], _0x20ad3f['normalImpulse'] = _0x2c589c['m_normalImpulse'], _0x20ad3f['tangentImpulse'] = _0x2c589c['m_tangentImpulse'], _0x20ad3f['localPoint']['SetV'](_0x2c589c['m_localPoint']); var _0x2c589c = _0x20ad3f['rA']['x'] = _0x4ad5a0['s_worldManifold']['m_points'][_0x22d114]['x'] - _0x257771['m_sweep']['c']['x'] , _0x7b683f = _0x20ad3f['rA']['y'] = _0x4ad5a0['s_worldManifold']['m_points'][_0x22d114]['y'] - _0x257771['m_sweep']['c']['y'] , _0x33c6ef = _0x20ad3f['rB']['x'] = _0x4ad5a0['s_worldManifold']['m_points'][_0x22d114]['x'] - _0x59f64e['m_sweep']['c']['x'] , _0x4dcf52 = _0x20ad3f['rB']['y'] = _0x4ad5a0['s_worldManifold']['m_points'][_0x22d114]['y'] - _0x59f64e['m_sweep']['c']['y'] , _0x37413e = _0x2c589c * _0x140cb2 - _0x7b683f * _0x4fe6f8 , _0x3c3d47 = _0x33c6ef * _0x140cb2 - _0x4dcf52 * _0x4fe6f8 , _0x37413e = _0x37413e * _0x37413e , _0x3c3d47 = _0x3c3d47 * _0x3c3d47; _0x20ad3f['normalMass'] = 0x1 / (_0x257771['m_invMass'] + _0x59f64e['m_invMass'] + _0x257771['m_invI'] * _0x37413e + _0x59f64e['m_invI'] * _0x3c3d47); var _0x196c33 = _0x257771['m_mass'] * _0x257771['m_invMass'] + _0x59f64e['m_mass'] * _0x59f64e['m_invMass'] , _0x196c33 = _0x196c33 + (_0x257771['m_mass'] * _0x257771['m_invI'] * _0x37413e + _0x59f64e['m_mass'] * _0x59f64e['m_invI'] * _0x3c3d47); _0x20ad3f['equalizedMass'] = 0x1 / _0x196c33, _0x3c3d47 = _0x140cb2, _0x196c33 = -_0x4fe6f8, _0x37413e = _0x2c589c * _0x196c33 - _0x7b683f * _0x3c3d47, _0x3c3d47 = _0x33c6ef * _0x196c33 - _0x4dcf52 * _0x3c3d47, _0x37413e *= _0x37413e, _0x3c3d47 *= _0x3c3d47, _0x20ad3f['tangentMass'] = 0x1 / (_0x257771['m_invMass'] + _0x59f64e['m_invMass'] + _0x257771['m_invI'] * _0x37413e + _0x59f64e['m_invI'] * _0x3c3d47), _0x20ad3f['velocityBias'] = 0x0, _0x2c589c = _0x335abb['normal']['x'] * (_0x1f7440 + -_0x3b703c * _0x4dcf52 - _0x4f4d95 - -_0x5dd4f5 * _0x7b683f) + _0x335abb['normal']['y'] * (_0x56652b + _0x3b703c * _0x33c6ef - _0x1d36bb - _0x5dd4f5 * _0x2c589c), _0x2c589c < -_0x30ab1a['b2_velocityThreshold'] && (_0x20ad3f['velocityBias'] += -_0x335abb['restitution'] * _0x2c589c); } 0x2 == _0x335abb['pointCount'] && (_0x56652b = _0x335abb['points'][0x0], _0x1f7440 = _0x335abb['points'][0x1], _0x2cddc1 = _0x257771['m_invMass'], _0x257771 = _0x257771['m_invI'], _0x4f4d95 = _0x59f64e['m_invMass'], _0x59f64e = _0x59f64e['m_invI'], _0x1d36bb = _0x56652b['rA']['x'] * _0x140cb2 - _0x56652b['rA']['y'] * _0x4fe6f8, _0x56652b = _0x56652b['rB']['x'] * _0x140cb2 - _0x56652b['rB']['y'] * _0x4fe6f8, _0x5dd4f5 = _0x1f7440['rA']['x'] * _0x140cb2 - _0x1f7440['rA']['y'] * _0x4fe6f8, _0x1f7440 = _0x1f7440['rB']['x'] * _0x140cb2 - _0x1f7440['rB']['y'] * _0x4fe6f8, _0x4fe6f8 = _0x2cddc1 + _0x4f4d95 + _0x257771 * _0x1d36bb * _0x1d36bb + _0x59f64e * _0x56652b * _0x56652b, _0x140cb2 = _0x2cddc1 + _0x4f4d95 + _0x257771 * _0x5dd4f5 * _0x5dd4f5 + _0x59f64e * _0x1f7440 * _0x1f7440, _0x59f64e = _0x2cddc1 + _0x4f4d95 + _0x257771 * _0x1d36bb * _0x5dd4f5 + _0x59f64e * _0x56652b * _0x1f7440, _0x4fe6f8 * _0x4fe6f8 < 0x64 * (_0x4fe6f8 * _0x140cb2 - _0x59f64e * _0x59f64e) ? (_0x335abb['K']['col1']['Set'](_0x4fe6f8, _0x59f64e), _0x335abb['K']['col2']['Set'](_0x59f64e, _0x140cb2), _0x335abb['K']['GetInverse'](_0x335abb['normalMass'])) : _0x335abb['pointCount'] = 0x1); } } , _0x4ad5a0['prototype']['InitVelocityConstraints'] = function(_0x3c2c21) { for (var _0x417ab7 = 0x0; _0x417ab7 < this['m_constraintCount']; ++_0x417ab7) { var _0x30cc87 = this['m_constraints'][_0x417ab7] , _0x3195f9 = _0x30cc87['bodyA'] , _0x3c1cd9 = _0x30cc87['bodyB'] , _0x533032 = _0x3195f9['m_invMass'] , _0x2f1f4f = _0x3195f9['m_invI'] , _0x201822 = _0x3c1cd9['m_invMass'] , _0x50564e = _0x3c1cd9['m_invI'] , _0x803be = _0x30cc87['normal']['x'] , _0x1b7783 = _0x30cc87['normal']['y'] , _0x372738 = _0x1b7783 , _0x2e478b = -_0x803be , _0x46a7d9 = 0x0 , _0x1570a1 = 0x0; if (_0x3c2c21['warmStarting']) { _0x1570a1 = _0x30cc87['pointCount']; for (_0x46a7d9 = 0x0; _0x46a7d9 < _0x1570a1; ++_0x46a7d9) { var _0x258e18 = _0x30cc87['points'][_0x46a7d9]; _0x258e18['normalImpulse'] *= _0x3c2c21['dtRatio'], _0x258e18['tangentImpulse'] *= _0x3c2c21['dtRatio']; var _0x4b65df = _0x258e18['normalImpulse'] * _0x803be + _0x258e18['tangentImpulse'] * _0x372738 , _0x2d67e7 = _0x258e18['normalImpulse'] * _0x1b7783 + _0x258e18['tangentImpulse'] * _0x2e478b; _0x3195f9['m_angularVelocity'] -= _0x2f1f4f * (_0x258e18['rA']['x'] * _0x2d67e7 - _0x258e18['rA']['y'] * _0x4b65df), _0x3195f9['m_linearVelocity']['x'] -= _0x533032 * _0x4b65df, _0x3195f9['m_linearVelocity']['y'] -= _0x533032 * _0x2d67e7, _0x3c1cd9['m_angularVelocity'] += _0x50564e * (_0x258e18['rB']['x'] * _0x2d67e7 - _0x258e18['rB']['y'] * _0x4b65df), _0x3c1cd9['m_linearVelocity']['x'] += _0x201822 * _0x4b65df, _0x3c1cd9['m_linearVelocity']['y'] += _0x201822 * _0x2d67e7; } } else { _0x1570a1 = _0x30cc87['pointCount']; for (_0x46a7d9 = 0x0; _0x46a7d9 < _0x1570a1; ++_0x46a7d9) _0x3195f9 = _0x30cc87['points'][_0x46a7d9], _0x3195f9['normalImpulse'] = 0x0, _0x3195f9['tangentImpulse'] = 0x0; } } } , _0x4ad5a0['prototype']['SolveVelocityConstraints'] = function() { for (var _0x4eb0c0 = 0x0, _0x42bfb4, _0x5b0674 = 0x0, _0x9647d2 = 0x0, _0x2205ce = 0x0, _0xa25469 = 0x0, _0x9c1a94 = 0x0, _0x127c28 = 0x0, _0x34e74a = 0x0, _0x2617d2, _0xb8ae4f = 0x0; _0xb8ae4f < this['m_constraintCount']; ++_0xb8ae4f) { var _0x2205ce = this['m_constraints'][_0xb8ae4f] , _0x5ce18e = _0x2205ce['bodyA'] , _0x40430f = _0x2205ce['bodyB'] , _0x45763c = _0x5ce18e['m_angularVelocity'] , _0x3a8c7a = _0x40430f['m_angularVelocity'] , _0x8305e0 = _0x5ce18e['m_linearVelocity'] , _0x3e17fc = _0x40430f['m_linearVelocity'] , _0x4bc263 = _0x5ce18e['m_invMass'] , _0x5232fd = _0x5ce18e['m_invI'] , _0x211248 = _0x40430f['m_invMass'] , _0x27e1c8 = _0x40430f['m_invI'] , _0x127c28 = _0x2205ce['normal']['x'] , _0x1d5692 = _0x34e74a = _0x2205ce['normal']['y']; _0x2617d2 = -_0x127c28, _0x9c1a94 = _0x2205ce['friction']; for (_0x4eb0c0 = 0x0; _0x4eb0c0 < _0x2205ce['pointCount']; _0x4eb0c0++) _0x42bfb4 = _0x2205ce['points'][_0x4eb0c0], _0x5b0674 = _0x3e17fc['x'] - _0x3a8c7a * _0x42bfb4['rB']['y'] - _0x8305e0['x'] + _0x45763c * _0x42bfb4['rA']['y'], _0x9647d2 = _0x3e17fc['y'] + _0x3a8c7a * _0x42bfb4['rB']['x'] - _0x8305e0['y'] - _0x45763c * _0x42bfb4['rA']['x'], _0x5b0674 = _0x5b0674 * _0x1d5692 + _0x9647d2 * _0x2617d2, _0x5b0674 = _0x42bfb4['tangentMass'] * -_0x5b0674, _0x9647d2 = _0x9c1a94 * _0x42bfb4['normalImpulse'], _0x9647d2 = _0x1369eb['Clamp'](_0x42bfb4['tangentImpulse'] + _0x5b0674, -_0x9647d2, _0x9647d2), _0x5b0674 = _0x9647d2 - _0x42bfb4['tangentImpulse'], _0xa25469 = _0x5b0674 * _0x1d5692, _0x5b0674 *= _0x2617d2, _0x8305e0['x'] -= _0x4bc263 * _0xa25469, _0x8305e0['y'] -= _0x4bc263 * _0x5b0674, _0x45763c -= _0x5232fd * (_0x42bfb4['rA']['x'] * _0x5b0674 - _0x42bfb4['rA']['y'] * _0xa25469), _0x3e17fc['x'] += _0x211248 * _0xa25469, _0x3e17fc['y'] += _0x211248 * _0x5b0674, _0x3a8c7a += _0x27e1c8 * (_0x42bfb4['rB']['x'] * _0x5b0674 - _0x42bfb4['rB']['y'] * _0xa25469), _0x42bfb4['tangentImpulse'] = _0x9647d2; parseInt(_0x2205ce['pointCount']); if (0x1 == _0x2205ce['pointCount']) _0x42bfb4 = _0x2205ce['points'][0x0], _0x5b0674 = _0x3e17fc['x'] + -_0x3a8c7a * _0x42bfb4['rB']['y'] - _0x8305e0['x'] - -_0x45763c * _0x42bfb4['rA']['y'], _0x9647d2 = _0x3e17fc['y'] + _0x3a8c7a * _0x42bfb4['rB']['x'] - _0x8305e0['y'] - _0x45763c * _0x42bfb4['rA']['x'], _0x2205ce = _0x5b0674 * _0x127c28 + _0x9647d2 * _0x34e74a, _0x5b0674 = -_0x42bfb4['normalMass'] * (_0x2205ce - _0x42bfb4['velocityBias']), _0x9647d2 = _0x42bfb4['normalImpulse'] + _0x5b0674, _0x9647d2 = 0x0 < _0x9647d2 ? _0x9647d2 : 0x0, _0x5b0674 = _0x9647d2 - _0x42bfb4['normalImpulse'], _0xa25469 = _0x5b0674 * _0x127c28, _0x5b0674 *= _0x34e74a, _0x8305e0['x'] -= _0x4bc263 * _0xa25469, _0x8305e0['y'] -= _0x4bc263 * _0x5b0674, _0x45763c -= _0x5232fd * (_0x42bfb4['rA']['x'] * _0x5b0674 - _0x42bfb4['rA']['y'] * _0xa25469), _0x3e17fc['x'] += _0x211248 * _0xa25469, _0x3e17fc['y'] += _0x211248 * _0x5b0674, _0x3a8c7a += _0x27e1c8 * (_0x42bfb4['rB']['x'] * _0x5b0674 - _0x42bfb4['rB']['y'] * _0xa25469), _0x42bfb4['normalImpulse'] = _0x9647d2; else { _0x42bfb4 = _0x2205ce['points'][0x0]; var _0x4eb0c0 = _0x2205ce['points'][0x1] , _0x5b0674 = _0x42bfb4['normalImpulse'] , _0x9c1a94 = _0x4eb0c0['normalImpulse'] , _0x18c8ff = (_0x3e17fc['x'] - _0x3a8c7a * _0x42bfb4['rB']['y'] - _0x8305e0['x'] + _0x45763c * _0x42bfb4['rA']['y']) * _0x127c28 + (_0x3e17fc['y'] + _0x3a8c7a * _0x42bfb4['rB']['x'] - _0x8305e0['y'] - _0x45763c * _0x42bfb4['rA']['x']) * _0x34e74a , _0x2bd8b7 = (_0x3e17fc['x'] - _0x3a8c7a * _0x4eb0c0['rB']['y'] - _0x8305e0['x'] + _0x45763c * _0x4eb0c0['rA']['y']) * _0x127c28 + (_0x3e17fc['y'] + _0x3a8c7a * _0x4eb0c0['rB']['x'] - _0x8305e0['y'] - _0x45763c * _0x4eb0c0['rA']['x']) * _0x34e74a , _0x9647d2 = _0x18c8ff - _0x42bfb4['velocityBias'] , _0xa25469 = _0x2bd8b7 - _0x4eb0c0['velocityBias']; _0x2617d2 = _0x2205ce['K'], _0x9647d2 -= _0x2617d2['col1']['x'] * _0x5b0674 + _0x2617d2['col2']['x'] * _0x9c1a94; for (_0xa25469 -= _0x2617d2['col1']['y'] * _0x5b0674 + _0x2617d2['col2']['y'] * _0x9c1a94; ; ) { _0x2617d2 = _0x2205ce['normalMass'], _0x1d5692 = -(_0x2617d2['col1']['x'] * _0x9647d2 + _0x2617d2['col2']['x'] * _0xa25469), _0x2617d2 = -(_0x2617d2['col1']['y'] * _0x9647d2 + _0x2617d2['col2']['y'] * _0xa25469); if (0x0 <= _0x1d5692 && 0x0 <= _0x2617d2) { _0x5b0674 = _0x1d5692 - _0x5b0674, _0x9c1a94 = _0x2617d2 - _0x9c1a94, _0x2205ce = _0x5b0674 * _0x127c28, _0x5b0674 *= _0x34e74a, _0x127c28 *= _0x9c1a94, _0x34e74a *= _0x9c1a94, _0x8305e0['x'] -= _0x4bc263 * (_0x2205ce + _0x127c28), _0x8305e0['y'] -= _0x4bc263 * (_0x5b0674 + _0x34e74a), _0x45763c -= _0x5232fd * (_0x42bfb4['rA']['x'] * _0x5b0674 - _0x42bfb4['rA']['y'] * _0x2205ce + _0x4eb0c0['rA']['x'] * _0x34e74a - _0x4eb0c0['rA']['y'] * _0x127c28), _0x3e17fc['x'] += _0x211248 * (_0x2205ce + _0x127c28), _0x3e17fc['y'] += _0x211248 * (_0x5b0674 + _0x34e74a), _0x3a8c7a += _0x27e1c8 * (_0x42bfb4['rB']['x'] * _0x5b0674 - _0x42bfb4['rB']['y'] * _0x2205ce + _0x4eb0c0['rB']['x'] * _0x34e74a - _0x4eb0c0['rB']['y'] * _0x127c28), _0x42bfb4['normalImpulse'] = _0x1d5692, _0x4eb0c0['normalImpulse'] = _0x2617d2; break; } _0x1d5692 = -_0x42bfb4['normalMass'] * _0x9647d2, _0x2617d2 = 0x0, _0x2bd8b7 = _0x2205ce['K']['col1']['y'] * _0x1d5692 + _0xa25469; if (0x0 <= _0x1d5692 && 0x0 <= _0x2bd8b7) { _0x5b0674 = _0x1d5692 - _0x5b0674, _0x9c1a94 = _0x2617d2 - _0x9c1a94, _0x2205ce = _0x5b0674 * _0x127c28, _0x5b0674 *= _0x34e74a, _0x127c28 *= _0x9c1a94, _0x34e74a *= _0x9c1a94, _0x8305e0['x'] -= _0x4bc263 * (_0x2205ce + _0x127c28), _0x8305e0['y'] -= _0x4bc263 * (_0x5b0674 + _0x34e74a), _0x45763c -= _0x5232fd * (_0x42bfb4['rA']['x'] * _0x5b0674 - _0x42bfb4['rA']['y'] * _0x2205ce + _0x4eb0c0['rA']['x'] * _0x34e74a - _0x4eb0c0['rA']['y'] * _0x127c28), _0x3e17fc['x'] += _0x211248 * (_0x2205ce + _0x127c28), _0x3e17fc['y'] += _0x211248 * (_0x5b0674 + _0x34e74a), _0x3a8c7a += _0x27e1c8 * (_0x42bfb4['rB']['x'] * _0x5b0674 - _0x42bfb4['rB']['y'] * _0x2205ce + _0x4eb0c0['rB']['x'] * _0x34e74a - _0x4eb0c0['rB']['y'] * _0x127c28), _0x42bfb4['normalImpulse'] = _0x1d5692, _0x4eb0c0['normalImpulse'] = _0x2617d2; break; } _0x1d5692 = 0x0, _0x2617d2 = -_0x4eb0c0['normalMass'] * _0xa25469, _0x18c8ff = _0x2205ce['K']['col2']['x'] * _0x2617d2 + _0x9647d2; if (0x0 <= _0x2617d2 && 0x0 <= _0x18c8ff) { _0x5b0674 = _0x1d5692 - _0x5b0674, _0x9c1a94 = _0x2617d2 - _0x9c1a94, _0x2205ce = _0x5b0674 * _0x127c28, _0x5b0674 *= _0x34e74a, _0x127c28 *= _0x9c1a94, _0x34e74a *= _0x9c1a94, _0x8305e0['x'] -= _0x4bc263 * (_0x2205ce + _0x127c28), _0x8305e0['y'] -= _0x4bc263 * (_0x5b0674 + _0x34e74a), _0x45763c -= _0x5232fd * (_0x42bfb4['rA']['x'] * _0x5b0674 - _0x42bfb4['rA']['y'] * _0x2205ce + _0x4eb0c0['rA']['x'] * _0x34e74a - _0x4eb0c0['rA']['y'] * _0x127c28), _0x3e17fc['x'] += _0x211248 * (_0x2205ce + _0x127c28), _0x3e17fc['y'] += _0x211248 * (_0x5b0674 + _0x34e74a), _0x3a8c7a += _0x27e1c8 * (_0x42bfb4['rB']['x'] * _0x5b0674 - _0x42bfb4['rB']['y'] * _0x2205ce + _0x4eb0c0['rB']['x'] * _0x34e74a - _0x4eb0c0['rB']['y'] * _0x127c28), _0x42bfb4['normalImpulse'] = _0x1d5692, _0x4eb0c0['normalImpulse'] = _0x2617d2; break; } _0x2617d2 = _0x1d5692 = 0x0, _0x18c8ff = _0x9647d2, _0x2bd8b7 = _0xa25469; if (0x0 <= _0x18c8ff && 0x0 <= _0x2bd8b7) { _0x5b0674 = _0x1d5692 - _0x5b0674, _0x9c1a94 = _0x2617d2 - _0x9c1a94, _0x2205ce = _0x5b0674 * _0x127c28, _0x5b0674 *= _0x34e74a, _0x127c28 *= _0x9c1a94, _0x34e74a *= _0x9c1a94, _0x8305e0['x'] -= _0x4bc263 * (_0x2205ce + _0x127c28), _0x8305e0['y'] -= _0x4bc263 * (_0x5b0674 + _0x34e74a), _0x45763c -= _0x5232fd * (_0x42bfb4['rA']['x'] * _0x5b0674 - _0x42bfb4['rA']['y'] * _0x2205ce + _0x4eb0c0['rA']['x'] * _0x34e74a - _0x4eb0c0['rA']['y'] * _0x127c28), _0x3e17fc['x'] += _0x211248 * (_0x2205ce + _0x127c28), _0x3e17fc['y'] += _0x211248 * (_0x5b0674 + _0x34e74a), _0x3a8c7a += _0x27e1c8 * (_0x42bfb4['rB']['x'] * _0x5b0674 - _0x42bfb4['rB']['y'] * _0x2205ce + _0x4eb0c0['rB']['x'] * _0x34e74a - _0x4eb0c0['rB']['y'] * _0x127c28), _0x42bfb4['normalImpulse'] = _0x1d5692, _0x4eb0c0['normalImpulse'] = _0x2617d2; break; } break; } } _0x5ce18e['m_angularVelocity'] = _0x45763c, _0x40430f['m_angularVelocity'] = _0x3a8c7a; } } , _0x4ad5a0['prototype']['FinalizeVelocityConstraints'] = function() { for (var _0x284da8 = 0x0; _0x284da8 < this['m_constraintCount']; ++_0x284da8) for (var _0x6f5109 = this['m_constraints'][_0x284da8], _0x3286fd = _0x6f5109['manifold'], _0x490261 = 0x0; _0x490261 < _0x6f5109['pointCount']; ++_0x490261) { var _0x2fb6cb = _0x3286fd['m_points'][_0x490261] , _0x46a52a = _0x6f5109['points'][_0x490261]; _0x2fb6cb['m_normalImpulse'] = _0x46a52a['normalImpulse'], _0x2fb6cb['m_tangentImpulse'] = _0x46a52a['tangentImpulse']; } } , _0x4ad5a0['prototype']['SolvePositionConstraints'] = function(_0x306157) { void 0x0 === _0x306157 && (_0x306157 = 0x0); for (var _0x2c8af3 = 0x0, _0x47eff5 = 0x0; _0x47eff5 < this['m_constraintCount']; _0x47eff5++) { var _0x19b54a = this['m_constraints'][_0x47eff5] , _0xcb0ae = _0x19b54a['bodyA'] , _0x4fcf06 = _0x19b54a['bodyB'] , _0x5bae1b = _0xcb0ae['m_mass'] * _0xcb0ae['m_invMass'] , _0x2f0e3e = _0xcb0ae['m_mass'] * _0xcb0ae['m_invI'] , _0x28f87e = _0x4fcf06['m_mass'] * _0x4fcf06['m_invMass'] , _0x1e5e7c = _0x4fcf06['m_mass'] * _0x4fcf06['m_invI']; _0x4ad5a0['s_psm']['Initialize'](_0x19b54a); for (var _0x5a619b = _0x4ad5a0['s_psm']['m_normal'], _0x526b6e = 0x0; _0x526b6e < _0x19b54a['pointCount']; _0x526b6e++) { var _0x232ca8 = _0x19b54a['points'][_0x526b6e] , _0x1d8aa1 = _0x4ad5a0['s_psm']['m_points'][_0x526b6e] , _0x380650 = _0x4ad5a0['s_psm']['m_separations'][_0x526b6e] , _0x422b4b = _0x1d8aa1['x'] - _0xcb0ae['m_sweep']['c']['x'] , _0x3bb1d5 = _0x1d8aa1['y'] - _0xcb0ae['m_sweep']['c']['y'] , _0x17ab53 = _0x1d8aa1['x'] - _0x4fcf06['m_sweep']['c']['x'] , _0x1d8aa1 = _0x1d8aa1['y'] - _0x4fcf06['m_sweep']['c']['y'] , _0x2c8af3 = _0x2c8af3 < _0x380650 ? _0x2c8af3 : _0x380650 , _0x380650 = _0x1369eb['Clamp'](_0x306157 * (_0x380650 + _0x30ab1a['b2_linearSlop']), -_0x30ab1a['b2_maxLinearCorrection'], 0x0) , _0x380650 = -_0x232ca8['equalizedMass'] * _0x380650 , _0x232ca8 = _0x380650 * _0x5a619b['x'] , _0x380650 = _0x380650 * _0x5a619b['y']; _0xcb0ae['m_sweep']['c']['x'] -= _0x5bae1b * _0x232ca8, _0xcb0ae['m_sweep']['c']['y'] -= _0x5bae1b * _0x380650, _0xcb0ae['m_sweep']['a'] -= _0x2f0e3e * (_0x422b4b * _0x380650 - _0x3bb1d5 * _0x232ca8), _0xcb0ae['SynchronizeTransform'](), _0x4fcf06['m_sweep']['c']['x'] += _0x28f87e * _0x232ca8, _0x4fcf06['m_sweep']['c']['y'] += _0x28f87e * _0x380650, _0x4fcf06['m_sweep']['a'] += _0x1e5e7c * (_0x17ab53 * _0x380650 - _0x1d8aa1 * _0x232ca8), _0x4fcf06['SynchronizeTransform'](); } } return _0x2c8af3 > -1.5 * _0x30ab1a['b2_linearSlop']; } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['Contacts']['b2ContactSolver']['s_worldManifold'] = new _0x2efe8d(), Box2D['Dynamics']['Contacts']['b2ContactSolver']['s_psm'] = new _0x36b402(); }), Box2D['inherit'](_0x5022be, Box2D['Dynamics']['Contacts']['b2Contact']), _0x5022be['prototype']['__super'] = Box2D['Dynamics']['Contacts']['b2Contact']['prototype'], _0x5022be['b2EdgeAndCircleContact'] = function() { Box2D['Dynamics']['Contacts']['b2Contact']['b2Contact']['apply'](this, arguments); } , _0x5022be['Create'] = function() { return new _0x5022be(); } , _0x5022be['Destroy'] = function() {} , _0x5022be['prototype']['Reset'] = function(_0x354016, _0x59edf7) { this['__super']['Reset']['call'](this, _0x354016, _0x59edf7); } , _0x5022be['prototype']['Evaluate'] = function() { var _0x36f3b3 = this['m_fixtureA']['GetBody']() , _0x1ead8c = this['m_fixtureB']['GetBody'](); this['b2CollideEdgeAndCircle'](this['m_manifold'], this['m_fixtureA']['GetShape']()instanceof _0x439deb ? this['m_fixtureA']['GetShape']() : null, _0x36f3b3['m_xf'], this['m_fixtureB']['GetShape']()instanceof _0x3a424a ? this['m_fixtureB']['GetShape']() : null, _0x1ead8c['m_xf']); } , _0x5022be['prototype']['b2CollideEdgeAndCircle'] = function() {} , Box2D['inherit'](_0x24b804, Box2D['Dynamics']['Contacts']['b2Contact']), _0x24b804['prototype']['__super'] = Box2D['Dynamics']['Contacts']['b2Contact']['prototype'], _0x24b804['b2NullContact'] = function() { Box2D['Dynamics']['Contacts']['b2Contact']['b2Contact']['apply'](this, arguments); } , _0x24b804['prototype']['b2NullContact'] = function() { this['__super']['b2Contact']['call'](this); } , _0x24b804['prototype']['Evaluate'] = function() {} , Box2D['inherit'](_0x307168, Box2D['Dynamics']['Contacts']['b2Contact']), _0x307168['prototype']['__super'] = Box2D['Dynamics']['Contacts']['b2Contact']['prototype'], _0x307168['b2PolyAndCircleContact'] = function() { Box2D['Dynamics']['Contacts']['b2Contact']['b2Contact']['apply'](this, arguments); } , _0x307168['Create'] = function() { return new _0x307168(); } , _0x307168['Destroy'] = function() {} , _0x307168['prototype']['Reset'] = function(_0xd3f18b, _0xe4d442) { this['__super']['Reset']['call'](this, _0xd3f18b, _0xe4d442), _0x30ab1a['b2Assert'](_0xd3f18b['GetType']() == _0x4609e9['e_polygonShape']), _0x30ab1a['b2Assert'](_0xe4d442['GetType']() == _0x4609e9['e_circleShape']); } , _0x307168['prototype']['Evaluate'] = function() { var _0x9aea64 = this['m_fixtureA']['m_body'] , _0x4fadfe = this['m_fixtureB']['m_body']; _0x238177['CollidePolygonAndCircle'](this['m_manifold'], this['m_fixtureA']['GetShape']()instanceof _0x1e8e34 ? this['m_fixtureA']['GetShape']() : null, _0x9aea64['m_xf'], this['m_fixtureB']['GetShape']()instanceof _0x3a424a ? this['m_fixtureB']['GetShape']() : null, _0x4fadfe['m_xf']); } , Box2D['inherit'](_0x3a7c7f, Box2D['Dynamics']['Contacts']['b2Contact']), _0x3a7c7f['prototype']['__super'] = Box2D['Dynamics']['Contacts']['b2Contact']['prototype'], _0x3a7c7f['b2PolyAndEdgeContact'] = function() { Box2D['Dynamics']['Contacts']['b2Contact']['b2Contact']['apply'](this, arguments); } , _0x3a7c7f['Create'] = function() { return new _0x3a7c7f(); } , _0x3a7c7f['Destroy'] = function() {} , _0x3a7c7f['prototype']['Reset'] = function(_0xeae81d, _0x2bccdb) { this['__super']['Reset']['call'](this, _0xeae81d, _0x2bccdb), _0x30ab1a['b2Assert'](_0xeae81d['GetType']() == _0x4609e9['e_polygonShape']), _0x30ab1a['b2Assert'](_0x2bccdb['GetType']() == _0x4609e9['e_edgeShape']); } , _0x3a7c7f['prototype']['Evaluate'] = function() { var _0x259803 = this['m_fixtureA']['GetBody']() , _0x597da3 = this['m_fixtureB']['GetBody'](); this['b2CollidePolyAndEdge'](this['m_manifold'], this['m_fixtureA']['GetShape']()instanceof _0x1e8e34 ? this['m_fixtureA']['GetShape']() : null, _0x259803['m_xf'], this['m_fixtureB']['GetShape']()instanceof _0x439deb ? this['m_fixtureB']['GetShape']() : null, _0x597da3['m_xf']); } , _0x3a7c7f['prototype']['b2CollidePolyAndEdge'] = function() {} , Box2D['inherit'](_0x1a7725, Box2D['Dynamics']['Contacts']['b2Contact']), _0x1a7725['prototype']['__super'] = Box2D['Dynamics']['Contacts']['b2Contact']['prototype'], _0x1a7725['b2PolygonContact'] = function() { Box2D['Dynamics']['Contacts']['b2Contact']['b2Contact']['apply'](this, arguments); } , _0x1a7725['Create'] = function() { return new _0x1a7725(); } , _0x1a7725['Destroy'] = function() {} , _0x1a7725['prototype']['Reset'] = function(_0x5c31b4, _0x5147cc) { this['__super']['Reset']['call'](this, _0x5c31b4, _0x5147cc); } , _0x1a7725['prototype']['Evaluate'] = function() { var _0xbb92db = this['m_fixtureA']['GetBody']() , _0x45d927 = this['m_fixtureB']['GetBody'](); _0x238177['CollidePolygons'](this['m_manifold'], this['m_fixtureA']['GetShape']()instanceof _0x1e8e34 ? this['m_fixtureA']['GetShape']() : null, _0xbb92db['m_xf'], this['m_fixtureB']['GetShape']()instanceof _0x1e8e34 ? this['m_fixtureB']['GetShape']() : null, _0x45d927['m_xf']); } , _0x36b402['b2PositionSolverManifold'] = function() {} , _0x36b402['prototype']['b2PositionSolverManifold'] = function() { this['m_normal'] = new _0x1541e5(), this['m_separations'] = new Vector_a2j_Number(_0x30ab1a['b2_maxManifoldPoints']), this['m_points'] = new Vector(_0x30ab1a['b2_maxManifoldPoints']); for (var _0xd0e657 = 0x0; _0xd0e657 < _0x30ab1a['b2_maxManifoldPoints']; _0xd0e657++) this['m_points'][_0xd0e657] = new _0x1541e5(); } , _0x36b402['prototype']['Initialize'] = function(_0x2947ef) { _0x30ab1a['b2Assert'](0x0 < _0x2947ef['pointCount']); var _0x30e0aa = 0x0, _0x3dd91a = 0x0, _0x2eeee7 = 0x0, _0x1ac949, _0x156444 = 0x0, _0x2b4076 = 0x0; switch (_0x2947ef['type']) { case _0x29af51['e_circles']: _0x1ac949 = _0x2947ef['bodyA']['m_xf']['R'], _0x2eeee7 = _0x2947ef['localPoint'], _0x30e0aa = _0x2947ef['bodyA']['m_xf']['position']['x'] + (_0x1ac949['col1']['x'] * _0x2eeee7['x'] + _0x1ac949['col2']['x'] * _0x2eeee7['y']), _0x3dd91a = _0x2947ef['bodyA']['m_xf']['position']['y'] + (_0x1ac949['col1']['y'] * _0x2eeee7['x'] + _0x1ac949['col2']['y'] * _0x2eeee7['y']), _0x1ac949 = _0x2947ef['bodyB']['m_xf']['R'], _0x2eeee7 = _0x2947ef['points'][0x0]['localPoint'], _0x156444 = _0x2947ef['bodyB']['m_xf']['position']['x'] + (_0x1ac949['col1']['x'] * _0x2eeee7['x'] + _0x1ac949['col2']['x'] * _0x2eeee7['y']), _0x1ac949 = _0x2947ef['bodyB']['m_xf']['position']['y'] + (_0x1ac949['col1']['y'] * _0x2eeee7['x'] + _0x1ac949['col2']['y'] * _0x2eeee7['y']); var _0x2eeee7 = _0x156444 - _0x30e0aa , _0x2b4076 = _0x1ac949 - _0x3dd91a , _0x59a479 = _0x2eeee7 * _0x2eeee7 + _0x2b4076 * _0x2b4076; _0x59a479 > Number['MIN_VALUE'] * Number['MIN_VALUE'] ? (_0x59a479 = Math['sqrt'](_0x59a479), this['m_normal']['x'] = _0x2eeee7 / _0x59a479, this['m_normal']['y'] = _0x2b4076 / _0x59a479) : (this['m_normal']['x'] = 0x1, this['m_normal']['y'] = 0x0), this['m_points'][0x0]['x'] = 0.5 * (_0x30e0aa + _0x156444), this['m_points'][0x0]['y'] = 0.5 * (_0x3dd91a + _0x1ac949), this['m_separations'][0x0] = _0x2eeee7 * this['m_normal']['x'] + _0x2b4076 * this['m_normal']['y'] - _0x2947ef['radius']; break; case _0x29af51['e_faceA']: _0x1ac949 = _0x2947ef['bodyA']['m_xf']['R'], _0x2eeee7 = _0x2947ef['localPlaneNormal'], this['m_normal']['x'] = _0x1ac949['col1']['x'] * _0x2eeee7['x'] + _0x1ac949['col2']['x'] * _0x2eeee7['y'], this['m_normal']['y'] = _0x1ac949['col1']['y'] * _0x2eeee7['x'] + _0x1ac949['col2']['y'] * _0x2eeee7['y'], _0x1ac949 = _0x2947ef['bodyA']['m_xf']['R'], _0x2eeee7 = _0x2947ef['localPoint'], _0x156444 = _0x2947ef['bodyA']['m_xf']['position']['x'] + (_0x1ac949['col1']['x'] * _0x2eeee7['x'] + _0x1ac949['col2']['x'] * _0x2eeee7['y']), _0x2b4076 = _0x2947ef['bodyA']['m_xf']['position']['y'] + (_0x1ac949['col1']['y'] * _0x2eeee7['x'] + _0x1ac949['col2']['y'] * _0x2eeee7['y']), _0x1ac949 = _0x2947ef['bodyB']['m_xf']['R']; for (_0x30e0aa = 0x0; _0x30e0aa < _0x2947ef['pointCount']; ++_0x30e0aa) _0x2eeee7 = _0x2947ef['points'][_0x30e0aa]['localPoint'], _0x3dd91a = _0x2947ef['bodyB']['m_xf']['position']['x'] + (_0x1ac949['col1']['x'] * _0x2eeee7['x'] + _0x1ac949['col2']['x'] * _0x2eeee7['y']), _0x2eeee7 = _0x2947ef['bodyB']['m_xf']['position']['y'] + (_0x1ac949['col1']['y'] * _0x2eeee7['x'] + _0x1ac949['col2']['y'] * _0x2eeee7['y']), this['m_separations'][_0x30e0aa] = (_0x3dd91a - _0x156444) * this['m_normal']['x'] + (_0x2eeee7 - _0x2b4076) * this['m_normal']['y'] - _0x2947ef['radius'], this['m_points'][_0x30e0aa]['x'] = _0x3dd91a, this['m_points'][_0x30e0aa]['y'] = _0x2eeee7; break; case _0x29af51['e_faceB']: _0x1ac949 = _0x2947ef['bodyB']['m_xf']['R'], _0x2eeee7 = _0x2947ef['localPlaneNormal'], this['m_normal']['x'] = _0x1ac949['col1']['x'] * _0x2eeee7['x'] + _0x1ac949['col2']['x'] * _0x2eeee7['y'], this['m_normal']['y'] = _0x1ac949['col1']['y'] * _0x2eeee7['x'] + _0x1ac949['col2']['y'] * _0x2eeee7['y'], _0x1ac949 = _0x2947ef['bodyB']['m_xf']['R'], _0x2eeee7 = _0x2947ef['localPoint'], _0x156444 = _0x2947ef['bodyB']['m_xf']['position']['x'] + (_0x1ac949['col1']['x'] * _0x2eeee7['x'] + _0x1ac949['col2']['x'] * _0x2eeee7['y']), _0x2b4076 = _0x2947ef['bodyB']['m_xf']['position']['y'] + (_0x1ac949['col1']['y'] * _0x2eeee7['x'] + _0x1ac949['col2']['y'] * _0x2eeee7['y']), _0x1ac949 = _0x2947ef['bodyA']['m_xf']['R']; for (_0x30e0aa = 0x0; _0x30e0aa < _0x2947ef['pointCount']; ++_0x30e0aa) _0x2eeee7 = _0x2947ef['points'][_0x30e0aa]['localPoint'], _0x3dd91a = _0x2947ef['bodyA']['m_xf']['position']['x'] + (_0x1ac949['col1']['x'] * _0x2eeee7['x'] + _0x1ac949['col2']['x'] * _0x2eeee7['y']), _0x2eeee7 = _0x2947ef['bodyA']['m_xf']['position']['y'] + (_0x1ac949['col1']['y'] * _0x2eeee7['x'] + _0x1ac949['col2']['y'] * _0x2eeee7['y']), this['m_separations'][_0x30e0aa] = (_0x3dd91a - _0x156444) * this['m_normal']['x'] + (_0x2eeee7 - _0x2b4076) * this['m_normal']['y'] - _0x2947ef['radius'], this['m_points'][_0x30e0aa]['Set'](_0x3dd91a, _0x2eeee7); this['m_normal']['x'] *= -0x1, this['m_normal']['y'] *= -0x1; } } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['Contacts']['b2PositionSolverManifold']['circlePointA'] = new _0x1541e5(), Box2D['Dynamics']['Contacts']['b2PositionSolverManifold']['circlePointB'] = new _0x1541e5(); }); }(), function() { var _0x3cb634 = Box2D['Common']['Math']['b2Mat22'] , _0x985347 = Box2D['Common']['Math']['b2Math'] , _0x52dd4d = Box2D['Common']['Math']['b2Vec2'] , _0x4d84fe = Box2D['Common']['b2Color'] , _0x220ad3 = Box2D['Dynamics']['Controllers']['b2BuoyancyController'] , _0x49bd1e = Box2D['Dynamics']['Controllers']['b2ConstantAccelController'] , _0x4677aa = Box2D['Dynamics']['Controllers']['b2ConstantForceController'] , _0x58293b = Box2D['Dynamics']['Controllers']['b2Controller'] , _0x3ac15f = Box2D['Dynamics']['Controllers']['b2ControllerEdge'] , _0x2730be = Box2D['Dynamics']['Controllers']['b2GravityController'] , _0x2d4e8d = Box2D['Dynamics']['Controllers']['b2TensorDampingController']; Box2D['inherit'](_0x220ad3, Box2D['Dynamics']['Controllers']['b2Controller']), _0x220ad3['prototype']['__super'] = Box2D['Dynamics']['Controllers']['b2Controller']['prototype'], _0x220ad3['b2BuoyancyController'] = function() { Box2D['Dynamics']['Controllers']['b2Controller']['b2Controller']['apply'](this, arguments), this['normal'] = new _0x52dd4d(0x0,-0x1), this['density'] = this['offset'] = 0x0, this['velocity'] = new _0x52dd4d(0x0,0x0), this['linearDrag'] = 0x2, this['angularDrag'] = 0x1, this['useDensity'] = !0x1, this['useWorldGravity'] = !0x0, this['gravity'] = null; } , _0x220ad3['prototype']['Step'] = function() { if (this['m_bodyList']) { this['useWorldGravity'] && (this['gravity'] = this['GetWorld']()['GetGravity']()['Copy']()); for (var _0x57df1d = this['m_bodyList']; _0x57df1d; _0x57df1d = _0x57df1d['nextBody']) { var _0x747482 = _0x57df1d['body']; if (!0x1 != _0x747482['IsAwake']()) { for (var _0x17fa7f = new _0x52dd4d(), _0x95ffa7 = new _0x52dd4d(), _0x10bdd1 = 0x0, _0x506062 = 0x0, _0x440081 = _0x747482['GetFixtureList'](); _0x440081; _0x440081 = _0x440081['GetNext']()) { var _0x1d4098 = new _0x52dd4d() , _0x6abc09 = _0x440081['GetShape']()['ComputeSubmergedArea'](this['normal'], this['offset'], _0x747482['GetTransform'](), _0x1d4098) , _0x10bdd1 = _0x10bdd1 + _0x6abc09; _0x17fa7f['x'] += _0x6abc09 * _0x1d4098['x'], _0x17fa7f['y'] += _0x6abc09 * _0x1d4098['y']; var _0x3d8f9a = 0x0 , _0x3d8f9a = 0x1 , _0x506062 = _0x506062 + _0x6abc09 * _0x3d8f9a; _0x95ffa7['x'] += _0x6abc09 * _0x1d4098['x'] * _0x3d8f9a, _0x95ffa7['y'] += _0x6abc09 * _0x1d4098['y'] * _0x3d8f9a; } _0x17fa7f['x'] /= _0x10bdd1, _0x17fa7f['y'] /= _0x10bdd1, _0x95ffa7['x'] /= _0x506062, _0x95ffa7['y'] /= _0x506062, _0x10bdd1 < Number['MIN_VALUE'] || (_0x506062 = this['gravity']['GetNegative'](), _0x506062['Multiply'](this['density'] * _0x10bdd1), _0x747482['ApplyForce'](_0x506062, _0x95ffa7), _0x95ffa7 = _0x747482['GetLinearVelocityFromWorldPoint'](_0x17fa7f), _0x95ffa7['Subtract'](this['velocity']), _0x95ffa7['Multiply'](-this['linearDrag'] * _0x10bdd1), _0x747482['ApplyForce'](_0x95ffa7, _0x17fa7f), _0x747482['ApplyTorque'](-_0x747482['GetInertia']() / _0x747482['GetMass']() * _0x10bdd1 * _0x747482['GetAngularVelocity']() * this['angularDrag'])); } } } } , _0x220ad3['prototype']['Draw'] = function(_0x318c8c) { var _0x581d00 = new _0x52dd4d() , _0x135b4d = new _0x52dd4d(); _0x581d00['x'] = this['normal']['x'] * this['offset'] + 0x3e8 * this['normal']['y'], _0x581d00['y'] = this['normal']['y'] * this['offset'] - 0x3e8 * this['normal']['x'], _0x135b4d['x'] = this['normal']['x'] * this['offset'] - 0x3e8 * this['normal']['y'], _0x135b4d['y'] = this['normal']['y'] * this['offset'] + 0x3e8 * this['normal']['x']; var _0x3358b0 = new _0x4d84fe(0x0,0x0,0x1); _0x318c8c['DrawSegment'](_0x581d00, _0x135b4d, _0x3358b0); } , Box2D['inherit'](_0x49bd1e, Box2D['Dynamics']['Controllers']['b2Controller']), _0x49bd1e['prototype']['__super'] = Box2D['Dynamics']['Controllers']['b2Controller']['prototype'], _0x49bd1e['b2ConstantAccelController'] = function() { Box2D['Dynamics']['Controllers']['b2Controller']['b2Controller']['apply'](this, arguments), this['A'] = new _0x52dd4d(0x0,0x0); } , _0x49bd1e['prototype']['Step'] = function(_0x1fa434) { _0x1fa434 = new _0x52dd4d(this['A']['x'] * _0x1fa434['dt'],this['A']['y'] * _0x1fa434['dt']); for (var _0x1d53d0 = this['m_bodyList']; _0x1d53d0; _0x1d53d0 = _0x1d53d0['nextBody']) { var _0x14604e = _0x1d53d0['body']; _0x14604e['IsAwake']() && _0x14604e['SetLinearVelocity'](new _0x52dd4d(_0x14604e['GetLinearVelocity']()['x'] + _0x1fa434['x'],_0x14604e['GetLinearVelocity']()['y'] + _0x1fa434['y'])); } } , Box2D['inherit'](_0x4677aa, Box2D['Dynamics']['Controllers']['b2Controller']), _0x4677aa['prototype']['__super'] = Box2D['Dynamics']['Controllers']['b2Controller']['prototype'], _0x4677aa['b2ConstantForceController'] = function() { Box2D['Dynamics']['Controllers']['b2Controller']['b2Controller']['apply'](this, arguments), this['F'] = new _0x52dd4d(0x0,0x0); } , _0x4677aa['prototype']['Step'] = function() { for (var _0x322079 = this['m_bodyList']; _0x322079; _0x322079 = _0x322079['nextBody']) { var _0xb449a = _0x322079['body']; _0xb449a['IsAwake']() && _0xb449a['ApplyForce'](this['F'], _0xb449a['GetWorldCenter']()); } } , _0x58293b['b2Controller'] = function() {} , _0x58293b['prototype']['Step'] = function() {} , _0x58293b['prototype']['Draw'] = function() {} , _0x58293b['prototype']['AddBody'] = function(_0x67c3fc) { var _0x2bebff = new _0x3ac15f(); _0x2bebff['controller'] = this, _0x2bebff['body'] = _0x67c3fc, _0x2bebff['nextBody'] = this['m_bodyList'], _0x2bebff['prevBody'] = null, this['m_bodyList'] = _0x2bebff, _0x2bebff['nextBody'] && (_0x2bebff['nextBody']['prevBody'] = _0x2bebff), this['m_bodyCount']++, _0x2bebff['nextController'] = _0x67c3fc['m_controllerList'], _0x2bebff['prevController'] = null, _0x67c3fc['m_controllerList'] = _0x2bebff, _0x2bebff['nextController'] && (_0x2bebff['nextController']['prevController'] = _0x2bebff), _0x67c3fc['m_controllerCount']++; } , _0x58293b['prototype']['RemoveBody'] = function(_0xda475e) { for (var _0x927756 = _0xda475e['m_controllerList']; _0x927756 && _0x927756['controller'] != this; ) _0x927756 = _0x927756['nextController']; _0x927756['prevBody'] && (_0x927756['prevBody']['nextBody'] = _0x927756['nextBody']), _0x927756['nextBody'] && (_0x927756['nextBody']['prevBody'] = _0x927756['prevBody']), _0x927756['nextController'] && (_0x927756['nextController']['prevController'] = _0x927756['prevController']), _0x927756['prevController'] && (_0x927756['prevController']['nextController'] = _0x927756['nextController']), this['m_bodyList'] == _0x927756 && (this['m_bodyList'] = _0x927756['nextBody']), _0xda475e['m_controllerList'] == _0x927756 && (_0xda475e['m_controllerList'] = _0x927756['nextController']), _0xda475e['m_controllerCount']--, this['m_bodyCount']--; } , _0x58293b['prototype']['Clear'] = function() { for (; this['m_bodyList']; ) this['RemoveBody'](this['m_bodyList']['body']); } , _0x58293b['prototype']['GetNext'] = function() { return this['m_next']; } , _0x58293b['prototype']['GetWorld'] = function() { return this['m_world']; } , _0x58293b['prototype']['GetBodyList'] = function() { return this['m_bodyList']; } , _0x3ac15f['b2ControllerEdge'] = function() {} , Box2D['inherit'](_0x2730be, Box2D['Dynamics']['Controllers']['b2Controller']), _0x2730be['prototype']['__super'] = Box2D['Dynamics']['Controllers']['b2Controller']['prototype'], _0x2730be['b2GravityController'] = function() { Box2D['Dynamics']['Controllers']['b2Controller']['b2Controller']['apply'](this, arguments), this['G'] = 0x1, this['invSqr'] = !0x0; } , _0x2730be['prototype']['Step'] = function() { var _0x11d54b = null , _0x49dd4c = null , _0x21392b = null , _0x5b38fa = 0x0 , _0x48125a = null , _0x351cdf = null , _0x4e3a27 = null , _0x442d5c = 0x0 , _0x5658db = 0x0 , _0x370860 = 0x0; if (this['invSqr']) for (_0x11d54b = this['m_bodyList']; _0x11d54b; _0x11d54b = _0x11d54b['nextBody']) { _0x49dd4c = _0x11d54b['body'], _0x21392b = _0x49dd4c['GetWorldCenter'](), _0x5b38fa = _0x49dd4c['GetMass'](); for (_0x48125a = this['m_bodyList']; _0x48125a != _0x11d54b; _0x48125a = _0x48125a['nextBody']) _0x351cdf = _0x48125a['body'], _0x4e3a27 = _0x351cdf['GetWorldCenter'](), _0x442d5c = _0x4e3a27['x'] - _0x21392b['x'], _0x5658db = _0x4e3a27['y'] - _0x21392b['y'], _0x370860 = _0x442d5c * _0x442d5c + _0x5658db * _0x5658db, _0x370860 < Number['MIN_VALUE'] || (_0x442d5c = new _0x52dd4d(_0x442d5c,_0x5658db), _0x442d5c['Multiply'](this['G'] / _0x370860 / Math['sqrt'](_0x370860) * _0x5b38fa * _0x351cdf['GetMass']()), _0x49dd4c['IsAwake']() && _0x49dd4c['ApplyForce'](_0x442d5c, _0x21392b), _0x442d5c['Multiply'](-0x1), _0x351cdf['IsAwake']() && _0x351cdf['ApplyForce'](_0x442d5c, _0x4e3a27)); } else for (_0x11d54b = this['m_bodyList']; _0x11d54b; _0x11d54b = _0x11d54b['nextBody']) { _0x49dd4c = _0x11d54b['body'], _0x21392b = _0x49dd4c['GetWorldCenter'](), _0x5b38fa = _0x49dd4c['GetMass'](); for (_0x48125a = this['m_bodyList']; _0x48125a != _0x11d54b; _0x48125a = _0x48125a['nextBody']) _0x351cdf = _0x48125a['body'], _0x4e3a27 = _0x351cdf['GetWorldCenter'](), _0x442d5c = _0x4e3a27['x'] - _0x21392b['x'], _0x5658db = _0x4e3a27['y'] - _0x21392b['y'], _0x370860 = _0x442d5c * _0x442d5c + _0x5658db * _0x5658db, _0x370860 < Number['MIN_VALUE'] || (_0x442d5c = new _0x52dd4d(_0x442d5c,_0x5658db), _0x442d5c['Multiply'](this['G'] / _0x370860 * _0x5b38fa * _0x351cdf['GetMass']()), _0x49dd4c['IsAwake']() && _0x49dd4c['ApplyForce'](_0x442d5c, _0x21392b), _0x442d5c['Multiply'](-0x1), _0x351cdf['IsAwake']() && _0x351cdf['ApplyForce'](_0x442d5c, _0x4e3a27)); } } , Box2D['inherit'](_0x2d4e8d, Box2D['Dynamics']['Controllers']['b2Controller']), _0x2d4e8d['prototype']['__super'] = Box2D['Dynamics']['Controllers']['b2Controller']['prototype'], _0x2d4e8d['b2TensorDampingController'] = function() { Box2D['Dynamics']['Controllers']['b2Controller']['b2Controller']['apply'](this, arguments), this['T'] = new _0x3cb634(), this['maxTimestep'] = 0x0; } , _0x2d4e8d['prototype']['SetAxisAligned'] = function(_0xa4f17d, _0xab2635) { void 0x0 === _0xa4f17d && (_0xa4f17d = 0x0), void 0x0 === _0xab2635 && (_0xab2635 = 0x0), this['T']['col1']['x'] = -_0xa4f17d, this['T']['col1']['y'] = 0x0, this['T']['col2']['x'] = 0x0, this['T']['col2']['y'] = -_0xab2635, this['maxTimestep'] = 0x0 < _0xa4f17d || 0x0 < _0xab2635 ? 0x1 / Math['max'](_0xa4f17d, _0xab2635) : 0x0; } , _0x2d4e8d['prototype']['Step'] = function(_0x431533) { _0x431533 = _0x431533['dt']; if (!(_0x431533 <= Number['MIN_VALUE'])) { _0x431533 > this['maxTimestep'] && 0x0 < this['maxTimestep'] && (_0x431533 = this['maxTimestep']); for (var _0x4aba6a = this['m_bodyList']; _0x4aba6a; _0x4aba6a = _0x4aba6a['nextBody']) { var _0x3d4b21 = _0x4aba6a['body']; if (_0x3d4b21['IsAwake']()) { var _0x3afd4d = _0x3d4b21['GetWorldVector'](_0x985347['MulMV'](this['T'], _0x3d4b21['GetLocalVector'](_0x3d4b21['GetLinearVelocity']()))); _0x3d4b21['SetLinearVelocity'](new _0x52dd4d(_0x3d4b21['GetLinearVelocity']()['x'] + _0x3afd4d['x'] * _0x431533,_0x3d4b21['GetLinearVelocity']()['y'] + _0x3afd4d['y'] * _0x431533)); } } } } ; }(), function() { var _0x36d772 = Box2D['Common']['b2Settings'] , _0x5c4159 = Box2D['Common']['Math']['b2Mat22'] , _0x2e672f = Box2D['Common']['Math']['b2Mat33'] , _0x3bc259 = Box2D['Common']['Math']['b2Math'] , _0x416390 = Box2D['Common']['Math']['b2Vec2'] , _0x59cf24 = Box2D['Common']['Math']['b2Vec3'] , _0x538226 = Box2D['Dynamics']['Joints']['b2DistanceJoint'] , _0xe014b2 = Box2D['Dynamics']['Joints']['b2DistanceJointDef'] , _0x1e8dbd = Box2D['Dynamics']['Joints']['b2FrictionJoint'] , _0x40af6d = Box2D['Dynamics']['Joints']['b2FrictionJointDef'] , _0x43441a = Box2D['Dynamics']['Joints']['b2GearJoint'] , _0x3215b5 = Box2D['Dynamics']['Joints']['b2GearJointDef'] , _0x13a2b7 = Box2D['Dynamics']['Joints']['b2Jacobian'] , _0x1e6a98 = Box2D['Dynamics']['Joints']['b2Joint'] , _0x147c39 = Box2D['Dynamics']['Joints']['b2JointDef'] , _0x7e2b60 = Box2D['Dynamics']['Joints']['b2JointEdge'] , _0x5d32b7 = Box2D['Dynamics']['Joints']['b2LineJoint'] , _0x254160 = Box2D['Dynamics']['Joints']['b2LineJointDef'] , _0x28338a = Box2D['Dynamics']['Joints']['b2MouseJoint'] , _0x21d19e = Box2D['Dynamics']['Joints']['b2MouseJointDef'] , _0x1c9bc0 = Box2D['Dynamics']['Joints']['b2PrismaticJoint'] , _0x2afc72 = Box2D['Dynamics']['Joints']['b2PrismaticJointDef'] , _0xe26196 = Box2D['Dynamics']['Joints']['b2PulleyJoint'] , _0x260839 = Box2D['Dynamics']['Joints']['b2PulleyJointDef'] , _0x4418f7 = Box2D['Dynamics']['Joints']['b2RevoluteJoint'] , _0x38fda6 = Box2D['Dynamics']['Joints']['b2RevoluteJointDef'] , _0x366e6d = Box2D['Dynamics']['Joints']['b2WeldJoint'] , _0x60e6d4 = Box2D['Dynamics']['Joints']['b2WeldJointDef']; Box2D['inherit'](_0x538226, Box2D['Dynamics']['Joints']['b2Joint']), _0x538226['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0x538226['b2DistanceJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['m_localAnchor1'] = new _0x416390(), this['m_localAnchor2'] = new _0x416390(), this['m_u'] = new _0x416390(); } , _0x538226['prototype']['GetAnchorA'] = function() { return this['m_bodyA']['GetWorldPoint'](this['m_localAnchor1']); } , _0x538226['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchor2']); } , _0x538226['prototype']['GetReactionForce'] = function(_0x1e5b8a) { return void 0x0 === _0x1e5b8a && (_0x1e5b8a = 0x0), new _0x416390(_0x1e5b8a * this['m_impulse'] * this['m_u']['x'],_0x1e5b8a * this['m_impulse'] * this['m_u']['y']); } , _0x538226['prototype']['GetReactionTorque'] = function() { return 0x0; } , _0x538226['prototype']['GetLength'] = function() { return this['m_length']; } , _0x538226['prototype']['SetLength'] = function(_0x12d852) { void 0x0 === _0x12d852 && (_0x12d852 = 0x0), this['m_length'] = _0x12d852; } , _0x538226['prototype']['GetFrequency'] = function() { return this['m_frequencyHz']; } , _0x538226['prototype']['SetFrequency'] = function(_0x2c71e4) { void 0x0 === _0x2c71e4 && (_0x2c71e4 = 0x0), this['m_frequencyHz'] = _0x2c71e4; } , _0x538226['prototype']['GetDampingRatio'] = function() { return this['m_dampingRatio']; } , _0x538226['prototype']['SetDampingRatio'] = function(_0x4e66f8) { void 0x0 === _0x4e66f8 && (_0x4e66f8 = 0x0), this['m_dampingRatio'] = _0x4e66f8; } , _0x538226['prototype']['b2DistanceJoint'] = function(_0x63d949) { this['__super']['b2Joint']['call'](this, _0x63d949), this['m_localAnchor1']['SetV'](_0x63d949['localAnchorA']), this['m_localAnchor2']['SetV'](_0x63d949['localAnchorB']), this['m_length'] = _0x63d949['length'], this['m_frequencyHz'] = _0x63d949['frequencyHz'], this['m_dampingRatio'] = _0x63d949['dampingRatio'], this['m_bias'] = this['m_gamma'] = this['m_impulse'] = 0x0; } , _0x538226['prototype']['InitVelocityConstraints'] = function(_0xfbd1ab) { var _0xeca96b, _0x41ac08 = 0x0, _0x138a91 = this['m_bodyA'], _0x31d37c = this['m_bodyB']; _0xeca96b = _0x138a91['m_xf']['R']; var _0x5c3129 = this['m_localAnchor1']['x'] - _0x138a91['m_sweep']['localCenter']['x'] , _0x300fb0 = this['m_localAnchor1']['y'] - _0x138a91['m_sweep']['localCenter']['y'] , _0x41ac08 = _0xeca96b['col1']['x'] * _0x5c3129 + _0xeca96b['col2']['x'] * _0x300fb0 , _0x300fb0 = _0xeca96b['col1']['y'] * _0x5c3129 + _0xeca96b['col2']['y'] * _0x300fb0 , _0x5c3129 = _0x41ac08; _0xeca96b = _0x31d37c['m_xf']['R']; var _0xc5bd40 = this['m_localAnchor2']['x'] - _0x31d37c['m_sweep']['localCenter']['x'] , _0x3bbc1d = this['m_localAnchor2']['y'] - _0x31d37c['m_sweep']['localCenter']['y'] , _0x41ac08 = _0xeca96b['col1']['x'] * _0xc5bd40 + _0xeca96b['col2']['x'] * _0x3bbc1d , _0x3bbc1d = _0xeca96b['col1']['y'] * _0xc5bd40 + _0xeca96b['col2']['y'] * _0x3bbc1d , _0xc5bd40 = _0x41ac08; this['m_u']['x'] = _0x31d37c['m_sweep']['c']['x'] + _0xc5bd40 - _0x138a91['m_sweep']['c']['x'] - _0x5c3129, this['m_u']['y'] = _0x31d37c['m_sweep']['c']['y'] + _0x3bbc1d - _0x138a91['m_sweep']['c']['y'] - _0x300fb0, _0x41ac08 = Math['sqrt'](this['m_u']['x'] * this['m_u']['x'] + this['m_u']['y'] * this['m_u']['y']), _0x41ac08 > _0x36d772['b2_linearSlop'] ? this['m_u']['Multiply'](0x1 / _0x41ac08) : this['m_u']['SetZero'](), _0xeca96b = _0x5c3129 * this['m_u']['y'] - _0x300fb0 * this['m_u']['x']; var _0x4ba71a = _0xc5bd40 * this['m_u']['y'] - _0x3bbc1d * this['m_u']['x']; _0xeca96b = _0x138a91['m_invMass'] + _0x138a91['m_invI'] * _0xeca96b * _0xeca96b + _0x31d37c['m_invMass'] + _0x31d37c['m_invI'] * _0x4ba71a * _0x4ba71a, this['m_mass'] = 0x0 != _0xeca96b ? 0x1 / _0xeca96b : 0x0; if (0x0 < this['m_frequencyHz']) { var _0x41ac08 = _0x41ac08 - this['m_length'] , _0x4ba71a = 0x2 * Math['PI'] * this['m_frequencyHz'] , _0x2714d3 = this['m_mass'] * _0x4ba71a * _0x4ba71a; this['m_gamma'] = _0xfbd1ab['dt'] * (0x2 * this['m_mass'] * this['m_dampingRatio'] * _0x4ba71a + _0xfbd1ab['dt'] * _0x2714d3), this['m_gamma'] = 0x0 != this['m_gamma'] ? 0x1 / this['m_gamma'] : 0x0, this['m_bias'] = _0x41ac08 * _0xfbd1ab['dt'] * _0x2714d3 * this['m_gamma'], this['m_mass'] = _0xeca96b + this['m_gamma'], this['m_mass'] = 0x0 != this['m_mass'] ? 0x1 / this['m_mass'] : 0x0; } _0xfbd1ab['warmStarting'] ? (this['m_impulse'] *= _0xfbd1ab['dtRatio'], _0xfbd1ab = this['m_impulse'] * this['m_u']['x'], _0xeca96b = this['m_impulse'] * this['m_u']['y'], _0x138a91['m_linearVelocity']['x'] -= _0x138a91['m_invMass'] * _0xfbd1ab, _0x138a91['m_linearVelocity']['y'] -= _0x138a91['m_invMass'] * _0xeca96b, _0x138a91['m_angularVelocity'] -= _0x138a91['m_invI'] * (_0x5c3129 * _0xeca96b - _0x300fb0 * _0xfbd1ab), _0x31d37c['m_linearVelocity']['x'] += _0x31d37c['m_invMass'] * _0xfbd1ab, _0x31d37c['m_linearVelocity']['y'] += _0x31d37c['m_invMass'] * _0xeca96b, _0x31d37c['m_angularVelocity'] += _0x31d37c['m_invI'] * (_0xc5bd40 * _0xeca96b - _0x3bbc1d * _0xfbd1ab)) : this['m_impulse'] = 0x0; } , _0x538226['prototype']['SolveVelocityConstraints'] = function() { var _0x3191bb, _0x4f44fb = this['m_bodyA'], _0x7b0679 = this['m_bodyB']; _0x3191bb = _0x4f44fb['m_xf']['R']; var _0x1ff3d0 = this['m_localAnchor1']['x'] - _0x4f44fb['m_sweep']['localCenter']['x'] , _0x3d6c3e = this['m_localAnchor1']['y'] - _0x4f44fb['m_sweep']['localCenter']['y'] , _0x2432cb = _0x3191bb['col1']['x'] * _0x1ff3d0 + _0x3191bb['col2']['x'] * _0x3d6c3e , _0x3d6c3e = _0x3191bb['col1']['y'] * _0x1ff3d0 + _0x3191bb['col2']['y'] * _0x3d6c3e , _0x1ff3d0 = _0x2432cb; _0x3191bb = _0x7b0679['m_xf']['R']; var _0xdbc2e6 = this['m_localAnchor2']['x'] - _0x7b0679['m_sweep']['localCenter']['x'] , _0x544e42 = this['m_localAnchor2']['y'] - _0x7b0679['m_sweep']['localCenter']['y'] , _0x2432cb = _0x3191bb['col1']['x'] * _0xdbc2e6 + _0x3191bb['col2']['x'] * _0x544e42 , _0x544e42 = _0x3191bb['col1']['y'] * _0xdbc2e6 + _0x3191bb['col2']['y'] * _0x544e42 , _0xdbc2e6 = _0x2432cb , _0x2432cb = -this['m_mass'] * (this['m_u']['x'] * (_0x7b0679['m_linearVelocity']['x'] + -_0x7b0679['m_angularVelocity'] * _0x544e42 - (_0x4f44fb['m_linearVelocity']['x'] + -_0x4f44fb['m_angularVelocity'] * _0x3d6c3e)) + this['m_u']['y'] * (_0x7b0679['m_linearVelocity']['y'] + _0x7b0679['m_angularVelocity'] * _0xdbc2e6 - (_0x4f44fb['m_linearVelocity']['y'] + _0x4f44fb['m_angularVelocity'] * _0x1ff3d0)) + this['m_bias'] + this['m_gamma'] * this['m_impulse']); this['m_impulse'] += _0x2432cb, _0x3191bb = _0x2432cb * this['m_u']['x'], _0x2432cb *= this['m_u']['y'], _0x4f44fb['m_linearVelocity']['x'] -= _0x4f44fb['m_invMass'] * _0x3191bb, _0x4f44fb['m_linearVelocity']['y'] -= _0x4f44fb['m_invMass'] * _0x2432cb, _0x4f44fb['m_angularVelocity'] -= _0x4f44fb['m_invI'] * (_0x1ff3d0 * _0x2432cb - _0x3d6c3e * _0x3191bb), _0x7b0679['m_linearVelocity']['x'] += _0x7b0679['m_invMass'] * _0x3191bb, _0x7b0679['m_linearVelocity']['y'] += _0x7b0679['m_invMass'] * _0x2432cb, _0x7b0679['m_angularVelocity'] += _0x7b0679['m_invI'] * (_0xdbc2e6 * _0x2432cb - _0x544e42 * _0x3191bb); } , _0x538226['prototype']['SolvePositionConstraints'] = function() { var _0x220b8e; if (0x0 < this['m_frequencyHz']) return !0x0; var _0x59b406 = this['m_bodyA'] , _0x447b21 = this['m_bodyB']; _0x220b8e = _0x59b406['m_xf']['R']; var _0x5e73ef = this['m_localAnchor1']['x'] - _0x59b406['m_sweep']['localCenter']['x'] , _0x2544c3 = this['m_localAnchor1']['y'] - _0x59b406['m_sweep']['localCenter']['y'] , _0x462157 = _0x220b8e['col1']['x'] * _0x5e73ef + _0x220b8e['col2']['x'] * _0x2544c3 , _0x2544c3 = _0x220b8e['col1']['y'] * _0x5e73ef + _0x220b8e['col2']['y'] * _0x2544c3 , _0x5e73ef = _0x462157; _0x220b8e = _0x447b21['m_xf']['R']; var _0x391ffc = this['m_localAnchor2']['x'] - _0x447b21['m_sweep']['localCenter']['x'] , _0x5bb2e3 = this['m_localAnchor2']['y'] - _0x447b21['m_sweep']['localCenter']['y'] , _0x462157 = _0x220b8e['col1']['x'] * _0x391ffc + _0x220b8e['col2']['x'] * _0x5bb2e3 , _0x5bb2e3 = _0x220b8e['col1']['y'] * _0x391ffc + _0x220b8e['col2']['y'] * _0x5bb2e3 , _0x391ffc = _0x462157 , _0x462157 = _0x447b21['m_sweep']['c']['x'] + _0x391ffc - _0x59b406['m_sweep']['c']['x'] - _0x5e73ef , _0x13e699 = _0x447b21['m_sweep']['c']['y'] + _0x5bb2e3 - _0x59b406['m_sweep']['c']['y'] - _0x2544c3; _0x220b8e = Math['sqrt'](_0x462157 * _0x462157 + _0x13e699 * _0x13e699), _0x462157 /= _0x220b8e, _0x13e699 /= _0x220b8e, _0x220b8e -= this['m_length'], _0x220b8e = _0x3bc259['Clamp'](_0x220b8e, -_0x36d772['b2_maxLinearCorrection'], _0x36d772['b2_maxLinearCorrection']); var _0x29fe9d = -this['m_mass'] * _0x220b8e; return this['m_u']['Set'](_0x462157, _0x13e699), _0x462157 = _0x29fe9d * this['m_u']['x'], _0x13e699 = _0x29fe9d * this['m_u']['y'], _0x59b406['m_sweep']['c']['x'] -= _0x59b406['m_invMass'] * _0x462157, _0x59b406['m_sweep']['c']['y'] -= _0x59b406['m_invMass'] * _0x13e699, _0x59b406['m_sweep']['a'] -= _0x59b406['m_invI'] * (_0x5e73ef * _0x13e699 - _0x2544c3 * _0x462157), _0x447b21['m_sweep']['c']['x'] += _0x447b21['m_invMass'] * _0x462157, _0x447b21['m_sweep']['c']['y'] += _0x447b21['m_invMass'] * _0x13e699, _0x447b21['m_sweep']['a'] += _0x447b21['m_invI'] * (_0x391ffc * _0x13e699 - _0x5bb2e3 * _0x462157), _0x59b406['SynchronizeTransform'](), _0x447b21['SynchronizeTransform'](), _0x3bc259['Abs'](_0x220b8e) < _0x36d772['b2_linearSlop']; } , Box2D['inherit'](_0xe014b2, Box2D['Dynamics']['Joints']['b2JointDef']), _0xe014b2['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0xe014b2['b2DistanceJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments), this['localAnchorA'] = new _0x416390(), this['localAnchorB'] = new _0x416390(); } , _0xe014b2['prototype']['b2DistanceJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_distanceJoint'], this['length'] = 0x1, this['dampingRatio'] = this['frequencyHz'] = 0x0; } , _0xe014b2['prototype']['Initialize'] = function(_0x2979da, _0x3efad1, _0x4a6ebf, _0xf465a5) { this['bodyA'] = _0x2979da, this['bodyB'] = _0x3efad1, this['localAnchorA']['SetV'](this['bodyA']['GetLocalPoint'](_0x4a6ebf)), this['localAnchorB']['SetV'](this['bodyB']['GetLocalPoint'](_0xf465a5)), _0x2979da = _0xf465a5['x'] - _0x4a6ebf['x'], _0x4a6ebf = _0xf465a5['y'] - _0x4a6ebf['y'], this['length'] = Math['sqrt'](_0x2979da * _0x2979da + _0x4a6ebf * _0x4a6ebf), this['dampingRatio'] = this['frequencyHz'] = 0x0; } , Box2D['inherit'](_0x1e8dbd, Box2D['Dynamics']['Joints']['b2Joint']), _0x1e8dbd['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0x1e8dbd['b2FrictionJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['m_localAnchorA'] = new _0x416390(), this['m_localAnchorB'] = new _0x416390(), this['m_linearMass'] = new _0x5c4159(), this['m_linearImpulse'] = new _0x416390(); } , _0x1e8dbd['prototype']['GetAnchorA'] = function() { return this['m_bodyA']['GetWorldPoint'](this['m_localAnchorA']); } , _0x1e8dbd['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchorB']); } , _0x1e8dbd['prototype']['GetReactionForce'] = function(_0x8a5b93) { return void 0x0 === _0x8a5b93 && (_0x8a5b93 = 0x0), new _0x416390(_0x8a5b93 * this['m_linearImpulse']['x'],_0x8a5b93 * this['m_linearImpulse']['y']); } , _0x1e8dbd['prototype']['GetReactionTorque'] = function(_0x370e12) { return void 0x0 === _0x370e12 && (_0x370e12 = 0x0), _0x370e12 * this['m_angularImpulse']; } , _0x1e8dbd['prototype']['SetMaxForce'] = function(_0x21e7fe) { void 0x0 === _0x21e7fe && (_0x21e7fe = 0x0), this['m_maxForce'] = _0x21e7fe; } , _0x1e8dbd['prototype']['GetMaxForce'] = function() { return this['m_maxForce']; } , _0x1e8dbd['prototype']['SetMaxTorque'] = function(_0x14d964) { void 0x0 === _0x14d964 && (_0x14d964 = 0x0), this['m_maxTorque'] = _0x14d964; } , _0x1e8dbd['prototype']['GetMaxTorque'] = function() { return this['m_maxTorque']; } , _0x1e8dbd['prototype']['b2FrictionJoint'] = function(_0x371373) { this['__super']['b2Joint']['call'](this, _0x371373), this['m_localAnchorA']['SetV'](_0x371373['localAnchorA']), this['m_localAnchorB']['SetV'](_0x371373['localAnchorB']), this['m_linearMass']['SetZero'](), this['m_angularMass'] = 0x0, this['m_linearImpulse']['SetZero'](), this['m_angularImpulse'] = 0x0, this['m_maxForce'] = _0x371373['maxForce'], this['m_maxTorque'] = _0x371373['maxTorque']; } , _0x1e8dbd['prototype']['InitVelocityConstraints'] = function(_0x3370c1) { var _0x403e4e, _0x5bcc06 = 0x0, _0x1ec809 = this['m_bodyA'], _0xf99cfa = this['m_bodyB']; _0x403e4e = _0x1ec809['m_xf']['R']; var _0x12121f = this['m_localAnchorA']['x'] - _0x1ec809['m_sweep']['localCenter']['x'] , _0xc78bc5 = this['m_localAnchorA']['y'] - _0x1ec809['m_sweep']['localCenter']['y'] , _0x5bcc06 = _0x403e4e['col1']['x'] * _0x12121f + _0x403e4e['col2']['x'] * _0xc78bc5 , _0xc78bc5 = _0x403e4e['col1']['y'] * _0x12121f + _0x403e4e['col2']['y'] * _0xc78bc5 , _0x12121f = _0x5bcc06; _0x403e4e = _0xf99cfa['m_xf']['R']; var _0x448d08 = this['m_localAnchorB']['x'] - _0xf99cfa['m_sweep']['localCenter']['x'] , _0x2b7470 = this['m_localAnchorB']['y'] - _0xf99cfa['m_sweep']['localCenter']['y'] , _0x5bcc06 = _0x403e4e['col1']['x'] * _0x448d08 + _0x403e4e['col2']['x'] * _0x2b7470 , _0x2b7470 = _0x403e4e['col1']['y'] * _0x448d08 + _0x403e4e['col2']['y'] * _0x2b7470 , _0x448d08 = _0x5bcc06; _0x403e4e = _0x1ec809['m_invMass']; var _0x5bcc06 = _0xf99cfa['m_invMass'] , _0x26bad4 = _0x1ec809['m_invI'] , _0x4181da = _0xf99cfa['m_invI'] , _0x441972 = new _0x5c4159(); _0x441972['col1']['x'] = _0x403e4e + _0x5bcc06, _0x441972['col2']['x'] = 0x0, _0x441972['col1']['y'] = 0x0, _0x441972['col2']['y'] = _0x403e4e + _0x5bcc06, _0x441972['col1']['x'] += _0x26bad4 * _0xc78bc5 * _0xc78bc5, _0x441972['col2']['x'] += -_0x26bad4 * _0x12121f * _0xc78bc5, _0x441972['col1']['y'] += -_0x26bad4 * _0x12121f * _0xc78bc5, _0x441972['col2']['y'] += _0x26bad4 * _0x12121f * _0x12121f, _0x441972['col1']['x'] += _0x4181da * _0x2b7470 * _0x2b7470, _0x441972['col2']['x'] += -_0x4181da * _0x448d08 * _0x2b7470, _0x441972['col1']['y'] += -_0x4181da * _0x448d08 * _0x2b7470, _0x441972['col2']['y'] += _0x4181da * _0x448d08 * _0x448d08, _0x441972['GetInverse'](this['m_linearMass']), this['m_angularMass'] = _0x26bad4 + _0x4181da, 0x0 < this['m_angularMass'] && (this['m_angularMass'] = 0x1 / this['m_angularMass']), _0x3370c1['warmStarting'] ? (this['m_linearImpulse']['x'] *= _0x3370c1['dtRatio'], this['m_linearImpulse']['y'] *= _0x3370c1['dtRatio'], this['m_angularImpulse'] *= _0x3370c1['dtRatio'], _0x3370c1 = this['m_linearImpulse'], _0x1ec809['m_linearVelocity']['x'] -= _0x403e4e * _0x3370c1['x'], _0x1ec809['m_linearVelocity']['y'] -= _0x403e4e * _0x3370c1['y'], _0x1ec809['m_angularVelocity'] -= _0x26bad4 * (_0x12121f * _0x3370c1['y'] - _0xc78bc5 * _0x3370c1['x'] + this['m_angularImpulse']), _0xf99cfa['m_linearVelocity']['x'] += _0x5bcc06 * _0x3370c1['x'], _0xf99cfa['m_linearVelocity']['y'] += _0x5bcc06 * _0x3370c1['y'], _0xf99cfa['m_angularVelocity'] += _0x4181da * (_0x448d08 * _0x3370c1['y'] - _0x2b7470 * _0x3370c1['x'] + this['m_angularImpulse'])) : (this['m_linearImpulse']['SetZero'](), this['m_angularImpulse'] = 0x0); } , _0x1e8dbd['prototype']['SolveVelocityConstraints'] = function(_0x218ae6) { var _0x591eb5, _0x2bacaa = 0x0, _0xd366cb = this['m_bodyA'], _0x55b69a = this['m_bodyB'], _0x25c88b = _0xd366cb['m_linearVelocity'], _0x4027aa = _0xd366cb['m_angularVelocity'], _0x31cf27 = _0x55b69a['m_linearVelocity'], _0x5f047b = _0x55b69a['m_angularVelocity'], _0x4f1b62 = _0xd366cb['m_invMass'], _0x10c0d6 = _0x55b69a['m_invMass'], _0x5cc89b = _0xd366cb['m_invI'], _0xa5c3d8 = _0x55b69a['m_invI']; _0x591eb5 = _0xd366cb['m_xf']['R']; var _0x25da14 = this['m_localAnchorA']['x'] - _0xd366cb['m_sweep']['localCenter']['x'] , _0x3adfd6 = this['m_localAnchorA']['y'] - _0xd366cb['m_sweep']['localCenter']['y'] , _0x2bacaa = _0x591eb5['col1']['x'] * _0x25da14 + _0x591eb5['col2']['x'] * _0x3adfd6 , _0x3adfd6 = _0x591eb5['col1']['y'] * _0x25da14 + _0x591eb5['col2']['y'] * _0x3adfd6 , _0x25da14 = _0x2bacaa; _0x591eb5 = _0x55b69a['m_xf']['R']; var _0xb6b77c = this['m_localAnchorB']['x'] - _0x55b69a['m_sweep']['localCenter']['x'] , _0x2f7aea = this['m_localAnchorB']['y'] - _0x55b69a['m_sweep']['localCenter']['y'] , _0x2bacaa = _0x591eb5['col1']['x'] * _0xb6b77c + _0x591eb5['col2']['x'] * _0x2f7aea , _0x2f7aea = _0x591eb5['col1']['y'] * _0xb6b77c + _0x591eb5['col2']['y'] * _0x2f7aea , _0xb6b77c = _0x2bacaa , _0x2bacaa = -this['m_angularMass'] * (_0x5f047b - _0x4027aa) , _0x32e1c2 = this['m_angularImpulse']; _0x591eb5 = _0x218ae6['dt'] * this['m_maxTorque'], this['m_angularImpulse'] = _0x3bc259['Clamp'](this['m_angularImpulse'] + _0x2bacaa, -_0x591eb5, _0x591eb5), _0x2bacaa = this['m_angularImpulse'] - _0x32e1c2, _0x4027aa -= _0x5cc89b * _0x2bacaa, _0x5f047b += _0xa5c3d8 * _0x2bacaa, _0x591eb5 = _0x3bc259['MulMV'](this['m_linearMass'], new _0x416390(-(_0x31cf27['x'] - _0x5f047b * _0x2f7aea - _0x25c88b['x'] + _0x4027aa * _0x3adfd6),-(_0x31cf27['y'] + _0x5f047b * _0xb6b77c - _0x25c88b['y'] - _0x4027aa * _0x25da14))), _0x2bacaa = this['m_linearImpulse']['Copy'](), this['m_linearImpulse']['Add'](_0x591eb5), _0x591eb5 = _0x218ae6['dt'] * this['m_maxForce'], this['m_linearImpulse']['LengthSquared']() > _0x591eb5 * _0x591eb5 && (this['m_linearImpulse']['Normalize'](), this['m_linearImpulse']['Multiply'](_0x591eb5)), _0x591eb5 = _0x3bc259['SubtractVV'](this['m_linearImpulse'], _0x2bacaa), _0x25c88b['x'] -= _0x4f1b62 * _0x591eb5['x'], _0x25c88b['y'] -= _0x4f1b62 * _0x591eb5['y'], _0x4027aa -= _0x5cc89b * (_0x25da14 * _0x591eb5['y'] - _0x3adfd6 * _0x591eb5['x']), _0x31cf27['x'] += _0x10c0d6 * _0x591eb5['x'], _0x31cf27['y'] += _0x10c0d6 * _0x591eb5['y'], _0x5f047b += _0xa5c3d8 * (_0xb6b77c * _0x591eb5['y'] - _0x2f7aea * _0x591eb5['x']), _0xd366cb['m_angularVelocity'] = _0x4027aa, _0x55b69a['m_angularVelocity'] = _0x5f047b; } , _0x1e8dbd['prototype']['SolvePositionConstraints'] = function() { return !0x0; } , Box2D['inherit'](_0x40af6d, Box2D['Dynamics']['Joints']['b2JointDef']), _0x40af6d['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0x40af6d['b2FrictionJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments), this['localAnchorA'] = new _0x416390(), this['localAnchorB'] = new _0x416390(); } , _0x40af6d['prototype']['b2FrictionJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_frictionJoint'], this['maxTorque'] = this['maxForce'] = 0x0; } , _0x40af6d['prototype']['Initialize'] = function(_0x15f327, _0x1e851d, _0x509fd) { this['bodyA'] = _0x15f327, this['bodyB'] = _0x1e851d, this['localAnchorA']['SetV'](this['bodyA']['GetLocalPoint'](_0x509fd)), this['localAnchorB']['SetV'](this['bodyB']['GetLocalPoint'](_0x509fd)); } , Box2D['inherit'](_0x43441a, Box2D['Dynamics']['Joints']['b2Joint']), _0x43441a['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0x43441a['b2GearJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['m_groundAnchor1'] = new _0x416390(), this['m_groundAnchor2'] = new _0x416390(), this['m_localAnchor1'] = new _0x416390(), this['m_localAnchor2'] = new _0x416390(), this['m_J'] = new _0x13a2b7(); } , _0x43441a['prototype']['GetAnchorA'] = function() { return this['m_bodyA']['GetWorldPoint'](this['m_localAnchor1']); } , _0x43441a['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchor2']); } , _0x43441a['prototype']['GetReactionForce'] = function(_0x3c1635) { return void 0x0 === _0x3c1635 && (_0x3c1635 = 0x0), new _0x416390(_0x3c1635 * this['m_impulse'] * this['m_J']['linearB']['x'],_0x3c1635 * this['m_impulse'] * this['m_J']['linearB']['y']); } , _0x43441a['prototype']['GetReactionTorque'] = function(_0x1f6fa8) { void 0x0 === _0x1f6fa8 && (_0x1f6fa8 = 0x0); var _0x183b97 = this['m_bodyB']['m_xf']['R'] , _0x4add47 = this['m_localAnchor1']['x'] - this['m_bodyB']['m_sweep']['localCenter']['x'] , _0x5f311f = this['m_localAnchor1']['y'] - this['m_bodyB']['m_sweep']['localCenter']['y'] , _0x2c13b5 = _0x183b97['col1']['x'] * _0x4add47 + _0x183b97['col2']['x'] * _0x5f311f , _0x5f311f = _0x183b97['col1']['y'] * _0x4add47 + _0x183b97['col2']['y'] * _0x5f311f; return _0x1f6fa8 * (this['m_impulse'] * this['m_J']['angularB'] - _0x2c13b5 * this['m_impulse'] * this['m_J']['linearB']['y'] + _0x5f311f * this['m_impulse'] * this['m_J']['linearB']['x']); } , _0x43441a['prototype']['GetRatio'] = function() { return this['m_ratio']; } , _0x43441a['prototype']['SetRatio'] = function(_0x20f1d2) { void 0x0 === _0x20f1d2 && (_0x20f1d2 = 0x0), this['m_ratio'] = _0x20f1d2; } , _0x43441a['prototype']['b2GearJoint'] = function(_0x2cf2b9) { this['__super']['b2Joint']['call'](this, _0x2cf2b9); var _0x1c9189 = parseInt(_0x2cf2b9['joint1']['m_type']) , _0x5639b9 = parseInt(_0x2cf2b9['joint2']['m_type']); this['m_prismatic2'] = this['m_revolute2'] = this['m_prismatic1'] = this['m_revolute1'] = null; var _0x59842b = 0x0 , _0x284c74 = 0x0; this['m_ground1'] = _0x2cf2b9['joint1']['GetBodyA'](), this['m_bodyA'] = _0x2cf2b9['joint1']['GetBodyB'](), _0x1c9189 == _0x1e6a98['e_revoluteJoint'] ? (this['m_revolute1'] = _0x2cf2b9['joint1']instanceof _0x4418f7 ? _0x2cf2b9['joint1'] : null, this['m_groundAnchor1']['SetV'](this['m_revolute1']['m_localAnchor1']), this['m_localAnchor1']['SetV'](this['m_revolute1']['m_localAnchor2']), _0x59842b = this['m_revolute1']['GetJointAngle']()) : (this['m_prismatic1'] = _0x2cf2b9['joint1']instanceof _0x1c9bc0 ? _0x2cf2b9['joint1'] : null, this['m_groundAnchor1']['SetV'](this['m_prismatic1']['m_localAnchor1']), this['m_localAnchor1']['SetV'](this['m_prismatic1']['m_localAnchor2']), _0x59842b = this['m_prismatic1']['GetJointTranslation']()), this['m_ground2'] = _0x2cf2b9['joint2']['GetBodyA'](), this['m_bodyB'] = _0x2cf2b9['joint2']['GetBodyB'](), _0x5639b9 == _0x1e6a98['e_revoluteJoint'] ? (this['m_revolute2'] = _0x2cf2b9['joint2']instanceof _0x4418f7 ? _0x2cf2b9['joint2'] : null, this['m_groundAnchor2']['SetV'](this['m_revolute2']['m_localAnchor1']), this['m_localAnchor2']['SetV'](this['m_revolute2']['m_localAnchor2']), _0x284c74 = this['m_revolute2']['GetJointAngle']()) : (this['m_prismatic2'] = _0x2cf2b9['joint2']instanceof _0x1c9bc0 ? _0x2cf2b9['joint2'] : null, this['m_groundAnchor2']['SetV'](this['m_prismatic2']['m_localAnchor1']), this['m_localAnchor2']['SetV'](this['m_prismatic2']['m_localAnchor2']), _0x284c74 = this['m_prismatic2']['GetJointTranslation']()), this['m_ratio'] = _0x2cf2b9['ratio'], this['m_constant'] = _0x59842b + this['m_ratio'] * _0x284c74, this['m_impulse'] = 0x0; } , _0x43441a['prototype']['InitVelocityConstraints'] = function(_0xc8c74a) { var _0x45007a = this['m_ground1'] , _0x2f59d9 = this['m_ground2'] , _0x11076f = this['m_bodyA'] , _0x596962 = this['m_bodyB'] , _0x5e618b = 0x0 , _0x16ebc1 = 0x0 , _0x3adda9 = 0x0 , _0x4c64a4 = 0x0 , _0x2b82b3 = 0x0 , _0x37d14d = 0x0; this['m_J']['SetZero'](), this['m_revolute1'] ? (this['m_J']['angularA'] = -0x1, _0x37d14d += _0x11076f['m_invI']) : (_0x45007a = _0x45007a['m_xf']['R'], _0x16ebc1 = this['m_prismatic1']['m_localXAxis1'], _0x5e618b = _0x45007a['col1']['x'] * _0x16ebc1['x'] + _0x45007a['col2']['x'] * _0x16ebc1['y'], _0x16ebc1 = _0x45007a['col1']['y'] * _0x16ebc1['x'] + _0x45007a['col2']['y'] * _0x16ebc1['y'], _0x45007a = _0x11076f['m_xf']['R'], _0x3adda9 = this['m_localAnchor1']['x'] - _0x11076f['m_sweep']['localCenter']['x'], _0x4c64a4 = this['m_localAnchor1']['y'] - _0x11076f['m_sweep']['localCenter']['y'], _0x2b82b3 = _0x45007a['col1']['x'] * _0x3adda9 + _0x45007a['col2']['x'] * _0x4c64a4, _0x4c64a4 = _0x45007a['col1']['y'] * _0x3adda9 + _0x45007a['col2']['y'] * _0x4c64a4, _0x3adda9 = _0x2b82b3 * _0x16ebc1 - _0x4c64a4 * _0x5e618b, this['m_J']['linearA']['Set'](-_0x5e618b, -_0x16ebc1), this['m_J']['angularA'] = -_0x3adda9, _0x37d14d += _0x11076f['m_invMass'] + _0x11076f['m_invI'] * _0x3adda9 * _0x3adda9), this['m_revolute2'] ? (this['m_J']['angularB'] = -this['m_ratio'], _0x37d14d += this['m_ratio'] * this['m_ratio'] * _0x596962['m_invI']) : (_0x45007a = _0x2f59d9['m_xf']['R'], _0x16ebc1 = this['m_prismatic2']['m_localXAxis1'], _0x5e618b = _0x45007a['col1']['x'] * _0x16ebc1['x'] + _0x45007a['col2']['x'] * _0x16ebc1['y'], _0x16ebc1 = _0x45007a['col1']['y'] * _0x16ebc1['x'] + _0x45007a['col2']['y'] * _0x16ebc1['y'], _0x45007a = _0x596962['m_xf']['R'], _0x3adda9 = this['m_localAnchor2']['x'] - _0x596962['m_sweep']['localCenter']['x'], _0x4c64a4 = this['m_localAnchor2']['y'] - _0x596962['m_sweep']['localCenter']['y'], _0x2b82b3 = _0x45007a['col1']['x'] * _0x3adda9 + _0x45007a['col2']['x'] * _0x4c64a4, _0x4c64a4 = _0x45007a['col1']['y'] * _0x3adda9 + _0x45007a['col2']['y'] * _0x4c64a4, _0x3adda9 = _0x2b82b3 * _0x16ebc1 - _0x4c64a4 * _0x5e618b, this['m_J']['linearB']['Set'](-this['m_ratio'] * _0x5e618b, -this['m_ratio'] * _0x16ebc1), this['m_J']['angularB'] = -this['m_ratio'] * _0x3adda9, _0x37d14d += this['m_ratio'] * this['m_ratio'] * (_0x596962['m_invMass'] + _0x596962['m_invI'] * _0x3adda9 * _0x3adda9)), this['m_mass'] = 0x0 < _0x37d14d ? 0x1 / _0x37d14d : 0x0, _0xc8c74a['warmStarting'] ? (_0x11076f['m_linearVelocity']['x'] += _0x11076f['m_invMass'] * this['m_impulse'] * this['m_J']['linearA']['x'], _0x11076f['m_linearVelocity']['y'] += _0x11076f['m_invMass'] * this['m_impulse'] * this['m_J']['linearA']['y'], _0x11076f['m_angularVelocity'] += _0x11076f['m_invI'] * this['m_impulse'] * this['m_J']['angularA'], _0x596962['m_linearVelocity']['x'] += _0x596962['m_invMass'] * this['m_impulse'] * this['m_J']['linearB']['x'], _0x596962['m_linearVelocity']['y'] += _0x596962['m_invMass'] * this['m_impulse'] * this['m_J']['linearB']['y'], _0x596962['m_angularVelocity'] += _0x596962['m_invI'] * this['m_impulse'] * this['m_J']['angularB']) : this['m_impulse'] = 0x0; } , _0x43441a['prototype']['SolveVelocityConstraints'] = function() { var _0x37a1a4 = this['m_bodyA'] , _0x48daff = this['m_bodyB'] , _0x43db80 = -this['m_mass'] * this['m_J']['Compute'](_0x37a1a4['m_linearVelocity'], _0x37a1a4['m_angularVelocity'], _0x48daff['m_linearVelocity'], _0x48daff['m_angularVelocity']); this['m_impulse'] += _0x43db80, _0x37a1a4['m_linearVelocity']['x'] += _0x37a1a4['m_invMass'] * _0x43db80 * this['m_J']['linearA']['x'], _0x37a1a4['m_linearVelocity']['y'] += _0x37a1a4['m_invMass'] * _0x43db80 * this['m_J']['linearA']['y'], _0x37a1a4['m_angularVelocity'] += _0x37a1a4['m_invI'] * _0x43db80 * this['m_J']['angularA'], _0x48daff['m_linearVelocity']['x'] += _0x48daff['m_invMass'] * _0x43db80 * this['m_J']['linearB']['x'], _0x48daff['m_linearVelocity']['y'] += _0x48daff['m_invMass'] * _0x43db80 * this['m_J']['linearB']['y'], _0x48daff['m_angularVelocity'] += _0x48daff['m_invI'] * _0x43db80 * this['m_J']['angularB']; } , _0x43441a['prototype']['SolvePositionConstraints'] = function() { var _0x338caa = this['m_bodyA'] , _0x450c03 = this['m_bodyB'] , _0x14b846 = 0x0 , _0x21bccb = 0x0 , _0x14b846 = this['m_revolute1'] ? this['m_revolute1']['GetJointAngle']() : this['m_prismatic1']['GetJointTranslation']() , _0x21bccb = this['m_revolute2'] ? this['m_revolute2']['GetJointAngle']() : this['m_prismatic2']['GetJointTranslation']() , _0x14b846 = -this['m_mass'] * (this['m_constant'] - (_0x14b846 + this['m_ratio'] * _0x21bccb)); return _0x338caa['m_sweep']['c']['x'] += _0x338caa['m_invMass'] * _0x14b846 * this['m_J']['linearA']['x'], _0x338caa['m_sweep']['c']['y'] += _0x338caa['m_invMass'] * _0x14b846 * this['m_J']['linearA']['y'], _0x338caa['m_sweep']['a'] += _0x338caa['m_invI'] * _0x14b846 * this['m_J']['angularA'], _0x450c03['m_sweep']['c']['x'] += _0x450c03['m_invMass'] * _0x14b846 * this['m_J']['linearB']['x'], _0x450c03['m_sweep']['c']['y'] += _0x450c03['m_invMass'] * _0x14b846 * this['m_J']['linearB']['y'], _0x450c03['m_sweep']['a'] += _0x450c03['m_invI'] * _0x14b846 * this['m_J']['angularB'], _0x338caa['SynchronizeTransform'](), _0x450c03['SynchronizeTransform'](), 0x0 < _0x36d772['b2_linearSlop']; } , Box2D['inherit'](_0x3215b5, Box2D['Dynamics']['Joints']['b2JointDef']), _0x3215b5['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0x3215b5['b2GearJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments); } , _0x3215b5['prototype']['b2GearJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_gearJoint'], this['joint2'] = this['joint1'] = null, this['ratio'] = 0x1; } , _0x13a2b7['b2Jacobian'] = function() { this['linearA'] = new _0x416390(), this['linearB'] = new _0x416390(); } , _0x13a2b7['prototype']['SetZero'] = function() { this['linearA']['SetZero'](), this['angularA'] = 0x0, this['linearB']['SetZero'](), this['angularB'] = 0x0; } , _0x13a2b7['prototype']['Set'] = function(_0x2e4e85, _0x2b3ecf, _0x2faaf1, _0x509b56) { void 0x0 === _0x2b3ecf && (_0x2b3ecf = 0x0), void 0x0 === _0x509b56 && (_0x509b56 = 0x0), this['linearA']['SetV'](_0x2e4e85), this['angularA'] = _0x2b3ecf, this['linearB']['SetV'](_0x2faaf1), this['angularB'] = _0x509b56; } , _0x13a2b7['prototype']['Compute'] = function(_0x3a3c79, _0x480c2f, _0x3f66cd, _0x206d75) { return void 0x0 === _0x480c2f && (_0x480c2f = 0x0), void 0x0 === _0x206d75 && (_0x206d75 = 0x0), this['linearA']['x'] * _0x3a3c79['x'] + this['linearA']['y'] * _0x3a3c79['y'] + this['angularA'] * _0x480c2f + (this['linearB']['x'] * _0x3f66cd['x'] + this['linearB']['y'] * _0x3f66cd['y']) + this['angularB'] * _0x206d75; } , _0x1e6a98['b2Joint'] = function() { this['m_edgeA'] = new _0x7e2b60(), this['m_edgeB'] = new _0x7e2b60(), this['m_localCenterA'] = new _0x416390(), this['m_localCenterB'] = new _0x416390(); } , _0x1e6a98['prototype']['GetType'] = function() { return this['m_type']; } , _0x1e6a98['prototype']['GetAnchorA'] = function() { return null; } , _0x1e6a98['prototype']['GetAnchorB'] = function() { return null; } , _0x1e6a98['prototype']['GetReactionForce'] = function() { return null; } , _0x1e6a98['prototype']['GetReactionTorque'] = function() { return 0x0; } , _0x1e6a98['prototype']['GetBodyA'] = function() { return this['m_bodyA']; } , _0x1e6a98['prototype']['GetBodyB'] = function() { return this['m_bodyB']; } , _0x1e6a98['prototype']['GetNext'] = function() { return this['m_next']; } , _0x1e6a98['prototype']['GetUserData'] = function() { return this['m_userData']; } , _0x1e6a98['prototype']['SetUserData'] = function(_0xfda86f) { this['m_userData'] = _0xfda86f; } , _0x1e6a98['prototype']['IsActive'] = function() { return this['m_bodyA']['IsActive']() && this['m_bodyB']['IsActive'](); } , _0x1e6a98['Create'] = function(_0x13176b) { var _0x3a5fee = null; switch (_0x13176b['type']) { case _0x1e6a98['e_distanceJoint']: _0x3a5fee = new _0x538226(_0x13176b instanceof _0xe014b2 ? _0x13176b : null); break; case _0x1e6a98['e_mouseJoint']: _0x3a5fee = new _0x28338a(_0x13176b instanceof _0x21d19e ? _0x13176b : null); break; case _0x1e6a98['e_prismaticJoint']: _0x3a5fee = new _0x1c9bc0(_0x13176b instanceof _0x2afc72 ? _0x13176b : null); break; case _0x1e6a98['e_revoluteJoint']: _0x3a5fee = new _0x4418f7(_0x13176b instanceof _0x38fda6 ? _0x13176b : null); break; case _0x1e6a98['e_pulleyJoint']: _0x3a5fee = new _0xe26196(_0x13176b instanceof _0x260839 ? _0x13176b : null); break; case _0x1e6a98['e_gearJoint']: _0x3a5fee = new _0x43441a(_0x13176b instanceof _0x3215b5 ? _0x13176b : null); break; case _0x1e6a98['e_lineJoint']: _0x3a5fee = new _0x5d32b7(_0x13176b instanceof _0x254160 ? _0x13176b : null); break; case _0x1e6a98['e_weldJoint']: _0x3a5fee = new _0x366e6d(_0x13176b instanceof _0x60e6d4 ? _0x13176b : null); break; case _0x1e6a98['e_frictionJoint']: _0x3a5fee = new _0x1e8dbd(_0x13176b instanceof _0x40af6d ? _0x13176b : null); } return _0x3a5fee; } , _0x1e6a98['Destroy'] = function() {} , _0x1e6a98['prototype']['b2Joint'] = function(_0x2c8138) { _0x36d772['b2Assert'](_0x2c8138['bodyA'] != _0x2c8138['bodyB']), this['m_type'] = _0x2c8138['type'], this['m_next'] = this['m_prev'] = null, this['m_bodyA'] = _0x2c8138['bodyA'], this['m_bodyB'] = _0x2c8138['bodyB'], this['m_collideConnected'] = _0x2c8138['collideConnected'], this['m_islandFlag'] = !0x1, this['m_userData'] = _0x2c8138['userData']; } , _0x1e6a98['prototype']['InitVelocityConstraints'] = function() {} , _0x1e6a98['prototype']['SolveVelocityConstraints'] = function() {} , _0x1e6a98['prototype']['FinalizeVelocityConstraints'] = function() {} , _0x1e6a98['prototype']['SolvePositionConstraints'] = function() { return !0x1; } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['Joints']['b2Joint']['e_unknownJoint'] = 0x0, Box2D['Dynamics']['Joints']['b2Joint']['e_revoluteJoint'] = 0x1, Box2D['Dynamics']['Joints']['b2Joint']['e_prismaticJoint'] = 0x2, Box2D['Dynamics']['Joints']['b2Joint']['e_distanceJoint'] = 0x3, Box2D['Dynamics']['Joints']['b2Joint']['e_pulleyJoint'] = 0x4, Box2D['Dynamics']['Joints']['b2Joint']['e_mouseJoint'] = 0x5, Box2D['Dynamics']['Joints']['b2Joint']['e_gearJoint'] = 0x6, Box2D['Dynamics']['Joints']['b2Joint']['e_lineJoint'] = 0x7, Box2D['Dynamics']['Joints']['b2Joint']['e_weldJoint'] = 0x8, Box2D['Dynamics']['Joints']['b2Joint']['e_frictionJoint'] = 0x9, Box2D['Dynamics']['Joints']['b2Joint']['e_inactiveLimit'] = 0x0, Box2D['Dynamics']['Joints']['b2Joint']['e_atLowerLimit'] = 0x1, Box2D['Dynamics']['Joints']['b2Joint']['e_atUpperLimit'] = 0x2, Box2D['Dynamics']['Joints']['b2Joint']['e_equalLimits'] = 0x3; }), _0x147c39['b2JointDef'] = function() {} , _0x147c39['prototype']['b2JointDef'] = function() { this['type'] = _0x1e6a98['e_unknownJoint'], this['bodyB'] = this['bodyA'] = this['userData'] = null, this['collideConnected'] = !0x1; } , _0x7e2b60['b2JointEdge'] = function() {} , Box2D['inherit'](_0x5d32b7, Box2D['Dynamics']['Joints']['b2Joint']), _0x5d32b7['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0x5d32b7['b2LineJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['m_localAnchor1'] = new _0x416390(), this['m_localAnchor2'] = new _0x416390(), this['m_localXAxis1'] = new _0x416390(), this['m_localYAxis1'] = new _0x416390(), this['m_axis'] = new _0x416390(), this['m_perp'] = new _0x416390(), this['m_K'] = new _0x5c4159(), this['m_impulse'] = new _0x416390(); } , _0x5d32b7['prototype']['GetAnchorA'] = function() { return this['m_bodyA']['GetWorldPoint'](this['m_localAnchor1']); } , _0x5d32b7['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchor2']); } , _0x5d32b7['prototype']['GetReactionForce'] = function(_0x5ea1d1) { return void 0x0 === _0x5ea1d1 && (_0x5ea1d1 = 0x0), new _0x416390(_0x5ea1d1 * (this['m_impulse']['x'] * this['m_perp']['x'] + (this['m_motorImpulse'] + this['m_impulse']['y']) * this['m_axis']['x']),_0x5ea1d1 * (this['m_impulse']['x'] * this['m_perp']['y'] + (this['m_motorImpulse'] + this['m_impulse']['y']) * this['m_axis']['y'])); } , _0x5d32b7['prototype']['GetReactionTorque'] = function(_0x744c9f) { return void 0x0 === _0x744c9f && (_0x744c9f = 0x0), _0x744c9f * this['m_impulse']['y']; } , _0x5d32b7['prototype']['GetJointTranslation'] = function() { var _0x22eaf6 = this['m_bodyA'] , _0x14e0cc = this['m_bodyB'] , _0x309505 = _0x22eaf6['GetWorldPoint'](this['m_localAnchor1']) , _0x4fb858 = _0x14e0cc['GetWorldPoint'](this['m_localAnchor2']) , _0x14e0cc = _0x4fb858['x'] - _0x309505['x'] , _0x309505 = _0x4fb858['y'] - _0x309505['y'] , _0x22eaf6 = _0x22eaf6['GetWorldVector'](this['m_localXAxis1']); return _0x22eaf6['x'] * _0x14e0cc + _0x22eaf6['y'] * _0x309505; } , _0x5d32b7['prototype']['GetJointSpeed'] = function() { var _0x329f6b = this['m_bodyA'], _0x369e55 = this['m_bodyB'], _0x321be9; _0x321be9 = _0x329f6b['m_xf']['R']; var _0x48dda7 = this['m_localAnchor1']['x'] - _0x329f6b['m_sweep']['localCenter']['x'] , _0x576cd2 = this['m_localAnchor1']['y'] - _0x329f6b['m_sweep']['localCenter']['y'] , _0x566675 = _0x321be9['col1']['x'] * _0x48dda7 + _0x321be9['col2']['x'] * _0x576cd2 , _0x576cd2 = _0x321be9['col1']['y'] * _0x48dda7 + _0x321be9['col2']['y'] * _0x576cd2 , _0x48dda7 = _0x566675; _0x321be9 = _0x369e55['m_xf']['R']; var _0x6c9e89 = this['m_localAnchor2']['x'] - _0x369e55['m_sweep']['localCenter']['x'] , _0x2bc9c8 = this['m_localAnchor2']['y'] - _0x369e55['m_sweep']['localCenter']['y'] , _0x566675 = _0x321be9['col1']['x'] * _0x6c9e89 + _0x321be9['col2']['x'] * _0x2bc9c8 , _0x2bc9c8 = _0x321be9['col1']['y'] * _0x6c9e89 + _0x321be9['col2']['y'] * _0x2bc9c8 , _0x6c9e89 = _0x566675; _0x321be9 = _0x369e55['m_sweep']['c']['x'] + _0x6c9e89 - (_0x329f6b['m_sweep']['c']['x'] + _0x48dda7); var _0x566675 = _0x369e55['m_sweep']['c']['y'] + _0x2bc9c8 - (_0x329f6b['m_sweep']['c']['y'] + _0x576cd2) , _0x4b386a = _0x329f6b['GetWorldVector'](this['m_localXAxis1']) , _0x5a1fd0 = _0x329f6b['m_linearVelocity'] , _0xf1604c = _0x369e55['m_linearVelocity'] , _0x329f6b = _0x329f6b['m_angularVelocity'] , _0x369e55 = _0x369e55['m_angularVelocity']; return _0x321be9 * -_0x329f6b * _0x4b386a['y'] + _0x566675 * _0x329f6b * _0x4b386a['x'] + (_0x4b386a['x'] * (_0xf1604c['x'] + -_0x369e55 * _0x2bc9c8 - _0x5a1fd0['x'] - -_0x329f6b * _0x576cd2) + _0x4b386a['y'] * (_0xf1604c['y'] + _0x369e55 * _0x6c9e89 - _0x5a1fd0['y'] - _0x329f6b * _0x48dda7)); } , _0x5d32b7['prototype']['IsLimitEnabled'] = function() { return this['m_enableLimit']; } , _0x5d32b7['prototype']['EnableLimit'] = function(_0x23d43e) { this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_enableLimit'] = _0x23d43e; } , _0x5d32b7['prototype']['GetLowerLimit'] = function() { return this['m_lowerTranslation']; } , _0x5d32b7['prototype']['GetUpperLimit'] = function() { return this['m_upperTranslation']; } , _0x5d32b7['prototype']['SetLimits'] = function(_0x1d917f, _0x4f1951) { void 0x0 === _0x1d917f && (_0x1d917f = 0x0), void 0x0 === _0x4f1951 && (_0x4f1951 = 0x0), this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_lowerTranslation'] = _0x1d917f, this['m_upperTranslation'] = _0x4f1951; } , _0x5d32b7['prototype']['IsMotorEnabled'] = function() { return this['m_enableMotor']; } , _0x5d32b7['prototype']['EnableMotor'] = function(_0x263bd2) { this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_enableMotor'] = _0x263bd2; } , _0x5d32b7['prototype']['SetMotorSpeed'] = function(_0x5d3ef2) { void 0x0 === _0x5d3ef2 && (_0x5d3ef2 = 0x0), this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_motorSpeed'] = _0x5d3ef2; } , _0x5d32b7['prototype']['GetMotorSpeed'] = function() { return this['m_motorSpeed']; } , _0x5d32b7['prototype']['SetMaxMotorForce'] = function(_0x47a2e9) { void 0x0 === _0x47a2e9 && (_0x47a2e9 = 0x0), this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_maxMotorForce'] = _0x47a2e9; } , _0x5d32b7['prototype']['GetMaxMotorForce'] = function() { return this['m_maxMotorForce']; } , _0x5d32b7['prototype']['GetMotorForce'] = function() { return this['m_motorImpulse']; } , _0x5d32b7['prototype']['b2LineJoint'] = function(_0x2621a8) { this['__super']['b2Joint']['call'](this, _0x2621a8), this['m_localAnchor1']['SetV'](_0x2621a8['localAnchorA']), this['m_localAnchor2']['SetV'](_0x2621a8['localAnchorB']), this['m_localXAxis1']['SetV'](_0x2621a8['localAxisA']), this['m_localYAxis1']['x'] = -this['m_localXAxis1']['y'], this['m_localYAxis1']['y'] = this['m_localXAxis1']['x'], this['m_impulse']['SetZero'](), this['m_motorImpulse'] = this['m_motorMass'] = 0x0, this['m_lowerTranslation'] = _0x2621a8['lowerTranslation'], this['m_upperTranslation'] = _0x2621a8['upperTranslation'], this['m_maxMotorForce'] = _0x2621a8['maxMotorForce'], this['m_motorSpeed'] = _0x2621a8['motorSpeed'], this['m_enableLimit'] = _0x2621a8['enableLimit'], this['m_enableMotor'] = _0x2621a8['enableMotor'], this['m_limitState'] = _0x1e6a98['e_inactiveLimit'], this['m_axis']['SetZero'](), this['m_perp']['SetZero'](); } , _0x5d32b7['prototype']['InitVelocityConstraints'] = function(_0x23bff0) { var _0x71ae1a = this['m_bodyA'], _0x5c62a4 = this['m_bodyB'], _0x52cac9, _0x19c8b1 = 0x0; this['m_localCenterA']['SetV'](_0x71ae1a['GetLocalCenter']()), this['m_localCenterB']['SetV'](_0x5c62a4['GetLocalCenter']()); var _0x36432c = _0x71ae1a['GetTransform'](); _0x5c62a4['GetTransform'](), _0x52cac9 = _0x71ae1a['m_xf']['R']; var _0x14c666 = this['m_localAnchor1']['x'] - this['m_localCenterA']['x'] , _0x244cab = this['m_localAnchor1']['y'] - this['m_localCenterA']['y'] , _0x19c8b1 = _0x52cac9['col1']['x'] * _0x14c666 + _0x52cac9['col2']['x'] * _0x244cab , _0x244cab = _0x52cac9['col1']['y'] * _0x14c666 + _0x52cac9['col2']['y'] * _0x244cab , _0x14c666 = _0x19c8b1; _0x52cac9 = _0x5c62a4['m_xf']['R']; var _0x40e922 = this['m_localAnchor2']['x'] - this['m_localCenterB']['x'] , _0x389984 = this['m_localAnchor2']['y'] - this['m_localCenterB']['y'] , _0x19c8b1 = _0x52cac9['col1']['x'] * _0x40e922 + _0x52cac9['col2']['x'] * _0x389984 , _0x389984 = _0x52cac9['col1']['y'] * _0x40e922 + _0x52cac9['col2']['y'] * _0x389984 , _0x40e922 = _0x19c8b1; _0x52cac9 = _0x5c62a4['m_sweep']['c']['x'] + _0x40e922 - _0x71ae1a['m_sweep']['c']['x'] - _0x14c666, _0x19c8b1 = _0x5c62a4['m_sweep']['c']['y'] + _0x389984 - _0x71ae1a['m_sweep']['c']['y'] - _0x244cab, this['m_invMassA'] = _0x71ae1a['m_invMass'], this['m_invMassB'] = _0x5c62a4['m_invMass'], this['m_invIA'] = _0x71ae1a['m_invI'], this['m_invIB'] = _0x5c62a4['m_invI'], this['m_axis']['SetV'](_0x3bc259['MulMV'](_0x36432c['R'], this['m_localXAxis1'])), this['m_a1'] = (_0x52cac9 + _0x14c666) * this['m_axis']['y'] - (_0x19c8b1 + _0x244cab) * this['m_axis']['x'], this['m_a2'] = _0x40e922 * this['m_axis']['y'] - _0x389984 * this['m_axis']['x'], this['m_motorMass'] = this['m_invMassA'] + this['m_invMassB'] + this['m_invIA'] * this['m_a1'] * this['m_a1'] + this['m_invIB'] * this['m_a2'] * this['m_a2'], this['m_motorMass'] = this['m_motorMass'] > Number['MIN_VALUE'] ? 0x1 / this['m_motorMass'] : 0x0, this['m_perp']['SetV'](_0x3bc259['MulMV'](_0x36432c['R'], this['m_localYAxis1'])), this['m_s1'] = (_0x52cac9 + _0x14c666) * this['m_perp']['y'] - (_0x19c8b1 + _0x244cab) * this['m_perp']['x'], this['m_s2'] = _0x40e922 * this['m_perp']['y'] - _0x389984 * this['m_perp']['x'], _0x36432c = this['m_invMassA'], _0x14c666 = this['m_invMassB'], _0x244cab = this['m_invIA'], _0x40e922 = this['m_invIB'], this['m_K']['col1']['x'] = _0x36432c + _0x14c666 + _0x244cab * this['m_s1'] * this['m_s1'] + _0x40e922 * this['m_s2'] * this['m_s2'], this['m_K']['col1']['y'] = _0x244cab * this['m_s1'] * this['m_a1'] + _0x40e922 * this['m_s2'] * this['m_a2'], this['m_K']['col2']['x'] = this['m_K']['col1']['y'], this['m_K']['col2']['y'] = _0x36432c + _0x14c666 + _0x244cab * this['m_a1'] * this['m_a1'] + _0x40e922 * this['m_a2'] * this['m_a2'], this['m_enableLimit'] ? (_0x52cac9 = this['m_axis']['x'] * _0x52cac9 + this['m_axis']['y'] * _0x19c8b1, _0x3bc259['Abs'](this['m_upperTranslation'] - this['m_lowerTranslation']) < 0x2 * _0x36d772['b2_linearSlop'] ? this['m_limitState'] = _0x1e6a98['e_equalLimits'] : _0x52cac9 <= this['m_lowerTranslation'] ? this['m_limitState'] != _0x1e6a98['e_atLowerLimit'] && (this['m_limitState'] = _0x1e6a98['e_atLowerLimit'], this['m_impulse']['y'] = 0x0) : _0x52cac9 >= this['m_upperTranslation'] ? this['m_limitState'] != _0x1e6a98['e_atUpperLimit'] && (this['m_limitState'] = _0x1e6a98['e_atUpperLimit'], this['m_impulse']['y'] = 0x0) : (this['m_limitState'] = _0x1e6a98['e_inactiveLimit'], this['m_impulse']['y'] = 0x0)) : this['m_limitState'] = _0x1e6a98['e_inactiveLimit'], !0x1 == this['m_enableMotor'] && (this['m_motorImpulse'] = 0x0), _0x23bff0['warmStarting'] ? (this['m_impulse']['x'] *= _0x23bff0['dtRatio'], this['m_impulse']['y'] *= _0x23bff0['dtRatio'], this['m_motorImpulse'] *= _0x23bff0['dtRatio'], _0x23bff0 = this['m_impulse']['x'] * this['m_perp']['x'] + (this['m_motorImpulse'] + this['m_impulse']['y']) * this['m_axis']['x'], _0x52cac9 = this['m_impulse']['x'] * this['m_perp']['y'] + (this['m_motorImpulse'] + this['m_impulse']['y']) * this['m_axis']['y'], _0x19c8b1 = this['m_impulse']['x'] * this['m_s1'] + (this['m_motorImpulse'] + this['m_impulse']['y']) * this['m_a1'], _0x36432c = this['m_impulse']['x'] * this['m_s2'] + (this['m_motorImpulse'] + this['m_impulse']['y']) * this['m_a2'], _0x71ae1a['m_linearVelocity']['x'] -= this['m_invMassA'] * _0x23bff0, _0x71ae1a['m_linearVelocity']['y'] -= this['m_invMassA'] * _0x52cac9, _0x71ae1a['m_angularVelocity'] -= this['m_invIA'] * _0x19c8b1, _0x5c62a4['m_linearVelocity']['x'] += this['m_invMassB'] * _0x23bff0, _0x5c62a4['m_linearVelocity']['y'] += this['m_invMassB'] * _0x52cac9, _0x5c62a4['m_angularVelocity'] += this['m_invIB'] * _0x36432c) : (this['m_impulse']['SetZero'](), this['m_motorImpulse'] = 0x0); } , _0x5d32b7['prototype']['SolveVelocityConstraints'] = function(_0x54824e) { var _0xee3d5b = this['m_bodyA'] , _0x51c6a4 = this['m_bodyB'] , _0x4ed737 = _0xee3d5b['m_linearVelocity'] , _0x16c00d = _0xee3d5b['m_angularVelocity'] , _0x129d34 = _0x51c6a4['m_linearVelocity'] , _0x1062c3 = _0x51c6a4['m_angularVelocity'] , _0x1a7c1b = 0x0 , _0x45359c = 0x0 , _0xc8f999 = 0x0 , _0x186171 = 0x0; this['m_enableMotor'] && this['m_limitState'] != _0x1e6a98['e_equalLimits'] && (_0x186171 = this['m_motorMass'] * (this['m_motorSpeed'] - (this['m_axis']['x'] * (_0x129d34['x'] - _0x4ed737['x']) + this['m_axis']['y'] * (_0x129d34['y'] - _0x4ed737['y']) + this['m_a2'] * _0x1062c3 - this['m_a1'] * _0x16c00d)), _0x1a7c1b = this['m_motorImpulse'], _0x45359c = _0x54824e['dt'] * this['m_maxMotorForce'], this['m_motorImpulse'] = _0x3bc259['Clamp'](this['m_motorImpulse'] + _0x186171, -_0x45359c, _0x45359c), _0x186171 = this['m_motorImpulse'] - _0x1a7c1b, _0x1a7c1b = _0x186171 * this['m_axis']['x'], _0x45359c = _0x186171 * this['m_axis']['y'], _0xc8f999 = _0x186171 * this['m_a1'], _0x186171 *= this['m_a2'], _0x4ed737['x'] -= this['m_invMassA'] * _0x1a7c1b, _0x4ed737['y'] -= this['m_invMassA'] * _0x45359c, _0x16c00d -= this['m_invIA'] * _0xc8f999, _0x129d34['x'] += this['m_invMassB'] * _0x1a7c1b, _0x129d34['y'] += this['m_invMassB'] * _0x45359c, _0x1062c3 += this['m_invIB'] * _0x186171), _0x45359c = this['m_perp']['x'] * (_0x129d34['x'] - _0x4ed737['x']) + this['m_perp']['y'] * (_0x129d34['y'] - _0x4ed737['y']) + this['m_s2'] * _0x1062c3 - this['m_s1'] * _0x16c00d, this['m_enableLimit'] && this['m_limitState'] != _0x1e6a98['e_inactiveLimit'] ? (_0xc8f999 = this['m_axis']['x'] * (_0x129d34['x'] - _0x4ed737['x']) + this['m_axis']['y'] * (_0x129d34['y'] - _0x4ed737['y']) + this['m_a2'] * _0x1062c3 - this['m_a1'] * _0x16c00d, _0x1a7c1b = this['m_impulse']['Copy'](), _0x54824e = this['m_K']['Solve'](new _0x416390(), -_0x45359c, -_0xc8f999), this['m_impulse']['Add'](_0x54824e), this['m_limitState'] == _0x1e6a98['e_atLowerLimit'] ? this['m_impulse']['y'] = _0x3bc259['Max'](this['m_impulse']['y'], 0x0) : this['m_limitState'] == _0x1e6a98['e_atUpperLimit'] && (this['m_impulse']['y'] = _0x3bc259['Min'](this['m_impulse']['y'], 0x0)), _0x45359c = -_0x45359c - (this['m_impulse']['y'] - _0x1a7c1b['y']) * this['m_K']['col2']['x'], _0xc8f999 = 0x0 != this['m_K']['col1']['x'] ? _0x45359c / this['m_K']['col1']['x'] + _0x1a7c1b['x'] : _0x1a7c1b['x'], this['m_impulse']['x'] = _0xc8f999, _0x54824e['x'] = this['m_impulse']['x'] - _0x1a7c1b['x'], _0x54824e['y'] = this['m_impulse']['y'] - _0x1a7c1b['y'], _0x1a7c1b = _0x54824e['x'] * this['m_perp']['x'] + _0x54824e['y'] * this['m_axis']['x'], _0x45359c = _0x54824e['x'] * this['m_perp']['y'] + _0x54824e['y'] * this['m_axis']['y'], _0xc8f999 = _0x54824e['x'] * this['m_s1'] + _0x54824e['y'] * this['m_a1'], _0x186171 = _0x54824e['x'] * this['m_s2'] + _0x54824e['y'] * this['m_a2']) : (_0x54824e = 0x0 != this['m_K']['col1']['x'] ? -_0x45359c / this['m_K']['col1']['x'] : 0x0, this['m_impulse']['x'] += _0x54824e, _0x1a7c1b = _0x54824e * this['m_perp']['x'], _0x45359c = _0x54824e * this['m_perp']['y'], _0xc8f999 = _0x54824e * this['m_s1'], _0x186171 = _0x54824e * this['m_s2']), _0x4ed737['x'] -= this['m_invMassA'] * _0x1a7c1b, _0x4ed737['y'] -= this['m_invMassA'] * _0x45359c, _0x16c00d -= this['m_invIA'] * _0xc8f999, _0x129d34['x'] += this['m_invMassB'] * _0x1a7c1b, _0x129d34['y'] += this['m_invMassB'] * _0x45359c, _0x1062c3 += this['m_invIB'] * _0x186171, _0xee3d5b['m_linearVelocity']['SetV'](_0x4ed737), _0xee3d5b['m_angularVelocity'] = _0x16c00d, _0x51c6a4['m_linearVelocity']['SetV'](_0x129d34), _0x51c6a4['m_angularVelocity'] = _0x1062c3; } , _0x5d32b7['prototype']['SolvePositionConstraints'] = function() { var _0x140633 = this['m_bodyA'], _0x30bcc9 = this['m_bodyB'], _0xb9b63b = _0x140633['m_sweep']['c'], _0x556fd2 = _0x140633['m_sweep']['a'], _0x3f5ea8 = _0x30bcc9['m_sweep']['c'], _0x554d53 = _0x30bcc9['m_sweep']['a'], _0x5c1cd9, _0x1a7ff5 = 0x0, _0x271821 = 0x0, _0x506cba = 0x0, _0x55b5f6 = 0x0, _0x410f10 = 0x0, _0x34a3e3 = 0x0, _0x271821 = !0x1, _0x5e8771 = 0x0, _0x33da1d = _0x5c4159['FromAngle'](_0x556fd2), _0x506cba = _0x5c4159['FromAngle'](_0x554d53); _0x5c1cd9 = _0x33da1d; var _0x34a3e3 = this['m_localAnchor1']['x'] - this['m_localCenterA']['x'] , _0x4146ad = this['m_localAnchor1']['y'] - this['m_localCenterA']['y'] , _0x1a7ff5 = _0x5c1cd9['col1']['x'] * _0x34a3e3 + _0x5c1cd9['col2']['x'] * _0x4146ad , _0x4146ad = _0x5c1cd9['col1']['y'] * _0x34a3e3 + _0x5c1cd9['col2']['y'] * _0x4146ad , _0x34a3e3 = _0x1a7ff5; _0x5c1cd9 = _0x506cba, _0x506cba = this['m_localAnchor2']['x'] - this['m_localCenterB']['x'], _0x55b5f6 = this['m_localAnchor2']['y'] - this['m_localCenterB']['y'], _0x1a7ff5 = _0x5c1cd9['col1']['x'] * _0x506cba + _0x5c1cd9['col2']['x'] * _0x55b5f6, _0x55b5f6 = _0x5c1cd9['col1']['y'] * _0x506cba + _0x5c1cd9['col2']['y'] * _0x55b5f6, _0x506cba = _0x1a7ff5, _0x5c1cd9 = _0x3f5ea8['x'] + _0x506cba - _0xb9b63b['x'] - _0x34a3e3, _0x1a7ff5 = _0x3f5ea8['y'] + _0x55b5f6 - _0xb9b63b['y'] - _0x4146ad; if (this['m_enableLimit']) { this['m_axis'] = _0x3bc259['MulMV'](_0x33da1d, this['m_localXAxis1']), this['m_a1'] = (_0x5c1cd9 + _0x34a3e3) * this['m_axis']['y'] - (_0x1a7ff5 + _0x4146ad) * this['m_axis']['x'], this['m_a2'] = _0x506cba * this['m_axis']['y'] - _0x55b5f6 * this['m_axis']['x']; var _0xc13746 = this['m_axis']['x'] * _0x5c1cd9 + this['m_axis']['y'] * _0x1a7ff5; _0x3bc259['Abs'](this['m_upperTranslation'] - this['m_lowerTranslation']) < 0x2 * _0x36d772['b2_linearSlop'] ? (_0x5e8771 = _0x3bc259['Clamp'](_0xc13746, -_0x36d772['b2_maxLinearCorrection'], _0x36d772['b2_maxLinearCorrection']), _0x410f10 = _0x3bc259['Abs'](_0xc13746), _0x271821 = !0x0) : _0xc13746 <= this['m_lowerTranslation'] ? (_0x5e8771 = _0x3bc259['Clamp'](_0xc13746 - this['m_lowerTranslation'] + _0x36d772['b2_linearSlop'], -_0x36d772['b2_maxLinearCorrection'], 0x0), _0x410f10 = this['m_lowerTranslation'] - _0xc13746, _0x271821 = !0x0) : _0xc13746 >= this['m_upperTranslation'] && (_0x5e8771 = _0x3bc259['Clamp'](_0xc13746 - this['m_upperTranslation'] + _0x36d772['b2_linearSlop'], 0x0, _0x36d772['b2_maxLinearCorrection']), _0x410f10 = _0xc13746 - this['m_upperTranslation'], _0x271821 = !0x0); } return this['m_perp'] = _0x3bc259['MulMV'](_0x33da1d, this['m_localYAxis1']), this['m_s1'] = (_0x5c1cd9 + _0x34a3e3) * this['m_perp']['y'] - (_0x1a7ff5 + _0x4146ad) * this['m_perp']['x'], this['m_s2'] = _0x506cba * this['m_perp']['y'] - _0x55b5f6 * this['m_perp']['x'], _0x33da1d = new _0x416390(), _0x4146ad = this['m_perp']['x'] * _0x5c1cd9 + this['m_perp']['y'] * _0x1a7ff5, _0x410f10 = _0x3bc259['Max'](_0x410f10, _0x3bc259['Abs'](_0x4146ad)), _0x34a3e3 = 0x0, _0x271821 ? (_0x271821 = this['m_invMassA'], _0x506cba = this['m_invMassB'], _0x55b5f6 = this['m_invIA'], _0x5c1cd9 = this['m_invIB'], this['m_K']['col1']['x'] = _0x271821 + _0x506cba + _0x55b5f6 * this['m_s1'] * this['m_s1'] + _0x5c1cd9 * this['m_s2'] * this['m_s2'], this['m_K']['col1']['y'] = _0x55b5f6 * this['m_s1'] * this['m_a1'] + _0x5c1cd9 * this['m_s2'] * this['m_a2'], this['m_K']['col2']['x'] = this['m_K']['col1']['y'], this['m_K']['col2']['y'] = _0x271821 + _0x506cba + _0x55b5f6 * this['m_a1'] * this['m_a1'] + _0x5c1cd9 * this['m_a2'] * this['m_a2'], this['m_K']['Solve'](_0x33da1d, -_0x4146ad, -_0x5e8771)) : (_0x271821 = this['m_invMassA'], _0x506cba = this['m_invMassB'], _0x55b5f6 = this['m_invIA'], _0x5c1cd9 = this['m_invIB'], _0x5e8771 = _0x271821 + _0x506cba + _0x55b5f6 * this['m_s1'] * this['m_s1'] + _0x5c1cd9 * this['m_s2'] * this['m_s2'], _0x33da1d['x'] = 0x0 != _0x5e8771 ? -_0x4146ad / _0x5e8771 : 0x0, _0x33da1d['y'] = 0x0), _0x5e8771 = _0x33da1d['x'] * this['m_perp']['x'] + _0x33da1d['y'] * this['m_axis']['x'], _0x271821 = _0x33da1d['x'] * this['m_perp']['y'] + _0x33da1d['y'] * this['m_axis']['y'], _0x4146ad = _0x33da1d['x'] * this['m_s1'] + _0x33da1d['y'] * this['m_a1'], _0x33da1d = _0x33da1d['x'] * this['m_s2'] + _0x33da1d['y'] * this['m_a2'], _0xb9b63b['x'] -= this['m_invMassA'] * _0x5e8771, _0xb9b63b['y'] -= this['m_invMassA'] * _0x271821, _0x556fd2 -= this['m_invIA'] * _0x4146ad, _0x3f5ea8['x'] += this['m_invMassB'] * _0x5e8771, _0x3f5ea8['y'] += this['m_invMassB'] * _0x271821, _0x554d53 += this['m_invIB'] * _0x33da1d, _0x140633['m_sweep']['a'] = _0x556fd2, _0x30bcc9['m_sweep']['a'] = _0x554d53, _0x140633['SynchronizeTransform'](), _0x30bcc9['SynchronizeTransform'](), _0x410f10 <= _0x36d772['b2_linearSlop'] && _0x34a3e3 <= _0x36d772['b2_angularSlop']; } , Box2D['inherit'](_0x254160, Box2D['Dynamics']['Joints']['b2JointDef']), _0x254160['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0x254160['b2LineJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments), this['localAnchorA'] = new _0x416390(), this['localAnchorB'] = new _0x416390(), this['localAxisA'] = new _0x416390(); } , _0x254160['prototype']['b2LineJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_lineJoint'], this['localAxisA']['Set'](0x1, 0x0), this['enableLimit'] = !0x1, this['upperTranslation'] = this['lowerTranslation'] = 0x0, this['enableMotor'] = !0x1, this['motorSpeed'] = this['maxMotorForce'] = 0x0; } , _0x254160['prototype']['Initialize'] = function(_0x4a8119, _0x9dcfb9, _0x1952c7, _0x2ea386) { this['bodyA'] = _0x4a8119, this['bodyB'] = _0x9dcfb9, this['localAnchorA'] = this['bodyA']['GetLocalPoint'](_0x1952c7), this['localAnchorB'] = this['bodyB']['GetLocalPoint'](_0x1952c7), this['localAxisA'] = this['bodyA']['GetLocalVector'](_0x2ea386); } , Box2D['inherit'](_0x28338a, Box2D['Dynamics']['Joints']['b2Joint']), _0x28338a['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0x28338a['b2MouseJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['K'] = new _0x5c4159(), this['K1'] = new _0x5c4159(), this['K2'] = new _0x5c4159(), this['m_localAnchor'] = new _0x416390(), this['m_target'] = new _0x416390(), this['m_impulse'] = new _0x416390(), this['m_mass'] = new _0x5c4159(), this['m_C'] = new _0x416390(); } , _0x28338a['prototype']['GetAnchorA'] = function() { return this['m_target']; } , _0x28338a['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchor']); } , _0x28338a['prototype']['GetReactionForce'] = function(_0x59321a) { return void 0x0 === _0x59321a && (_0x59321a = 0x0), new _0x416390(_0x59321a * this['m_impulse']['x'],_0x59321a * this['m_impulse']['y']); } , _0x28338a['prototype']['GetReactionTorque'] = function() { return 0x0; } , _0x28338a['prototype']['GetTarget'] = function() { return this['m_target']; } , _0x28338a['prototype']['SetTarget'] = function(_0x21243f) { !0x1 == this['m_bodyB']['IsAwake']() && this['m_bodyB']['SetAwake'](!0x0), this['m_target'] = _0x21243f; } , _0x28338a['prototype']['GetMaxForce'] = function() { return this['m_maxForce']; } , _0x28338a['prototype']['SetMaxForce'] = function(_0x343bf3) { void 0x0 === _0x343bf3 && (_0x343bf3 = 0x0), this['m_maxForce'] = _0x343bf3; } , _0x28338a['prototype']['GetFrequency'] = function() { return this['m_frequencyHz']; } , _0x28338a['prototype']['SetFrequency'] = function(_0x5c8916) { void 0x0 === _0x5c8916 && (_0x5c8916 = 0x0), this['m_frequencyHz'] = _0x5c8916; } , _0x28338a['prototype']['GetDampingRatio'] = function() { return this['m_dampingRatio']; } , _0x28338a['prototype']['SetDampingRatio'] = function(_0x5d1ea2) { void 0x0 === _0x5d1ea2 && (_0x5d1ea2 = 0x0), this['m_dampingRatio'] = _0x5d1ea2; } , _0x28338a['prototype']['b2MouseJoint'] = function(_0x4a062a) { this['__super']['b2Joint']['call'](this, _0x4a062a), this['m_target']['SetV'](_0x4a062a['target']); var _0x40ca29 = this['m_target']['x'] - this['m_bodyB']['m_xf']['position']['x'] , _0x4ac7fd = this['m_target']['y'] - this['m_bodyB']['m_xf']['position']['y'] , _0x4f63dd = this['m_bodyB']['m_xf']['R']; this['m_localAnchor']['x'] = _0x40ca29 * _0x4f63dd['col1']['x'] + _0x4ac7fd * _0x4f63dd['col1']['y'], this['m_localAnchor']['y'] = _0x40ca29 * _0x4f63dd['col2']['x'] + _0x4ac7fd * _0x4f63dd['col2']['y'], this['m_maxForce'] = _0x4a062a['maxForce'], this['m_impulse']['SetZero'](), this['m_frequencyHz'] = _0x4a062a['frequencyHz'], this['m_dampingRatio'] = _0x4a062a['dampingRatio'], this['m_gamma'] = this['m_beta'] = 0x0; } , _0x28338a['prototype']['InitVelocityConstraints'] = function(_0x52e681) { var _0x121161 = this['m_bodyB'] , _0x44c7ff = _0x121161['GetMass']() , _0x4269d6 = 0x2 * Math['PI'] * this['m_frequencyHz'] , _0x1fa5ab = _0x44c7ff * _0x4269d6 * _0x4269d6; this['m_gamma'] = _0x52e681['dt'] * (0x2 * _0x44c7ff * this['m_dampingRatio'] * _0x4269d6 + _0x52e681['dt'] * _0x1fa5ab), this['m_gamma'] = 0x0 != this['m_gamma'] ? 0x1 / this['m_gamma'] : 0x0, this['m_beta'] = _0x52e681['dt'] * _0x1fa5ab * this['m_gamma']; var _0x1fa5ab = _0x121161['m_xf']['R'] , _0x44c7ff = this['m_localAnchor']['x'] - _0x121161['m_sweep']['localCenter']['x'] , _0x4269d6 = this['m_localAnchor']['y'] - _0x121161['m_sweep']['localCenter']['y'] , _0x21fbe6 = _0x1fa5ab['col1']['x'] * _0x44c7ff + _0x1fa5ab['col2']['x'] * _0x4269d6 , _0x4269d6 = _0x1fa5ab['col1']['y'] * _0x44c7ff + _0x1fa5ab['col2']['y'] * _0x4269d6 , _0x44c7ff = _0x21fbe6 , _0x1fa5ab = _0x121161['m_invMass'] , _0x21fbe6 = _0x121161['m_invI']; this['K1']['col1']['x'] = _0x1fa5ab, this['K1']['col2']['x'] = 0x0, this['K1']['col1']['y'] = 0x0, this['K1']['col2']['y'] = _0x1fa5ab, this['K2']['col1']['x'] = _0x21fbe6 * _0x4269d6 * _0x4269d6, this['K2']['col2']['x'] = -_0x21fbe6 * _0x44c7ff * _0x4269d6, this['K2']['col1']['y'] = -_0x21fbe6 * _0x44c7ff * _0x4269d6, this['K2']['col2']['y'] = _0x21fbe6 * _0x44c7ff * _0x44c7ff, this['K']['SetM'](this['K1']), this['K']['AddM'](this['K2']), this['K']['col1']['x'] += this['m_gamma'], this['K']['col2']['y'] += this['m_gamma'], this['K']['GetInverse'](this['m_mass']), this['m_C']['x'] = _0x121161['m_sweep']['c']['x'] + _0x44c7ff - this['m_target']['x'], this['m_C']['y'] = _0x121161['m_sweep']['c']['y'] + _0x4269d6 - this['m_target']['y'], _0x121161['m_angularVelocity'] *= 0.98, this['m_impulse']['x'] *= _0x52e681['dtRatio'], this['m_impulse']['y'] *= _0x52e681['dtRatio'], _0x121161['m_linearVelocity']['x'] += _0x1fa5ab * this['m_impulse']['x'], _0x121161['m_linearVelocity']['y'] += _0x1fa5ab * this['m_impulse']['y'], _0x121161['m_angularVelocity'] += _0x21fbe6 * (_0x44c7ff * this['m_impulse']['y'] - _0x4269d6 * this['m_impulse']['x']); } , _0x28338a['prototype']['SolveVelocityConstraints'] = function(_0x95613d) { var _0x324d9b = this['m_bodyB'], _0x16a5e3, _0x4de329 = 0x0, _0x297e30 = 0x0; _0x16a5e3 = _0x324d9b['m_xf']['R']; var _0x391dc3 = this['m_localAnchor']['x'] - _0x324d9b['m_sweep']['localCenter']['x'] , _0x2df223 = this['m_localAnchor']['y'] - _0x324d9b['m_sweep']['localCenter']['y'] , _0x4de329 = _0x16a5e3['col1']['x'] * _0x391dc3 + _0x16a5e3['col2']['x'] * _0x2df223 , _0x2df223 = _0x16a5e3['col1']['y'] * _0x391dc3 + _0x16a5e3['col2']['y'] * _0x2df223 , _0x391dc3 = _0x4de329 , _0x4de329 = _0x324d9b['m_linearVelocity']['x'] + -_0x324d9b['m_angularVelocity'] * _0x2df223 , _0x5f3a16 = _0x324d9b['m_linearVelocity']['y'] + _0x324d9b['m_angularVelocity'] * _0x391dc3; _0x16a5e3 = this['m_mass'], _0x4de329 = _0x4de329 + this['m_beta'] * this['m_C']['x'] + this['m_gamma'] * this['m_impulse']['x'], _0x297e30 = _0x5f3a16 + this['m_beta'] * this['m_C']['y'] + this['m_gamma'] * this['m_impulse']['y'], _0x5f3a16 = -(_0x16a5e3['col1']['x'] * _0x4de329 + _0x16a5e3['col2']['x'] * _0x297e30), _0x297e30 = -(_0x16a5e3['col1']['y'] * _0x4de329 + _0x16a5e3['col2']['y'] * _0x297e30), _0x16a5e3 = this['m_impulse']['x'], _0x4de329 = this['m_impulse']['y'], this['m_impulse']['x'] += _0x5f3a16, this['m_impulse']['y'] += _0x297e30, _0x95613d = _0x95613d['dt'] * this['m_maxForce'], this['m_impulse']['LengthSquared']() > _0x95613d * _0x95613d && this['m_impulse']['Multiply'](_0x95613d / this['m_impulse']['Length']()), _0x5f3a16 = this['m_impulse']['x'] - _0x16a5e3, _0x297e30 = this['m_impulse']['y'] - _0x4de329, _0x324d9b['m_linearVelocity']['x'] += _0x324d9b['m_invMass'] * _0x5f3a16, _0x324d9b['m_linearVelocity']['y'] += _0x324d9b['m_invMass'] * _0x297e30, _0x324d9b['m_angularVelocity'] += _0x324d9b['m_invI'] * (_0x391dc3 * _0x297e30 - _0x2df223 * _0x5f3a16); } , _0x28338a['prototype']['SolvePositionConstraints'] = function() { return !0x0; } , Box2D['inherit'](_0x21d19e, Box2D['Dynamics']['Joints']['b2JointDef']), _0x21d19e['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0x21d19e['b2MouseJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments), this['target'] = new _0x416390(); } , _0x21d19e['prototype']['b2MouseJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_mouseJoint'], this['maxForce'] = 0x0, this['frequencyHz'] = 0x5, this['dampingRatio'] = 0.7; } , Box2D['inherit'](_0x1c9bc0, Box2D['Dynamics']['Joints']['b2Joint']), _0x1c9bc0['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0x1c9bc0['b2PrismaticJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['m_localAnchor1'] = new _0x416390(), this['m_localAnchor2'] = new _0x416390(), this['m_localXAxis1'] = new _0x416390(), this['m_localYAxis1'] = new _0x416390(), this['m_axis'] = new _0x416390(), this['m_perp'] = new _0x416390(), this['m_K'] = new _0x2e672f(), this['m_impulse'] = new _0x59cf24(); } , _0x1c9bc0['prototype']['GetAnchorA'] = function() { return this['m_bodyA']['GetWorldPoint'](this['m_localAnchor1']); } , _0x1c9bc0['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchor2']); } , _0x1c9bc0['prototype']['GetReactionForce'] = function(_0x24b594) { return void 0x0 === _0x24b594 && (_0x24b594 = 0x0), new _0x416390(_0x24b594 * (this['m_impulse']['x'] * this['m_perp']['x'] + (this['m_motorImpulse'] + this['m_impulse']['z']) * this['m_axis']['x']),_0x24b594 * (this['m_impulse']['x'] * this['m_perp']['y'] + (this['m_motorImpulse'] + this['m_impulse']['z']) * this['m_axis']['y'])); } , _0x1c9bc0['prototype']['GetReactionTorque'] = function(_0x39078d) { return void 0x0 === _0x39078d && (_0x39078d = 0x0), _0x39078d * this['m_impulse']['y']; } , _0x1c9bc0['prototype']['GetJointTranslation'] = function() { var _0x5728e9 = this['m_bodyA'] , _0x5a0e32 = this['m_bodyB'] , _0xe68095 = _0x5728e9['GetWorldPoint'](this['m_localAnchor1']) , _0x577de8 = _0x5a0e32['GetWorldPoint'](this['m_localAnchor2']) , _0x5a0e32 = _0x577de8['x'] - _0xe68095['x'] , _0xe68095 = _0x577de8['y'] - _0xe68095['y'] , _0x5728e9 = _0x5728e9['GetWorldVector'](this['m_localXAxis1']); return _0x5728e9['x'] * _0x5a0e32 + _0x5728e9['y'] * _0xe68095; } , _0x1c9bc0['prototype']['GetJointSpeed'] = function() { var _0xb34d8e = this['m_bodyA'], _0x3df6a3 = this['m_bodyB'], _0x22b8eb; _0x22b8eb = _0xb34d8e['m_xf']['R']; var _0x1faccc = this['m_localAnchor1']['x'] - _0xb34d8e['m_sweep']['localCenter']['x'] , _0x376146 = this['m_localAnchor1']['y'] - _0xb34d8e['m_sweep']['localCenter']['y'] , _0x302e2b = _0x22b8eb['col1']['x'] * _0x1faccc + _0x22b8eb['col2']['x'] * _0x376146 , _0x376146 = _0x22b8eb['col1']['y'] * _0x1faccc + _0x22b8eb['col2']['y'] * _0x376146 , _0x1faccc = _0x302e2b; _0x22b8eb = _0x3df6a3['m_xf']['R']; var _0x2c649c = this['m_localAnchor2']['x'] - _0x3df6a3['m_sweep']['localCenter']['x'] , _0x1bb427 = this['m_localAnchor2']['y'] - _0x3df6a3['m_sweep']['localCenter']['y'] , _0x302e2b = _0x22b8eb['col1']['x'] * _0x2c649c + _0x22b8eb['col2']['x'] * _0x1bb427 , _0x1bb427 = _0x22b8eb['col1']['y'] * _0x2c649c + _0x22b8eb['col2']['y'] * _0x1bb427 , _0x2c649c = _0x302e2b; _0x22b8eb = _0x3df6a3['m_sweep']['c']['x'] + _0x2c649c - (_0xb34d8e['m_sweep']['c']['x'] + _0x1faccc); var _0x302e2b = _0x3df6a3['m_sweep']['c']['y'] + _0x1bb427 - (_0xb34d8e['m_sweep']['c']['y'] + _0x376146) , _0x223a5e = _0xb34d8e['GetWorldVector'](this['m_localXAxis1']) , _0x344b6c = _0xb34d8e['m_linearVelocity'] , _0xa590ce = _0x3df6a3['m_linearVelocity'] , _0xb34d8e = _0xb34d8e['m_angularVelocity'] , _0x3df6a3 = _0x3df6a3['m_angularVelocity']; return _0x22b8eb * -_0xb34d8e * _0x223a5e['y'] + _0x302e2b * _0xb34d8e * _0x223a5e['x'] + (_0x223a5e['x'] * (_0xa590ce['x'] + -_0x3df6a3 * _0x1bb427 - _0x344b6c['x'] - -_0xb34d8e * _0x376146) + _0x223a5e['y'] * (_0xa590ce['y'] + _0x3df6a3 * _0x2c649c - _0x344b6c['y'] - _0xb34d8e * _0x1faccc)); } , _0x1c9bc0['prototype']['IsLimitEnabled'] = function() { return this['m_enableLimit']; } , _0x1c9bc0['prototype']['EnableLimit'] = function(_0x459e97) { this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_enableLimit'] = _0x459e97; } , _0x1c9bc0['prototype']['GetLowerLimit'] = function() { return this['m_lowerTranslation']; } , _0x1c9bc0['prototype']['GetUpperLimit'] = function() { return this['m_upperTranslation']; } , _0x1c9bc0['prototype']['SetLimits'] = function(_0x4decb9, _0x511ae1) { void 0x0 === _0x4decb9 && (_0x4decb9 = 0x0), void 0x0 === _0x511ae1 && (_0x511ae1 = 0x0), this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_lowerTranslation'] = _0x4decb9, this['m_upperTranslation'] = _0x511ae1; } , _0x1c9bc0['prototype']['IsMotorEnabled'] = function() { return this['m_enableMotor']; } , _0x1c9bc0['prototype']['EnableMotor'] = function(_0x301a0e) { this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_enableMotor'] = _0x301a0e; } , _0x1c9bc0['prototype']['SetMotorSpeed'] = function(_0x3ebcf4) { void 0x0 === _0x3ebcf4 && (_0x3ebcf4 = 0x0), this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_motorSpeed'] = _0x3ebcf4; } , _0x1c9bc0['prototype']['GetMotorSpeed'] = function() { return this['m_motorSpeed']; } , _0x1c9bc0['prototype']['SetMaxMotorForce'] = function(_0x2ea98e) { void 0x0 === _0x2ea98e && (_0x2ea98e = 0x0), this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_maxMotorForce'] = _0x2ea98e; } , _0x1c9bc0['prototype']['GetMotorForce'] = function() { return this['m_motorImpulse']; } , _0x1c9bc0['prototype']['b2PrismaticJoint'] = function(_0x13f371) { this['__super']['b2Joint']['call'](this, _0x13f371), this['m_localAnchor1']['SetV'](_0x13f371['localAnchorA']), this['m_localAnchor2']['SetV'](_0x13f371['localAnchorB']), this['m_localXAxis1']['SetV'](_0x13f371['localAxisA']), this['m_localYAxis1']['x'] = -this['m_localXAxis1']['y'], this['m_localYAxis1']['y'] = this['m_localXAxis1']['x'], this['m_refAngle'] = _0x13f371['referenceAngle'], this['m_impulse']['SetZero'](), this['m_motorImpulse'] = this['m_motorMass'] = 0x0, this['m_lowerTranslation'] = _0x13f371['lowerTranslation'], this['m_upperTranslation'] = _0x13f371['upperTranslation'], this['m_maxMotorForce'] = _0x13f371['maxMotorForce'], this['m_motorSpeed'] = _0x13f371['motorSpeed'], this['m_enableLimit'] = _0x13f371['enableLimit'], this['m_enableMotor'] = _0x13f371['enableMotor'], this['m_limitState'] = _0x1e6a98['e_inactiveLimit'], this['m_axis']['SetZero'](), this['m_perp']['SetZero'](); } , _0x1c9bc0['prototype']['InitVelocityConstraints'] = function(_0x2befc2) { var _0x5401a4 = this['m_bodyA'], _0x49cfe4 = this['m_bodyB'], _0x34d40b, _0x214c7e = 0x0; this['m_localCenterA']['SetV'](_0x5401a4['GetLocalCenter']()), this['m_localCenterB']['SetV'](_0x49cfe4['GetLocalCenter']()); var _0x19e9a2 = _0x5401a4['GetTransform'](); _0x49cfe4['GetTransform'](), _0x34d40b = _0x5401a4['m_xf']['R']; var _0x56ecbb = this['m_localAnchor1']['x'] - this['m_localCenterA']['x'] , _0x356389 = this['m_localAnchor1']['y'] - this['m_localCenterA']['y'] , _0x214c7e = _0x34d40b['col1']['x'] * _0x56ecbb + _0x34d40b['col2']['x'] * _0x356389 , _0x356389 = _0x34d40b['col1']['y'] * _0x56ecbb + _0x34d40b['col2']['y'] * _0x356389 , _0x56ecbb = _0x214c7e; _0x34d40b = _0x49cfe4['m_xf']['R']; var _0x5a5206 = this['m_localAnchor2']['x'] - this['m_localCenterB']['x'] , _0xd1291c = this['m_localAnchor2']['y'] - this['m_localCenterB']['y'] , _0x214c7e = _0x34d40b['col1']['x'] * _0x5a5206 + _0x34d40b['col2']['x'] * _0xd1291c , _0xd1291c = _0x34d40b['col1']['y'] * _0x5a5206 + _0x34d40b['col2']['y'] * _0xd1291c , _0x5a5206 = _0x214c7e; _0x34d40b = _0x49cfe4['m_sweep']['c']['x'] + _0x5a5206 - _0x5401a4['m_sweep']['c']['x'] - _0x56ecbb, _0x214c7e = _0x49cfe4['m_sweep']['c']['y'] + _0xd1291c - _0x5401a4['m_sweep']['c']['y'] - _0x356389, this['m_invMassA'] = _0x5401a4['m_invMass'], this['m_invMassB'] = _0x49cfe4['m_invMass'], this['m_invIA'] = _0x5401a4['m_invI'], this['m_invIB'] = _0x49cfe4['m_invI'], this['m_axis']['SetV'](_0x3bc259['MulMV'](_0x19e9a2['R'], this['m_localXAxis1'])), this['m_a1'] = (_0x34d40b + _0x56ecbb) * this['m_axis']['y'] - (_0x214c7e + _0x356389) * this['m_axis']['x'], this['m_a2'] = _0x5a5206 * this['m_axis']['y'] - _0xd1291c * this['m_axis']['x'], this['m_motorMass'] = this['m_invMassA'] + this['m_invMassB'] + this['m_invIA'] * this['m_a1'] * this['m_a1'] + this['m_invIB'] * this['m_a2'] * this['m_a2'], this['m_motorMass'] > Number['MIN_VALUE'] && (this['m_motorMass'] = 0x1 / this['m_motorMass']), this['m_perp']['SetV'](_0x3bc259['MulMV'](_0x19e9a2['R'], this['m_localYAxis1'])), this['m_s1'] = (_0x34d40b + _0x56ecbb) * this['m_perp']['y'] - (_0x214c7e + _0x356389) * this['m_perp']['x'], this['m_s2'] = _0x5a5206 * this['m_perp']['y'] - _0xd1291c * this['m_perp']['x'], _0x19e9a2 = this['m_invMassA'], _0x56ecbb = this['m_invMassB'], _0x356389 = this['m_invIA'], _0x5a5206 = this['m_invIB'], this['m_K']['col1']['x'] = _0x19e9a2 + _0x56ecbb + _0x356389 * this['m_s1'] * this['m_s1'] + _0x5a5206 * this['m_s2'] * this['m_s2'], this['m_K']['col1']['y'] = _0x356389 * this['m_s1'] + _0x5a5206 * this['m_s2'], this['m_K']['col1']['z'] = _0x356389 * this['m_s1'] * this['m_a1'] + _0x5a5206 * this['m_s2'] * this['m_a2'], this['m_K']['col2']['x'] = this['m_K']['col1']['y'], this['m_K']['col2']['y'] = _0x356389 + _0x5a5206, this['m_K']['col2']['z'] = _0x356389 * this['m_a1'] + _0x5a5206 * this['m_a2'], this['m_K']['col3']['x'] = this['m_K']['col1']['z'], this['m_K']['col3']['y'] = this['m_K']['col2']['z'], this['m_K']['col3']['z'] = _0x19e9a2 + _0x56ecbb + _0x356389 * this['m_a1'] * this['m_a1'] + _0x5a5206 * this['m_a2'] * this['m_a2'], this['m_enableLimit'] ? (_0x34d40b = this['m_axis']['x'] * _0x34d40b + this['m_axis']['y'] * _0x214c7e, _0x3bc259['Abs'](this['m_upperTranslation'] - this['m_lowerTranslation']) < 0x2 * _0x36d772['b2_linearSlop'] ? this['m_limitState'] = _0x1e6a98['e_equalLimits'] : _0x34d40b <= this['m_lowerTranslation'] ? this['m_limitState'] != _0x1e6a98['e_atLowerLimit'] && (this['m_limitState'] = _0x1e6a98['e_atLowerLimit'], this['m_impulse']['z'] = 0x0) : _0x34d40b >= this['m_upperTranslation'] ? this['m_limitState'] != _0x1e6a98['e_atUpperLimit'] && (this['m_limitState'] = _0x1e6a98['e_atUpperLimit'], this['m_impulse']['z'] = 0x0) : (this['m_limitState'] = _0x1e6a98['e_inactiveLimit'], this['m_impulse']['z'] = 0x0)) : this['m_limitState'] = _0x1e6a98['e_inactiveLimit'], !0x1 == this['m_enableMotor'] && (this['m_motorImpulse'] = 0x0), _0x2befc2['warmStarting'] ? (this['m_impulse']['x'] *= _0x2befc2['dtRatio'], this['m_impulse']['y'] *= _0x2befc2['dtRatio'], this['m_motorImpulse'] *= _0x2befc2['dtRatio'], _0x2befc2 = this['m_impulse']['x'] * this['m_perp']['x'] + (this['m_motorImpulse'] + this['m_impulse']['z']) * this['m_axis']['x'], _0x34d40b = this['m_impulse']['x'] * this['m_perp']['y'] + (this['m_motorImpulse'] + this['m_impulse']['z']) * this['m_axis']['y'], _0x214c7e = this['m_impulse']['x'] * this['m_s1'] + this['m_impulse']['y'] + (this['m_motorImpulse'] + this['m_impulse']['z']) * this['m_a1'], _0x19e9a2 = this['m_impulse']['x'] * this['m_s2'] + this['m_impulse']['y'] + (this['m_motorImpulse'] + this['m_impulse']['z']) * this['m_a2'], _0x5401a4['m_linearVelocity']['x'] -= this['m_invMassA'] * _0x2befc2, _0x5401a4['m_linearVelocity']['y'] -= this['m_invMassA'] * _0x34d40b, _0x5401a4['m_angularVelocity'] -= this['m_invIA'] * _0x214c7e, _0x49cfe4['m_linearVelocity']['x'] += this['m_invMassB'] * _0x2befc2, _0x49cfe4['m_linearVelocity']['y'] += this['m_invMassB'] * _0x34d40b, _0x49cfe4['m_angularVelocity'] += this['m_invIB'] * _0x19e9a2) : (this['m_impulse']['SetZero'](), this['m_motorImpulse'] = 0x0); } , _0x1c9bc0['prototype']['SolveVelocityConstraints'] = function(_0x3cc0fa) { var _0xd680c = this['m_bodyA'] , _0x15087d = this['m_bodyB'] , _0x53981d = _0xd680c['m_linearVelocity'] , _0x4eb26b = _0xd680c['m_angularVelocity'] , _0x4c3601 = _0x15087d['m_linearVelocity'] , _0x3ba863 = _0x15087d['m_angularVelocity'] , _0x1db2d0 = 0x0 , _0x59f520 = 0x0 , _0x2985e8 = 0x0 , _0x11e468 = 0x0; this['m_enableMotor'] && this['m_limitState'] != _0x1e6a98['e_equalLimits'] && (_0x11e468 = this['m_motorMass'] * (this['m_motorSpeed'] - (this['m_axis']['x'] * (_0x4c3601['x'] - _0x53981d['x']) + this['m_axis']['y'] * (_0x4c3601['y'] - _0x53981d['y']) + this['m_a2'] * _0x3ba863 - this['m_a1'] * _0x4eb26b)), _0x1db2d0 = this['m_motorImpulse'], _0x3cc0fa = _0x3cc0fa['dt'] * this['m_maxMotorForce'], this['m_motorImpulse'] = _0x3bc259['Clamp'](this['m_motorImpulse'] + _0x11e468, -_0x3cc0fa, _0x3cc0fa), _0x11e468 = this['m_motorImpulse'] - _0x1db2d0, _0x1db2d0 = _0x11e468 * this['m_axis']['x'], _0x59f520 = _0x11e468 * this['m_axis']['y'], _0x2985e8 = _0x11e468 * this['m_a1'], _0x11e468 *= this['m_a2'], _0x53981d['x'] -= this['m_invMassA'] * _0x1db2d0, _0x53981d['y'] -= this['m_invMassA'] * _0x59f520, _0x4eb26b -= this['m_invIA'] * _0x2985e8, _0x4c3601['x'] += this['m_invMassB'] * _0x1db2d0, _0x4c3601['y'] += this['m_invMassB'] * _0x59f520, _0x3ba863 += this['m_invIB'] * _0x11e468), _0x2985e8 = this['m_perp']['x'] * (_0x4c3601['x'] - _0x53981d['x']) + this['m_perp']['y'] * (_0x4c3601['y'] - _0x53981d['y']) + this['m_s2'] * _0x3ba863 - this['m_s1'] * _0x4eb26b, _0x59f520 = _0x3ba863 - _0x4eb26b, this['m_enableLimit'] && this['m_limitState'] != _0x1e6a98['e_inactiveLimit'] ? (_0x3cc0fa = this['m_axis']['x'] * (_0x4c3601['x'] - _0x53981d['x']) + this['m_axis']['y'] * (_0x4c3601['y'] - _0x53981d['y']) + this['m_a2'] * _0x3ba863 - this['m_a1'] * _0x4eb26b, _0x1db2d0 = this['m_impulse']['Copy'](), _0x3cc0fa = this['m_K']['Solve33'](new _0x59cf24(), -_0x2985e8, -_0x59f520, -_0x3cc0fa), this['m_impulse']['Add'](_0x3cc0fa), this['m_limitState'] == _0x1e6a98['e_atLowerLimit'] ? this['m_impulse']['z'] = _0x3bc259['Max'](this['m_impulse']['z'], 0x0) : this['m_limitState'] == _0x1e6a98['e_atUpperLimit'] && (this['m_impulse']['z'] = _0x3bc259['Min'](this['m_impulse']['z'], 0x0)), _0x2985e8 = -_0x2985e8 - (this['m_impulse']['z'] - _0x1db2d0['z']) * this['m_K']['col3']['x'], _0x59f520 = -_0x59f520 - (this['m_impulse']['z'] - _0x1db2d0['z']) * this['m_K']['col3']['y'], _0x59f520 = this['m_K']['Solve22'](new _0x416390(), _0x2985e8, _0x59f520), _0x59f520['x'] += _0x1db2d0['x'], _0x59f520['y'] += _0x1db2d0['y'], this['m_impulse']['x'] = _0x59f520['x'], this['m_impulse']['y'] = _0x59f520['y'], _0x3cc0fa['x'] = this['m_impulse']['x'] - _0x1db2d0['x'], _0x3cc0fa['y'] = this['m_impulse']['y'] - _0x1db2d0['y'], _0x3cc0fa['z'] = this['m_impulse']['z'] - _0x1db2d0['z'], _0x1db2d0 = _0x3cc0fa['x'] * this['m_perp']['x'] + _0x3cc0fa['z'] * this['m_axis']['x'], _0x59f520 = _0x3cc0fa['x'] * this['m_perp']['y'] + _0x3cc0fa['z'] * this['m_axis']['y'], _0x2985e8 = _0x3cc0fa['x'] * this['m_s1'] + _0x3cc0fa['y'] + _0x3cc0fa['z'] * this['m_a1'], _0x11e468 = _0x3cc0fa['x'] * this['m_s2'] + _0x3cc0fa['y'] + _0x3cc0fa['z'] * this['m_a2']) : (_0x3cc0fa = this['m_K']['Solve22'](new _0x416390(), -_0x2985e8, -_0x59f520), this['m_impulse']['x'] += _0x3cc0fa['x'], this['m_impulse']['y'] += _0x3cc0fa['y'], _0x1db2d0 = _0x3cc0fa['x'] * this['m_perp']['x'], _0x59f520 = _0x3cc0fa['x'] * this['m_perp']['y'], _0x2985e8 = _0x3cc0fa['x'] * this['m_s1'] + _0x3cc0fa['y'], _0x11e468 = _0x3cc0fa['x'] * this['m_s2'] + _0x3cc0fa['y']), _0x53981d['x'] -= this['m_invMassA'] * _0x1db2d0, _0x53981d['y'] -= this['m_invMassA'] * _0x59f520, _0x4eb26b -= this['m_invIA'] * _0x2985e8, _0x4c3601['x'] += this['m_invMassB'] * _0x1db2d0, _0x4c3601['y'] += this['m_invMassB'] * _0x59f520, _0x3ba863 += this['m_invIB'] * _0x11e468, _0xd680c['m_linearVelocity']['SetV'](_0x53981d), _0xd680c['m_angularVelocity'] = _0x4eb26b, _0x15087d['m_linearVelocity']['SetV'](_0x4c3601), _0x15087d['m_angularVelocity'] = _0x3ba863; } , _0x1c9bc0['prototype']['SolvePositionConstraints'] = function() { var _0x18023b = this['m_bodyA'], _0x34ed91 = this['m_bodyB'], _0x346a7c = _0x18023b['m_sweep']['c'], _0x1c5ff3 = _0x18023b['m_sweep']['a'], _0x423975 = _0x34ed91['m_sweep']['c'], _0x21122d = _0x34ed91['m_sweep']['a'], _0x459958, _0x28966c = 0x0, _0x557147 = 0x0, _0x320595 = 0x0, _0x2a421d = 0x0, _0x553fee = 0x0, _0x557147 = !0x1, _0x2ba6d3 = 0x0, _0x5e113f = _0x5c4159['FromAngle'](_0x1c5ff3), _0xf8d27f = _0x5c4159['FromAngle'](_0x21122d); _0x459958 = _0x5e113f; var _0x553fee = this['m_localAnchor1']['x'] - this['m_localCenterA']['x'] , _0xc84521 = this['m_localAnchor1']['y'] - this['m_localCenterA']['y'] , _0x28966c = _0x459958['col1']['x'] * _0x553fee + _0x459958['col2']['x'] * _0xc84521 , _0xc84521 = _0x459958['col1']['y'] * _0x553fee + _0x459958['col2']['y'] * _0xc84521 , _0x553fee = _0x28966c; _0x459958 = _0xf8d27f, _0xf8d27f = this['m_localAnchor2']['x'] - this['m_localCenterB']['x'], _0x320595 = this['m_localAnchor2']['y'] - this['m_localCenterB']['y'], _0x28966c = _0x459958['col1']['x'] * _0xf8d27f + _0x459958['col2']['x'] * _0x320595, _0x320595 = _0x459958['col1']['y'] * _0xf8d27f + _0x459958['col2']['y'] * _0x320595, _0xf8d27f = _0x28966c, _0x459958 = _0x423975['x'] + _0xf8d27f - _0x346a7c['x'] - _0x553fee, _0x28966c = _0x423975['y'] + _0x320595 - _0x346a7c['y'] - _0xc84521; if (this['m_enableLimit']) { this['m_axis'] = _0x3bc259['MulMV'](_0x5e113f, this['m_localXAxis1']), this['m_a1'] = (_0x459958 + _0x553fee) * this['m_axis']['y'] - (_0x28966c + _0xc84521) * this['m_axis']['x'], this['m_a2'] = _0xf8d27f * this['m_axis']['y'] - _0x320595 * this['m_axis']['x']; var _0x5283a5 = this['m_axis']['x'] * _0x459958 + this['m_axis']['y'] * _0x28966c; _0x3bc259['Abs'](this['m_upperTranslation'] - this['m_lowerTranslation']) < 0x2 * _0x36d772['b2_linearSlop'] ? (_0x2ba6d3 = _0x3bc259['Clamp'](_0x5283a5, -_0x36d772['b2_maxLinearCorrection'], _0x36d772['b2_maxLinearCorrection']), _0x2a421d = _0x3bc259['Abs'](_0x5283a5), _0x557147 = !0x0) : _0x5283a5 <= this['m_lowerTranslation'] ? (_0x2ba6d3 = _0x3bc259['Clamp'](_0x5283a5 - this['m_lowerTranslation'] + _0x36d772['b2_linearSlop'], -_0x36d772['b2_maxLinearCorrection'], 0x0), _0x2a421d = this['m_lowerTranslation'] - _0x5283a5, _0x557147 = !0x0) : _0x5283a5 >= this['m_upperTranslation'] && (_0x2ba6d3 = _0x3bc259['Clamp'](_0x5283a5 - this['m_upperTranslation'] + _0x36d772['b2_linearSlop'], 0x0, _0x36d772['b2_maxLinearCorrection']), _0x2a421d = _0x5283a5 - this['m_upperTranslation'], _0x557147 = !0x0); } return this['m_perp'] = _0x3bc259['MulMV'](_0x5e113f, this['m_localYAxis1']), this['m_s1'] = (_0x459958 + _0x553fee) * this['m_perp']['y'] - (_0x28966c + _0xc84521) * this['m_perp']['x'], this['m_s2'] = _0xf8d27f * this['m_perp']['y'] - _0x320595 * this['m_perp']['x'], _0x5e113f = new _0x59cf24(), _0xc84521 = this['m_perp']['x'] * _0x459958 + this['m_perp']['y'] * _0x28966c, _0xf8d27f = _0x21122d - _0x1c5ff3 - this['m_refAngle'], _0x2a421d = _0x3bc259['Max'](_0x2a421d, _0x3bc259['Abs'](_0xc84521)), _0x553fee = _0x3bc259['Abs'](_0xf8d27f), _0x557147 ? (_0x557147 = this['m_invMassA'], _0x320595 = this['m_invMassB'], _0x459958 = this['m_invIA'], _0x28966c = this['m_invIB'], this['m_K']['col1']['x'] = _0x557147 + _0x320595 + _0x459958 * this['m_s1'] * this['m_s1'] + _0x28966c * this['m_s2'] * this['m_s2'], this['m_K']['col1']['y'] = _0x459958 * this['m_s1'] + _0x28966c * this['m_s2'], this['m_K']['col1']['z'] = _0x459958 * this['m_s1'] * this['m_a1'] + _0x28966c * this['m_s2'] * this['m_a2'], this['m_K']['col2']['x'] = this['m_K']['col1']['y'], this['m_K']['col2']['y'] = _0x459958 + _0x28966c, this['m_K']['col2']['z'] = _0x459958 * this['m_a1'] + _0x28966c * this['m_a2'], this['m_K']['col3']['x'] = this['m_K']['col1']['z'], this['m_K']['col3']['y'] = this['m_K']['col2']['z'], this['m_K']['col3']['z'] = _0x557147 + _0x320595 + _0x459958 * this['m_a1'] * this['m_a1'] + _0x28966c * this['m_a2'] * this['m_a2'], this['m_K']['Solve33'](_0x5e113f, -_0xc84521, -_0xf8d27f, -_0x2ba6d3)) : (_0x557147 = this['m_invMassA'], _0x320595 = this['m_invMassB'], _0x459958 = this['m_invIA'], _0x28966c = this['m_invIB'], _0x2ba6d3 = _0x459958 * this['m_s1'] + _0x28966c * this['m_s2'], _0x5283a5 = _0x459958 + _0x28966c, this['m_K']['col1']['Set'](_0x557147 + _0x320595 + _0x459958 * this['m_s1'] * this['m_s1'] + _0x28966c * this['m_s2'] * this['m_s2'], _0x2ba6d3, 0x0), this['m_K']['col2']['Set'](_0x2ba6d3, _0x5283a5, 0x0), _0x2ba6d3 = this['m_K']['Solve22'](new _0x416390(), -_0xc84521, -_0xf8d27f), _0x5e113f['x'] = _0x2ba6d3['x'], _0x5e113f['y'] = _0x2ba6d3['y'], _0x5e113f['z'] = 0x0), _0x2ba6d3 = _0x5e113f['x'] * this['m_perp']['x'] + _0x5e113f['z'] * this['m_axis']['x'], _0x557147 = _0x5e113f['x'] * this['m_perp']['y'] + _0x5e113f['z'] * this['m_axis']['y'], _0xc84521 = _0x5e113f['x'] * this['m_s1'] + _0x5e113f['y'] + _0x5e113f['z'] * this['m_a1'], _0x5e113f = _0x5e113f['x'] * this['m_s2'] + _0x5e113f['y'] + _0x5e113f['z'] * this['m_a2'], _0x346a7c['x'] -= this['m_invMassA'] * _0x2ba6d3, _0x346a7c['y'] -= this['m_invMassA'] * _0x557147, _0x1c5ff3 -= this['m_invIA'] * _0xc84521, _0x423975['x'] += this['m_invMassB'] * _0x2ba6d3, _0x423975['y'] += this['m_invMassB'] * _0x557147, _0x21122d += this['m_invIB'] * _0x5e113f, _0x18023b['m_sweep']['a'] = _0x1c5ff3, _0x34ed91['m_sweep']['a'] = _0x21122d, _0x18023b['SynchronizeTransform'](), _0x34ed91['SynchronizeTransform'](), _0x2a421d <= _0x36d772['b2_linearSlop'] && _0x553fee <= _0x36d772['b2_angularSlop']; } , Box2D['inherit'](_0x2afc72, Box2D['Dynamics']['Joints']['b2JointDef']), _0x2afc72['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0x2afc72['b2PrismaticJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments), this['localAnchorA'] = new _0x416390(), this['localAnchorB'] = new _0x416390(), this['localAxisA'] = new _0x416390(); } , _0x2afc72['prototype']['b2PrismaticJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_prismaticJoint'], this['localAxisA']['Set'](0x1, 0x0), this['referenceAngle'] = 0x0, this['enableLimit'] = !0x1, this['upperTranslation'] = this['lowerTranslation'] = 0x0, this['enableMotor'] = !0x1, this['motorSpeed'] = this['maxMotorForce'] = 0x0; } , _0x2afc72['prototype']['Initialize'] = function(_0x55bbc3, _0x197de1, _0x2737dc, _0x4b7962) { this['bodyA'] = _0x55bbc3, this['bodyB'] = _0x197de1, this['localAnchorA'] = this['bodyA']['GetLocalPoint'](_0x2737dc), this['localAnchorB'] = this['bodyB']['GetLocalPoint'](_0x2737dc), this['localAxisA'] = this['bodyA']['GetLocalVector'](_0x4b7962), this['referenceAngle'] = this['bodyB']['GetAngle']() - this['bodyA']['GetAngle'](); } , Box2D['inherit'](_0xe26196, Box2D['Dynamics']['Joints']['b2Joint']), _0xe26196['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0xe26196['b2PulleyJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['m_groundAnchor1'] = new _0x416390(), this['m_groundAnchor2'] = new _0x416390(), this['m_localAnchor1'] = new _0x416390(), this['m_localAnchor2'] = new _0x416390(), this['m_u1'] = new _0x416390(), this['m_u2'] = new _0x416390(); } , _0xe26196['prototype']['GetAnchorA'] = function() { return this['m_bodyA']['GetWorldPoint'](this['m_localAnchor1']); } , _0xe26196['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchor2']); } , _0xe26196['prototype']['GetReactionForce'] = function(_0x19ad37) { return void 0x0 === _0x19ad37 && (_0x19ad37 = 0x0), new _0x416390(_0x19ad37 * this['m_impulse'] * this['m_u2']['x'],_0x19ad37 * this['m_impulse'] * this['m_u2']['y']); } , _0xe26196['prototype']['GetReactionTorque'] = function() { return 0x0; } , _0xe26196['prototype']['GetGroundAnchorA'] = function() { var _0x15c6c7 = this['m_ground']['m_xf']['position']['Copy'](); return _0x15c6c7['Add'](this['m_groundAnchor1']), _0x15c6c7; } , _0xe26196['prototype']['GetGroundAnchorB'] = function() { var _0x5d2ee6 = this['m_ground']['m_xf']['position']['Copy'](); return _0x5d2ee6['Add'](this['m_groundAnchor2']), _0x5d2ee6; } , _0xe26196['prototype']['GetLength1'] = function() { var _0x2f827b = this['m_bodyA']['GetWorldPoint'](this['m_localAnchor1']) , _0x40c074 = _0x2f827b['x'] - (this['m_ground']['m_xf']['position']['x'] + this['m_groundAnchor1']['x']) , _0x2f827b = _0x2f827b['y'] - (this['m_ground']['m_xf']['position']['y'] + this['m_groundAnchor1']['y']); return Math['sqrt'](_0x40c074 * _0x40c074 + _0x2f827b * _0x2f827b); } , _0xe26196['prototype']['GetLength2'] = function() { var _0x343c62 = this['m_bodyB']['GetWorldPoint'](this['m_localAnchor2']) , _0x5d4299 = _0x343c62['x'] - (this['m_ground']['m_xf']['position']['x'] + this['m_groundAnchor2']['x']) , _0x343c62 = _0x343c62['y'] - (this['m_ground']['m_xf']['position']['y'] + this['m_groundAnchor2']['y']); return Math['sqrt'](_0x5d4299 * _0x5d4299 + _0x343c62 * _0x343c62); } , _0xe26196['prototype']['GetRatio'] = function() { return this['m_ratio']; } , _0xe26196['prototype']['b2PulleyJoint'] = function(_0x7b9889) { this['__super']['b2Joint']['call'](this, _0x7b9889), this['m_ground'] = this['m_bodyA']['m_world']['m_groundBody'], this['m_groundAnchor1']['x'] = _0x7b9889['groundAnchorA']['x'] - this['m_ground']['m_xf']['position']['x'], this['m_groundAnchor1']['y'] = _0x7b9889['groundAnchorA']['y'] - this['m_ground']['m_xf']['position']['y'], this['m_groundAnchor2']['x'] = _0x7b9889['groundAnchorB']['x'] - this['m_ground']['m_xf']['position']['x'], this['m_groundAnchor2']['y'] = _0x7b9889['groundAnchorB']['y'] - this['m_ground']['m_xf']['position']['y'], this['m_localAnchor1']['SetV'](_0x7b9889['localAnchorA']), this['m_localAnchor2']['SetV'](_0x7b9889['localAnchorB']), this['m_ratio'] = _0x7b9889['ratio'], this['m_constant'] = _0x7b9889['lengthA'] + this['m_ratio'] * _0x7b9889['lengthB'], this['m_maxLength1'] = _0x3bc259['Min'](_0x7b9889['maxLengthA'], this['m_constant'] - this['m_ratio'] * _0xe26196['b2_minPulleyLength']), this['m_maxLength2'] = _0x3bc259['Min'](_0x7b9889['maxLengthB'], (this['m_constant'] - _0xe26196['b2_minPulleyLength']) / this['m_ratio']), this['m_limitImpulse2'] = this['m_limitImpulse1'] = this['m_impulse'] = 0x0; } , _0xe26196['prototype']['InitVelocityConstraints'] = function(_0x599242) { var _0x4cd623 = this['m_bodyA'], _0x30438d = this['m_bodyB'], _0x1424a5; _0x1424a5 = _0x4cd623['m_xf']['R']; var _0x11817e = this['m_localAnchor1']['x'] - _0x4cd623['m_sweep']['localCenter']['x'] , _0x2933a1 = this['m_localAnchor1']['y'] - _0x4cd623['m_sweep']['localCenter']['y'] , _0x2c549f = _0x1424a5['col1']['x'] * _0x11817e + _0x1424a5['col2']['x'] * _0x2933a1 , _0x2933a1 = _0x1424a5['col1']['y'] * _0x11817e + _0x1424a5['col2']['y'] * _0x2933a1 , _0x11817e = _0x2c549f; _0x1424a5 = _0x30438d['m_xf']['R']; var _0x2696ec = this['m_localAnchor2']['x'] - _0x30438d['m_sweep']['localCenter']['x'] , _0x1bc5cc = this['m_localAnchor2']['y'] - _0x30438d['m_sweep']['localCenter']['y'] , _0x2c549f = _0x1424a5['col1']['x'] * _0x2696ec + _0x1424a5['col2']['x'] * _0x1bc5cc , _0x1bc5cc = _0x1424a5['col1']['y'] * _0x2696ec + _0x1424a5['col2']['y'] * _0x1bc5cc , _0x2696ec = _0x2c549f; _0x1424a5 = _0x30438d['m_sweep']['c']['x'] + _0x2696ec; var _0x2c549f = _0x30438d['m_sweep']['c']['y'] + _0x1bc5cc , _0x50da32 = this['m_ground']['m_xf']['position']['x'] + this['m_groundAnchor2']['x'] , _0x2bf185 = this['m_ground']['m_xf']['position']['y'] + this['m_groundAnchor2']['y']; this['m_u1']['Set'](_0x4cd623['m_sweep']['c']['x'] + _0x11817e - (this['m_ground']['m_xf']['position']['x'] + this['m_groundAnchor1']['x']), _0x4cd623['m_sweep']['c']['y'] + _0x2933a1 - (this['m_ground']['m_xf']['position']['y'] + this['m_groundAnchor1']['y'])), this['m_u2']['Set'](_0x1424a5 - _0x50da32, _0x2c549f - _0x2bf185), _0x1424a5 = this['m_u1']['Length'](), _0x2c549f = this['m_u2']['Length'](), _0x1424a5 > _0x36d772['b2_linearSlop'] ? this['m_u1']['Multiply'](0x1 / _0x1424a5) : this['m_u1']['SetZero'](), _0x2c549f > _0x36d772['b2_linearSlop'] ? this['m_u2']['Multiply'](0x1 / _0x2c549f) : this['m_u2']['SetZero'](), 0x0 < this['m_constant'] - _0x1424a5 - this['m_ratio'] * _0x2c549f ? (this['m_state'] = _0x1e6a98['e_inactiveLimit'], this['m_impulse'] = 0x0) : this['m_state'] = _0x1e6a98['e_atUpperLimit'], _0x1424a5 < this['m_maxLength1'] ? (this['m_limitState1'] = _0x1e6a98['e_inactiveLimit'], this['m_limitImpulse1'] = 0x0) : this['m_limitState1'] = _0x1e6a98['e_atUpperLimit'], _0x2c549f < this['m_maxLength2'] ? (this['m_limitState2'] = _0x1e6a98['e_inactiveLimit'], this['m_limitImpulse2'] = 0x0) : this['m_limitState2'] = _0x1e6a98['e_atUpperLimit'], _0x1424a5 = _0x11817e * this['m_u1']['y'] - _0x2933a1 * this['m_u1']['x'], _0x2c549f = _0x2696ec * this['m_u2']['y'] - _0x1bc5cc * this['m_u2']['x'], this['m_limitMass1'] = _0x4cd623['m_invMass'] + _0x4cd623['m_invI'] * _0x1424a5 * _0x1424a5, this['m_limitMass2'] = _0x30438d['m_invMass'] + _0x30438d['m_invI'] * _0x2c549f * _0x2c549f, this['m_pulleyMass'] = this['m_limitMass1'] + this['m_ratio'] * this['m_ratio'] * this['m_limitMass2'], this['m_limitMass1'] = 0x1 / this['m_limitMass1'], this['m_limitMass2'] = 0x1 / this['m_limitMass2'], this['m_pulleyMass'] = 0x1 / this['m_pulleyMass'], _0x599242['warmStarting'] ? (this['m_impulse'] *= _0x599242['dtRatio'], this['m_limitImpulse1'] *= _0x599242['dtRatio'], this['m_limitImpulse2'] *= _0x599242['dtRatio'], _0x599242 = (-this['m_impulse'] - this['m_limitImpulse1']) * this['m_u1']['x'], _0x1424a5 = (-this['m_impulse'] - this['m_limitImpulse1']) * this['m_u1']['y'], _0x2c549f = (-this['m_ratio'] * this['m_impulse'] - this['m_limitImpulse2']) * this['m_u2']['x'], _0x50da32 = (-this['m_ratio'] * this['m_impulse'] - this['m_limitImpulse2']) * this['m_u2']['y'], _0x4cd623['m_linearVelocity']['x'] += _0x4cd623['m_invMass'] * _0x599242, _0x4cd623['m_linearVelocity']['y'] += _0x4cd623['m_invMass'] * _0x1424a5, _0x4cd623['m_angularVelocity'] += _0x4cd623['m_invI'] * (_0x11817e * _0x1424a5 - _0x2933a1 * _0x599242), _0x30438d['m_linearVelocity']['x'] += _0x30438d['m_invMass'] * _0x2c549f, _0x30438d['m_linearVelocity']['y'] += _0x30438d['m_invMass'] * _0x50da32, _0x30438d['m_angularVelocity'] += _0x30438d['m_invI'] * (_0x2696ec * _0x50da32 - _0x1bc5cc * _0x2c549f)) : this['m_limitImpulse2'] = this['m_limitImpulse1'] = this['m_impulse'] = 0x0; } , _0xe26196['prototype']['SolveVelocityConstraints'] = function() { var _0x138af5 = this['m_bodyA'], _0xffa036 = this['m_bodyB'], _0x2a6554; _0x2a6554 = _0x138af5['m_xf']['R']; var _0x4ce5bb = this['m_localAnchor1']['x'] - _0x138af5['m_sweep']['localCenter']['x'] , _0x26a698 = this['m_localAnchor1']['y'] - _0x138af5['m_sweep']['localCenter']['y'] , _0x44a7e2 = _0x2a6554['col1']['x'] * _0x4ce5bb + _0x2a6554['col2']['x'] * _0x26a698 , _0x26a698 = _0x2a6554['col1']['y'] * _0x4ce5bb + _0x2a6554['col2']['y'] * _0x26a698 , _0x4ce5bb = _0x44a7e2; _0x2a6554 = _0xffa036['m_xf']['R']; var _0x52f518 = this['m_localAnchor2']['x'] - _0xffa036['m_sweep']['localCenter']['x'] , _0x36c644 = this['m_localAnchor2']['y'] - _0xffa036['m_sweep']['localCenter']['y'] , _0x44a7e2 = _0x2a6554['col1']['x'] * _0x52f518 + _0x2a6554['col2']['x'] * _0x36c644 , _0x36c644 = _0x2a6554['col1']['y'] * _0x52f518 + _0x2a6554['col2']['y'] * _0x36c644 , _0x52f518 = _0x44a7e2 , _0x196c2c = 0x0 , _0x32ecde = 0x0; this['m_state'] == _0x1e6a98['e_atUpperLimit'] && (_0x2a6554 = _0x138af5['m_linearVelocity']['x'] + -_0x138af5['m_angularVelocity'] * _0x26a698, _0x44a7e2 = _0x138af5['m_linearVelocity']['y'] + _0x138af5['m_angularVelocity'] * _0x4ce5bb, _0x196c2c = _0xffa036['m_linearVelocity']['x'] + -_0xffa036['m_angularVelocity'] * _0x36c644, _0x32ecde = _0xffa036['m_linearVelocity']['y'] + _0xffa036['m_angularVelocity'] * _0x52f518, _0x2a6554 = -(this['m_u1']['x'] * _0x2a6554 + this['m_u1']['y'] * _0x44a7e2) - this['m_ratio'] * (this['m_u2']['x'] * _0x196c2c + this['m_u2']['y'] * _0x32ecde), _0x32ecde = this['m_pulleyMass'] * -_0x2a6554, _0x2a6554 = this['m_impulse'], this['m_impulse'] = _0x3bc259['Max'](0x0, this['m_impulse'] + _0x32ecde), _0x32ecde = this['m_impulse'] - _0x2a6554, _0x2a6554 = -_0x32ecde * this['m_u1']['x'], _0x44a7e2 = -_0x32ecde * this['m_u1']['y'], _0x196c2c = -this['m_ratio'] * _0x32ecde * this['m_u2']['x'], _0x32ecde = -this['m_ratio'] * _0x32ecde * this['m_u2']['y'], _0x138af5['m_linearVelocity']['x'] += _0x138af5['m_invMass'] * _0x2a6554, _0x138af5['m_linearVelocity']['y'] += _0x138af5['m_invMass'] * _0x44a7e2, _0x138af5['m_angularVelocity'] += _0x138af5['m_invI'] * (_0x4ce5bb * _0x44a7e2 - _0x26a698 * _0x2a6554), _0xffa036['m_linearVelocity']['x'] += _0xffa036['m_invMass'] * _0x196c2c, _0xffa036['m_linearVelocity']['y'] += _0xffa036['m_invMass'] * _0x32ecde, _0xffa036['m_angularVelocity'] += _0xffa036['m_invI'] * (_0x52f518 * _0x32ecde - _0x36c644 * _0x196c2c)), this['m_limitState1'] == _0x1e6a98['e_atUpperLimit'] && (_0x2a6554 = _0x138af5['m_linearVelocity']['x'] + -_0x138af5['m_angularVelocity'] * _0x26a698, _0x44a7e2 = _0x138af5['m_linearVelocity']['y'] + _0x138af5['m_angularVelocity'] * _0x4ce5bb, _0x2a6554 = -(this['m_u1']['x'] * _0x2a6554 + this['m_u1']['y'] * _0x44a7e2), _0x32ecde = -this['m_limitMass1'] * _0x2a6554, _0x2a6554 = this['m_limitImpulse1'], this['m_limitImpulse1'] = _0x3bc259['Max'](0x0, this['m_limitImpulse1'] + _0x32ecde), _0x32ecde = this['m_limitImpulse1'] - _0x2a6554, _0x2a6554 = -_0x32ecde * this['m_u1']['x'], _0x44a7e2 = -_0x32ecde * this['m_u1']['y'], _0x138af5['m_linearVelocity']['x'] += _0x138af5['m_invMass'] * _0x2a6554, _0x138af5['m_linearVelocity']['y'] += _0x138af5['m_invMass'] * _0x44a7e2, _0x138af5['m_angularVelocity'] += _0x138af5['m_invI'] * (_0x4ce5bb * _0x44a7e2 - _0x26a698 * _0x2a6554)), this['m_limitState2'] == _0x1e6a98['e_atUpperLimit'] && (_0x196c2c = _0xffa036['m_linearVelocity']['x'] + -_0xffa036['m_angularVelocity'] * _0x36c644, _0x32ecde = _0xffa036['m_linearVelocity']['y'] + _0xffa036['m_angularVelocity'] * _0x52f518, _0x2a6554 = -(this['m_u2']['x'] * _0x196c2c + this['m_u2']['y'] * _0x32ecde), _0x32ecde = -this['m_limitMass2'] * _0x2a6554, _0x2a6554 = this['m_limitImpulse2'], this['m_limitImpulse2'] = _0x3bc259['Max'](0x0, this['m_limitImpulse2'] + _0x32ecde), _0x32ecde = this['m_limitImpulse2'] - _0x2a6554, _0x196c2c = -_0x32ecde * this['m_u2']['x'], _0x32ecde = -_0x32ecde * this['m_u2']['y'], _0xffa036['m_linearVelocity']['x'] += _0xffa036['m_invMass'] * _0x196c2c, _0xffa036['m_linearVelocity']['y'] += _0xffa036['m_invMass'] * _0x32ecde, _0xffa036['m_angularVelocity'] += _0xffa036['m_invI'] * (_0x52f518 * _0x32ecde - _0x36c644 * _0x196c2c)); } , _0xe26196['prototype']['SolvePositionConstraints'] = function() { var _0x3d34b5 = this['m_bodyA'], _0x3e91f6 = this['m_bodyB'], _0x4e3c0e, _0x2ebc2c = this['m_ground']['m_xf']['position']['x'] + this['m_groundAnchor1']['x'], _0x41ea86 = this['m_ground']['m_xf']['position']['y'] + this['m_groundAnchor1']['y'], _0x201658 = this['m_ground']['m_xf']['position']['x'] + this['m_groundAnchor2']['x'], _0x5cf538 = this['m_ground']['m_xf']['position']['y'] + this['m_groundAnchor2']['y'], _0x2fa1e1 = 0x0, _0xee6292 = 0x0, _0x517990 = 0x0, _0xbda51c = 0x0, _0x366bf8 = 0x0, _0x56da25 = 0x0, _0xacf392 = 0x0, _0x5ee30a = 0x0; return this['m_state'] == _0x1e6a98['e_atUpperLimit'] && (_0x4e3c0e = _0x3d34b5['m_xf']['R'], _0x2fa1e1 = this['m_localAnchor1']['x'] - _0x3d34b5['m_sweep']['localCenter']['x'], _0xee6292 = this['m_localAnchor1']['y'] - _0x3d34b5['m_sweep']['localCenter']['y'], _0x366bf8 = _0x4e3c0e['col1']['x'] * _0x2fa1e1 + _0x4e3c0e['col2']['x'] * _0xee6292, _0xee6292 = _0x4e3c0e['col1']['y'] * _0x2fa1e1 + _0x4e3c0e['col2']['y'] * _0xee6292, _0x2fa1e1 = _0x366bf8, _0x4e3c0e = _0x3e91f6['m_xf']['R'], _0x517990 = this['m_localAnchor2']['x'] - _0x3e91f6['m_sweep']['localCenter']['x'], _0xbda51c = this['m_localAnchor2']['y'] - _0x3e91f6['m_sweep']['localCenter']['y'], _0x366bf8 = _0x4e3c0e['col1']['x'] * _0x517990 + _0x4e3c0e['col2']['x'] * _0xbda51c, _0xbda51c = _0x4e3c0e['col1']['y'] * _0x517990 + _0x4e3c0e['col2']['y'] * _0xbda51c, _0x517990 = _0x366bf8, _0x4e3c0e = _0x3d34b5['m_sweep']['c']['x'] + _0x2fa1e1, _0x366bf8 = _0x3d34b5['m_sweep']['c']['y'] + _0xee6292, _0x56da25 = _0x3e91f6['m_sweep']['c']['x'] + _0x517990, _0xacf392 = _0x3e91f6['m_sweep']['c']['y'] + _0xbda51c, this['m_u1']['Set'](_0x4e3c0e - _0x2ebc2c, _0x366bf8 - _0x41ea86), this['m_u2']['Set'](_0x56da25 - _0x201658, _0xacf392 - _0x5cf538), _0x4e3c0e = this['m_u1']['Length'](), _0x366bf8 = this['m_u2']['Length'](), _0x4e3c0e > _0x36d772['b2_linearSlop'] ? this['m_u1']['Multiply'](0x1 / _0x4e3c0e) : this['m_u1']['SetZero'](), _0x366bf8 > _0x36d772['b2_linearSlop'] ? this['m_u2']['Multiply'](0x1 / _0x366bf8) : this['m_u2']['SetZero'](), _0x4e3c0e = this['m_constant'] - _0x4e3c0e - this['m_ratio'] * _0x366bf8, _0x5ee30a = _0x3bc259['Max'](_0x5ee30a, -_0x4e3c0e), _0x4e3c0e = _0x3bc259['Clamp'](_0x4e3c0e + _0x36d772['b2_linearSlop'], -_0x36d772['b2_maxLinearCorrection'], 0x0), _0xacf392 = -this['m_pulleyMass'] * _0x4e3c0e, _0x4e3c0e = -_0xacf392 * this['m_u1']['x'], _0x366bf8 = -_0xacf392 * this['m_u1']['y'], _0x56da25 = -this['m_ratio'] * _0xacf392 * this['m_u2']['x'], _0xacf392 = -this['m_ratio'] * _0xacf392 * this['m_u2']['y'], _0x3d34b5['m_sweep']['c']['x'] += _0x3d34b5['m_invMass'] * _0x4e3c0e, _0x3d34b5['m_sweep']['c']['y'] += _0x3d34b5['m_invMass'] * _0x366bf8, _0x3d34b5['m_sweep']['a'] += _0x3d34b5['m_invI'] * (_0x2fa1e1 * _0x366bf8 - _0xee6292 * _0x4e3c0e), _0x3e91f6['m_sweep']['c']['x'] += _0x3e91f6['m_invMass'] * _0x56da25, _0x3e91f6['m_sweep']['c']['y'] += _0x3e91f6['m_invMass'] * _0xacf392, _0x3e91f6['m_sweep']['a'] += _0x3e91f6['m_invI'] * (_0x517990 * _0xacf392 - _0xbda51c * _0x56da25), _0x3d34b5['SynchronizeTransform'](), _0x3e91f6['SynchronizeTransform']()), this['m_limitState1'] == _0x1e6a98['e_atUpperLimit'] && (_0x4e3c0e = _0x3d34b5['m_xf']['R'], _0x2fa1e1 = this['m_localAnchor1']['x'] - _0x3d34b5['m_sweep']['localCenter']['x'], _0xee6292 = this['m_localAnchor1']['y'] - _0x3d34b5['m_sweep']['localCenter']['y'], _0x366bf8 = _0x4e3c0e['col1']['x'] * _0x2fa1e1 + _0x4e3c0e['col2']['x'] * _0xee6292, _0xee6292 = _0x4e3c0e['col1']['y'] * _0x2fa1e1 + _0x4e3c0e['col2']['y'] * _0xee6292, _0x2fa1e1 = _0x366bf8, _0x4e3c0e = _0x3d34b5['m_sweep']['c']['x'] + _0x2fa1e1, _0x366bf8 = _0x3d34b5['m_sweep']['c']['y'] + _0xee6292, this['m_u1']['Set'](_0x4e3c0e - _0x2ebc2c, _0x366bf8 - _0x41ea86), _0x4e3c0e = this['m_u1']['Length'](), _0x4e3c0e > _0x36d772['b2_linearSlop'] ? (this['m_u1']['x'] *= 0x1 / _0x4e3c0e, this['m_u1']['y'] *= 0x1 / _0x4e3c0e) : this['m_u1']['SetZero'](), _0x4e3c0e = this['m_maxLength1'] - _0x4e3c0e, _0x5ee30a = _0x3bc259['Max'](_0x5ee30a, -_0x4e3c0e), _0x4e3c0e = _0x3bc259['Clamp'](_0x4e3c0e + _0x36d772['b2_linearSlop'], -_0x36d772['b2_maxLinearCorrection'], 0x0), _0xacf392 = -this['m_limitMass1'] * _0x4e3c0e, _0x4e3c0e = -_0xacf392 * this['m_u1']['x'], _0x366bf8 = -_0xacf392 * this['m_u1']['y'], _0x3d34b5['m_sweep']['c']['x'] += _0x3d34b5['m_invMass'] * _0x4e3c0e, _0x3d34b5['m_sweep']['c']['y'] += _0x3d34b5['m_invMass'] * _0x366bf8, _0x3d34b5['m_sweep']['a'] += _0x3d34b5['m_invI'] * (_0x2fa1e1 * _0x366bf8 - _0xee6292 * _0x4e3c0e), _0x3d34b5['SynchronizeTransform']()), this['m_limitState2'] == _0x1e6a98['e_atUpperLimit'] && (_0x4e3c0e = _0x3e91f6['m_xf']['R'], _0x517990 = this['m_localAnchor2']['x'] - _0x3e91f6['m_sweep']['localCenter']['x'], _0xbda51c = this['m_localAnchor2']['y'] - _0x3e91f6['m_sweep']['localCenter']['y'], _0x366bf8 = _0x4e3c0e['col1']['x'] * _0x517990 + _0x4e3c0e['col2']['x'] * _0xbda51c, _0xbda51c = _0x4e3c0e['col1']['y'] * _0x517990 + _0x4e3c0e['col2']['y'] * _0xbda51c, _0x517990 = _0x366bf8, _0x56da25 = _0x3e91f6['m_sweep']['c']['x'] + _0x517990, _0xacf392 = _0x3e91f6['m_sweep']['c']['y'] + _0xbda51c, this['m_u2']['Set'](_0x56da25 - _0x201658, _0xacf392 - _0x5cf538), _0x366bf8 = this['m_u2']['Length'](), _0x366bf8 > _0x36d772['b2_linearSlop'] ? (this['m_u2']['x'] *= 0x1 / _0x366bf8, this['m_u2']['y'] *= 0x1 / _0x366bf8) : this['m_u2']['SetZero'](), _0x4e3c0e = this['m_maxLength2'] - _0x366bf8, _0x5ee30a = _0x3bc259['Max'](_0x5ee30a, -_0x4e3c0e), _0x4e3c0e = _0x3bc259['Clamp'](_0x4e3c0e + _0x36d772['b2_linearSlop'], -_0x36d772['b2_maxLinearCorrection'], 0x0), _0xacf392 = -this['m_limitMass2'] * _0x4e3c0e, _0x56da25 = -_0xacf392 * this['m_u2']['x'], _0xacf392 = -_0xacf392 * this['m_u2']['y'], _0x3e91f6['m_sweep']['c']['x'] += _0x3e91f6['m_invMass'] * _0x56da25, _0x3e91f6['m_sweep']['c']['y'] += _0x3e91f6['m_invMass'] * _0xacf392, _0x3e91f6['m_sweep']['a'] += _0x3e91f6['m_invI'] * (_0x517990 * _0xacf392 - _0xbda51c * _0x56da25), _0x3e91f6['SynchronizeTransform']()), _0x5ee30a < _0x36d772['b2_linearSlop']; } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['Joints']['b2PulleyJoint']['b2_minPulleyLength'] = 0x2; }), Box2D['inherit'](_0x260839, Box2D['Dynamics']['Joints']['b2JointDef']), _0x260839['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0x260839['b2PulleyJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments), this['groundAnchorA'] = new _0x416390(), this['groundAnchorB'] = new _0x416390(), this['localAnchorA'] = new _0x416390(), this['localAnchorB'] = new _0x416390(); } , _0x260839['prototype']['b2PulleyJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_pulleyJoint'], this['groundAnchorA']['Set'](-0x1, 0x1), this['groundAnchorB']['Set'](0x1, 0x1), this['localAnchorA']['Set'](-0x1, 0x0), this['localAnchorB']['Set'](0x1, 0x0), this['maxLengthB'] = this['lengthB'] = this['maxLengthA'] = this['lengthA'] = 0x0, this['ratio'] = 0x1, this['collideConnected'] = !0x0; } , _0x260839['prototype']['Initialize'] = function(_0x1cd984, _0x28c1da, _0x2d42e2, _0x1bc273, _0x2801e1, _0x5374a1, _0x1bb2b4) { void 0x0 === _0x1bb2b4 && (_0x1bb2b4 = 0x0), this['bodyA'] = _0x1cd984, this['bodyB'] = _0x28c1da, this['groundAnchorA']['SetV'](_0x2d42e2), this['groundAnchorB']['SetV'](_0x1bc273), this['localAnchorA'] = this['bodyA']['GetLocalPoint'](_0x2801e1), this['localAnchorB'] = this['bodyB']['GetLocalPoint'](_0x5374a1), _0x1cd984 = _0x2801e1['x'] - _0x2d42e2['x'], _0x2d42e2 = _0x2801e1['y'] - _0x2d42e2['y'], this['lengthA'] = Math['sqrt'](_0x1cd984 * _0x1cd984 + _0x2d42e2 * _0x2d42e2), _0x2d42e2 = _0x5374a1['x'] - _0x1bc273['x'], _0x1bc273 = _0x5374a1['y'] - _0x1bc273['y'], this['lengthB'] = Math['sqrt'](_0x2d42e2 * _0x2d42e2 + _0x1bc273 * _0x1bc273), this['ratio'] = _0x1bb2b4, _0x1bb2b4 = this['lengthA'] + this['ratio'] * this['lengthB'], this['maxLengthA'] = _0x1bb2b4 - this['ratio'] * _0xe26196['b2_minPulleyLength'], this['maxLengthB'] = (_0x1bb2b4 - _0xe26196['b2_minPulleyLength']) / this['ratio']; } , Box2D['inherit'](_0x4418f7, Box2D['Dynamics']['Joints']['b2Joint']), _0x4418f7['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0x4418f7['b2RevoluteJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['K'] = new _0x5c4159(), this['K1'] = new _0x5c4159(), this['K2'] = new _0x5c4159(), this['K3'] = new _0x5c4159(), this['impulse3'] = new _0x59cf24(), this['impulse2'] = new _0x416390(), this['reduced'] = new _0x416390(), this['m_localAnchor1'] = new _0x416390(), this['m_localAnchor2'] = new _0x416390(), this['m_impulse'] = new _0x59cf24(), this['m_mass'] = new _0x2e672f(); } , _0x4418f7['prototype']['GetAnchorA'] = function() { return this['m_bodyA']['GetWorldPoint'](this['m_localAnchor1']); } , _0x4418f7['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchor2']); } , _0x4418f7['prototype']['GetReactionForce'] = function(_0x256128) { return void 0x0 === _0x256128 && (_0x256128 = 0x0), new _0x416390(_0x256128 * this['m_impulse']['x'],_0x256128 * this['m_impulse']['y']); } , _0x4418f7['prototype']['GetReactionTorque'] = function(_0x5b272b) { return void 0x0 === _0x5b272b && (_0x5b272b = 0x0), _0x5b272b * this['m_impulse']['z']; } , _0x4418f7['prototype']['GetJointAngle'] = function() { return this['m_bodyB']['m_sweep']['a'] - this['m_bodyA']['m_sweep']['a'] - this['m_referenceAngle']; } , _0x4418f7['prototype']['GetJointSpeed'] = function() { return this['m_bodyB']['m_angularVelocity'] - this['m_bodyA']['m_angularVelocity']; } , _0x4418f7['prototype']['IsLimitEnabled'] = function() { return this['m_enableLimit']; } , _0x4418f7['prototype']['EnableLimit'] = function(_0x43f8ec) { this['m_enableLimit'] = _0x43f8ec; } , _0x4418f7['prototype']['GetLowerLimit'] = function() { return this['m_lowerAngle']; } , _0x4418f7['prototype']['GetUpperLimit'] = function() { return this['m_upperAngle']; } , _0x4418f7['prototype']['SetLimits'] = function(_0x10db71, _0xfd4cf6) { void 0x0 === _0x10db71 && (_0x10db71 = 0x0), void 0x0 === _0xfd4cf6 && (_0xfd4cf6 = 0x0), this['m_lowerAngle'] = _0x10db71, this['m_upperAngle'] = _0xfd4cf6; } , _0x4418f7['prototype']['IsMotorEnabled'] = function() { return this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_enableMotor']; } , _0x4418f7['prototype']['EnableMotor'] = function(_0x341f57) { this['m_enableMotor'] = _0x341f57; } , _0x4418f7['prototype']['SetMotorSpeed'] = function(_0xa5783b) { void 0x0 === _0xa5783b && (_0xa5783b = 0x0), this['m_bodyA']['SetAwake'](!0x0), this['m_bodyB']['SetAwake'](!0x0), this['m_motorSpeed'] = _0xa5783b; } , _0x4418f7['prototype']['GetMotorSpeed'] = function() { return this['m_motorSpeed']; } , _0x4418f7['prototype']['SetMaxMotorTorque'] = function(_0x5c4598) { void 0x0 === _0x5c4598 && (_0x5c4598 = 0x0), this['m_maxMotorTorque'] = _0x5c4598; } , _0x4418f7['prototype']['GetMotorTorque'] = function() { return this['m_maxMotorTorque']; } , _0x4418f7['prototype']['b2RevoluteJoint'] = function(_0x4de55a) { this['__super']['b2Joint']['call'](this, _0x4de55a), this['m_localAnchor1']['SetV'](_0x4de55a['localAnchorA']), this['m_localAnchor2']['SetV'](_0x4de55a['localAnchorB']), this['m_referenceAngle'] = _0x4de55a['referenceAngle'], this['m_impulse']['SetZero'](), this['m_motorImpulse'] = 0x0, this['m_lowerAngle'] = _0x4de55a['lowerAngle'], this['m_upperAngle'] = _0x4de55a['upperAngle'], this['m_maxMotorTorque'] = _0x4de55a['maxMotorTorque'], this['m_motorSpeed'] = _0x4de55a['motorSpeed'], this['m_enableLimit'] = _0x4de55a['enableLimit'], this['m_enableMotor'] = _0x4de55a['enableMotor'], this['m_limitState'] = _0x1e6a98['e_inactiveLimit']; } , _0x4418f7['prototype']['InitVelocityConstraints'] = function(_0x48a7) { var _0x14536f = this['m_bodyA'], _0x643c15 = this['m_bodyB'], _0x5802dd, _0x263bc3 = 0x0; _0x5802dd = _0x14536f['m_xf']['R']; var _0x16f08f = this['m_localAnchor1']['x'] - _0x14536f['m_sweep']['localCenter']['x'] , _0x187a90 = this['m_localAnchor1']['y'] - _0x14536f['m_sweep']['localCenter']['y'] , _0x263bc3 = _0x5802dd['col1']['x'] * _0x16f08f + _0x5802dd['col2']['x'] * _0x187a90 , _0x187a90 = _0x5802dd['col1']['y'] * _0x16f08f + _0x5802dd['col2']['y'] * _0x187a90 , _0x16f08f = _0x263bc3; _0x5802dd = _0x643c15['m_xf']['R']; var _0x52bfbc = this['m_localAnchor2']['x'] - _0x643c15['m_sweep']['localCenter']['x'] , _0x439a5f = this['m_localAnchor2']['y'] - _0x643c15['m_sweep']['localCenter']['y'] , _0x263bc3 = _0x5802dd['col1']['x'] * _0x52bfbc + _0x5802dd['col2']['x'] * _0x439a5f , _0x439a5f = _0x5802dd['col1']['y'] * _0x52bfbc + _0x5802dd['col2']['y'] * _0x439a5f , _0x52bfbc = _0x263bc3; _0x5802dd = _0x14536f['m_invMass']; var _0x263bc3 = _0x643c15['m_invMass'] , _0x437fcd = _0x14536f['m_invI'] , _0x2bee9c = _0x643c15['m_invI']; this['m_mass']['col1']['x'] = _0x5802dd + _0x263bc3 + _0x187a90 * _0x187a90 * _0x437fcd + _0x439a5f * _0x439a5f * _0x2bee9c, this['m_mass']['col2']['x'] = -_0x187a90 * _0x16f08f * _0x437fcd - _0x439a5f * _0x52bfbc * _0x2bee9c, this['m_mass']['col3']['x'] = -_0x187a90 * _0x437fcd - _0x439a5f * _0x2bee9c, this['m_mass']['col1']['y'] = this['m_mass']['col2']['x'], this['m_mass']['col2']['y'] = _0x5802dd + _0x263bc3 + _0x16f08f * _0x16f08f * _0x437fcd + _0x52bfbc * _0x52bfbc * _0x2bee9c, this['m_mass']['col3']['y'] = _0x16f08f * _0x437fcd + _0x52bfbc * _0x2bee9c, this['m_mass']['col1']['z'] = this['m_mass']['col3']['x'], this['m_mass']['col2']['z'] = this['m_mass']['col3']['y'], this['m_mass']['col3']['z'] = _0x437fcd + _0x2bee9c, this['m_motorMass'] = 0x1 / (_0x437fcd + _0x2bee9c), !0x1 == this['m_enableMotor'] && (this['m_motorImpulse'] = 0x0); if (this['m_enableLimit']) { var _0x4af2a0 = _0x643c15['m_sweep']['a'] - _0x14536f['m_sweep']['a'] - this['m_referenceAngle']; _0x3bc259['Abs'](this['m_upperAngle'] - this['m_lowerAngle']) < 0x2 * _0x36d772['b2_angularSlop'] ? this['m_limitState'] = _0x1e6a98['e_equalLimits'] : _0x4af2a0 <= this['m_lowerAngle'] ? (this['m_limitState'] != _0x1e6a98['e_atLowerLimit'] && (this['m_impulse']['z'] = 0x0), this['m_limitState'] = _0x1e6a98['e_atLowerLimit']) : _0x4af2a0 >= this['m_upperAngle'] ? (this['m_limitState'] != _0x1e6a98['e_atUpperLimit'] && (this['m_impulse']['z'] = 0x0), this['m_limitState'] = _0x1e6a98['e_atUpperLimit']) : (this['m_limitState'] = _0x1e6a98['e_inactiveLimit'], this['m_impulse']['z'] = 0x0); } else this['m_limitState'] = _0x1e6a98['e_inactiveLimit']; _0x48a7['warmStarting'] ? (this['m_impulse']['x'] *= _0x48a7['dtRatio'], this['m_impulse']['y'] *= _0x48a7['dtRatio'], this['m_motorImpulse'] *= _0x48a7['dtRatio'], _0x48a7 = this['m_impulse']['x'], _0x4af2a0 = this['m_impulse']['y'], _0x14536f['m_linearVelocity']['x'] -= _0x5802dd * _0x48a7, _0x14536f['m_linearVelocity']['y'] -= _0x5802dd * _0x4af2a0, _0x14536f['m_angularVelocity'] -= _0x437fcd * (_0x16f08f * _0x4af2a0 - _0x187a90 * _0x48a7 + this['m_motorImpulse'] + this['m_impulse']['z']), _0x643c15['m_linearVelocity']['x'] += _0x263bc3 * _0x48a7, _0x643c15['m_linearVelocity']['y'] += _0x263bc3 * _0x4af2a0, _0x643c15['m_angularVelocity'] += _0x2bee9c * (_0x52bfbc * _0x4af2a0 - _0x439a5f * _0x48a7 + this['m_motorImpulse'] + this['m_impulse']['z'])) : (this['m_impulse']['SetZero'](), this['m_motorImpulse'] = 0x0); } , _0x4418f7['prototype']['SolveVelocityConstraints'] = function(_0x1b0636) { var _0x4ffb10 = this['m_bodyA'] , _0x42dafa = this['m_bodyB'] , _0x107f34 = 0x0 , _0x35195e = 0x0 , _0x28231e = 0x0 , _0x2080fe = 0x0 , _0x1d9c3b = 0x0 , _0x510085 = _0x4ffb10['m_linearVelocity'] , _0x4c7e4f = _0x4ffb10['m_angularVelocity'] , _0x3a71c0 = _0x42dafa['m_linearVelocity'] , _0x3f3b64 = _0x42dafa['m_angularVelocity'] , _0x2de62b = _0x4ffb10['m_invMass'] , _0x433e55 = _0x42dafa['m_invMass'] , _0x3244cf = _0x4ffb10['m_invI'] , _0x4817ce = _0x42dafa['m_invI']; this['m_enableMotor'] && this['m_limitState'] != _0x1e6a98['e_equalLimits'] && (_0x35195e = this['m_motorMass'] * -(_0x3f3b64 - _0x4c7e4f - this['m_motorSpeed']), _0x28231e = this['m_motorImpulse'], _0x2080fe = _0x1b0636['dt'] * this['m_maxMotorTorque'], this['m_motorImpulse'] = _0x3bc259['Clamp'](this['m_motorImpulse'] + _0x35195e, -_0x2080fe, _0x2080fe), _0x35195e = this['m_motorImpulse'] - _0x28231e, _0x4c7e4f -= _0x3244cf * _0x35195e, _0x3f3b64 += _0x4817ce * _0x35195e); if (this['m_enableLimit'] && this['m_limitState'] != _0x1e6a98['e_inactiveLimit']) { _0x1b0636 = _0x4ffb10['m_xf']['R'], _0x35195e = this['m_localAnchor1']['x'] - _0x4ffb10['m_sweep']['localCenter']['x'], _0x28231e = this['m_localAnchor1']['y'] - _0x4ffb10['m_sweep']['localCenter']['y'], _0x107f34 = _0x1b0636['col1']['x'] * _0x35195e + _0x1b0636['col2']['x'] * _0x28231e, _0x28231e = _0x1b0636['col1']['y'] * _0x35195e + _0x1b0636['col2']['y'] * _0x28231e, _0x35195e = _0x107f34, _0x1b0636 = _0x42dafa['m_xf']['R'], _0x2080fe = this['m_localAnchor2']['x'] - _0x42dafa['m_sweep']['localCenter']['x'], _0x1d9c3b = this['m_localAnchor2']['y'] - _0x42dafa['m_sweep']['localCenter']['y'], _0x107f34 = _0x1b0636['col1']['x'] * _0x2080fe + _0x1b0636['col2']['x'] * _0x1d9c3b, _0x1d9c3b = _0x1b0636['col1']['y'] * _0x2080fe + _0x1b0636['col2']['y'] * _0x1d9c3b, _0x2080fe = _0x107f34, _0x1b0636 = _0x3a71c0['x'] + -_0x3f3b64 * _0x1d9c3b - _0x510085['x'] - -_0x4c7e4f * _0x28231e; var _0x211117 = _0x3a71c0['y'] + _0x3f3b64 * _0x2080fe - _0x510085['y'] - _0x4c7e4f * _0x35195e; this['m_mass']['Solve33'](this['impulse3'], -_0x1b0636, -_0x211117, -(_0x3f3b64 - _0x4c7e4f)), this['m_limitState'] == _0x1e6a98['e_equalLimits'] ? this['m_impulse']['Add'](this['impulse3']) : this['m_limitState'] == _0x1e6a98['e_atLowerLimit'] ? (_0x107f34 = this['m_impulse']['z'] + this['impulse3']['z'], 0x0 > _0x107f34 && (this['m_mass']['Solve22'](this['reduced'], -_0x1b0636, -_0x211117), this['impulse3']['x'] = this['reduced']['x'], this['impulse3']['y'] = this['reduced']['y'], this['impulse3']['z'] = -this['m_impulse']['z'], this['m_impulse']['x'] += this['reduced']['x'], this['m_impulse']['y'] += this['reduced']['y'], this['m_impulse']['z'] = 0x0)) : this['m_limitState'] == _0x1e6a98['e_atUpperLimit'] && (_0x107f34 = this['m_impulse']['z'] + this['impulse3']['z'], 0x0 < _0x107f34 && (this['m_mass']['Solve22'](this['reduced'], -_0x1b0636, -_0x211117), this['impulse3']['x'] = this['reduced']['x'], this['impulse3']['y'] = this['reduced']['y'], this['impulse3']['z'] = -this['m_impulse']['z'], this['m_impulse']['x'] += this['reduced']['x'], this['m_impulse']['y'] += this['reduced']['y'], this['m_impulse']['z'] = 0x0)), _0x510085['x'] -= _0x2de62b * this['impulse3']['x'], _0x510085['y'] -= _0x2de62b * this['impulse3']['y'], _0x4c7e4f -= _0x3244cf * (_0x35195e * this['impulse3']['y'] - _0x28231e * this['impulse3']['x'] + this['impulse3']['z']), _0x3a71c0['x'] += _0x433e55 * this['impulse3']['x'], _0x3a71c0['y'] += _0x433e55 * this['impulse3']['y'], _0x3f3b64 += _0x4817ce * (_0x2080fe * this['impulse3']['y'] - _0x1d9c3b * this['impulse3']['x'] + this['impulse3']['z']); } else _0x1b0636 = _0x4ffb10['m_xf']['R'], _0x35195e = this['m_localAnchor1']['x'] - _0x4ffb10['m_sweep']['localCenter']['x'], _0x28231e = this['m_localAnchor1']['y'] - _0x4ffb10['m_sweep']['localCenter']['y'], _0x107f34 = _0x1b0636['col1']['x'] * _0x35195e + _0x1b0636['col2']['x'] * _0x28231e, _0x28231e = _0x1b0636['col1']['y'] * _0x35195e + _0x1b0636['col2']['y'] * _0x28231e, _0x35195e = _0x107f34, _0x1b0636 = _0x42dafa['m_xf']['R'], _0x2080fe = this['m_localAnchor2']['x'] - _0x42dafa['m_sweep']['localCenter']['x'], _0x1d9c3b = this['m_localAnchor2']['y'] - _0x42dafa['m_sweep']['localCenter']['y'], _0x107f34 = _0x1b0636['col1']['x'] * _0x2080fe + _0x1b0636['col2']['x'] * _0x1d9c3b, _0x1d9c3b = _0x1b0636['col1']['y'] * _0x2080fe + _0x1b0636['col2']['y'] * _0x1d9c3b, _0x2080fe = _0x107f34, this['m_mass']['Solve22'](this['impulse2'], -(_0x3a71c0['x'] + -_0x3f3b64 * _0x1d9c3b - _0x510085['x'] - -_0x4c7e4f * _0x28231e), -(_0x3a71c0['y'] + _0x3f3b64 * _0x2080fe - _0x510085['y'] - _0x4c7e4f * _0x35195e)), this['m_impulse']['x'] += this['impulse2']['x'], this['m_impulse']['y'] += this['impulse2']['y'], _0x510085['x'] -= _0x2de62b * this['impulse2']['x'], _0x510085['y'] -= _0x2de62b * this['impulse2']['y'], _0x4c7e4f -= _0x3244cf * (_0x35195e * this['impulse2']['y'] - _0x28231e * this['impulse2']['x']), _0x3a71c0['x'] += _0x433e55 * this['impulse2']['x'], _0x3a71c0['y'] += _0x433e55 * this['impulse2']['y'], _0x3f3b64 += _0x4817ce * (_0x2080fe * this['impulse2']['y'] - _0x1d9c3b * this['impulse2']['x']); _0x4ffb10['m_linearVelocity']['SetV'](_0x510085), _0x4ffb10['m_angularVelocity'] = _0x4c7e4f, _0x42dafa['m_linearVelocity']['SetV'](_0x3a71c0), _0x42dafa['m_angularVelocity'] = _0x3f3b64; } , _0x4418f7['prototype']['SolvePositionConstraints'] = function() { var _0x265877 = 0x0, _0x3389bd, _0x554658 = this['m_bodyA'], _0x57dc67 = this['m_bodyB'], _0x39f2b5 = 0x0, _0x292ee7 = 0x0, _0x268e55 = 0x0, _0x282af8 = 0x0; if (this['m_enableLimit'] && this['m_limitState'] != _0x1e6a98['e_inactiveLimit']) { var _0x265877 = _0x57dc67['m_sweep']['a'] - _0x554658['m_sweep']['a'] - this['m_referenceAngle'] , _0x2bf991 = 0x0; this['m_limitState'] == _0x1e6a98['e_equalLimits'] ? (_0x265877 = _0x3bc259['Clamp'](_0x265877 - this['m_lowerAngle'], -_0x36d772['b2_maxAngularCorrection'], _0x36d772['b2_maxAngularCorrection']), _0x2bf991 = -this['m_motorMass'] * _0x265877, _0x39f2b5 = _0x3bc259['Abs'](_0x265877)) : this['m_limitState'] == _0x1e6a98['e_atLowerLimit'] ? (_0x265877 -= this['m_lowerAngle'], _0x39f2b5 = -_0x265877, _0x265877 = _0x3bc259['Clamp'](_0x265877 + _0x36d772['b2_angularSlop'], -_0x36d772['b2_maxAngularCorrection'], 0x0), _0x2bf991 = -this['m_motorMass'] * _0x265877) : this['m_limitState'] == _0x1e6a98['e_atUpperLimit'] && (_0x39f2b5 = _0x265877 -= this['m_upperAngle'], _0x265877 = _0x3bc259['Clamp'](_0x265877 - _0x36d772['b2_angularSlop'], 0x0, _0x36d772['b2_maxAngularCorrection']), _0x2bf991 = -this['m_motorMass'] * _0x265877), _0x554658['m_sweep']['a'] -= _0x554658['m_invI'] * _0x2bf991, _0x57dc67['m_sweep']['a'] += _0x57dc67['m_invI'] * _0x2bf991, _0x554658['SynchronizeTransform'](), _0x57dc67['SynchronizeTransform'](); } _0x3389bd = _0x554658['m_xf']['R'], _0x2bf991 = this['m_localAnchor1']['x'] - _0x554658['m_sweep']['localCenter']['x'], _0x265877 = this['m_localAnchor1']['y'] - _0x554658['m_sweep']['localCenter']['y'], _0x292ee7 = _0x3389bd['col1']['x'] * _0x2bf991 + _0x3389bd['col2']['x'] * _0x265877, _0x265877 = _0x3389bd['col1']['y'] * _0x2bf991 + _0x3389bd['col2']['y'] * _0x265877, _0x2bf991 = _0x292ee7, _0x3389bd = _0x57dc67['m_xf']['R']; var _0x3874b6 = this['m_localAnchor2']['x'] - _0x57dc67['m_sweep']['localCenter']['x'] , _0x3d880d = this['m_localAnchor2']['y'] - _0x57dc67['m_sweep']['localCenter']['y'] , _0x292ee7 = _0x3389bd['col1']['x'] * _0x3874b6 + _0x3389bd['col2']['x'] * _0x3d880d , _0x3d880d = _0x3389bd['col1']['y'] * _0x3874b6 + _0x3389bd['col2']['y'] * _0x3d880d , _0x3874b6 = _0x292ee7 , _0x268e55 = _0x57dc67['m_sweep']['c']['x'] + _0x3874b6 - _0x554658['m_sweep']['c']['x'] - _0x2bf991 , _0x282af8 = _0x57dc67['m_sweep']['c']['y'] + _0x3d880d - _0x554658['m_sweep']['c']['y'] - _0x265877 , _0xd22939 = _0x268e55 * _0x268e55 + _0x282af8 * _0x282af8; _0x3389bd = Math['sqrt'](_0xd22939); var _0x292ee7 = _0x554658['m_invMass'] , _0xe877d = _0x57dc67['m_invMass'] , _0x3f3ae2 = _0x554658['m_invI'] , _0x39b14b = _0x57dc67['m_invI'] , _0x1fd39d = 0xa * _0x36d772['b2_linearSlop']; return _0xd22939 > _0x1fd39d * _0x1fd39d && (_0xd22939 = 0x1 / (_0x292ee7 + _0xe877d), _0x268e55 = _0xd22939 * -_0x268e55, _0x282af8 = _0xd22939 * -_0x282af8, _0x554658['m_sweep']['c']['x'] -= 0.5 * _0x292ee7 * _0x268e55, _0x554658['m_sweep']['c']['y'] -= 0.5 * _0x292ee7 * _0x282af8, _0x57dc67['m_sweep']['c']['x'] += 0.5 * _0xe877d * _0x268e55, _0x57dc67['m_sweep']['c']['y'] += 0.5 * _0xe877d * _0x282af8, _0x268e55 = _0x57dc67['m_sweep']['c']['x'] + _0x3874b6 - _0x554658['m_sweep']['c']['x'] - _0x2bf991, _0x282af8 = _0x57dc67['m_sweep']['c']['y'] + _0x3d880d - _0x554658['m_sweep']['c']['y'] - _0x265877), this['K1']['col1']['x'] = _0x292ee7 + _0xe877d, this['K1']['col2']['x'] = 0x0, this['K1']['col1']['y'] = 0x0, this['K1']['col2']['y'] = _0x292ee7 + _0xe877d, this['K2']['col1']['x'] = _0x3f3ae2 * _0x265877 * _0x265877, this['K2']['col2']['x'] = -_0x3f3ae2 * _0x2bf991 * _0x265877, this['K2']['col1']['y'] = -_0x3f3ae2 * _0x2bf991 * _0x265877, this['K2']['col2']['y'] = _0x3f3ae2 * _0x2bf991 * _0x2bf991, this['K3']['col1']['x'] = _0x39b14b * _0x3d880d * _0x3d880d, this['K3']['col2']['x'] = -_0x39b14b * _0x3874b6 * _0x3d880d, this['K3']['col1']['y'] = -_0x39b14b * _0x3874b6 * _0x3d880d, this['K3']['col2']['y'] = _0x39b14b * _0x3874b6 * _0x3874b6, this['K']['SetM'](this['K1']), this['K']['AddM'](this['K2']), this['K']['AddM'](this['K3']), this['K']['Solve'](_0x4418f7['tImpulse'], -_0x268e55, -_0x282af8), _0x268e55 = _0x4418f7['tImpulse']['x'], _0x282af8 = _0x4418f7['tImpulse']['y'], _0x554658['m_sweep']['c']['x'] -= _0x554658['m_invMass'] * _0x268e55, _0x554658['m_sweep']['c']['y'] -= _0x554658['m_invMass'] * _0x282af8, _0x554658['m_sweep']['a'] -= _0x554658['m_invI'] * (_0x2bf991 * _0x282af8 - _0x265877 * _0x268e55), _0x57dc67['m_sweep']['c']['x'] += _0x57dc67['m_invMass'] * _0x268e55, _0x57dc67['m_sweep']['c']['y'] += _0x57dc67['m_invMass'] * _0x282af8, _0x57dc67['m_sweep']['a'] += _0x57dc67['m_invI'] * (_0x3874b6 * _0x282af8 - _0x3d880d * _0x268e55), _0x554658['SynchronizeTransform'](), _0x57dc67['SynchronizeTransform'](), _0x3389bd <= _0x36d772['b2_linearSlop'] && _0x39f2b5 <= _0x36d772['b2_angularSlop']; } , Box2D['postDefs']['push'](function() { Box2D['Dynamics']['Joints']['b2RevoluteJoint']['tImpulse'] = new _0x416390(); }), Box2D['inherit'](_0x38fda6, Box2D['Dynamics']['Joints']['b2JointDef']), _0x38fda6['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0x38fda6['b2RevoluteJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments), this['localAnchorA'] = new _0x416390(), this['localAnchorB'] = new _0x416390(); } , _0x38fda6['prototype']['b2RevoluteJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_revoluteJoint'], this['localAnchorA']['Set'](0x0, 0x0), this['localAnchorB']['Set'](0x0, 0x0), this['motorSpeed'] = this['maxMotorTorque'] = this['upperAngle'] = this['lowerAngle'] = this['referenceAngle'] = 0x0, this['enableMotor'] = this['enableLimit'] = !0x1; } , _0x38fda6['prototype']['Initialize'] = function(_0x1b06fb, _0x3081b6, _0x11c07f) { this['bodyA'] = _0x1b06fb, this['bodyB'] = _0x3081b6, this['localAnchorA'] = this['bodyA']['GetLocalPoint'](_0x11c07f), this['localAnchorB'] = this['bodyB']['GetLocalPoint'](_0x11c07f), this['referenceAngle'] = this['bodyB']['GetAngle']() - this['bodyA']['GetAngle'](); } , Box2D['inherit'](_0x366e6d, Box2D['Dynamics']['Joints']['b2Joint']), _0x366e6d['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2Joint']['prototype'], _0x366e6d['b2WeldJoint'] = function() { Box2D['Dynamics']['Joints']['b2Joint']['b2Joint']['apply'](this, arguments), this['m_localAnchorA'] = new _0x416390(), this['m_localAnchorB'] = new _0x416390(), this['m_impulse'] = new _0x59cf24(), this['m_mass'] = new _0x2e672f(); } , _0x366e6d['prototype']['GetAnchorA'] = function() { return this['m_bodyA']['GetWorldPoint'](this['m_localAnchorA']); } , _0x366e6d['prototype']['GetAnchorB'] = function() { return this['m_bodyB']['GetWorldPoint'](this['m_localAnchorB']); } , _0x366e6d['prototype']['GetReactionForce'] = function(_0x30f3eb) { return void 0x0 === _0x30f3eb && (_0x30f3eb = 0x0), new _0x416390(_0x30f3eb * this['m_impulse']['x'],_0x30f3eb * this['m_impulse']['y']); } , _0x366e6d['prototype']['GetReactionTorque'] = function(_0x2f7026) { return void 0x0 === _0x2f7026 && (_0x2f7026 = 0x0), _0x2f7026 * this['m_impulse']['z']; } , _0x366e6d['prototype']['b2WeldJoint'] = function(_0x583513) { this['__super']['b2Joint']['call'](this, _0x583513), this['m_localAnchorA']['SetV'](_0x583513['localAnchorA']), this['m_localAnchorB']['SetV'](_0x583513['localAnchorB']), this['m_referenceAngle'] = _0x583513['referenceAngle'], this['m_impulse']['SetZero'](), this['m_mass'] = new _0x2e672f(); } , _0x366e6d['prototype']['InitVelocityConstraints'] = function(_0x55a2e5) { var _0x31b92f, _0x3614fe = 0x0, _0x1298ba = this['m_bodyA'], _0x45f569 = this['m_bodyB']; _0x31b92f = _0x1298ba['m_xf']['R']; var _0xd868e9 = this['m_localAnchorA']['x'] - _0x1298ba['m_sweep']['localCenter']['x'] , _0x3f9184 = this['m_localAnchorA']['y'] - _0x1298ba['m_sweep']['localCenter']['y'] , _0x3614fe = _0x31b92f['col1']['x'] * _0xd868e9 + _0x31b92f['col2']['x'] * _0x3f9184 , _0x3f9184 = _0x31b92f['col1']['y'] * _0xd868e9 + _0x31b92f['col2']['y'] * _0x3f9184 , _0xd868e9 = _0x3614fe; _0x31b92f = _0x45f569['m_xf']['R']; var _0x4058f8 = this['m_localAnchorB']['x'] - _0x45f569['m_sweep']['localCenter']['x'] , _0x19c359 = this['m_localAnchorB']['y'] - _0x45f569['m_sweep']['localCenter']['y'] , _0x3614fe = _0x31b92f['col1']['x'] * _0x4058f8 + _0x31b92f['col2']['x'] * _0x19c359 , _0x19c359 = _0x31b92f['col1']['y'] * _0x4058f8 + _0x31b92f['col2']['y'] * _0x19c359 , _0x4058f8 = _0x3614fe; _0x31b92f = _0x1298ba['m_invMass']; var _0x3614fe = _0x45f569['m_invMass'] , _0x4b47a4 = _0x1298ba['m_invI'] , _0x4cdfe0 = _0x45f569['m_invI']; this['m_mass']['col1']['x'] = _0x31b92f + _0x3614fe + _0x3f9184 * _0x3f9184 * _0x4b47a4 + _0x19c359 * _0x19c359 * _0x4cdfe0, this['m_mass']['col2']['x'] = -_0x3f9184 * _0xd868e9 * _0x4b47a4 - _0x19c359 * _0x4058f8 * _0x4cdfe0, this['m_mass']['col3']['x'] = -_0x3f9184 * _0x4b47a4 - _0x19c359 * _0x4cdfe0, this['m_mass']['col1']['y'] = this['m_mass']['col2']['x'], this['m_mass']['col2']['y'] = _0x31b92f + _0x3614fe + _0xd868e9 * _0xd868e9 * _0x4b47a4 + _0x4058f8 * _0x4058f8 * _0x4cdfe0, this['m_mass']['col3']['y'] = _0xd868e9 * _0x4b47a4 + _0x4058f8 * _0x4cdfe0, this['m_mass']['col1']['z'] = this['m_mass']['col3']['x'], this['m_mass']['col2']['z'] = this['m_mass']['col3']['y'], this['m_mass']['col3']['z'] = _0x4b47a4 + _0x4cdfe0, _0x55a2e5['warmStarting'] ? (this['m_impulse']['x'] *= _0x55a2e5['dtRatio'], this['m_impulse']['y'] *= _0x55a2e5['dtRatio'], this['m_impulse']['z'] *= _0x55a2e5['dtRatio'], _0x1298ba['m_linearVelocity']['x'] -= _0x31b92f * this['m_impulse']['x'], _0x1298ba['m_linearVelocity']['y'] -= _0x31b92f * this['m_impulse']['y'], _0x1298ba['m_angularVelocity'] -= _0x4b47a4 * (_0xd868e9 * this['m_impulse']['y'] - _0x3f9184 * this['m_impulse']['x'] + this['m_impulse']['z']), _0x45f569['m_linearVelocity']['x'] += _0x3614fe * this['m_impulse']['x'], _0x45f569['m_linearVelocity']['y'] += _0x3614fe * this['m_impulse']['y'], _0x45f569['m_angularVelocity'] += _0x4cdfe0 * (_0x4058f8 * this['m_impulse']['y'] - _0x19c359 * this['m_impulse']['x'] + this['m_impulse']['z'])) : this['m_impulse']['SetZero'](); } , _0x366e6d['prototype']['SolveVelocityConstraints'] = function() { var _0x45bf3a, _0x18d51d = 0x0, _0x5db095 = this['m_bodyA'], _0x4feab4 = this['m_bodyB'], _0x385b85 = _0x5db095['m_linearVelocity'], _0x2b1c73 = _0x5db095['m_angularVelocity'], _0x48dd04 = _0x4feab4['m_linearVelocity'], _0xf7251 = _0x4feab4['m_angularVelocity'], _0x15e85a = _0x5db095['m_invMass'], _0x6dd1ee = _0x4feab4['m_invMass'], _0xfc42c1 = _0x5db095['m_invI'], _0x113aa0 = _0x4feab4['m_invI']; _0x45bf3a = _0x5db095['m_xf']['R']; var _0x14acf8 = this['m_localAnchorA']['x'] - _0x5db095['m_sweep']['localCenter']['x'] , _0x340e23 = this['m_localAnchorA']['y'] - _0x5db095['m_sweep']['localCenter']['y'] , _0x18d51d = _0x45bf3a['col1']['x'] * _0x14acf8 + _0x45bf3a['col2']['x'] * _0x340e23 , _0x340e23 = _0x45bf3a['col1']['y'] * _0x14acf8 + _0x45bf3a['col2']['y'] * _0x340e23 , _0x14acf8 = _0x18d51d; _0x45bf3a = _0x4feab4['m_xf']['R']; var _0x565415 = this['m_localAnchorB']['x'] - _0x4feab4['m_sweep']['localCenter']['x'] , _0x1b3b5e = this['m_localAnchorB']['y'] - _0x4feab4['m_sweep']['localCenter']['y'] , _0x18d51d = _0x45bf3a['col1']['x'] * _0x565415 + _0x45bf3a['col2']['x'] * _0x1b3b5e , _0x1b3b5e = _0x45bf3a['col1']['y'] * _0x565415 + _0x45bf3a['col2']['y'] * _0x1b3b5e , _0x565415 = _0x18d51d; _0x45bf3a = _0x48dd04['x'] - _0xf7251 * _0x1b3b5e - _0x385b85['x'] + _0x2b1c73 * _0x340e23; var _0x18d51d = _0x48dd04['y'] + _0xf7251 * _0x565415 - _0x385b85['y'] - _0x2b1c73 * _0x14acf8 , _0x3823fc = _0xf7251 - _0x2b1c73 , _0x531959 = new _0x59cf24(); this['m_mass']['Solve33'](_0x531959, -_0x45bf3a, -_0x18d51d, -_0x3823fc), this['m_impulse']['Add'](_0x531959), _0x385b85['x'] -= _0x15e85a * _0x531959['x'], _0x385b85['y'] -= _0x15e85a * _0x531959['y'], _0x2b1c73 -= _0xfc42c1 * (_0x14acf8 * _0x531959['y'] - _0x340e23 * _0x531959['x'] + _0x531959['z']), _0x48dd04['x'] += _0x6dd1ee * _0x531959['x'], _0x48dd04['y'] += _0x6dd1ee * _0x531959['y'], _0xf7251 += _0x113aa0 * (_0x565415 * _0x531959['y'] - _0x1b3b5e * _0x531959['x'] + _0x531959['z']), _0x5db095['m_angularVelocity'] = _0x2b1c73, _0x4feab4['m_angularVelocity'] = _0xf7251; } , _0x366e6d['prototype']['SolvePositionConstraints'] = function() { var _0x19ef53, _0x248e72 = 0x0, _0x37ff48 = this['m_bodyA'], _0x367021 = this['m_bodyB']; _0x19ef53 = _0x37ff48['m_xf']['R']; var _0x50f4d7 = this['m_localAnchorA']['x'] - _0x37ff48['m_sweep']['localCenter']['x'] , _0x3e18c8 = this['m_localAnchorA']['y'] - _0x37ff48['m_sweep']['localCenter']['y'] , _0x248e72 = _0x19ef53['col1']['x'] * _0x50f4d7 + _0x19ef53['col2']['x'] * _0x3e18c8 , _0x3e18c8 = _0x19ef53['col1']['y'] * _0x50f4d7 + _0x19ef53['col2']['y'] * _0x3e18c8 , _0x50f4d7 = _0x248e72; _0x19ef53 = _0x367021['m_xf']['R']; var _0x2d6897 = this['m_localAnchorB']['x'] - _0x367021['m_sweep']['localCenter']['x'] , _0x5841fb = this['m_localAnchorB']['y'] - _0x367021['m_sweep']['localCenter']['y'] , _0x248e72 = _0x19ef53['col1']['x'] * _0x2d6897 + _0x19ef53['col2']['x'] * _0x5841fb , _0x5841fb = _0x19ef53['col1']['y'] * _0x2d6897 + _0x19ef53['col2']['y'] * _0x5841fb , _0x2d6897 = _0x248e72; _0x19ef53 = _0x37ff48['m_invMass']; var _0x248e72 = _0x367021['m_invMass'] , _0x1e95c0 = _0x37ff48['m_invI'] , _0x144c31 = _0x367021['m_invI'] , _0x76e4f3 = _0x367021['m_sweep']['c']['x'] + _0x2d6897 - _0x37ff48['m_sweep']['c']['x'] - _0x50f4d7 , _0x499b93 = _0x367021['m_sweep']['c']['y'] + _0x5841fb - _0x37ff48['m_sweep']['c']['y'] - _0x3e18c8 , _0x233b0b = _0x367021['m_sweep']['a'] - _0x37ff48['m_sweep']['a'] - this['m_referenceAngle'] , _0x39d0be = 0xa * _0x36d772['b2_linearSlop'] , _0x121ba5 = Math['sqrt'](_0x76e4f3 * _0x76e4f3 + _0x499b93 * _0x499b93) , _0xfdc7bc = _0x3bc259['Abs'](_0x233b0b); return _0x121ba5 > _0x39d0be && (_0x1e95c0 *= 0x1, _0x144c31 *= 0x1), this['m_mass']['col1']['x'] = _0x19ef53 + _0x248e72 + _0x3e18c8 * _0x3e18c8 * _0x1e95c0 + _0x5841fb * _0x5841fb * _0x144c31, this['m_mass']['col2']['x'] = -_0x3e18c8 * _0x50f4d7 * _0x1e95c0 - _0x5841fb * _0x2d6897 * _0x144c31, this['m_mass']['col3']['x'] = -_0x3e18c8 * _0x1e95c0 - _0x5841fb * _0x144c31, this['m_mass']['col1']['y'] = this['m_mass']['col2']['x'], this['m_mass']['col2']['y'] = _0x19ef53 + _0x248e72 + _0x50f4d7 * _0x50f4d7 * _0x1e95c0 + _0x2d6897 * _0x2d6897 * _0x144c31, this['m_mass']['col3']['y'] = _0x50f4d7 * _0x1e95c0 + _0x2d6897 * _0x144c31, this['m_mass']['col1']['z'] = this['m_mass']['col3']['x'], this['m_mass']['col2']['z'] = this['m_mass']['col3']['y'], this['m_mass']['col3']['z'] = _0x1e95c0 + _0x144c31, _0x39d0be = new _0x59cf24(), this['m_mass']['Solve33'](_0x39d0be, -_0x76e4f3, -_0x499b93, -_0x233b0b), _0x37ff48['m_sweep']['c']['x'] -= _0x19ef53 * _0x39d0be['x'], _0x37ff48['m_sweep']['c']['y'] -= _0x19ef53 * _0x39d0be['y'], _0x37ff48['m_sweep']['a'] -= _0x1e95c0 * (_0x50f4d7 * _0x39d0be['y'] - _0x3e18c8 * _0x39d0be['x'] + _0x39d0be['z']), _0x367021['m_sweep']['c']['x'] += _0x248e72 * _0x39d0be['x'], _0x367021['m_sweep']['c']['y'] += _0x248e72 * _0x39d0be['y'], _0x367021['m_sweep']['a'] += _0x144c31 * (_0x2d6897 * _0x39d0be['y'] - _0x5841fb * _0x39d0be['x'] + _0x39d0be['z']), _0x37ff48['SynchronizeTransform'](), _0x367021['SynchronizeTransform'](), _0x121ba5 <= _0x36d772['b2_linearSlop'] && _0xfdc7bc <= _0x36d772['b2_angularSlop']; } , Box2D['inherit'](_0x60e6d4, Box2D['Dynamics']['Joints']['b2JointDef']), _0x60e6d4['prototype']['__super'] = Box2D['Dynamics']['Joints']['b2JointDef']['prototype'], _0x60e6d4['b2WeldJointDef'] = function() { Box2D['Dynamics']['Joints']['b2JointDef']['b2JointDef']['apply'](this, arguments), this['localAnchorA'] = new _0x416390(), this['localAnchorB'] = new _0x416390(); } , _0x60e6d4['prototype']['b2WeldJointDef'] = function() { this['__super']['b2JointDef']['call'](this), this['type'] = _0x1e6a98['e_weldJoint'], this['referenceAngle'] = 0x0; } , _0x60e6d4['prototype']['Initialize'] = function(_0xdec8a, _0x29d448, _0x85a45c) { this['bodyA'] = _0xdec8a, this['bodyB'] = _0x29d448, this['localAnchorA']['SetV'](this['bodyA']['GetLocalPoint'](_0x85a45c)), this['localAnchorB']['SetV'](this['bodyB']['GetLocalPoint'](_0x85a45c)), this['referenceAngle'] = this['bodyB']['GetAngle']() - this['bodyA']['GetAngle'](); } ; }(), function() { var _0x2911a6 = Box2D['Dynamics']['b2DebugDraw']; _0x2911a6['b2DebugDraw'] = function() { this['m_xformScale'] = this['m_fillAlpha'] = this['m_alpha'] = this['m_lineThickness'] = this['m_drawScale'] = 0x1; var _0x23ad80 = this; this['m_sprite'] = { 'graphics': { 'clear': function() { _0x23ad80['m_ctx']['clearRect'](0x0, 0x0, _0x23ad80['m_ctx']['canvas']['width'], _0x23ad80['m_ctx']['canvas']['height']); } } }; } , _0x2911a6['prototype']['_color'] = function(_0x545989, _0x50b8fa) { return 'rgba(' + ((_0x545989 & 0xff0000) >> 0x10) + ',' + ((_0x545989 & 0xff00) >> 0x8) + ',' + (_0x545989 & 0xff) + ',' + _0x50b8fa + ')'; } , _0x2911a6['prototype']['b2DebugDraw'] = function() { this['m_drawFlags'] = 0x0; } , _0x2911a6['prototype']['SetFlags'] = function(_0x203dcd) { void 0x0 === _0x203dcd && (_0x203dcd = 0x0), this['m_drawFlags'] = _0x203dcd; } , _0x2911a6['prototype']['GetFlags'] = function() { return this['m_drawFlags']; } , _0x2911a6['prototype']['AppendFlags'] = function(_0x37bf40) { void 0x0 === _0x37bf40 && (_0x37bf40 = 0x0), this['m_drawFlags'] |= _0x37bf40; } , _0x2911a6['prototype']['ClearFlags'] = function(_0x3b6901) { void 0x0 === _0x3b6901 && (_0x3b6901 = 0x0), this['m_drawFlags'] &= ~_0x3b6901; } , _0x2911a6['prototype']['SetSprite'] = function(_0x49666b) { this['m_ctx'] = _0x49666b; } , _0x2911a6['prototype']['GetSprite'] = function() { return this['m_ctx']; } , _0x2911a6['prototype']['SetDrawScale'] = function(_0x5b2185) { void 0x0 === _0x5b2185 && (_0x5b2185 = 0x0), this['m_drawScale'] = _0x5b2185; } , _0x2911a6['prototype']['GetDrawScale'] = function() { return this['m_drawScale']; } , _0x2911a6['prototype']['SetLineThickness'] = function(_0x54ecbc) { void 0x0 === _0x54ecbc && (_0x54ecbc = 0x0), this['m_lineThickness'] = _0x54ecbc, this['m_ctx']['strokeWidth'] = _0x54ecbc; } , _0x2911a6['prototype']['GetLineThickness'] = function() { return this['m_lineThickness']; } , _0x2911a6['prototype']['SetAlpha'] = function(_0x81a4ff) { void 0x0 === _0x81a4ff && (_0x81a4ff = 0x0), this['m_alpha'] = _0x81a4ff; } , _0x2911a6['prototype']['GetAlpha'] = function() { return this['m_alpha']; } , _0x2911a6['prototype']['SetFillAlpha'] = function(_0x35fdb8) { void 0x0 === _0x35fdb8 && (_0x35fdb8 = 0x0), this['m_fillAlpha'] = _0x35fdb8; } , _0x2911a6['prototype']['GetFillAlpha'] = function() { return this['m_fillAlpha']; } , _0x2911a6['prototype']['SetXFormScale'] = function(_0x21d8c5) { void 0x0 === _0x21d8c5 && (_0x21d8c5 = 0x0), this['m_xformScale'] = _0x21d8c5; } , _0x2911a6['prototype']['GetXFormScale'] = function() { return this['m_xformScale']; } , _0x2911a6['prototype']['DrawPolygon'] = function(_0xe55fb2, _0x2f559b, _0x5de0c9) { if (_0x2f559b) { var _0x494de8 = this['m_ctx'] , _0x14348c = this['m_drawScale']; _0x494de8['beginPath'](), _0x494de8['strokeStyle'] = this['_color'](_0x5de0c9['color'], this['m_alpha']), _0x494de8['moveTo'](_0xe55fb2[0x0]['x'] * _0x14348c, _0xe55fb2[0x0]['y'] * _0x14348c); for (_0x5de0c9 = 0x1; _0x5de0c9 < _0x2f559b; _0x5de0c9++) _0x494de8['lineTo'](_0xe55fb2[_0x5de0c9]['x'] * _0x14348c, _0xe55fb2[_0x5de0c9]['y'] * _0x14348c); _0x494de8['lineTo'](_0xe55fb2[0x0]['x'] * _0x14348c, _0xe55fb2[0x0]['y'] * _0x14348c), _0x494de8['closePath'](), _0x494de8['stroke'](); } } , _0x2911a6['prototype']['DrawSolidPolygon'] = function(_0x4e1680, _0x3566aa, _0x840b8c) { if (_0x3566aa) { var _0x5a9293 = this['m_ctx'] , _0x11cec0 = this['m_drawScale']; _0x5a9293['beginPath'](), _0x5a9293['strokeStyle'] = this['_color'](_0x840b8c['color'], this['m_alpha']), _0x5a9293['fillStyle'] = this['_color'](_0x840b8c['color'], this['m_fillAlpha']), _0x5a9293['moveTo'](_0x4e1680[0x0]['x'] * _0x11cec0, _0x4e1680[0x0]['y'] * _0x11cec0); for (_0x840b8c = 0x1; _0x840b8c < _0x3566aa; _0x840b8c++) _0x5a9293['lineTo'](_0x4e1680[_0x840b8c]['x'] * _0x11cec0, _0x4e1680[_0x840b8c]['y'] * _0x11cec0); _0x5a9293['lineTo'](_0x4e1680[0x0]['x'] * _0x11cec0, _0x4e1680[0x0]['y'] * _0x11cec0), _0x5a9293['closePath'](), _0x5a9293['fill'](), _0x5a9293['stroke'](); } } , _0x2911a6['prototype']['DrawCircle'] = function(_0x9583ac, _0x2be89b, _0x2902c6) { if (_0x2be89b) { var _0x2efcfa = this['m_ctx'] , _0xf98eb5 = this['m_drawScale']; _0x2efcfa['beginPath'](), _0x2efcfa['strokeStyle'] = this['_color'](_0x2902c6['color'], this['m_alpha']), _0x2efcfa['arc'](_0x9583ac['x'] * _0xf98eb5, _0x9583ac['y'] * _0xf98eb5, _0x2be89b * _0xf98eb5, 0x0, 0x2 * Math['PI'], !0x0), _0x2efcfa['closePath'](), _0x2efcfa['stroke'](); } } , _0x2911a6['prototype']['DrawSolidCircle'] = function(_0x4c8332, _0x436e04, _0x5e071d, _0x5ef0cd) { if (_0x436e04) { var _0x44afad = this['m_ctx'] , _0x24934a = this['m_drawScale'] , _0x4098e5 = _0x4c8332['x'] * _0x24934a , _0x466e7e = _0x4c8332['y'] * _0x24934a; _0x44afad['moveTo'](0x0, 0x0), _0x44afad['beginPath'](), _0x44afad['strokeStyle'] = this['_color'](_0x5ef0cd['color'], this['m_alpha']), _0x44afad['fillStyle'] = this['_color'](_0x5ef0cd['color'], this['m_fillAlpha']), _0x44afad['arc'](_0x4098e5, _0x466e7e, _0x436e04 * _0x24934a, 0x0, 0x2 * Math['PI'], !0x0), _0x44afad['moveTo'](_0x4098e5, _0x466e7e), _0x44afad['lineTo']((_0x4c8332['x'] + _0x5e071d['x'] * _0x436e04) * _0x24934a, (_0x4c8332['y'] + _0x5e071d['y'] * _0x436e04) * _0x24934a), _0x44afad['closePath'](), _0x44afad['fill'](), _0x44afad['stroke'](); } } , _0x2911a6['prototype']['DrawSegment'] = function(_0x302cb0, _0x39e813, _0x175b9d) { var _0x5be46b = this['m_ctx'] , _0x5dce6a = this['m_drawScale']; _0x5be46b['strokeStyle'] = this['_color'](_0x175b9d['color'], this['m_alpha']), _0x5be46b['beginPath'](), _0x5be46b['moveTo'](_0x302cb0['x'] * _0x5dce6a, _0x302cb0['y'] * _0x5dce6a), _0x5be46b['lineTo'](_0x39e813['x'] * _0x5dce6a, _0x39e813['y'] * _0x5dce6a), _0x5be46b['closePath'](), _0x5be46b['stroke'](); } , _0x2911a6['prototype']['DrawTransform'] = function(_0x45ae44) { var _0x43d967 = this['m_ctx'] , _0x3523a0 = this['m_drawScale']; _0x43d967['beginPath'](), _0x43d967['strokeStyle'] = this['_color'](0xff0000, this['m_alpha']), _0x43d967['moveTo'](_0x45ae44['position']['x'] * _0x3523a0, _0x45ae44['position']['y'] * _0x3523a0), _0x43d967['lineTo']((_0x45ae44['position']['x'] + this['m_xformScale'] * _0x45ae44['R']['col1']['x']) * _0x3523a0, (_0x45ae44['position']['y'] + this['m_xformScale'] * _0x45ae44['R']['col1']['y']) * _0x3523a0), _0x43d967['strokeStyle'] = this['_color'](0xff00, this['m_alpha']), _0x43d967['moveTo'](_0x45ae44['position']['x'] * _0x3523a0, _0x45ae44['position']['y'] * _0x3523a0), _0x43d967['lineTo']((_0x45ae44['position']['x'] + this['m_xformScale'] * _0x45ae44['R']['col2']['x']) * _0x3523a0, (_0x45ae44['position']['y'] + this['m_xformScale'] * _0x45ae44['R']['col2']['y']) * _0x3523a0), _0x43d967['closePath'](), _0x43d967['stroke'](); } ; }(); var i; for (i = 0x0; i < Box2D['postDefs']['length']; ++i) Box2D['postDefs'][i](); delete Box2D['postDefs'], 'undefined' != typeof global && (global['Box2D'] = Box2D), ig['baked'] = !0x0, ig['module']('plugins.box2d.lib')['defines'](function() {}), ig['baked'] = !0x0, ig['module']('plugins.box2d.game')['requires']('plugins.box2d.lib', 'impact.game')['defines'](function() { ig['Box2DGame'] = ig['Game']['extend']({ 'collisionRects': [], 'debugCollisionRects': !0x1, 'worldVelocityIterations': 0x6, 'worldPositionIterations': 0x6, 'updateTimestep': 0x1 / 0x3c, 'updateTimestepAccumulator': 0x0, 'updateTimestepAccumulatorRatio': 0x0, 'lastUpdateTime': -0x1, 'nWorldSteps': 0x0, 'bodyDestroyQueue': [], 'defaultTileSegmentsDef': {}, 'defaultTileVerticesDef': {}, 'loadLevel': function(_0x5a9d33) { this['collisionMap'] = ig['CollisionMap']['staticNoCollision']; for (var _0x50e3f8 = 0x0; _0x50e3f8 < _0x5a9d33['layer']['length']; _0x50e3f8++) { var _0x17b931 = _0x5a9d33['layer'][_0x50e3f8]; 'collision' == _0x17b931['name'] && (this['collisionMap'] = new ig['CollisionMap'](_0x17b931['tilesize'],_0x17b931['data'])); } this['mergedShape'] = this['mergeRectangles'](this['collisionMap']), ig['world'] = this['createWorldFromCollisionMap'](this['collisionMap'], this['mergedShape']), this['setupContactListener'](), this['parent'](_0x5a9d33); }, 'createWorldFromMap': function(_0x37d6d7, _0x359178, _0x292a04, _0x388b65) { var _0x454ef2 = new Box2D['Collision']['b2AABB'](); _0x454ef2['lowerBound']['Set'](0x0, 0x0), _0x454ef2['upperBound']['Set']((_0x359178 + 0x1) * _0x388b65 * Box2D['SCALE'], (_0x292a04 + 0x1) * _0x388b65 * Box2D['SCALE']), _0x454ef2 = new Box2D['Common']['Math']['b2Vec2'](0x0,ig['game']['gravity'] * Box2D['SCALE']), world = new Box2D['Dynamics']['b2World'](_0x454ef2,!0x0), _0x37d6d7 = ig['copy'](_0x37d6d7), this['collisionRects'] = []; for (_0x454ef2 = 0x0; _0x454ef2 < _0x292a04; _0x454ef2++) for (var _0x59dda8 = 0x0; _0x59dda8 < _0x359178; _0x59dda8++) if (_0x37d6d7[_0x454ef2][_0x59dda8]) { var _0x1c6b99 = this['_extractRectFromMap'](_0x37d6d7, _0x359178, _0x292a04, _0x59dda8, _0x454ef2); this['collisionRects']['push'](_0x1c6b99); } for (_0x359178 = 0x0; _0x359178 < this['collisionRects']['length']; _0x359178++) _0x292a04 = this['collisionRects'][_0x359178], _0x37d6d7 = new Box2D['Dynamics']['b2BodyDef'](), _0x37d6d7['position']['Set'](_0x292a04['x'] * _0x388b65 * Box2D['SCALE'] + _0x292a04['width'] * _0x388b65 / 0x2 * Box2D['SCALE'], _0x292a04['y'] * _0x388b65 * Box2D['SCALE'] + _0x292a04['height'] * _0x388b65 / 0x2 * Box2D['SCALE']), _0x37d6d7 = world['CreateBody'](_0x37d6d7), _0x454ef2 = new Box2D['Collision']['Shapes']['b2PolygonShape'](), _0x454ef2['SetAsBox'](_0x292a04['width'] * _0x388b65 / 0x2 * Box2D['SCALE'], _0x292a04['height'] * _0x388b65 / 0x2 * Box2D['SCALE']), _0x37d6d7['CreateFixture2'](_0x454ef2); return world; }, '_extractRectFromMap': function(_0x2db7d4, _0x12e2a5, _0x14a35d, _0x31c080, _0x281f12) { for (var _0x371c2c = { 'x': _0x31c080, 'y': _0x281f12, 'width': 0x1, 'height': 0x1 }, _0x49a38b = _0x31c080 + 0x1; _0x49a38b < _0x12e2a5 && _0x2db7d4[_0x281f12][_0x49a38b]; _0x49a38b++) _0x371c2c['width']++, _0x2db7d4[_0x281f12][_0x49a38b] = 0x0; for (_0x12e2a5 = _0x281f12 + 0x1; _0x12e2a5 < _0x14a35d; _0x12e2a5++) { _0x281f12 = 0x0; for (_0x49a38b = _0x31c080; _0x49a38b < _0x31c080 + _0x371c2c['width'] && _0x2db7d4[_0x12e2a5][_0x49a38b]; _0x49a38b++) _0x281f12++; if (_0x281f12 == _0x371c2c['width']) { _0x371c2c['height']++; for (_0x49a38b = _0x31c080; _0x49a38b < _0x31c080 + _0x371c2c['width']; _0x49a38b++) _0x2db7d4[_0x12e2a5][_0x49a38b] = 0x0; } else break; } return _0x371c2c; }, 'update': function() { if (!ig['game']['box2dPaused'] && ig['world']) { var _0x1e5c44 = ig['system']['clock']['delta']() - this['lastUpdateTime']; this['lastUpdateTime'] = ig['system']['clock']['delta'](), this['updateTimestepAccumulator'] += _0x1e5c44, this['nWorldSteps'] = Math['floor'](this['updateTimestepAccumulator'] / this['updateTimestep']), 0x0 < this['nWorldSteps'] && (this['updateTimestepAccumulator'] -= this['nWorldSteps'] * this['updateTimestep']), this['updateTimestepAccumulatorRatio'] = this['updateTimestepAccumulator'] / this['updateTimestep']; for (var _0x1e5c44 = Math['min'](this['nWorldSteps'], 0x5), _0x42cab8 = 0x0; _0x42cab8 < _0x1e5c44; _0x42cab8++) { this['resetSmoothStates'](), ig['world']['Step'](this['updateTimestep'], this['worldVelocityIterations'], this['worldPositionIterations']); for (var _0x2ffd6b = ig['world']['GetBodyList'](); _0x2ffd6b; _0x2ffd6b = _0x2ffd6b['m_next']) if (_0x2ffd6b['IsAwake']()) { var _0x307f6d = _0x2ffd6b['GetFixtureList'](); if (!_0x307f6d || !_0x307f6d['IsSensor']()) { var _0x307f6d = 0.6 > Math['abs'](_0x2ffd6b['GetAngularVelocity']()) , _0x595456 = 0.6 > Math['abs'](_0x2ffd6b['GetLinearVelocity']()['Length']()); _0x307f6d && _0x595456 ? 0x1e < _0x2ffd6b['slowTime'] ? (_0x2ffd6b['slowTime'] = 0x0, _0x2ffd6b['SetAwake'](!0x1)) : _0x2ffd6b['slowTime'] += 0x1 : _0x2ffd6b['slowTime'] = 0x0; } } } ig['world']['ClearForces'](), this['smoothStates'](); } this['parent'](); if (0x0 < this['bodyDestroyQueue']['length']) { for (_0x42cab8 = 0x0; _0x42cab8 < this['bodyDestroyQueue']['length']; _0x42cab8++) ig['world']['DestroyBody'](this['bodyDestroyQueue'][_0x42cab8]); this['bodyDestroyQueue'] = []; } }, 'smoothStates': function() { for (var _0x410c62 = 0x1 - this['updateTimestepAccumulatorRatio'], _0x2f9fa3 = 0x0; _0x2f9fa3 < this['entities']['length']; _0x2f9fa3++) { var _0x3168bf = this['entities'][_0x2f9fa3]; null != _0x3168bf['body'] && _0x3168bf['dynamicType'] != Box2D['Dynamics']['b2Body']['b2_staticBody'] && (_0x3168bf['pos']['x'] = this['updateTimestepAccumulatorRatio'] * _0x3168bf['body']['GetPosition']()['x'] + _0x410c62 * _0x3168bf['previousBodyPosition']['x'], _0x3168bf['pos']['y'] = this['updateTimestepAccumulatorRatio'] * _0x3168bf['body']['GetPosition']()['y'] + _0x410c62 * _0x3168bf['previousBodyPosition']['y'], _0x3168bf['angle'] = this['updateTimestepAccumulatorRatio'] * _0x3168bf['body']['GetAngle']() + _0x410c62 * _0x3168bf['previousBodyAngle'], _0x3168bf['currentAnim'] && (_0x3168bf['currentAnim']['update'](), _0x3168bf['currentAnim']['angle'] = _0x3168bf['angle'])); } }, 'resetSmoothStates': function() { for (var _0x51fd96 = 0x0; _0x51fd96 < this['entities']['length']; _0x51fd96++) { var _0x54354c = this['entities'][_0x51fd96]; null != _0x54354c['body'] && _0x54354c['dynamicType'] != Box2D['Dynamics']['b2Body']['b2_staticBody'] && (_0x54354c['pos']['x'] = _0x54354c['body']['GetPosition']()['x'], _0x54354c['previousBodyPosition']['x'] = _0x54354c['pos']['x'], _0x54354c['pos']['y'] = _0x54354c['body']['GetPosition']()['y'], _0x54354c['previousBodyPosition']['y'] = _0x54354c['pos']['y'], _0x54354c['angle'] = _0x54354c['body']['GetAngle'](), _0x54354c['previousBodyAngle'] = _0x54354c['body']['GetAngle'](), _0x54354c['currentAnim'] && (_0x54354c['currentAnim']['update'](), _0x54354c['currentAnim']['angle'] = _0x54354c['angle'])); } }, 'draw': function() { this['parent'](); if (this['debugCollisionRects']) for (var _0x5b40de = this['collisionMap']['tilesize'], _0x45f196 = 0x0; _0x45f196 < this['collisionRects']['length']; _0x45f196++) { var _0x38cc77 = this['collisionRects'][_0x45f196]; ig['system']['context']['strokeStyle'] = '#00ff00', ig['system']['context']['strokeRect'](ig['system']['getDrawPos'](_0x38cc77['x'] * _0x5b40de - this['screen']['x']), ig['system']['getDrawPos'](_0x38cc77['y'] * _0x5b40de - this['screen']['y']), ig['system']['getDrawPos'](_0x38cc77['width'] * _0x5b40de), ig['system']['getDrawPos'](_0x38cc77['height'] * _0x5b40de)); } }, 'queueDestroyBody': function(_0x5e18b6) { this['bodyDestroyQueue']['push'](_0x5e18b6); }, 'mergeRectangles': function(_0x247918) { if (void 0x0 != _0x247918['data']) { for (var _0x329972 = ig['copy'](_0x247918['data']), _0x55bad6 = [], _0x534eab = 0x0; _0x534eab < _0x329972['length']; _0x534eab++) { void 0x0 == _0x55bad6[_0x534eab] && (_0x55bad6[_0x534eab] = []); for (var _0xbcd04f = 0x0; _0xbcd04f < _0x329972[0x0]['length']; _0xbcd04f++) _0x55bad6[_0x534eab]['push'](0x0); } _0x329972 = this['_shapesFromCollisionMap'](_0x247918), _0x247918 = [], _0xbcd04f = []; for (_0x534eab = 0x0; _0x534eab < _0x329972['length']; _0x534eab++) 0x1 == _0x329972[_0x534eab]['id'] ? (_0xbcd04f['push'](_0x329972[_0x534eab]), _0x55bad6[_0x329972[_0x534eab]['tile']['y']][_0x329972[_0x534eab]['tile']['x']] = _0xbcd04f[_0xbcd04f['length'] - 0x1]) : _0x247918['push'](_0x329972[_0x534eab]); for (_0x534eab = _0xbcd04f['length'] - 0x1; 0x0 <= _0x534eab; _0x534eab--) 0x1 == _0xbcd04f[_0x534eab]['id'] && (_0xbcd04f[_0x534eab]['neighbours'] = this['checkNeighbour'](_0x55bad6, _0xbcd04f[_0x534eab]['tile']['x'], _0xbcd04f[_0x534eab]['tile']['y'])); return _0x55bad6 = this['linkSquares'](_0xbcd04f, _0x55bad6), _0x247918['concat'](_0x55bad6); } }, 'sideAbleCheck': function(_0x54d4ea, _0x3f8c0d, _0x5aef75, _0x1366a4) { return _0x54d4ea ? _0x54d4ea[_0x5aef75] ? _0x54d4ea[_0x5aef75][_0x3f8c0d] ? _0x54d4ea[_0x5aef75][_0x3f8c0d]['neighbours'] ? -0x1 < _0x54d4ea[_0x5aef75][_0x3f8c0d]['neighbours']['indexOf'](_0x1366a4) ? !0x0 : !0x1 : !0x1 : !0x1 : !0x1 : !0x1; }, 'linkSquares': function(_0x10a451, _0x5eb0c1) { for (var _0x29837a = [], _0x509757 = [], _0x5cc192 = 0x0; _0x5cc192 < _0x10a451['length']; _0x5cc192++) { var _0x2751cb = _0x10a451[_0x5cc192] , _0x43047c = _0x2751cb['tile']['x'] , _0x19cd21 = _0x2751cb['tile']['y']; if (!(-0x1 < _0x29837a['indexOf'](_0x2751cb))) { if (_0x29837a['push'](_0x2751cb), -0x1 < _0x2751cb['neighbours']['indexOf']('right')) { for (var _0x4e4667 = 0x1; !0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'] + _0x4e4667, _0x2751cb['tile']['y'], 'right'); ) _0x2751cb['tile']['x'] + _0x4e4667 < _0x43047c && (_0x43047c = _0x2751cb['tile']['x'] + _0x4e4667), _0x29837a['push'](_0x5eb0c1[_0x2751cb['tile']['y']][_0x2751cb['tile']['x'] + _0x4e4667]), _0x4e4667++; _0x5eb0c1[_0x2751cb['tile']['y']][_0x43047c]['settings']['size']['x'] *= _0x4e4667 + 0x1; for (var _0x51bb04 = _0x5eb0c1[_0x2751cb['tile']['y']][_0x43047c]['settings']['vertices'], _0x42c953 = 0x0; _0x42c953 < _0x51bb04['length']; _0x42c953++) _0x51bb04[_0x42c953]['x'] *= _0x4e4667 + 0x1; _0x29837a['push'](_0x5eb0c1[_0x2751cb['tile']['y']][_0x2751cb['tile']['x'] + _0x4e4667 + 0x1]), _0x509757['push'](_0x5eb0c1[_0x2751cb['tile']['y']][_0x43047c]); } else { if (-0x1 < _0x2751cb['neighbours']['indexOf']('down') && -0x1 == _0x2751cb['neighbours']['indexOf']('right') && -0x1 == _0x2751cb['neighbours']['indexOf']('left')) { _0x2751cb['tile']['y'] + _0x4e4667 < _0x19cd21 && (_0x19cd21 = _0x2751cb['tile']['y'] + _0x4e4667), _0x51bb04 = 0x0; for (_0x43047c = 0x1; !0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'down') && !0x1 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'right') && !0x1 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'left'); ) _0x51bb04 = 0x1, _0x29837a['push'](_0x5eb0c1[_0x2751cb['tile']['y'] + _0x43047c][_0x2751cb['tile']['x']]), _0x43047c++; !0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'up') && !0x1 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'right') && !0x1 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'left') ? _0x51bb04 = 0x1 : !0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'up') && !0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'right') ? (_0x29837a['splice'](_0x29837a['indexOf'](_0x5eb0c1[_0x2751cb['tile']['y'] + _0x43047c][_0x2751cb['tile']['x']]), 0x1), _0x43047c--) : !0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'up') && !0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] + _0x43047c, 'left') && (_0x29837a['splice'](_0x29837a['indexOf'](_0x5eb0c1[_0x2751cb['tile']['y'] + _0x43047c][_0x2751cb['tile']['x']]), 0x1), _0x43047c--); if (0x1 == _0x51bb04) { _0x5eb0c1[_0x19cd21][_0x2751cb['tile']['x']]['settings']['size']['y'] *= _0x43047c + 0x1, _0x51bb04 = _0x5eb0c1[_0x19cd21][_0x2751cb['tile']['x']]['settings']['vertices']; for (_0x42c953 = 0x0; _0x42c953 < _0x51bb04['length']; _0x42c953++) _0x51bb04[_0x42c953]['y'] *= _0x43047c + 0x1; _0x5eb0c1[_0x2751cb['tile']['y'] + _0x43047c] && _0x29837a['push'](_0x5eb0c1[_0x2751cb['tile']['y'] + _0x43047c][_0x2751cb['tile']['x']]); } _0x509757['push'](_0x5eb0c1[_0x19cd21][_0x2751cb['tile']['x']]); } else { if (!(-0x1 < _0x2751cb['neighbours']['indexOf']('left'))) { if (-0x1 < _0x2751cb['neighbours']['indexOf']('up')) { if (!0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] - 0x1, 'down') && (!0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] - 0x1, 'right') || !0x0 == this['sideAbleCheck'](_0x5eb0c1, _0x2751cb['tile']['x'], _0x2751cb['tile']['y'] - 0x1, 'left'))) _0x29837a['push'](_0x5eb0c1[_0x2751cb['tile']['y']][_0x2751cb['tile']['x']]), _0x509757['push'](_0x5eb0c1[_0x2751cb['tile']['y']][_0x2751cb['tile']['x']]); } else _0x29837a['push'](_0x5eb0c1[_0x2751cb['tile']['y']][_0x2751cb['tile']['x']]), _0x509757['push'](_0x5eb0c1[_0x2751cb['tile']['y']][_0x2751cb['tile']['x']]); } } } } } return _0x509757; }, 'getNeighbourTiles': function(_0x2e9c7e, _0x125c31, _0x4f7699, _0x18a7f0) { switch (_0x18a7f0) { case 'left': return [{ 'x': _0x125c31 - 0x1, 'y': _0x4f7699 }]; case 'right': return [{ 'x': _0x125c31 + 0x1, 'y': _0x4f7699 }]; case 'up': return [{ 'x': _0x125c31, 'y': _0x4f7699 - 0x1 }]; case 'down': return [{ 'x': _0x125c31, 'y': _0x4f7699 + 0x1 }]; case 'topL': return [{ 'x': _0x125c31, 'y': _0x4f7699 - 0x1 }, { 'x': _0x125c31 - 0x1, 'y': _0x4f7699 }, { 'x': _0x125c31 - 0x1, 'y': _0x4f7699 - 0x1 }]; case 'topR': return [{ 'x': _0x125c31, 'y': _0x4f7699 - 0x1 }, { 'x': _0x125c31 + 0x1, 'y': _0x4f7699 }, { 'x': _0x125c31 + 0x1, 'y': _0x4f7699 - 0x1 }]; case 'bottomL': return [{ 'x': _0x125c31, 'y': _0x4f7699 + 0x1 }, { 'x': _0x125c31 - 0x1, 'y': _0x4f7699 }, { 'x': _0x125c31 - 0x1, 'y': _0x4f7699 + 0x1 }]; case 'bottomR': return [{ 'x': _0x125c31, 'y': _0x4f7699 + 0x1 }, { 'x': _0x125c31 + 0x1, 'y': _0x4f7699 }, { 'x': _0x125c31 + 0x1, 'y': _0x4f7699 + 0x1 }]; } }, 'checkNeighbour': function(_0x1d203b, _0x576238, _0x24c46d) { var _0x15430b = []; return 0x0 != this['checkArr'](_0x1d203b, _0x576238 - 0x1, _0x24c46d) && _0x15430b['push']('left'), 0x0 != this['checkArr'](_0x1d203b, _0x576238, _0x24c46d + 0x1) && _0x15430b['push']('down'), 0x0 != this['checkArr'](_0x1d203b, _0x576238 + 0x1, _0x24c46d) && _0x15430b['push']('right'), 0x0 != this['checkArr'](_0x1d203b, _0x576238, _0x24c46d - 0x1) && _0x15430b['push']('up'), _0x15430b; }, 'checkArr': function(_0x334858, _0x32189b, _0x1771d4) { return void 0x0 == _0x334858[_0x1771d4] ? 0x0 : void 0x0 == _0x334858[_0x1771d4][_0x32189b] ? 0x0 : _0x334858[_0x1771d4][_0x32189b]; }, 'createWorldFromCollisionMap': function(_0x195912, _0x190abc) { var _0x81fac3 = new Box2D['Common']['Math']['b2Vec2'](0x0,0x0) , _0x81fac3 = new Box2D['Common']['Math']['b2Vec2'](0x0,ig['game']['gravity'] * Box2D['SCALE']); world = new Box2D['Dynamics']['b2World'](_0x81fac3,!0x0); for (var _0x81fac3 = void 0x0 != _0x190abc ? _0x190abc : this['_shapesFromCollisionMap'](this['collisionMap']), _0x495090 = 0x0; _0x495090 < _0x81fac3['length']; _0x495090++) { var _0x210924 = _0x81fac3[_0x495090] , _0x35739a = _0x210924['settings']['size']['x'] , _0x408129 = _0x210924['settings']['size']['y'] , _0x58b53e = _0x210924['settings']['vertices'] , _0x56ccef = new Box2D['Dynamics']['b2BodyDef'](); _0x56ccef['position']['Set'](_0x210924['x'] * Box2D['SCALE'] + _0x35739a / 0x2 * Box2D['SCALE'], _0x210924['y'] * Box2D['SCALE'] + _0x408129 / 0x2 * Box2D['SCALE']), _0x35739a = world['CreateBody'](_0x56ccef), _0x210924 = new Box2D['Collision']['Shapes']['b2PolygonShape'](), _0x210924['SetAsArray'](_0x58b53e, _0x58b53e['length']), _0x35739a['CreateFixture2'](_0x210924); } return world; }, 'setupContactListener': function() { var _0x10f7ea = function(_0x59bd11, _0xce171f, _0xf91112) { var _0x298284 = _0xce171f['GetFixtureA']()['GetBody']()['entity'] , _0x1eb0c7 = _0xce171f['GetFixtureB']()['GetBody']()['entity']; if (_0x298284 && _0x1eb0c7) _0x298284[_0x59bd11](_0x1eb0c7, _0xce171f, _0xf91112), _0x1eb0c7[_0x59bd11](_0x298284, _0xce171f, _0xf91112); else { if (_0x298284 && !_0x1eb0c7) _0x298284[_0x59bd11](null, _0xce171f, _0xf91112); else { if (_0x1eb0c7 && !_0x298284) _0x1eb0c7[_0x59bd11](null, _0xce171f, _0xf91112); } } } , _0x1bb625 = new Box2D['Dynamics']['b2ContactListener'](); _0x1bb625['BeginContact'] = function(_0x4dc57c) { _0x10f7ea('beginContact', _0x4dc57c); } , _0x1bb625['EndContact'] = function(_0x25f74c) { _0x10f7ea('endContact', _0x25f74c); } , _0x1bb625['PostSolve'] = function(_0x3a6d63, _0x4ca7a2) { _0x10f7ea('postSolve', _0x3a6d63, _0x4ca7a2); } , _0x1bb625['PreSolve'] = function(_0x4b8fa4, _0x4752d0) { _0x10f7ea('preSolve', _0x4b8fa4, _0x4752d0); } , ig['world']['SetContactListener'](_0x1bb625); }, '_shapesFromCollisionMap': function(_0x55ac2b) { var _0x2c1090 = []; if (_0x55ac2b instanceof ig['CollisionMap']) { var _0x44ded2 = ig['copy'](_0x55ac2b['data']), _0x400274 = _0x55ac2b['tilesize'], _0x1ba0b1 = _0x55ac2b['width'], _0x2c5596 = _0x55ac2b['height'], _0x311e19, _0x112605, _0x410f88, _0x21b415, _0x4724c8, _0xd297f5, _0xc5dfe1, _0x25641c, _0x4fe684, _0xbb779f; for (_0xd297f5 = 0x0; _0xd297f5 < _0x2c5596; _0xd297f5++) for (_0x4724c8 = 0x0; _0x4724c8 < _0x1ba0b1; _0x4724c8++) { _0xbb779f = this['_shapeFromTile'](_0x55ac2b, _0x4724c8, _0xd297f5), _0x4fe684 = { 'id': _0x55ac2b['data'][_0xd297f5][_0x4724c8], 'ix': _0x4724c8, 'iy': _0xd297f5, 'x': _0x4724c8 * _0x400274, 'y': _0xd297f5 * _0x400274, 'width': _0x400274, 'height': _0x400274, 'shape': _0xbb779f }; if (0x0 < _0xbb779f['vertices']['length']) { _0x112605 = [], _0x311e19 = _0xbb779f['vertices'], _0x410f88 = _0xbb779f['segments'], _0xc5dfe1 = 0x0; for (_0x25641c = _0x410f88['length']; _0xc5dfe1 < _0x25641c; _0xc5dfe1++) { _0x21b415 = _0x410f88[_0xc5dfe1]; var _0x44c767 = _0x311e19[_0x21b415['a']] , _0x3783cd = _0x4fe684['width'] / 0x14 , _0x4df252 = _0x4fe684['height'] / 0x14; _0x112605[_0x21b415['a']] = { 'x': _0x44c767['x']['map'](0x0, 0x1, -_0x3783cd, _0x3783cd), 'y': _0x44c767['y']['map'](0x0, 0x1, -_0x4df252, _0x4df252) }; } _0xbb779f['vertices'] = _0x112605, _0xbb779f['vertices'][_0xbb779f['vertices']['length'] - 0x1]['x'] === _0xbb779f['vertices'][0x0]['x'] && _0xbb779f['vertices'][_0xbb779f['vertices']['length'] - 0x1]['y'] === _0xbb779f['vertices'][0x0]['y'] && _0xbb779f['vertices']['pop'](), _0x311e19 = { 'id': _0x4fe684['id'], 'settings': { 'size': { 'x': _0x4fe684['width'], 'y': _0x4fe684['height'] }, 'vertices': ig['copy'](_0xbb779f['vertices']) }, 'x': _0x4fe684['x'], 'y': _0x4fe684['y'], 'tile': { 'x': _0x4724c8, 'y': _0xd297f5 } }, _0x2c1090['push'](_0x311e19); } _0x44ded2[_0xd297f5][_0x4724c8] = _0x4fe684; } } return _0x2c1090; }, '_shapeFromTile': function(_0xd87351, _0x276f59, _0x18745d) { var _0x1ef96d; _0x1ef96d = _0xd87351['data'][_0x18745d][_0x276f59], _0xd87351 = this['_verticesFromTile'](_0xd87351, _0x276f59, _0x18745d); var _0x54e105; if (_0xd87351) { if (this['defaultTileSegmentsDef'][_0x1ef96d]) _0x54e105 = this['defaultTileSegmentsDef'][_0x1ef96d]; else { this['defaultTileSegmentsDef'][_0x1ef96d] = _0x54e105 = [], _0x1ef96d = 0x0; for (_0x276f59 = _0xd87351['length']; _0x1ef96d < _0x276f59; _0x1ef96d++) { var _0x463ca9 = _0xd87351[_0x1ef96d]; _0x18745d = _0x1ef96d === _0x276f59 - 0x1 ? 0x0 : _0x1ef96d + 0x1; var _0x523ba6 = _0xd87351[_0x18745d] , _0x4471ae = _0x523ba6['x'] - _0x463ca9['x'] , _0x463ca9 = _0x523ba6['y'] - _0x463ca9['y'] , _0x523ba6 = Math['sqrt'](_0x4471ae * _0x4471ae + _0x463ca9 * _0x463ca9); _0x54e105['push']({ 'a': _0x1ef96d, 'b': _0x18745d, 'normal': { 'x': _0x463ca9 / _0x523ba6, 'y': -_0x4471ae / _0x523ba6 } }); } } } return { 'vertices': _0xd87351, 'segments': _0x54e105 || [] }; }, '_verticesFromTile': function(_0x1a7264, _0xb4cef5, _0x3045b4) { _0xb4cef5 = _0x1a7264['data'][_0x3045b4][_0xb4cef5]; if (this['defaultTileVerticesDef'][_0xb4cef5]) _0x3045b4 = this['defaultTileVerticesDef'][_0xb4cef5]; else { if (0x1 === _0xb4cef5) _0x3045b4 = [{ 'x': 0x0, 'y': 0x0 }, { 'x': 0x1, 'y': 0x0 }, { 'x': 0x1, 'y': 0x1 }, { 'x': 0x0, 'y': 0x1 }]; else { _0x3045b4 = []; if (_0x1a7264 = _0x1a7264['tiledef'][_0xb4cef5]) { var _0x3e1737 = _0x3045b4[0x0] = { 'x': _0x1a7264[0x0], 'y': _0x1a7264[0x1] } , _0x57e492 = _0x3045b4[0x1] = { 'x': _0x1a7264[0x2], 'y': _0x1a7264[0x3] }; _0x1a7264 = _0x3e1737['x']; var _0x3e1737 = _0x3e1737['y'], _0x4985e2 = _0x57e492['x'], _0x57e492 = _0x57e492['y'], _0x21ce24 = _0x4985e2 - _0x1a7264, _0x2d0eea = _0x57e492 - _0x3e1737, _0x23090d = _0x3045b4[0x2] = { 'x': 0x0 > _0x2d0eea ? 0x1 : 0x0, 'y': 0x0 < _0x21ce24 ? 0x1 : 0x0 }, _0x45f311 = _0x23090d['x'], _0x23090d = _0x23090d['y'], _0x2cd5f1; _0x2cd5f1 = !0x1; if (0x1 > Math['abs'](_0x21ce24) && 0x1 > Math['abs'](_0x2d0eea)) { var _0x21ce24 = _utv2['pointQuadrant'](_0x1a7264, _0x3e1737, 0.5, 0.5) , _0x2d0eea = _utv2['pointQuadrant'](_0x4985e2, _0x57e492, 0.5, 0.5) , _0x3cee15 = _utv2['pointQuadrant'](_0x45f311, _0x23090d, 0.5, 0.5); !(_0x21ce24 & _0x3cee15) && !(_0x2d0eea & _0x3cee15) && (_0x2cd5f1 = !0x0); } !0x0 === _0x2cd5f1 ? (_0x45f311 !== _0x23090d ? (_0x2cd5f1 = _0x45f311, _0x2d0eea = _0x23090d, 0x1 == _0x45f311 ? (_0x23090d = 0x1, _0x21ce24 = 0x0) : (_0x23090d = 0x0, _0x21ce24 = 0x1)) : (_0x21ce24 = _0x45f311, _0x2d0eea = 0x1 == _0x45f311 ? _0x2cd5f1 = 0x0 : _0x2cd5f1 = 0x1), _0x3045b4[0x3] = { 'x': _0x2cd5f1, 'y': _0x23090d }, _0x3045b4[0x4] = { 'x': _0x21ce24, 'y': _0x2d0eea }) : (_0x45f311 !== _0x23090d ? (_0x2cd5f1 = _0x45f311, _0x2d0eea = _0x23090d, 0x1 == _0x45f311 ? (_0x23090d = Math['max'](_0x3e1737, _0x57e492), _0x21ce24 = Math['min'](_0x1a7264, _0x4985e2)) : (_0x23090d = Math['min'](_0x3e1737, _0x57e492), _0x21ce24 = Math['max'](_0x1a7264, _0x4985e2))) : (_0x21ce24 = _0x45f311, 0x1 == _0x45f311 ? (_0x2cd5f1 = Math['min'](_0x1a7264, _0x4985e2), _0x2d0eea = Math['min'](_0x3e1737, _0x57e492)) : (_0x2cd5f1 = Math['max'](_0x1a7264, _0x4985e2), _0x2d0eea = Math['max'](_0x3e1737, _0x57e492))), _0x2cd5f1 === _0x1a7264 && _0x23090d === _0x3e1737 || _0x2cd5f1 === _0x4985e2 && _0x23090d === _0x57e492 ? _0x21ce24 === _0x1a7264 && _0x2d0eea === _0x3e1737 || _0x21ce24 === _0x4985e2 && _0x2d0eea === _0x57e492 || (_0x3045b4[0x3] = { 'x': _0x21ce24, 'y': _0x2d0eea }) : _0x3045b4[0x3] = { 'x': _0x2cd5f1, 'y': _0x23090d }), _0x3045b4 = this['_pointsToConvexHull'](_0x3045b4); } this['defaultTileVerticesDef'][_0xb4cef5] = _0x3045b4; } } return _0x3045b4; }, '_pointsToConvexHull': function(_0x24f185) { if (0x3 > _0x24f185['length']) return _0x24f185; var _0x7706c3, _0x32b88b, _0x252ad1 = 0x0, _0x49c6b0 = _0x24f185[_0x252ad1], _0x2209a1; _0x7706c3 = 0x1; for (_0x32b88b = _0x24f185['length']; _0x7706c3 < _0x32b88b; _0x7706c3++) _0x2209a1 = _0x24f185[_0x7706c3], _0x2209a1['y'] === _0x49c6b0['y'] ? _0x2209a1['x'] < _0x49c6b0['x'] && (_0x252ad1 = _0x7706c3, _0x49c6b0 = _0x2209a1) : _0x2209a1['y'] < _0x49c6b0['y'] && (_0x252ad1 = _0x7706c3, _0x49c6b0 = _0x2209a1); var _0x39a6d8 = [], _0x22fe9b; _0x7706c3 = 0x0; for (_0x32b88b = _0x24f185['length']; _0x7706c3 < _0x32b88b; _0x7706c3++) _0x7706c3 !== _0x252ad1 && (_0x2209a1 = _0x24f185[_0x7706c3], _0x22fe9b = { 'x': _0x2209a1['x'], 'y': _0x2209a1['y'] }, _0x22fe9b['angle'] = Math['atan']((_0x2209a1['y'] - _0x49c6b0['y']) / (_0x2209a1['x'] - _0x49c6b0['x'])), 0x0 > _0x22fe9b['angle'] && (_0x22fe9b['angle'] += Math['PI']), _0x22fe9b['distance'] = (_0x2209a1['x'] - _0x49c6b0['x']) * (_0x2209a1['x'] - _0x49c6b0['x']) + (_0x2209a1['y'] - _0x49c6b0['y']) * (_0x2209a1['y'] - _0x49c6b0['y']), _0x22fe9b['index'] = _0x7706c3, _0x39a6d8['push'](_0x22fe9b)); _0x39a6d8['sort'](function(_0x211111, _0x1eb8af) { return _0x211111['angle'] < _0x1eb8af['angle'] ? -0x1 : _0x211111['angle'] > _0x1eb8af['angle'] ? 0x1 : _0x211111['distance'] < _0x1eb8af['distance'] ? -0x1 : _0x211111['distance'] > _0x1eb8af['distance'] ? 0x1 : 0x0; }), _0x39a6d8['unshift'](_0x39a6d8[_0x39a6d8['length'] - 0x1], { 'x': _0x49c6b0['x'], 'y': _0x49c6b0['y'], 'index': _0x252ad1 }), _0x252ad1 = 0x2, _0x7706c3 = 0x3; for (_0x32b88b = _0x24f185['length']; _0x7706c3 <= _0x32b88b; _0x7706c3++) { for (; 0x0 >= this['_pointsCW'](_0x39a6d8[_0x252ad1 - 0x1], _0x39a6d8[_0x252ad1], _0x39a6d8[_0x7706c3]); ) _0x252ad1--; _0x252ad1++, _0x49c6b0 = _0x39a6d8[_0x7706c3], _0x39a6d8[_0x7706c3] = _0x39a6d8[_0x252ad1], _0x39a6d8[_0x252ad1] = _0x49c6b0; } _0x32b88b = []; for (_0x7706c3 = 0x0; _0x7706c3 <= _0x252ad1; _0x7706c3++) _0x32b88b[_0x7706c3] = _0x24f185[_0x39a6d8[_0x7706c3]['index']]; return _0x32b88b; }, '_pointsCW': function(_0x39aca1, _0x1de200, _0x36446a) { return (_0x1de200['x'] - _0x39aca1['x']) * (_0x36446a['y'] - _0x39aca1['y']) - (_0x1de200['y'] - _0x39aca1['y']) * (_0x36446a['x'] - _0x39aca1['x']); } }), Box2D['Common']['b2Settings']['b2_maxTranslation'] = 0xa, Box2D['Common']['b2Settings']['b2_maxTranslationSquared'] = 0x64, Box2D['Common']['b2Settings']['b2_velocityThreshold'] = 0x1; }), ig['baked'] = !0x0, ig['module']('plugins.box2d.entity')['requires']('impact.entity', 'plugins.box2d.game')['defines'](function() { ig['Box2DEntity'] = ig['Entity']['extend']({ 'body': null, 'angle': 0x0, 'box2dType': null, 'dynamicType': null, 'density': null, 'friction': null, 'restitution': null, 'rotate': 0x0, 'previousBodyPosition': { 'x': 0x0, 'y': 0x0 }, 'previousBodyAngle': 0x0, 'slowTime': 0x0, 'init': function(_0x239d6d, _0x2cb967, _0x4c6e82) { this['parent'](_0x239d6d, _0x2cb967, _0x4c6e82), ig['global']['wm'] || this['createBody'](), 0x0 < this['rotate'] && (this['angle'] = this['rotate'] * Math['PI'] / 0xb4); }, 'ready': function() {}, 'createBody': function() { if (this['body']) { var _0xb96f4a = this['body']['GetPosition'](); this['pos'] = { 'x': _0xb96f4a['x'] / Box2D['SCALE'] - this['size']['x'] / 0x2, 'y': _0xb96f4a['y'] / Box2D['SCALE'] - this['size']['y'] / 0x2 }; } _0xb96f4a = new Box2D['Dynamics']['b2BodyDef'](), _0xb96f4a['position'] = new Box2D['Common']['Math']['b2Vec2']((this['pos']['x'] + this['size']['x'] / 0x2) * Box2D['SCALE'],(this['pos']['y'] + this['size']['y'] / 0x2) * Box2D['SCALE']), this['previousBodyPosition'] = { 'x': _0xb96f4a['position']['x'], 'y': _0xb96f4a['position']['y'] }, this['rotate'] && (_0xb96f4a['angle'] = this['rotate'] * Math['PI'] / 0xb4), this['previousBodyAngle'] = _0xb96f4a['angle'], null == this['dynamicType'] || 0x0 == this['dynamicType'] ? _0xb96f4a['type'] = Box2D['Dynamics']['b2Body']['b2_dynamicBody'] : 0x1 == this['dynamicType'] ? _0xb96f4a['type'] = Box2D['Dynamics']['b2Body']['b2_kinematicBody'] : 0x2 == this['dynamicType'] && (_0xb96f4a['type'] = Box2D['Dynamics']['b2Body']['b2_staticBody']), this['body'] = ig['world']['CreateBody'](_0xb96f4a), null == this['body'] && (ig['world']['Step'](), this['body'] = ig['world']['CreateBody'](_0xb96f4a)), this['body']['entity'] = this, _0xb96f4a = this['fixture'] = new Box2D['Dynamics']['b2FixtureDef'](), null == this['box2dType'] || 0x0 == this['box2dType'] ? (_0xb96f4a['shape'] = new Box2D['Collision']['Shapes']['b2PolygonShape'](), _0xb96f4a['shape']['SetAsBox'](this['size']['x'] / 0x2 * Box2D['SCALE'], this['size']['y'] / 0x2 * Box2D['SCALE'])) : 0x1 == this['box2dType'] ? (_0xb96f4a['shape'] = new Box2D['Collision']['Shapes']['b2CircleShape'](), _0xb96f4a['shape']['SetRadius'](this['size']['x'] / 0x2 * Box2D['SCALE'])) : 0x2 == this['box2dType'] && (_0xb96f4a['shape'] = new Box2D['Collision']['Shapes']['b2PolygonShape'](), _0xb96f4a['shape']['SetAsArray'](this['vertices'], this['vertices']['length'])), this['density'] && (_0xb96f4a['density'] = this['density']), this['friction'] && (_0xb96f4a['friction'] = this['friction']), this['restitution'] && (_0xb96f4a['restitution'] = this['restitution']), this['body']['CreateFixture'](_0xb96f4a), this['body']['SetUserData'](this); }, 'update': function() { var _0x530b0a = this['body']['GetPosition'](); this['previousBodyPosition'] = { 'x': this['pos']['x'], 'y': this['pos']['y'] }, this['pos'] = { 'x': _0x530b0a['x'] / Box2D['SCALE'] - this['size']['x'] / 0x2, 'y': _0x530b0a['y'] / Box2D['SCALE'] - this['size']['y'] / 0x2 }, this['previousBodyAngle'] = this['angle'], this['angle'] = this['body']['GetAngle']()['round'](0x2), this['currentAnim'] && (this['currentAnim']['update'](), this['currentAnim']['angle'] = this['angle']); if (0x0 < this['tweens']['length']) { for (var _0x530b0a = [], _0x59387f = 0x0; _0x59387f < this['tweens']['length']; _0x59387f++) this['tweens'][_0x59387f]['update'](), this['tweens'][_0x59387f]['complete'] || _0x530b0a['push'](this['tweens'][_0x59387f]); this['tweens'] = _0x530b0a; } }, 'beginContact': function() {}, 'endContact': function() {}, 'postSolve': function() {}, 'preSolve': function() {}, 'processCollisionQueues': function() { for (var _0x918d3e in this['checkQueue']) { var _0x2fb218 = this['checkQueue'][_0x918d3e]; 0x0 < this['entityContactCount'][_0x918d3e] ? this['check'](_0x2fb218) : delete this['checkQueue'][_0x918d3e]; } for (var _0x853f62 in this['collideQueue']) for (_0x918d3e in this['collideQueue'][_0x853f62]) _0x2fb218 = this['collideQueue'][_0x853f62][_0x918d3e], this['collideWith'](_0x2fb218, _0x853f62), delete this['collideQueue'][_0x853f62][_0x918d3e]; }, 'kill': function() { this['body'] && ig['game']['queueDestroyBody'](this['body']), this['parent'](); }, 'setScale': function(_0x2eaf60, _0x5f170f) { this['parent'](_0x2eaf60, _0x5f170f), null != this['body'] && this['scaleChange'] && (ig['world']['DestroyBody'](this['body']), this['createBody'](), this['scaleChange'] = !0x1); } }); }), ig['baked'] = !0x0, ig['module']('plugins.data.color-rgb')['defines'](function() { ColorRGB = function(_0x44ec1d, _0x2eb136, _0xf42b7a, _0x18c828) { this['r'] = _0x44ec1d || 0x0, this['g'] = _0x2eb136 || 0x0, this['b'] = _0xf42b7a || 0x0, this['a'] = _0x18c828 || 0x0; } , ColorRGB['prototype'] = { 'setRandomColor': function() { this['r'] = Math['round'](0xff * Math['random']()), this['g'] = Math['round'](0xff * Math['random']()), this['b'] = Math['round'](0xff * Math['random']()); }, 'getStyle': function() { return 'rgba(' + this['r'] + ',' + this['g'] + ',' + this['b'] + ',' + this['a'] + ')'; }, 'getHex': function() { for (var _0x413c83 = this['r']['toString'](0x10), _0x4962d4 = this['g']['toString'](0x10), _0x57eabe = this['b']['toString'](0x10); 0x2 > _0x413c83['length']; ) _0x413c83 = '0' + _0x413c83; for (; 0x2 > _0x4962d4['length']; ) _0x4962d4 = '0' + _0x4962d4; for (; 0x2 > _0x57eabe['length']; ) _0x57eabe = '0' + _0x57eabe; return '#' + _0x413c83 + _0x4962d4 + _0x57eabe; }, 'getInvertedColor': function() { return new ColorRGB(0xff - this['r'],0xff - this['g'],0xff - this['b'],0xff - this['a']); }, 'clone': function() { return new ColorRGB(this['r'],this['g'],this['b'],this['a']); } }; }), this['START_BRANDING_SPLASH'], ig['baked'] = !0x0, ig['module']('plugins.branding.splash')['requires']('impact.impact', 'impact.entity')['defines'](function() { ig['BrandingSplash'] = ig['Class']['extend']({ 'init': function() { ig['game']['spawnEntity'](EntityBranding, 0x0, 0x0), console['log']('spawn\x20branding'); } }), EntityBranding = ig['Entity']['extend']({ 'gravityFactor': 0x0, 'size': { 'x': 0x20, 'y': 0x20 }, 'splash': new ig['Image']('branding/splash1.png'), 'init': function(_0x561bd4, _0x32def3, _0x5add40) { this['parent'](_0x561bd4, _0x32def3, _0x5add40), 0x140 >= ig['system']['width'] ? (this['size']['x'] = 0x140, this['size']['y'] = 0xc8) : (this['size']['x'] = 0x1e0, this['size']['y'] = 0xf0), this['pos']['x'] = (ig['system']['width'] - this['size']['x']) / 0x2, this['pos']['y'] = -this['size']['y'] - 0xc8, this['endPosY'] = (ig['system']['height'] - this['size']['y']) / 0x2, _0x561bd4 = this['tween']({ 'pos': { 'y': this['endPosY'] } }, 0.5, { 'easing': ig['Tween']['Easing']['Bounce']['EaseIn'] }), _0x32def3 = this['tween']({}, 2.5, { 'onComplete': function() { ig['game']['director']['loadLevel'](ig['game']['director']['currentLevel']); } }), _0x561bd4['chain'](_0x32def3), _0x561bd4['start'](), this['currentAnim'] = this['anims']['idle']; }, 'createClickableLayer': function() { console['log']('Build\x20clickable\x20layer'), this['checkClickableLayer']('branding-splash', _SETTINGS['Branding']['Logo']['Link'], _SETTINGS['Branding']['Logo']['NewWindow']); }, 'doesClickableLayerExist': function(_0x5a43ef) { for (k in dynamicClickableEntityDivs) if (k == _0x5a43ef) return !0x0; return !0x1; }, 'checkClickableLayer': function(_0x2b86c0, _0x3072e3, _0x117970) { 'undefined' == typeof wm && (this['doesClickableLayerExist'](_0x2b86c0) ? (ig['game']['showOverlay']([_0x2b86c0]), $('#' + _0x2b86c0)['find']('[href]')['attr']('href', _0x3072e3)) : this['createClickableOutboundLayer'](_0x2b86c0, _0x3072e3, 'media/graphics/misc/invisible.png', _0x117970)); }, 'createClickableOutboundLayer': function(_0x4b00c2, _0x647c6a, _0x456d95, _0x518796) { var _0x2f2548 = ig['$new']('div'); _0x2f2548['id'] = _0x4b00c2, document['body']['appendChild'](_0x2f2548), _0x2f2548 = $('#' + _0x2f2548['id']), _0x2f2548['css']('float', 'left'), _0x2f2548['css']('position', 'absolute'); if (ig['ua']['mobile']) { var _0xdeebdd = window['innerHeight'] / mobileHeight , _0x502ecc = window['innerWidth'] / mobileWidth; _0x2f2548['css']('left', this['pos']['x'] * _0x502ecc), _0x2f2548['css']('top', this['pos']['y'] * _0xdeebdd), _0x2f2548['css']('width', this['size']['x'] * _0x502ecc), _0x2f2548['css']('height', this['size']['y'] * _0xdeebdd); } else _0xdeebdd = w / 0x2 - destW / 0x2, _0x502ecc = h / 0x2 - destH / 0x2, console['log'](_0xdeebdd, _0x502ecc), _0x2f2548['css']('left', _0xdeebdd + this['pos']['x'] * multiplier), _0x2f2548['css']('top', _0x502ecc + this['pos']['y'] * multiplier), _0x2f2548['css']('width', this['size']['x'] * multiplier), _0x2f2548['css']('height', this['size']['y'] * multiplier); _0x518796 ? _0x2f2548['html']('') : _0x2f2548['html'](''), dynamicClickableEntityDivs[_0x4b00c2] = {}, dynamicClickableEntityDivs[_0x4b00c2]['width'] = this['size']['x'] * multiplier, dynamicClickableEntityDivs[_0x4b00c2]['height'] = this['size']['y'] * multiplier, dynamicClickableEntityDivs[_0x4b00c2]['entity_pos_x'] = this['pos']['x'], dynamicClickableEntityDivs[_0x4b00c2]['entity_pos_y'] = this['pos']['y']; }, 'draw': function() { ig['system']['context']['fillStyle'] = '#ffffff', ig['system']['context']['fillRect'](0x0, 0x0, ig['system']['width'], ig['system']['height']), ig['system']['context']['fillStyle'] = '#000', ig['system']['context']['font'] = '12px\x20Arial', ig['system']['context']['textAlign'] = 'left', 0x140 >= ig['system']['width'] ? ig['system']['context']['fillText']('powered\x20by\x20MarketJS.com', ig['system']['width'] - 0x96, ig['system']['height'] - 0xf) : ig['system']['context']['fillText']('powered\x20by\x20MarketJS.com', ig['system']['width'] - 0xa0, ig['system']['height'] - 0xf), this['parent'](), this['splash'] && ig['system']['context']['drawImage'](this['splash']['data'], 0x0, 0x0, this['splash']['data']['width'], this['splash']['data']['height'], this['pos']['x'], this['pos']['y'], this['size']['x'], this['size']['y']); } }); }), this['END_BRANDING_SPLASH'], ig['baked'] = !0x0, ig['module']('game.entities.buttons.button')['requires']('impact.entity', 'plugins.data.vector')['defines'](function() { EntityButton = ig['Entity']['extend']({ 'collides': ig['Entity']['COLLIDES']['NEVER'], 'type': ig['Entity']['TYPE']['A'], 'size': new Vector2(0x30,0x30), 'fillColor': null, 'zIndex': 0x17318, 'init': function(_0x5124ce, _0x3573d1, _0x21dc24) { this['parent'](_0x5124ce, _0x3573d1, _0x21dc24), !ig['global']['wm'] && !isNaN(_0x21dc24['zIndex']) && (this['zIndex'] = _0x21dc24['zIndex']), _0x5124ce = Math['floor'](0x100 * Math['random']()), _0x3573d1 = Math['floor'](0x100 * Math['random']()), _0x21dc24 = Math['floor'](0x100 * Math['random']()), this['fillColor'] = 'rgba(' + _0x5124ce + ',' + _0x21dc24 + ',' + _0x3573d1 + ',1)'; }, 'clicked': function() { throw 'no\x20implementation\x20on\x20clicked()'; }, 'clicking': function() { throw 'no\x20implementation\x20on\x20clicking()'; }, 'released': function() { throw 'no\x20implementation\x20on\x20released()'; } }); }), ig['baked'] = !0x0, ig['module']('plugins.clickable-div-layer')['requires']('plugins.data.vector')['defines'](function() { ClickableDivLayer = ig['Class']['extend']({ 'pos': new Vector2(0x0,0x0), 'size': new Vector2(0x0,0x0), 'identifier': null, 'invisImagePath': 'media/graphics/misc/invisible.png', 'init': function(_0x1a0afb) { this['pos'] = new Vector2(_0x1a0afb['pos']['x'],_0x1a0afb['pos']['y']), this['size'] = new Vector2(_0x1a0afb['size']['x'],_0x1a0afb['size']['y']); var _0x2992c5 = 'more-games' , _0x51a615 = 'www.google.com' , _0x3cc1d2 = !0x1; _0x1a0afb['div_layer_name'] && (_0x2992c5 = _0x1a0afb['div_layer_name']), _0x1a0afb['link'] && (_0x51a615 = _0x1a0afb['link']), _0x1a0afb['newWindow'] && (_0x3cc1d2 = _0x1a0afb['newWindow']), this['createClickableLayer'](_0x2992c5, _0x51a615, _0x3cc1d2); }, 'createClickableLayer': function(_0x563d9d, _0x12e551, _0x58c8d7) { this['identifier'] = _0x563d9d; var _0x5d7370 = ig['domHandler']['getElementById']('#' + _0x563d9d); _0x5d7370 ? (ig['domHandler']['show'](_0x5d7370), ig['domHandler']['attr'](_0x5d7370, 'href', _0x12e551)) : this['createClickableOutboundLayer'](_0x563d9d, _0x12e551, this['invisImagePath'], _0x58c8d7); }, 'update': function(_0x3d08c4, _0x2f2946) { this['pos']['x'] === _0x3d08c4 && this['pos']['y'] === _0x2f2946 || (ig['sizeHandler']['dynamicClickableEntityDivs'][this['identifier']] = {}, ig['sizeHandler']['dynamicClickableEntityDivs'][this['identifier']]['width'] = this['size']['x'], ig['sizeHandler']['dynamicClickableEntityDivs'][this['identifier']]['height'] = this['size']['y'], ig['sizeHandler']['dynamicClickableEntityDivs'][this['identifier']]['entity_pos_x'] = this['pos']['x'], ig['sizeHandler']['dynamicClickableEntityDivs'][this['identifier']]['entity_pos_y'] = this['pos']['y']); }, 'createClickableOutboundLayer': function(_0x272e3a, _0x932795, _0x134498, _0x489908) { var _0x47cbc0 = ig['domHandler']['create']('div'); ig['domHandler']['attr'](_0x47cbc0, 'id', _0x272e3a); var _0x1f50e0 = ig['domHandler']['create']('a'); _0x489908 ? (ig['domHandler']['attr'](_0x1f50e0, 'href', _0x932795), ig['domHandler']['attr'](_0x1f50e0, 'target', '_blank')) : ig['domHandler']['attr'](_0x1f50e0, 'href', _0x932795), _0x932795 = ig['domHandler']['create']('img'), ig['domHandler']['css'](_0x932795, { 'width': '100%', 'height': '100%' }), ig['domHandler']['attr'](_0x932795, 'src', _0x134498), _0x134498 = Math['min'](ig['sizeHandler']['scaleRatioMultiplier']['x'], ig['sizeHandler']['scaleRatioMultiplier']['y']); if (ig['ua']['mobile']) { _0x489908 = ig['domHandler']['getElementById']('#canvas'), _0x489908 = ig['domHandler']['getOffsets'](_0x489908); var _0x15a4b8 = _0x489908['left'] , _0x4248fc = _0x489908['top']; console['log'](_0x489908['left']), ig['sizeHandler']['disableStretchToFitOnMobileFlag'] ? (_0x489908 = Math['floor'](_0x15a4b8 + this['pos']['x'] * ig['sizeHandler']['scaleRatioMultiplier']['x']) + 'px', _0x4248fc = Math['floor'](_0x4248fc + this['pos']['y'] * ig['sizeHandler']['scaleRatioMultiplier']['y']) + 'px', _0x15a4b8 = Math['floor'](this['size']['x'] * ig['sizeHandler']['scaleRatioMultiplier']['x']) + 'px', _0x134498 = Math['floor'](this['size']['y'] * ig['sizeHandler']['scaleRatioMultiplier']['y']) + 'px') : (_0x489908 = Math['floor'](this['pos']['x'] * ig['sizeHandler']['sizeRatio']['x']) + 'px', _0x4248fc = Math['floor'](this['pos']['y'] * ig['sizeHandler']['sizeRatio']['y']) + 'px', _0x15a4b8 = Math['floor'](this['size']['x'] * ig['sizeHandler']['sizeRatio']['x']) + 'px', _0x134498 = Math['floor'](this['size']['y'] * ig['sizeHandler']['sizeRatio']['y']) + 'px'); } else _0x489908 = ig['domHandler']['getElementById']('#canvas'), _0x489908 = ig['domHandler']['getOffsets'](_0x489908), _0x15a4b8 = _0x489908['left'], _0x4248fc = _0x489908['top'], ig['sizeHandler']['enableStretchToFitOnDesktopFlag'] ? (_0x489908 = Math['floor'](_0x15a4b8 + this['pos']['x'] * ig['sizeHandler']['sizeRatio']['x']) + 'px', _0x4248fc = Math['floor'](_0x4248fc + this['pos']['y'] * ig['sizeHandler']['sizeRatio']['y']) + 'px', _0x15a4b8 = Math['floor'](this['size']['x'] * ig['sizeHandler']['sizeRatio']['x']) + 'px', _0x134498 = Math['floor'](this['size']['y'] * ig['sizeHandler']['sizeRatio']['y']) + 'px') : (_0x489908 = Math['floor'](_0x15a4b8 + this['pos']['x'] * _0x134498) + 'px', _0x4248fc = Math['floor'](_0x4248fc + this['pos']['y'] * _0x134498) + 'px', _0x15a4b8 = Math['floor'](this['size']['x'] * _0x134498) + 'px', _0x134498 = Math['floor'](this['size']['y'] * _0x134498) + 'px'); ig['domHandler']['css'](_0x47cbc0, { 'float': 'left', 'position': 'absolute', 'left': _0x489908, 'top': _0x4248fc, 'width': _0x15a4b8, 'height': _0x134498, 'z-index': 0x3 }), ig['domHandler']['addEvent'](_0x47cbc0, 'mousemove', ig['input']['mousemove']['bind'](ig['input']), !0x1), ig['domHandler']['appendChild'](_0x1f50e0, _0x932795), ig['domHandler']['appendChild'](_0x47cbc0, _0x1f50e0), ig['domHandler']['appendToBody'](_0x47cbc0), ig['sizeHandler']['dynamicClickableEntityDivs'][_0x272e3a] = {}, ig['sizeHandler']['dynamicClickableEntityDivs'][_0x272e3a]['width'] = this['size']['x'], ig['sizeHandler']['dynamicClickableEntityDivs'][_0x272e3a]['height'] = this['size']['y'], ig['sizeHandler']['dynamicClickableEntityDivs'][_0x272e3a]['entity_pos_x'] = this['pos']['x'], ig['sizeHandler']['dynamicClickableEntityDivs'][_0x272e3a]['entity_pos_y'] = this['pos']['y']; } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.button-branding-logo')['requires']('game.entities.buttons.button', 'plugins.clickable-div-layer')['defines'](function() { EntityButtonBrandingLogo = EntityButton['extend']({ 'type': ig['Entity']['TYPE']['A'], 'gravityFactor': 0x0, 'logo': new ig['AnimationSheet']('branding/logo.png',_SETTINGS['Branding']['Logo']['Width'],_SETTINGS['Branding']['Logo']['Height']), 'zIndex': 0x2711, 'size': { 'x': 0x40, 'y': 0x42 }, 'clickableLayer': null, 'link': null, 'newWindow': !0x1, 'div_layer_name': 'branding-logo', 'name': 'brandinglogo', 'init': function(_0x16a483, _0x5b963b, _0x215eea) { this['parent'](_0x16a483, _0x5b963b, _0x215eea); if (!ig['global']['wm']) { if ('undefined' == typeof wm) { if (_SETTINGS['Branding']['Logo']['Enabled']) this['size']['x'] = _SETTINGS['Branding']['Logo']['Width'], this['size']['y'] = _SETTINGS['Branding']['Logo']['Height'], this['anims']['idle'] = new ig['Animation'](this['logo'],0x0,[0x0],!0x0), this['currentAnim'] = this['anims']['idle'], _0x215eea && _0x215eea['centralize'] && (this['pos']['x'] = ig['system']['width'] / 0x2 - this['size']['x'] / 0x2, console['log']('centralize\x20true\x20...\x20centering\x20branded\x20logo\x20...')), _SETTINGS['Branding']['Logo']['LinkEnabled'] && (this['link'] = _SETTINGS['Branding']['Logo']['Link'], this['newWindow'] = _SETTINGS['Branding']['Logo']['NewWindow'], this['clickableLayer'] = new ClickableDivLayer(this)); else { this['kill'](); return; } } this['div_layer_name'] = _0x215eea['div_layer_name'] ? _0x215eea['div_layer_name'] : 'branding-logo'; } }, 'show': function() { var _0x5c64a6 = ig['domHandler']['getElementById']('#' + this['div_layer_name']); ig['domHandler']['show'](_0x5c64a6); }, 'hide': function() { var _0x37beff = ig['domHandler']['getElementById']('#' + this['div_layer_name']); ig['domHandler']['hide'](_0x37beff); }, 'clicked': function() {}, 'clicking': function() {}, 'released': function() {} }); }), ig['baked'] = !0x0, ig['module']('game.entities.branding-logo-placeholder')['requires']('impact.entity', 'game.entities.buttons.button-branding-logo')['defines'](function() { EntityBrandingLogoPlaceholder = ig['Entity']['extend']({ 'gravityFactor': 0x0, 'size': { 'x': 0x20, 'y': 0x20 }, '_wmDrawBox': !0x0, '_wmBoxColor': 'rgba(0,\x200,\x20255,\x200.7)', 'init': function(_0x3fcfd8, _0x1968ce, _0x2883e8) { this['parent'](_0x3fcfd8, _0x1968ce, _0x2883e8); if (_0x2883e8) switch (console['log']('settings\x20found\x20...\x20using\x20that\x20div\x20layer\x20name'), _0x3fcfd8 = _0x2883e8['div_layer_name'], console['log']('settings.centralize:', _0x2883e8['centralize']), _0x2883e8['centralize']) { case 'true': console['log']('centralize\x20true'), centralize = !0x0; break; case 'false': console['log']('centralize\x20false'), centralize = !0x1; break; default: console['log']('default\x20...\x20centralize\x20false'), centralize = !0x1; } else _0x3fcfd8 = 'branding-logo', centralize = !0x1; if ('undefined' == typeof wm) { if (_SETTINGS['Branding']['Logo']['Enabled']) try { ig['game']['spawnEntity'](EntityButtonBrandingLogo, this['pos']['x'], this['pos']['y'], { 'div_layer_name': _0x3fcfd8, 'centralize': centralize }); } catch (_0x45729c) { console['log'](_0x45729c); } this['kill'](); } } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.button-more-games')['requires']('game.entities.buttons.button', 'plugins.clickable-div-layer')['defines'](function() { EntityButtonMoreGames = EntityButton['extend']({ 'type': ig['Entity']['TYPE']['A'], 'gravityFactor': 0x0, 'logo': new ig['AnimationSheet']('media/graphics/game/ui/btn-more-games.png',0x4b,0x51), 'size': { 'x': 0x4b, 'y': 0x51 }, 'zIndex': 0x2ee, 'clickableLayer': null, 'link': null, 'newWindow': !0x1, 'div_layer_name': 'more-games', 'name': 'moregames', 'init': function(_0x57cd1e, _0x2a4885, _0x262661) { this['parent'](_0x57cd1e, _0x2a4885, _0x262661), ig['global']['wm'] || (this['div_layer_name'] = _0x262661['div_layer_name'] ? _0x262661['div_layer_name'] : 'more-games', _SETTINGS['MoreGames']['Enabled'] ? (this['anims']['idle'] = new ig['Animation'](this['logo'],0x0,[0x0],!0x0), this['currentAnim'] = this['anims']['idle'], _SETTINGS['MoreGames']['Link'] && (this['link'] = _SETTINGS['MoreGames']['Link']), _SETTINGS['MoreGames']['NewWindow'] && (this['newWindow'] = _SETTINGS['MoreGames']['NewWindow']), this['clickableLayer'] = new ClickableDivLayer(this)) : this['kill']()); }, 'show': function() { var _0x1f8972 = ig['domHandler']['getElementById']('#' + this['div_layer_name']); _0x1f8972 && ig['domHandler']['show'](_0x1f8972); }, 'hide': function() { var _0x29aff1 = ig['domHandler']['getElementById']('#' + this['div_layer_name']); _0x29aff1 && ig['domHandler']['hide'](_0x29aff1); }, 'clicked': function() {}, 'clicking': function() {}, 'released': function() {} }); }), ig['baked'] = !0x0, ig['module']('game.entities.opening-kitty')['requires']('impact.entity')['defines'](function() { EntityOpeningKitty = ig['Entity']['extend']({ 'size': { 'x': 0x30, 'y': 0x30 }, 'kittyAnim': -0x1, 'kittyImage': new ig['Image']('media/graphics/opening/kitty.png'), 'kittyTitleImage': new ig['Image']('media/graphics/opening/kittytitle.png'), 'soundKey': 'kittyopeningSound', 'init': function(_0x5ae440, _0x592b33, _0x3ab1e7) { this['parent'](_0x5ae440, _0x592b33, _0x3ab1e7); }, 'ready': function() { !ig['wm'] && _SETTINGS['DeveloperBranding']['Splash']['Enabled'] && (this['initTimer'] = new ig['Timer'](0.1)); }, 'update': function() { this['parent'](), this['updateKittyOpening'](), this['unlockWebAudio'](); }, 'unlockWebAudio': function() { if (ig['input']['released']('click')) try { ig['soundHandler']['unlockWebAudio'](); } catch (_0x1b3a50) {} }, 'draw': function() { this['parent'](), ig['global']['wm'] || (this['nextLevelTimer'] && 0x0 > this['nextLevelTimer']['delta']() && (ig['system']['context']['globalAlpha'] = -this['nextLevelTimer']['delta']()), this['drawKittyOpening']()); }, 'updateKittyOpening': function() { if (!ig['wm']) { if (_SETTINGS['DeveloperBranding']['Splash']['Enabled']) { if (this['initTimer'] && 0x0 < this['initTimer']['delta']()) { this['initTimer'] = null; try { ig['soundHandler']['sfxPlayer']['play'](this['soundKey']); } catch (_0x47b4d3) { console['log'](_0x47b4d3); } this['kittyTimer'] = new ig['Timer'](0.15); } this['kittyTimer'] && 0x0 < this['kittyTimer']['delta']() && (0x7 > this['kittyAnim'] ? (this['kittyAnim']++, this['kittyTimer']['reset']()) : (this['kittyTimer'] = null, this['nextLevelTimer'] = new ig['Timer'](0x2))), this['nextLevelTimer'] && 0x0 < this['nextLevelTimer']['delta']() && (this['nextLevelTimer'] = null, ig['game']['director']['nextLevel'](), ig['system']['context']['globalAlpha'] = 0x1); } else ig['game']['director']['nextLevel'](), ig['system']['context']['globalAlpha'] = 0x1, this['kill'](); } }, 'drawKittyOpening': function() { var _0x48a4e9 = ig['system']['context']['createLinearGradient'](0x0, 0x0, 0x0, ig['system']['height']); _0x48a4e9['addColorStop'](0x0, '#ffed94'), _0x48a4e9['addColorStop'](0x1, '#ffcd85'), ig['system']['context']['fillStyle'] = _0x48a4e9, ig['system']['context']['fillRect'](0x0, 0x0, ig['system']['width'], ig['system']['height']), 0x0 <= this['kittyAnim'] && (this['kittyImage']['drawTile'](ig['system']['width'] / 0x2 - this['kittyImage']['width'] / 0x8, ig['system']['height'] / 0x2 - this['kittyImage']['height'] / 0x4, this['kittyAnim'], 0xda, 0x145), this['kittyTitleImage']['drawTile'](ig['system']['width'] / 0x2 - this['kittyTitleImage']['width'] / 0x2, ig['system']['height'] / 0x2 + this['kittyImage']['height'] / 0x4 + 0xa, this['kittyAnim'], 0x17c, 0x25)), ig['system']['context']['globalAlpha'] = 0x1; } }); }), ig['baked'] = !0x0, ig['module']('game.entities.pointer')['requires']('impact.entity')['defines'](function() { EntityPointer = ig['Entity']['extend']({ 'checkAgainst': ig['Entity']['TYPE']['BOTH'], 'size': new Vector2(0x1,0x1), 'isFirstPressed': !0x1, 'isPressed': !0x1, 'isReleased': !0x1, 'isHovering': !0x1, 'hoveringItem': null, 'objectArray': [], 'clickedObjectList': [], 'ignorePause': !0x0, 'zIndex': 0x157c, 'check': function(_0xc5e677) { this['objectArray']['push'](_0xc5e677); }, 'clickObject': function(_0x505d84) { this['isFirstPressed'] && 'function' == typeof _0x505d84['clicked'] && (_0x505d84['clicked'](), this['addToClickedObjectList'](_0x505d84)), this['isPressed'] && !this['isReleased'] && 'function' == typeof _0x505d84['clicking'] && _0x505d84['clicking'](), this['isReleased'] && 'function' == typeof _0x505d84['released'] && (_0x505d84['released'](), this['removeFromClickedObjectList'](_0x505d84)); }, 'refreshPos': function() { this['pos'] = ig['game']['io']['getClickPos'](); }, 'update': function() { this['parent'](), this['refreshPos'](); var _0x482b81 = null , _0x370941 = -0x1; for (a = this['objectArray']['length'] - 0x1; -0x1 < a; a--) this['objectArray'][a]['zIndex'] > _0x370941 && (_0x370941 = this['objectArray'][a]['zIndex'], _0x482b81 = this['objectArray'][a]); if (null != _0x482b81) null != this['hoveringItem'] ? this['hoveringItem'] != _0x482b81 && ('function' == typeof this['hoveringItem']['leave'] && this['hoveringItem']['leave'](), 'function' == typeof _0x482b81['over'] && _0x482b81['over']()) : 'function' == typeof _0x482b81['over'] && _0x482b81['over'](), this['hoveringItem'] = _0x482b81, this['clickObject'](_0x482b81), this['objectArray'] = []; else { if (null != this['hoveringItem'] && 'function' == typeof this['hoveringItem']['leave'] && (this['hoveringItem']['leave'](), this['hoveringItem'] = null), this['isReleased']) { for (_0x482b81 = 0x0; _0x482b81 < this['clickedObjectList']['length']; _0x482b81++) _0x370941 = this['clickedObjectList'][_0x482b81], 'function' == typeof _0x370941['releasedOutside'] && _0x370941['releasedOutside'](); this['clickedObjectList'] = []; } } this['isFirstPressed'] = ig['input']['pressed']('click'), this['isReleased'] = ig['input']['released']('click'), this['isPressed'] = ig['input']['state']('click'); }, 'addToClickedObjectList': function(_0x4240bd) { this['clickedObjectList']['push'](_0x4240bd); }, 'removeFromClickedObjectList': function(_0x320fb3) { for (var _0x147c3d = [], _0x40063a = 0x0; _0x40063a < this['clickedObjectList']['length']; _0x40063a++) { var _0x8f37bc = this['clickedObjectList'][_0x40063a]; _0x8f37bc != _0x320fb3 && _0x147c3d['push'](_0x8f37bc); } this['clickedObjectList'] = _0x147c3d; } }); }), ig['baked'] = !0x0, ig['module']('game.entities.pointer-selector')['requires']('game.entities.pointer')['defines'](function() { EntityPointerSelector = EntityPointer['extend']({ 'zIndex': 0x3e8, '_wmDrawBox': !0x0, '_wmBoxColor': 'rgba(0,\x200,\x20255,\x200.7)', 'size': { 'x': 0x14, 'y': 0x14 }, 'init': function(_0x5a868d, _0x572f5e, _0xc4cd2f) { this['parent'](_0x5a868d, _0x572f5e, _0xc4cd2f); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.select')['requires']('impact.entity')['defines'](function() { EntitySelect = ig['Entity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'checkAgainst': ig['Entity']['TYPE']['A'], 'collides': ig['Entity']['COLLIDES']['NEVER'], 'canSelect': !0x1, 'canSelectTimerDuration': 0.35, 'zIndex': 0x1869f, 'isHovering': !0x1, 'isSelected': !0x1, 'init': function(_0x5e1eab, _0x28ec4a, _0x3bddeb) { this['parent'](_0x5e1eab, _0x28ec4a, _0x3bddeb), this['canSelectTimer'] = new ig['Timer'](this['canSelectTimerDuration']); }, 'doesClickableLayerExist': function(_0x69eaf2) { for (k in dynamicClickableEntityDivs) if (k == _0x69eaf2) return !0x0; return !0x1; }, 'checkClickableLayer': function(_0x531074, _0x346eed, _0x134107) { 'undefined' == typeof wm && (this['doesClickableLayerExist'](_0x531074) ? (ig['game']['showOverlay']([_0x531074]), $('#' + _0x531074)['find']('[href]')['attr']('href', _0x346eed)) : this['createClickableOutboundLayer'](_0x531074, _0x346eed, 'media/graphics/misc/invisible.png', _0x134107)); }, 'createClickableOutboundLayer': function(_0x5a89f7, _0x299642, _0x4d9a50, _0x3a9eda) { var _0x232e42 = ig['$new']('div'); _0x232e42['id'] = _0x5a89f7, document['body']['appendChild'](_0x232e42), $('#' + _0x232e42['id'])['css']('float', 'left'), $('#' + _0x232e42['id'])['css']('width', this['size']['x'] * multiplier), $('#' + _0x232e42['id'])['css']('height', this['size']['y'] * multiplier), $('#' + _0x232e42['id'])['css']('position', 'absolute'); var _0x4f00ae = w / 0x2 - destW / 0x2 , _0x5128b0 = h / 0x2 - destH / 0x2; w == mobileWidth ? ($('#' + _0x232e42['id'])['css']('left', this['pos']['x']), $('#' + _0x232e42['id'])['css']('top', this['pos']['y'])) : ($('#' + _0x232e42['id'])['css']('left', _0x4f00ae + this['pos']['x'] * multiplier), $('#' + _0x232e42['id'])['css']('top', _0x5128b0 + this['pos']['y'] * multiplier)), _0x3a9eda ? $('#' + _0x232e42['id'])['html']('') : $('#' + _0x232e42['id'])['html'](''), dynamicClickableEntityDivs[_0x5a89f7] = {}, dynamicClickableEntityDivs[_0x5a89f7]['width'] = $('#' + _0x232e42['id'])['width'](), dynamicClickableEntityDivs[_0x5a89f7]['height'] = $('#' + _0x232e42['id'])['height'](), dynamicClickableEntityDivs[_0x5a89f7]['entity_pos_x'] = this['pos']['x'], dynamicClickableEntityDivs[_0x5a89f7]['entity_pos_y'] = this['pos']['y']; }, 'hovered': function() { this['isHovering'] = !0x0, this['dehoverOthers'](); }, 'dehoverOthers': function() { var _0x36c28c = ig['game']['getEntitiesByType'](EntitySelect); for (i = 0x0; i < _0x36c28c['length']; i++) _0x36c28c[i] != this && (_0x36c28c[i]['isHovering'] = !0x1); }, 'deselectOthers': function() { var _0x21ba8f = ig['game']['getEntitiesByType'](EntitySelect); for (i = 0x0; i < _0x21ba8f['length']; i++) _0x21ba8f[i] != this && (_0x21ba8f[i]['isSelected'] = !0x1); }, 'update': function() { this['parent'](), this['canSelectTimer'] && 0x0 < this['canSelectTimer']['delta']() && (this['canSelect'] = !0x0, this['canSelectTimer'] = null); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.controllers.text-drawer')['requires']('impact.entity')['defines'](function() { EntityTextDrawer = ig['Entity']['extend']({ 'zIndex': 0xbba, 'init': function(_0x4d4ed0, _0x9a7c9a, _0x14be55) { this['parent'](_0x4d4ed0, _0x9a7c9a, _0x14be55); }, 'textDraw': function(_0x21f72b) { var _0x455818 = _0x21f72b['rot'] ? _0x21f72b['rot'] : 0x0 , _0x33acf2 = _0x21f72b['tx'] ? _0x21f72b['tx'] : 0x0 , _0x4dcea7 = _0x21f72b['x'] ? _0x21f72b['x'] : 0x0 , _0x848e5e = _0x21f72b['y'] ? _0x21f72b['y'] : 0x0 , _0x125fd2 = void 0x0 == _0x21f72b['scX'] ? 0x1 : _0x21f72b['scX'] , _0x2ccd9e = void 0x0 == _0x21f72b['scY'] ? 0x1 : _0x21f72b['scY'] , _0x2d1fd7 = void 0x0 == _0x21f72b['scX'] ? 0x1 : _0x21f72b['scX'] , _0x3e7d7a = void 0x0 == _0x21f72b['scY'] ? 0x1 : _0x21f72b['scY'] , _0x23c4dd = _0x21f72b['stroke'] ? _0x21f72b['stroke'] : !0x1 , _0x7da63e = void 0x0 == _0x21f72b['strokeAlp'] ? 0x1 : _0x21f72b['strokeAlp'] , _0x199b28 = _0x21f72b['strokeColour'] ? _0x21f72b['strokeColour'] : 'black' , _0x23ce26 = void 0x0 == _0x21f72b['alp'] ? 0x1 : _0x21f72b['alp'] , _0x54c237 = _0x21f72b['col'] ? _0x21f72b['col'] : this['ctx']['fillStyle'] , _0xe6e19d = _0x21f72b['font'] || 'fire' , _0x16dd1 = _0x21f72b['px'] || 0xa , _0x21f605 = _0x21f72b['strokeLine'] || 0x3 , _0xd95847 = _0x21f72b['followScreen'] || !0x0 , _0x50ab68 = _0x21f72b['align'] || 'center'; if (0x0 != _0x23ce26) { var _0x406a99 = _0x21f72b['ctx'] || ig['system']['context']; this['ctxRef'] = _0x21f72b['ctx'] || ig['system']['context'], _0x406a99['font'] = _0x16dd1 + 'px\x20' + _0xe6e19d, void 0x0 != _0x21f72b['maxWidth'] && this['textW'](_0x33acf2) * _0x125fd2 > _0x21f72b['maxWidth'] && (_0x2d1fd7 = _0x21f72b['maxWidth'] / this['textW'](_0x33acf2), _0x3e7d7a = _0x2ccd9e / _0x125fd2 * _0x2d1fd7), 'left' == _0x50ab68 ? _0x4dcea7 += 0.5 * this['textW'](_0x33acf2) * _0x2d1fd7 : 'right' == _0x50ab68 && (_0x4dcea7 -= 0.5 * this['textW'](_0x33acf2) * _0x2d1fd7), _0x406a99['save'](), _0x21f72b = _0x406a99['measureText']('M')['width'] * _0x3e7d7a, !0x0 == _0xd95847 ? _0x406a99['translate']((_0x4dcea7 - ig['game']['screen']['x']) * ig['system']['scale'], (_0x848e5e - ig['game']['screen']['y']) * ig['system']['scale']) : _0x406a99['translate'](_0x4dcea7, _0x848e5e), _0x406a99['scale'](_0x2d1fd7, _0x3e7d7a), _0x406a99['rotate'](_0x455818 ? 0x2 * Math['PI'] / 0x168 * _0x455818 : 0x0), _0x455818 = 0.4 * _0x21f72b, _0x406a99['textBaseline'] = 'alphabetic', !0x0 == _0x23c4dd && (_0x406a99['fillStyle'] = _0x199b28, _0x406a99['globalAlpha'] = _0x7da63e, _0x406a99['lineWidth'] = _0x21f605, _0x406a99['lineCap'] = 'round', _0x406a99['lineJoin'] = 'round', _0x406a99['strokeStyle'] = _0x199b28, _0x406a99['strokeText'](_0x33acf2, -this['textW'](_0x33acf2) / 0x2, _0x455818 + 0.05 * _0x16dd1), _0x406a99['fillText'](_0x33acf2, -this['textW'](_0x33acf2) / 0x2, _0x455818 + 0.05 * _0x16dd1), _0x406a99['strokeText'](_0x33acf2, -this['textW'](_0x33acf2) / 0x2, _0x455818), _0x406a99['fillText'](_0x33acf2, -this['textW'](_0x33acf2) / 0x2, _0x455818)), _0x406a99['fillStyle'] = _0x54c237, _0x406a99['globalAlpha'] = _0x23ce26, _0x406a99['fillText'](_0x33acf2, -this['textW'](_0x33acf2) / 0x2, _0x455818), _0x406a99['restore'](); } }, 'textW': function(_0xc8a219, _0x69f4f6) { this['textSet'](_0x69f4f6); var _0x61c5e8 = _0x61c5e8 || ig['system']['context']; return Math['floor'](_0x61c5e8['measureText'](_0xc8a219)['width']); }, 'textSet': function(_0x1e2a52, _0x5626c6, _0x3bf298, _0x1ca16e) { void 0x0 != _0x1e2a52 && (this['ctxRef'] = _0x1ca16e = _0x1ca16e || ig['system']['context'], _0x1ca16e['font'] = _0x1e2a52 + 'px\x20' + (_0x3bf298 || 'fire'), _0x5626c6 && (_0x1ca16e['fillStyle'] = _0x5626c6)); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.controllers.game-control')['requires']('impact.entity')['defines'](function() { EntityGameControl = ig['Entity']['extend']({ 'uiControl': null, 'pointer': null, 'player': null, 'curScore': 0x0, 'curBullets': 0x3, 'curBulletsInGame': 0x0, 'curEnemies': 0x1, 'introPauseDur': 0x2, 'gameOver': !0x1, 'gameOver_countdown': 0x3, 'gameOver_type': 0x0, 'gameOver_stars': 0x0, 'init': function(_0x4a6927, _0x5ddd8c, _0x3981d9) { this['parent'](_0x4a6927, _0x5ddd8c, _0x3981d9); if (!ig['global']['wm']) { ig['poki']['stopGameplay'](); if (!this['firstGameplay']) { this['firstGameplay'] = !0x0; try { ig['poki']['showAd'](function() { ig['poki']['startGameplay'](); }); } catch (_0x4446d2) {} } (this['pointer'] = ig['game']['getEntitiesByType'](EntityPointerSelector)[0x0]) || (this['pointer'] = ig['game']['spawnEntity'](EntityPointerSelector, 0x32, 0x32)), this['uiControl'] = ig['game']['spawnEntity'](EntityGameControlUi, 0x0, 0x0, { 'gameControl': this }), this['curBullets'] = ig['game']['lvl_bullets'][ig['game']['curStage']][ig['game']['curLevelFromStage'] - 0x1], ig['game']['isGamePaused'] = !0x0, ig['game']['box2dPaused'] = !0x1, ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['lvlStart']), ig['soundHandler']['bgmPlayer']['stop'](ig['soundHandler']['bgmPlayer']['soundList']['background']); } }, 'ready': function() { this['curEnemies'] = 0x0; for (var _0x4acb51 = ig['game']['entities'], _0x4650ea = 0x0; _0x4650ea < _0x4acb51['length']; _0x4650ea++) 'enemy' === _0x4acb51[_0x4650ea]['classify'] && this['curEnemies']++; this['player'] = ig['game']['getEntitiesByType'](EntityPlayer)[0x0]; }, 'update': function() { this['parent'](); if (!this['gameOver'] && (0x0 < this['introPauseDur'] && (this['introPauseDur'] -= ig['system']['tick'], 0x0 >= this['introPauseDur'] && (ig['game']['isGamePaused'] = !0x1, ig['game']['box2dPaused'] = !0x1, this['uiControl']['btnPause']['isEnabled'] = !0x0)), !ig['game']['isGamePaused'] && (0x0 >= this['curBullets'] && 0x0 >= this['curBulletsInGame'] || 0x0 >= this['curEnemies']) && !this['gameOver'])) this['gameOver_countdown'] -= ig['system']['tick'], 0x0 >= this['gameOver_countdown'] && this['endGame'](); }, 'gainScore': function(_0x4a9f75) { this['curScore'] += _0x4a9f75, this['uiControl']['updateScore'](); }, 'endGame': function() { if (!this['gameOver']) { try { ig['poki']['stopGameplay'](); } catch (_0x10aac0) {} this['gameOver'] = !0x0; try { ig['poki']['showAd'](); } catch (_0x26523b) {} this['uiControl']['btnPause']['isEnabled'] = !0x1; if (0x0 < this['curEnemies']) this['gameOver_type'] = 0x3, this['uiControl']['btnRetry']['isHidden'] = !0x1, this['uiControl']['btnRetry']['pos']['y'] = 0x14e, ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['lvlLose']); else { try { ig['poki']['happyTime'](0.3); } catch (_0x1adf8d) {} this['uiControl']['gameOver_showUiDelay'] = 0.8; for (var _0x24af3c = 0x1; _0x24af3c <= this['curBullets']; _0x24af3c++) ig['game']['spawnEntity'](EntityScorePop, 0x82 + 0x17 * _0x24af3c, 0x0 == _0x24af3c % 0x2 ? 0x1db : 0x1c2, { 'type': 0x4, 'isBulletScore': !0x0, 'delay': 0.5 * _0x24af3c - 0.5 }), this['uiControl']['gameOver_showUiDelay'] += 0.5; } } }, 'saveScore': function() { ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['lvlWin']); if (ig['game']['sessionData']['lvlScore'][ig['game']['curStage']][ig['game']['curLevelFromStage'] - 0x1] < this['curScore']) { try { ig['poki']['happyTime'](0.6); } catch (_0x44dc9b) {} ig['game']['sessionData']['lvlScore'][ig['game']['curStage']][ig['game']['curLevelFromStage'] - 0x1] = this['curScore'], this['gameOver_type'] = 0x2; } else this['gameOver_type'] = 0x1; for (var _0xe38c7b = 0x1; 0x3 >= _0xe38c7b; _0xe38c7b++) this['curScore'] >= ig['game']['lvl_scoreNeeded'][ig['game']['curLevel'] - 0x1][_0xe38c7b] && (this['gameOver_stars'] = _0xe38c7b); this['gameOver_stars'] > ig['game']['sessionData']['lvlStars'][ig['game']['curStage']][ig['game']['curLevelFromStage'] - 0x1] && (ig['game']['sessionData']['lvlStars'][ig['game']['curStage']][ig['game']['curLevelFromStage'] - 0x1] = this['gameOver_stars']), 0xa <= ig['game']['curLevelFromStage'] && (ig['game']['sessionData']['episodeUnlocked'][ig['game']['curStage'] + 0x1] = 0x1), ig['game']['curLevelFromStage'] < ig['game']['sessionData']['lvlUnlocked'][ig['game']['curStage']]['length'] && (ig['game']['sessionData']['lvlUnlocked'][ig['game']['curStage']][ig['game']['curLevelFromStage']] = 0x1), ig['game']['saveAll'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.controllers.game-control-ui')['requires']('impact.entity')['defines'](function() { EntityGameControlUi = ig['Entity']['extend']({ 'zIndex': 0xc1c, 'background': null, 'gameControl': null, 'textDrawer': null, 'btnPause': null, 'btnRetry': null, 'btnNext': null, 'crosshairImg': new ig['Image']('media/graphics/game/ui/crosshair.png'), 'bulletUiImg': new ig['Image']('media/graphics/game/ui/bullet-ui.png'), 'star': new ig['Image']('media/graphics/game/ui/star-big.png'), 'starEmpty': new ig['Image']('media/graphics/game/ui/star-big-empty.png'), 'curScore_toShow': 0x0, 'gameOver_showUiDelay': 0x0, 'init': function(_0x454a18, _0x30f82a, _0x68d943) { this['parent'](_0x454a18, _0x30f82a, _0x68d943), this['background'] = ig['game']['spawnEntity'](EntityBackground, 0x0, 0x0), this['textDrawer'] = ig['game']['spawnEntity'](EntityTextDrawer, 0x0, 0x0), this['btnPause'] = ig['game']['spawnEntity'](EntityBtnSettings, 0x362, 0xc), this['btnPause']['isEnabled'] = !0x1, this['btnNext'] = ig['game']['spawnEntity'](EntityBtnNext, 0x178, 0x130), this['btnNext']['isHidden'] = !0x0, this['btnRetry'] = ig['game']['spawnEntity'](EntityBtnRetry, 0x178, 0x1a2), this['btnRetry']['isHidden'] = !0x0; }, 'update': function() { this['parent'](); if (0x0 < this['gameOver_showUiDelay'] && !ig['game']['isGamePaused'] && (this['gameOver_showUiDelay'] -= ig['system']['tick'], 0x0 >= this['gameOver_showUiDelay'])) { this['btnRetry']['isHidden'] = !0x1, this['btnNext']['isHidden'] = !0x1; for (var _0x2aa884 = ig['game']['entities'], _0x55316b = 0x0; _0x55316b < _0x2aa884['length']; _0x55316b++) 'missile' === _0x2aa884[_0x55316b]['classify'] && _0x2aa884[_0x55316b]['destroy'](); this['gameControl']['saveScore'](); } }, 'updateScore': function() { this['tween']({ 'curScore_toShow': this['gameControl']['curScore'] }, 0.5, { 'easing': ig['Tween']['Easing']['Cubic']['EaseOut'] })['start'](); }, 'draw': function() { this['gameControl']['player']['aiming'] && !this['gameControl']['gameOver'] && this['crosshairImg']['draw'](this['gameControl']['pointer']['pos']['x'] - 0x42, this['gameControl']['pointer']['pos']['y'] - 0x3c); var _0x40120f = ig['system']['context']; _0x40120f['save'](), this['textDrawer']['textDraw']({ 'tx': Math['floor'](this['curScore_toShow']), 'font': 'font2', 'px': 0x2d, 'align': 'center', 'x': 0x1e0, 'y': 0x203, 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 }); for (var _0x5413d7 = 0x1; _0x5413d7 <= this['gameControl']['curBullets']; _0x5413d7++) this['bulletUiImg']['draw'](0x92 + 0x17 * _0x5413d7, 0x1ea); 0x0 < this['gameControl']['introPauseDur'] && (_0x40120f['globalAlpha'] = 0.5, _0x40120f['beginPath'](), _0x40120f['rect'](0x0, 0x0, ig['system']['width'], ig['system']['height']), _0x40120f['fillStyle'] = '#000000', _0x40120f['fill'](), _0x40120f['globalAlpha'] = 0x1, this['textDrawer']['textDraw']({ 'tx': _STRINGS['Game']['Level'] + '\x20' + (ig['game']['curLevel'] - 0x1e * ig['game']['curStage']), 'font': 'font2', 'px': 0x32, 'align': 'center', 'x': 0x1e0, 'y': 0x53, 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 }), this['textDrawer']['textDraw']({ 'tx': _STRINGS['Game']['HighScore'] + '\x20' + ig['game']['sessionData']['lvlScore'][ig['game']['curStage']][ig['game']['curLevelFromStage'] - 0x1], 'font': 'font2', 'px': 0x32, 'align': 'center', 'x': 0x1e0, 'y': 0x89, 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 })), this['gameControl']['gameOver'] && 0x0 >= this['gameOver_showUiDelay'] && (_0x40120f['globalAlpha'] = 0.5, _0x40120f['beginPath'](), _0x40120f['rect'](0x0, 0x0, ig['system']['width'], ig['system']['height']), _0x40120f['fillStyle'] = '#000000', _0x40120f['fill'](), 0x1 === this['gameControl']['gameOver_type'] ? this['textDrawer']['textDraw']({ 'tx': _STRINGS['Game']['LevelClear'], 'font': 'font2', 'px': 0x32, 'align': 'center', 'x': 0x1e0, 'y': 0x53, 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 }) : 0x2 === this['gameControl']['gameOver_type'] ? this['textDrawer']['textDraw']({ 'tx': _STRINGS['Game']['HighScore'], 'font': 'font2', 'px': 0x32, 'align': 'center', 'x': 0x1e0, 'y': 0x53, 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 }) : this['textDrawer']['textDraw']({ 'tx': _STRINGS['Game']['YouFailed'], 'font': 'font2', 'px': 0x32, 'align': 'center', 'x': 0x1e0, 'y': 0x53, 'col': 'red', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 }), this['textDrawer']['textDraw']({ 'tx': this['gameControl']['curScore'], 'font': 'font2', 'px': 0x37, 'align': 'center', 'x': 0x1e0, 'y': 0x96, 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 }), _0x40120f['globalAlpha'] = 0x1, 0x1 <= this['gameControl']['gameOver_stars'] ? this['star']['draw'](0x172, 0xdc) : this['starEmpty']['draw'](0x172, 0xdc), 0x2 <= this['gameControl']['gameOver_stars'] ? this['star']['draw'](0x1c2, 0xdc) : this['starEmpty']['draw'](0x1c2, 0xdc), 0x3 <= this['gameControl']['gameOver_stars'] ? this['star']['draw'](0x212, 0xdc) : this['starEmpty']['draw'](0x212, 0xdc)), _0x40120f['restore'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.controllers.home-control')['requires']('impact.entity')['defines'](function() { EntityHomeControl = ig['Entity']['extend']({ 'bg': new ig['Image']('media/graphics/game/ui/background.png'), 'zIndex': 0x0, 'pointer': null, 'btnPlay': null, 'btnSettings': null, 'btnFullScreen': null, 'init': function(_0x2dd6b9, _0x386410, _0x3fdded) { this['parent'](_0x2dd6b9, _0x386410, _0x3fdded), ig['global']['wm'] || (this['pointer'] = ig['game']['getEntitiesByType'](EntityPointerSelector)[0x0], this['pointer'] || (this['pointer'] = ig['game']['spawnEntity'](EntityPointerSelector, 0x32, 0x32)), this['btnPlay'] = ig['game']['spawnEntity'](EntityBtnPlay, 0x156, 0x154), this['btnSettings'] = ig['game']['spawnEntity'](EntityBtnSettings, 0x362, 0xc), ig['soundHandler']['bgmPlayer']['play'](ig['soundHandler']['bgmPlayer']['soundList']['background'], !0x1), this['btnFullScreen'] = ig['game']['spawnEntity'](ig['FullscreenButton'], 0xb, 0xc, { 'enterImage': new ig['Image']('media/graphics/game/ui/enter-fullscreen.png'), 'exitImage': new ig['Image']('media/graphics/game/ui/exit-fullscreen.png') })); }, 'update': function() {}, 'draw': function() { this['bg']['draw'](0x0, 0x0); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.controllers.stage-select-control')['requires']('impact.entity')['defines'](function() { EntityStageSelectControl = ig['Entity']['extend']({ 'bg': new ig['Image']('media/graphics/game/ui/background-2.png'), 'scoreIconImg': new ig['Image']('media/graphics/game/ui/score-icon.png'), 'starIconImg': new ig['Image']('media/graphics/game/ui/star-level2.png'), 'pointer': null, 'textDrawer': null, 'btnPlay': null, 'btnPrev': null, 'btnSettings': null, 'btnStage': [], 'allLevelsCount': 0x78, 'curLevel': 0x0, 'allStarsCount': 0x168, 'curStars': 0x0, 'allStarsCount_perStage': 0x5a, 'curStars_perStage': [0x0, 0x0, 0x0, 0x0], 'curScore': 0x0, 'curScore_perStage': [0x0, 0x0, 0x0, 0x0], 'init': function(_0x42ec9e, _0x4d0983, _0xf86eaf) { this['parent'](_0x42ec9e, _0x4d0983, _0xf86eaf); if (!ig['global']['wm']) { (this['pointer'] = ig['game']['getEntitiesByType'](EntityPointerSelector)[0x0]) || (this['pointer'] = ig['game']['spawnEntity'](EntityPointerSelector, 0x32, 0x32)), this['textDrawer'] = ig['game']['spawnEntity'](EntityTextDrawer, 0x0, 0x0), this['btnPrev'] = ig['game']['spawnEntity'](EntityBtnBack, 0xf, 0xa), this['btnSettings'] = ig['game']['spawnEntity'](EntityBtnSettings, 0x362, 0xc); for (_0xf86eaf = this['curLevel'] = 0x0; 0x4 > _0xf86eaf; _0xf86eaf++) { _0x4d0983 = 0x1e; for (_0x42ec9e = 0x0; _0x42ec9e < _0x4d0983; _0x42ec9e++) 0x1 === ig['game']['sessionData']['lvlUnlocked'][_0xf86eaf][_0x42ec9e] && this['curLevel']++; } _0xf86eaf = ig['game']['sessionData']['lvlStars']['length']; for (_0x4d0983 = 0x0; _0x4d0983 < _0xf86eaf; ) { for (_0x42ec9e = 0x0; _0x42ec9e < ig['game']['sessionData']['lvlStars'][_0x4d0983]['length']; _0x42ec9e++) this['curStars'] += ig['game']['sessionData']['lvlStars'][_0x4d0983][_0x42ec9e], this['curStars_perStage'][_0x4d0983] += ig['game']['sessionData']['lvlStars'][_0x4d0983][_0x42ec9e], this['curScore'] += ig['game']['sessionData']['lvlScore'][_0x4d0983][_0x42ec9e], this['curScore_perStage'][_0x4d0983] += ig['game']['sessionData']['lvlScore'][_0x4d0983][_0x42ec9e]; _0x4d0983++; } this['btnStage']['push'](ig['game']['spawnEntity'](EntityBtnStageSelect, 0x16, 0x96, { 'stageNum': 0x0, 'mainWindow': this, 'stageScore': this['curScore_perStage'][0x0], 'stageStars': this['curStars_perStage'][0x0], 'stageStars_Max': this['allStarsCount_perStage'] })), this['btnStage']['push'](ig['game']['spawnEntity'](EntityBtnStageSelect, 0x104, 0x96, { 'stageNum': 0x1, 'mainWindow': this, 'stageScore': this['curScore_perStage'][0x1], 'stageStars': this['curStars_perStage'][0x1], 'stageStars_Max': this['allStarsCount_perStage'] })), this['btnStage']['push'](ig['game']['spawnEntity'](EntityBtnStageSelect, 0x1f4, 0x96, { 'stageNum': 0x2, 'mainWindow': this, 'stageScore': this['curScore_perStage'][0x2], 'stageStars': this['curStars_perStage'][0x2], 'stageStars_Max': this['allStarsCount_perStage'] })), this['btnStage']['push'](ig['game']['spawnEntity'](EntityBtnStageSelect, 0x2e4, 0x96, { 'stageNum': 0x3, 'mainWindow': this, 'stageScore': this['curScore_perStage'][0x3], 'stageStars': this['curStars_perStage'][0x3], 'stageStars_Max': this['allStarsCount_perStage'] })); } }, 'update': function() {}, 'draw': function() { var _0x5ee6cc = ig['system']['context']; _0x5ee6cc['save'](), this['bg']['draw'](0x0, 0x0), this['textDrawer']['textDraw']({ 'tx': _STRINGS['Game']['Levels'] + '\x20' + this['curLevel'] + '/' + this['allLevelsCount'], 'font': 'font2', 'px': 0x1e, 'x': 0x8e, 'y': 0x1c, 'align': 'left', 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x3, 'scX': 0x1, 'scY': 0x1 }), this['textDrawer']['textDraw']({ 'tx': this['curScore'], 'font': 'font2', 'px': 0x1e, 'x': 0x1d6, 'y': 0x1c, 'align': 'left', 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x3, 'scX': 0x1, 'scY': 0x1 }), this['textDrawer']['textDraw']({ 'tx': this['curStars'] + '/' + this['allStarsCount'], 'font': 'font2', 'px': 0x1e, 'x': 0x2bc, 'y': 0x1c, 'align': 'left', 'col': '#fda100', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x3, 'scX': 0x1, 'scY': 0x1 }), this['scoreIconImg']['draw'](0x19f, 0xd), this['starIconImg']['draw'](0x28a, 0xa), _0x5ee6cc['restore'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.player')['requires']('plugins.box2d.entity')['defines'](function() { EntityPlayer = ig['Entity']['extend']({ 'zIndex': 0x3, 'imgBody': new ig['Image']('media/graphics/game/player/player-body.png'), 'imgHand': new ig['Image']('media/graphics/game/player/player-arm.png'), 'armRotation': 0x0, 'armAngle': 0xb4, 'aiming': !0x1, 'gameControl': null, 'init': function(_0x26dcbb, _0xfb75d7, _0xab01de) { this['parent'](_0x26dcbb, _0xfb75d7, _0xab01de); }, 'ready': function() { this['gameControl'] = ig['game']['getEntitiesByType'](EntityGameControl)[0x0]; }, 'update': function() { this['parent'](); if (!ig['global']['wm'] && !ig['game']['isGamePaused'] && (ig['input']['pressed']('click') && this['aim'](), this['aiming'])) { var _0x885979 = ig['game']['getEntitiesByType'](EntityPointerSelector)[0x0]; this['armAngle'] = 0xb4 * Math['atan2'](this['pos']['y'] - _0x885979['pos']['y'], this['pos']['x'] - _0x885979['pos']['x']) / Math['PI'], ig['input']['released']('click') && this['shoot'](); } }, 'aim': function() { !ig['game']['isGamePaused'] && !(0x0 >= this['gameControl']['curBullets']) && (!(0x0 >= this['gameControl']['curEnemies']) && !this['gameControl']['gameOver']) && (this['aiming'] = !0x0); }, 'shoot': function() { !ig['game']['getEntitiesByType'](EntitySettings)[0x0] && !this['gameControl']['uiControl']['btnPause']['isClicking'] && (!ig['game']['isGamePaused'] && !(0x0 >= this['gameControl']['curBullets']) && !(0x0 >= this['gameControl']['curEnemies'])) && (this['aiming'] = !0x1, ig['game']['spawnEntity'](EntityBullet, this['pos']['x'], this['pos']['y']), ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['gunShot']), ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['gunLoad']), ig['game']['infiniteBullets'] || this['gameControl']['curBullets']--, this['gameControl']['curBulletsInGame']++); }, 'draw': function() { this['parent'](); if (!ig['global']['wm']) { ig['game']['getEntitiesByType'](EntityPointerSelector); var _0x5334cb = this['armAngle']; 0x5a > _0x5334cb && 0x0 < _0x5334cb && (_0x5334cb = 0x5a), -0x96 < _0x5334cb && 0x0 > _0x5334cb && (_0x5334cb = -0x96); var _0x5334cb = (_0x5334cb - 0xb4) * (Math['PI'] / 0xb4) , _0x2dc977 = ig['system']['context']; _0x2dc977['save'](), _0x2dc977['translate'](this['pos']['x'] + 0x21, this['pos']['y'] + 0x22), _0x2dc977['rotate'](_0x5334cb), this['imgHand']['drawImageCtx'](_0x2dc977, -0x5, -0xb), _0x2dc977['restore'](), _0x2dc977['translate'](0x0, 0x0), _0x2dc977['rotate'](0x0), this['imgBody']['drawImageCtx'](_0x2dc977, this['pos']['x'], this['pos']['y']), _0x2dc977['restore'](); } } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.zombie')['requires']('plugins.box2d.entity')['defines'](function() { EntityZombie = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0x0, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x2, 'init': function(_0x264de2, _0x5db3e2, _0x3779f6) { this['parent'](_0x264de2, _0x5db3e2, _0x3779f6); }, 'update': function() { this['parent'](); }, 'draw': function() { this['parent'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.zombie-body-part')['requires']('plugins.box2d.entity', 'game.entities.objects.zombie')['defines'](function() { EntityZombieBodyPart = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0x0, 'friction': 0x0, 'restitution': 0x0, 'anim_FrameCount': [0x0], 'anim_FrameSpeed': 0.15, 'size': { 'x': 0x1, 'y': 0x1 }, 'zIndex': 0x3, 'parentZombie': null, 'bodyPart': !0x0, 'densityOnRagdoll': 0.01, 'anim_FrameCount_ragdoll': [0x0], 'anim_FrameSpeed_ragdoll': 0.15, 'classify': 'bodyPart', 'init': function(_0x25bb1b, _0x312e9e, _0x5c20e8) { this['addAnim']('idle', this['anim_FrameSpeed'], this['anim_FrameCount']), this['anims']['ragdoll'] = new ig['Animation'](this['animSheet'],this['anim_FrameSpeed_ragdoll'],this['anim_FrameCount_ragdoll']), this['parent'](_0x25bb1b, _0x312e9e, _0x5c20e8), this['body']['GetFixtureList']()['m_filter']['groupIndex'] = -0x1; }, 'update': function() { this['parent'](); }, 'draw': function() { this['parent'](); }, 'preSolve': function(_0xea4f86, _0xf6fd77) { _0xea4f86['bodyPart'] && _0xf6fd77['SetEnabled'](!0x1), this['arms'] && this['parentZombie']['isAlive'] ? _0xf6fd77['SetEnabled'](!0x1) : _0xea4f86['classify'] && ('missile' == _0xea4f86['classify'] || 'sfx' == _0xea4f86['classify'] || 'enemy' == _0xea4f86['classify']) && _0xf6fd77['SetEnabled'](!0x1); }, 'startRagdoll': function() { this['body']['GetFixtureList']()['m_density'] = this['densityOnRagdoll'], this['currentAnim'] = this['anims']['ragdoll'], this['body']['ResetMassData'](); } }), EntityZombiePartHead = EntityZombieBodyPart['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/zombie-head.png',0x1a,0x1c), 'size': { 'x': 0x1a, 'y': 0x1c }, 'anim_FrameCount': [0x0, 0x1, 0x2, 0x3], 'anim_FrameCount_ragdoll': [0x0], 'zIndex': 0x8 }), EntityZombiePartBloodHead = EntityZombieBodyPart['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/blood-attach.png',0x40,0x40), 'size': { 'x': 0x40, 'y': 0x40 }, 'anim_FrameSpeed': 0.1, 'anim_FrameCount': [0xc], 'densityOnRagdoll': 0x0, 'anim_FrameSpeed_ragdoll': 0.1, 'anim_FrameCount_ragdoll': [0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf], 'zIndex': 0x9, 'update': function() { this['parent'](), 0xf <= this['currentAnim']['frame'] && this['kill'](); }, 'preSolve': function(_0x4de022, _0x1f0fc3) { _0x1f0fc3['SetEnabled'](!0x1); } }), EntityZombiePartBody = EntityZombieBodyPart['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/zombie-chest.png',0x1e,0x26), 'size': { 'x': 0x1e, 'y': 0x26 }, 'zIndex': 0x4 }), EntityZombiePartLeftArm = EntityZombieBodyPart['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/zombie-arm-left.png',0x19,0x28), 'size': { 'x': 0x19, 'y': 0x28 }, 'zIndex': 0x3, 'arms': !0x0 }), EntityZombiePartRightArm = EntityZombieBodyPart['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/zombie-arm-right.png',0x23,0x1e), 'vertices': [{ 'x': -1.75, 'y': -1.5 }, { 'x': -0.62, 'y': -1.5 }, { 'x': -0.69, 'y': 1.52 }, { 'x': -1.75, 'y': 1.5 }], 'size': { 'x': 0x23, 'y': 0x1e }, 'zIndex': 0x5, 'arms': !0x0 }), EntityZombiePartLeftLeg = EntityZombieBodyPart['extend']({ 'box2dType': 0x2, 'vertices': [{ 'x': -0.08, 'y': -1.14 }, { 'x': 0.85, 'y': -1.6 }, { 'x': 0.5, 'y': 0.88 }, { 'x': -0.85, 'y': 1.6 }], 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/zombie-leg-left.png',0x11,0x20), 'size': { 'x': 0x11, 'y': 0x17 }, 'zIndex': 0x6 }), EntityZombiePartRightLeg = EntityZombieBodyPart['extend']({ 'box2dType': 0x2, 'vertices': [{ 'x': -0.8, 'y': -1.71 }, { 'x': 0.41, 'y': -0.62 }, { 'x': 0.8, 'y': 1.6 }, { 'x': -0.6, 'y': 0.57 }], 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/zombie-leg-right.png',0x10,0x20), 'size': { 'x': 0x10, 'y': 0x17 }, 'zIndex': 0x7 }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.zombie-normal')['requires']('plugins.box2d.entity', 'game.entities.objects.zombie', 'game.entities.objects.zombie-body-part')['defines'](function() { EntityZombieNormal = EntityZombie['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0x0, 'friction': 0x0, 'restitution': 0x0, 'size': { 'x': 0x2e, 'y': 0x46 }, 'vertices': [{ 'x': -3.15, 'y': -3.8 }, { 'x': 3.15, 'y': -3.8 }, { 'x': 3.15, 'y': 3.8 }, { 'x': -3.15, 'y': 3.8 }], 'zIndex': 0x3, 'bodyParts': [], 'bodyPart_head': null, 'bodyPart_body': null, 'bodyPart_armLeft': null, 'bodyPart_armRight': null, 'bodyPart_legLeft': null, 'bodyPart_legRight': null, 'bodyPart_bloodHead': null, 'joint_armLeft_body': null, 'joint_body_armRight': null, 'joint_body_legLeft': null, 'joint_body_legRight': null, 'joint_body_head': null, 'joint_body_bloodHead': null, 'joint_body_this': null, 'classify': 'enemy', 'hp': 0x1, 'isAlive': !0x0, 'checkDecapitate': !0x0, 'stayInPos': !0x1, 'init': function(_0x4332a0, _0x3ceb6a, _0x4a7c4e) { _0x4a7c4e['stayInPos'] && (this['dynamicType'] = 0x1), this['parent'](_0x4332a0, _0x3ceb6a, _0x4a7c4e), ig['global']['wm'] || (this['bodyPart_armLeft'] = ig['game']['spawnEntity'](EntityZombiePartLeftArm, this['pos']['x'], this['pos']['y'] + 0xd, { 'parentZombie': this }), this['bodyPart_body'] = ig['game']['spawnEntity'](EntityZombiePartBody, this['pos']['x'] + 0x14, this['pos']['y'] + 0xf, { 'parentZombie': this }), this['bodyPart_armRight'] = ig['game']['spawnEntity'](EntityZombiePartRightArm, this['pos']['x'] + 0x1f, this['pos']['y'] + 0xd, { 'parentZombie': this }), this['bodyPart_legLeft'] = ig['game']['spawnEntity'](EntityZombiePartLeftLeg, this['pos']['x'] + 0xc, this['pos']['y'] + 0x2d, { 'parentZombie': this }), this['bodyPart_legRight'] = ig['game']['spawnEntity'](EntityZombiePartRightLeg, this['pos']['x'] + 0x1f, this['pos']['y'] + 0x2d, { 'parentZombie': this }), this['bodyPart_head'] = ig['game']['spawnEntity'](EntityZombiePartHead, this['pos']['x'] + 0xc, this['pos']['y'], { 'parentZombie': this }), this['bodyPart_bloodHead'] = ig['game']['spawnEntity'](EntityZombiePartBloodHead, this['pos']['x'] + 0xc, this['pos']['y'], { 'parentZombie': this }), this['bodyParts']['push'](this['bodyPart_armLeft']), this['bodyParts']['push'](this['bodyPart_body']), this['bodyParts']['push'](this['bodyPart_armRight']), this['bodyParts']['push'](this['bodyPart_legLeft']), this['bodyParts']['push'](this['bodyPart_legRight']), this['bodyParts']['push'](this['bodyPart_head']), this['bodyParts']['push'](this['bodyPart_bloodHead'])); }, 'ready': function() { this['jointBodyParts'](); }, 'jointTwoBodies': function(_0x1a7d33, _0x5d9896, _0x5c1101, _0x406882, _0x2c0ea8, _0x2c68d4) { var _0x2264c0 = new Box2D['Dynamics']['Joints']['b2RevoluteJointDef'](); return _0x2264c0['bodyA'] = _0x1a7d33, _0x2264c0['bodyB'] = _0x5d9896, _0x2264c0['collideConnected'] = !0x1, _0x2264c0['enableLimit'] = !0x1, _0x2264c0['localAnchorA'] = new Box2D['Common']['Math']['b2Vec2'](_0x5c1101 * Box2D['SCALE'],_0x406882 * Box2D['SCALE']), _0x2264c0['localAnchorB'] = new Box2D['Common']['Math']['b2Vec2'](_0x2c0ea8 * Box2D['SCALE'],_0x2c68d4 * Box2D['SCALE']), _0x2264c0['referenceAngle'] = 0x0, ig['world']['CreateJoint'](_0x2264c0); }, 'jointBodyParts': function() { this['joint_armLeft_body'] = this['jointTwoBodies'](this['bodyPart_body']['body'], this['bodyPart_armLeft']['body'], 0x2, -0xa, 0x13, -0xc), this['joint_body_armRight'] = this['jointTwoBodies'](this['bodyPart_body']['body'], this['bodyPart_armRight']['body'], 0x1, -0xe, -0xf, -0xc), this['joint_body_legLeft'] = this['jointTwoBodies'](this['bodyPart_body']['body'], this['bodyPart_legLeft']['body'], -0x9, 0xe, 0x2, -0x7), this['joint_body_legRight'] = this['jointTwoBodies'](this['bodyPart_body']['body'], this['bodyPart_legRight']['body'], 0x7, 0xe, -0x2, -0x7), this['joint_body_head'] = this['jointTwoBodies'](this['bodyPart_body']['body'], this['bodyPart_head']['body'], -0xa, -0xe, 0x0, 0x9), this['joint_body_bloodHead'] = this['jointTwoBodies'](this['bodyPart_body']['body'], this['bodyPart_bloodHead']['body'], -0xa, -0xe, -0x7, 0x1b), this['joint_body_this'] = this['jointTwoBodies'](this['body'], this['bodyPart_body']['body'], 0x20, 0x26, 0x1e, 0x26); }, 'jointBodyParts_OnRagdoll': function() { ig['world']['DestroyJoint'](this['joint_armLeft_body']), this['joint_armLeft_body'] = this['jointTwoBodies'](this['bodyPart_body']['body'], this['bodyPart_armLeft']['body'], -0x4, -0x8, 0x13, -0xc); }, 'update': function() { this['parent'](), this['nextFrameKill'](); }, 'draw': function() { this['parent'](); }, 'beginContact': function(_0x5af7ce, _0x34556f) { if (_0x5af7ce['bodyPart']) _0x34556f['SetEnabled'](!0x1); else { if (_0x5af7ce['classify'] && this['isAlive'] && ('missile' == _0x5af7ce['classify'] && (_0x34556f['SetEnabled'](!0x1), this['toKill'] = !0x0, this['hitterPos'] = _0x5af7ce['body']['GetPosition'](), this['hitterAngle'] = _0x5af7ce['bulletAng']), 'object' == _0x5af7ce['classify'] && !_0x5af7ce['dontKill'])) { _0x34556f['SetEnabled'](!0x1), this['toKill'] = !0x0, this['hitterPos'] = _0x5af7ce['body']['GetPosition'](); var _0x1dfd26 = this['body']['GetPosition'](); this['hitterAngle'] = Math['atan2'](_0x1dfd26['y'] - this['hitterPos']['y'], _0x1dfd26['x'] - this['hitterPos']['x']), this['checkDecapitate'] = !0x1; } } }, 'startRagdoll': function(_0x342811, _0x579c7f) { for (var _0x20f5b4 = 0x0; _0x20f5b4 < this['bodyParts']['length']; _0x20f5b4++) this['bodyParts'][_0x20f5b4]['startRagdoll'](); _0x20f5b4 = 0x12 * Math['random']() + 0x4, _0x20f5b4 = new Box2D['Common']['Math']['b2Vec2'](_0x20f5b4 * Math['cos'](_0x579c7f),_0x20f5b4 * Math['sin'](_0x579c7f)), this['bodyPart_body']['body']['ApplyImpulse'](_0x20f5b4, this['bodyPart_body']['body']['GetPosition']()), ig['world']['DestroyJoint'](this['joint_body_this']), _0x20f5b4 = ig['game']['getEntitiesByType'](EntityGameControl)[0x0], this['jointBodyParts_OnRagdoll'](), this['checkDecapitate'] ? _0x342811['y'] / Box2D['SCALE'] <= this['pos']['y'] + 0x23 ? (this['decapitateHead'](_0x579c7f), _0x20f5b4['gainScore'](0x7d0), ig['game']['spawnEntity'](EntityScorePop, this['pos']['x'], this['pos']['y'], { 'type': 0x3 }), ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['zombieHitHead'])) : (ig['world']['DestroyJoint'](this['joint_body_bloodHead']), this['bodyPart_bloodHead']['kill'](), _0x20f5b4['gainScore'](0x3e8), ig['game']['spawnEntity'](EntityScorePop, this['pos']['x'], this['pos']['y'], { 'type': 0x1 }), ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['zombieHit'])) : (ig['world']['DestroyJoint'](this['joint_body_bloodHead']), this['bodyPart_bloodHead']['kill'](), _0x20f5b4['gainScore'](0x5dc), ig['game']['spawnEntity'](EntityScorePop, this['pos']['x'], this['pos']['y'], { 'type': 0x2 }), ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['zombieHit'])); }, 'decapitateHead': function(_0x502833) { ig['world']['DestroyJoint'](this['joint_body_head']); var _0x2770be = 0x4 * Math['random']() + 0x0; _0x502833 = new Box2D['Common']['Math']['b2Vec2'](_0x2770be * Math['cos'](_0x502833),_0x2770be * Math['sin'](_0x502833)), this['bodyPart_head']['body']['ApplyImpulse'](_0x502833, this['bodyPart_head']['body']['GetPosition']()), this['bodyPart_head']['body']['ApplyTorque'](0x168 * Math['random']() + 0x2d); }, 'preSolve': function(_0x5a1d63, _0xd0b43c) { _0x5a1d63['bodyPart'] && _0xd0b43c['SetEnabled'](!0x1); }, 'toKill': !0x1, 'hitterPos': null, 'hitterAngle': null, 'nextFrameKill': function() { if (this['toKill']) { this['isAlive'] = !0x1, ig['game']['spawnEntity'](EntityEffect, this['pos']['x'], this['pos']['y'], { 'effectType': 0x2 }), this['startRagdoll'](this['hitterPos'], this['hitterAngle']); var _0x27ba75 = ig['game']['getEntitiesByType'](EntityGameControl)[0x0]; _0x27ba75['curEnemies']--; if (0x0 >= _0x27ba75['curEnemies'] && (_0x27ba75 = ig['game']['getEntitiesByType'](EntityPlayer)[0x0])) _0x27ba75['aiming'] = !0x1; ig['world']['DestroyBody'](this['body']), this['kill'](); } } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.frame-test')['requires']('plugins.box2d.entity')['defines'](function() { EntityFrameTest = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x1, 'density': 0x0, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x5, 'frame': [new ig['AnimationSheet']('media/graphics/game/background/frame-bottom-1.png',0x48c,0x6c), new ig['AnimationSheet']('media/graphics/game/background/frame-top-1.png',0x48c,0x6c), new ig['AnimationSheet']('media/graphics/game/background/frame-left-1.png',0xc1,0x1c9), new ig['AnimationSheet']('media/graphics/game/background/frame-right-1.png',0xc1,0x1c9), new ig['AnimationSheet']('media/graphics/game/background/frame-bottom-2.png',0x48c,0x6c), new ig['AnimationSheet']('media/graphics/game/background/frame-top-2.png',0x48c,0x6c), new ig['AnimationSheet']('media/graphics/game/background/frame-left-2.png',0xc1,0x1c9), new ig['AnimationSheet']('media/graphics/game/background/frame-right-2.png',0xc1,0x1c9), new ig['AnimationSheet']('media/graphics/game/background/frame-bottom-3.png',0x48c,0x6c), new ig['AnimationSheet']('media/graphics/game/background/frame-top-3.png',0x48c,0x6c), new ig['AnimationSheet']('media/graphics/game/background/frame-left-3.png',0xc1,0x1c9), new ig['AnimationSheet']('media/graphics/game/background/frame-right-3.png',0xc1,0x1c9), new ig['AnimationSheet']('media/graphics/game/background/frame-bottom-4.png',0x48c,0x6c), new ig['AnimationSheet']('media/graphics/game/background/frame-top-4.png',0x48c,0x6c), new ig['AnimationSheet']('media/graphics/game/background/frame-left-4.png',0xc1,0x1c9), new ig['AnimationSheet']('media/graphics/game/background/frame-right-4.png',0xc1,0x1c9)], 'frameNum': 0x0, 'frameSize': [{ 'x': 0x48c, 'y': 0x6c }, { 'x': 0x48c, 'y': 0x6c }, { 'x': 0xc1, 'y': 0x1c9 }, { 'x': 0xc1, 'y': 0x1c9 }, { 'x': 0x48c, 'y': 0x6c }, { 'x': 0x48c, 'y': 0x6c }, { 'x': 0xc1, 'y': 0x1c9 }, { 'x': 0xc1, 'y': 0x1c9 }, { 'x': 0x48c, 'y': 0x6c }, { 'x': 0x48c, 'y': 0x6c }, { 'x': 0xc1, 'y': 0x1c9 }, { 'x': 0xc1, 'y': 0x1c9 }, { 'x': 0x48c, 'y': 0x6c }, { 'x': 0x48c, 'y': 0x6c }, { 'x': 0xc1, 'y': 0x1c9 }, { 'x': 0xc1, 'y': 0x1c9 }], 'init': function(_0x1a2953, _0x5a168e, _0x1f3594) { ig['global']['wm'] && (_0x1f3594['frameNum'] || (_0x1f3594['frameNum'] = 0x0), ig['game']['curStage'] = 0x1), this['size'] = this['frameSize'][_0x1f3594['frameNum'] + 0x4 * ig['game']['curStage']], this['animSheet'] = this['frame'][_0x1f3594['frameNum'] + 0x4 * ig['game']['curStage']], this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0x1a2953, _0x5a168e, _0x1f3594); }, 'update': function() { this['parent'](); }, 'draw': function() { this['parent'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.background')['requires']('plugins.box2d.entity')['defines'](function() { EntityBackground = ig['Entity']['extend']({ 'zIndex': 0x0, 'stageNum': 0x0, 'backgrounds': [new ig['Image']('media/graphics/game/background/background-1.png'), new ig['Image']('media/graphics/game/background/background-2.png'), new ig['Image']('media/graphics/game/background/background-3.png'), new ig['Image']('media/graphics/game/background/background-4.png')], 'init': function(_0x499e31, _0x1ed0d8, _0x11e612) { this['stageNum'] = ig['global']['wm'] ? 0x1 : ig['game']['curStage'], this['parent'](_0x499e31, _0x1ed0d8, _0x11e612); }, 'draw': function() { this['backgrounds'][this['stageNum']]['draw'](0x57, 0x1c); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.bullet')['requires']('plugins.box2d.entity')['defines'](function() { EntityBullet = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['A'], 'bounciness': 0x1, 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0.3, 'friction': 0.0001, 'restitution': 0x1, 'rotate': 0x0, 'isBounce': !0x0, 'countBounce': 0x0, 'moveAngle': 0x0, 'speed': 0x5dc, 'speed_antiSlow': 0x14, 'zIndex': 0x2, 'bulletIm': new ig['Image']('media/graphics/game/objects/bullet-inv.png'), 'bulletAng': 0x0, 'size': { 'x': 0xb, 'y': 0x7 }, 'oldPos': null, 'bounce_targetPoints': [], 'bounce_targetAngle': [], 'arraypos': [], 'MAX_BOUNCE': 0xa, 'name': 'bullet', 'classify': 'missile', 'lastPos': null, 'bSprite': null, 'isAlive': !0x0, 'init': function(_0x4c1475, _0x2cbb40, _0xcc9703) { var _0x8483fd = ig['game']['getEntitiesByType'](EntityPlayer)[0x0] , _0x387cbf = 0xb4 * Math['atan2'](ig['game']['io']['mouse']['getPos']()['y'] - _0x2cbb40, ig['game']['io']['mouse']['getPos']()['x'] - _0x4c1475) / Math['PI']; this['moveAngle'] = _0x387cbf, -0x5a > this['moveAngle'] && (this['moveAngle'] = -0x5a), 0x1e < this['moveAngle'] && (this['moveAngle'] = 0x1e), _0x4c1475 = _0x8483fd['pos']['x'] + 0x18 + 0x41 * Math['cos'](this['moveAngle'] * Math['PI'] / 0xb4), _0x2cbb40 = _0x8483fd['pos']['y'] + 0x1a + 0x41 * Math['sin'](this['moveAngle'] * Math['PI'] / 0xb4), this['targetPos'] = ig['game']['io']['mouse']['getPos'](), this['moveAngle'] = _0x387cbf, 0x1e < this['moveAngle'] && (_0x4c1475 += 0x4), this['parent'](_0x4c1475, _0x2cbb40, _0xcc9703), this['checkSpeedTimer'] = new ig['Timer'](), this['move_toward_coord'](this['targetPos']), this['body']['m_gravity'] = 0x0, this['body']['SetBullet'](!0x0), this['body']['SetAwake'](!0x0), _0x4c1475 = new Box2D['Common']['Math']['b2Vec2'](this['force']['x'],this['force']['y']), this['body']['ApplyForce'](_0x4c1475, this['body']['GetPosition']()), this['ballTrail'] = ig['game']['spawnEntity'](EntityBulletTrails, this['pos']['x'] + this['size']['x'] / 0x2, this['pos']['y'] + this['size']['y'] / 0x2, { 'ball': this }), this['bSprite'] = ig['game']['spawnEntity'](EntityBulletSprite, this['pos']['x'], this['pos']['y'], { 'bParent': this }), this['bSprite']['pos'] = this['pos'], this['bSprite']['currentAnim']['angle'] = this['bulletAng']; }, 'ready': function() {}, 'update': function() { if (!ig['game']['isGamePaused'] && !ig['game']['box2dPaused']) { this['body']['ApplyForce'](new Box2D['Common']['Math']['b2Vec2'](0x0,this['body']['m_mass'] * -ig['game']['gravity'] * Box2D['SCALE']), this['body']['GetPosition']()), this['arraypos']['push'](this['pos']['x'] + '\x20' + this['pos']['y']), 0x6 < this['arraypos']['length'] && this['arraypos']['shift'](); var _0x4d74dc = 0x0; if (this['lastPos']) { var _0x4d74dc = Math['atan2']((this['pos']['y'] - this['lastPos']['y']) * Box2D['SCALE'], (this['pos']['x'] - this['lastPos']['x']) * Box2D['SCALE']) , _0x269fac = { 'x': this['pos']['x'] * Box2D['SCALE'], 'y': this['pos']['y'] * Box2D['SCALE'] }; _0x269fac['x'] += this['speed'] * Math['cos'](_0x4d74dc), _0x269fac['y'] += this['speed'] * Math['sin'](_0x4d74dc), this['move_toward_coord'](_0x269fac); } this['lastPos'] = { 'x': this['pos']['x'], 'y': this['pos']['y'] }, this['bulletAng'] = _0x4d74dc; if (this['bounced']) { this['bounced'] = !0x1, ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['projectileBounce']), _0x4d74dc = ig['ua']['mobile'] ? 0x2 : 0x6; for (_0x269fac = 0x1; _0x269fac <= _0x4d74dc; _0x269fac++) ig['game']['spawnEntity'](EntitySpark, this['pos']['x'], this['pos']['y']); } this['solveStuck'](), this['parent'](), this['bSprite'] && (this['bSprite']['pos'] = this['pos'], this['bSprite']['currentAnim']['angle'] = this['bulletAng']), this['constantSpeed_applyForce'](), this['constantSpeed_check'](); } }, 'draw': function() { this['parent'](); }, 'move_toward_coord': function(_0x1e7049) { this['force'] = {}; var _0x5aa826 = _0x1e7049['x'] - this['pos']['x'] - this['size']['x'] / 0x2; _0x1e7049 = _0x1e7049['y'] - this['pos']['y'] - this['size']['y'] / 0x2, this['force']['x'] = (0x0 < _0x5aa826 ? 0x1 : -0x1) * this['speed'] * (Math['abs'](_0x5aa826) / (Math['abs'](_0x5aa826) + Math['abs'](_0x1e7049))), this['force']['y'] = (0x1 < _0x1e7049 ? 0x1 : -0x1) * this['speed'] * (Math['abs'](_0x1e7049) / (Math['abs'](_0x5aa826) + Math['abs'](_0x1e7049))); }, 'solveStuck': function() { if (0x0 < this['checkSpeedTimer']['delta']() && 0.1 > this['checkSpeedTimer']['delta']()) { var _0x22bab5 = this['body']['GetLinearVelocity'](); if (0x2 > Math['abs'](_0x22bab5['x']) && 0x2 > Math['abs'](_0x22bab5['y'])) { var _0x1d254d = this['targetPos']['x'] - this['pos']['x'] - this['size']['x'] / 0x2 , _0xe87a44 = this['targetPos']['y'] - this['pos']['y'] - this['size']['y'] / 0x2; this['force']['x'] = (0x0 < _0x1d254d ? 0x1 : -0x1) * this['speed'] * (Math['abs'](_0x1d254d) / (Math['abs'](_0x1d254d) + Math['abs'](_0xe87a44))), this['force']['y'] = (0x0 < _0xe87a44 ? 0x1 : -0x1) * this['speed'] * (Math['abs'](_0xe87a44) / (Math['abs'](_0x1d254d) + Math['abs'](_0xe87a44))), _0x1d254d = new Box2D['Common']['Math']['b2Vec2'](this['force']['x'],this['force']['y']), this['body']['ApplyImpulse'](_0x1d254d, this['body']['GetPosition']()); } (0x64 <= Math['abs'](_0x22bab5['x']) || 0x64 <= Math['abs'](_0x22bab5['y'])) && this['body']['SetLinearVelocity'](new Box2D['Common']['Math']['b2Vec2'](_0x22bab5['x'] / 0x2,_0x22bab5['y'] / 0x2)), (0x3e8 <= Math['abs'](_0x22bab5['x']) || 0x3e8 <= Math['abs'](_0x22bab5['y'])) && this['body']['SetLinearVelocity'](new Box2D['Common']['Math']['b2Vec2'](_0x22bab5['x'] / 0xa,_0x22bab5['y'] / 0xa)); } }, 'isTriggered': !0x1, 'isApplyForce': 0x0, 'constantSpeed_check': function() { var _0x3ea0ed = this['body']['GetLinearVelocity'](); !(0x0 == _0x3ea0ed['x'] && 0x0 == _0x3ea0ed['y']) && !(0.2 > this['checkSpeedTimer']['delta']()) && (!this['isTriggered'] && 0x3c >= Math['abs'](_0x3ea0ed['x']) && 0x3c >= Math['abs'](_0x3ea0ed['y'])) && (this['isTriggered'] = !0x0, this['isApplyForce'] = 0x3); }, 'constantSpeed_applyForce': function() { if (0x0 < this['isApplyForce'] && (this['isApplyForce']--, 0x0 >= this['isApplyForce'] && (ang = 0xb4 * Math['atan2']((this['lastPos']['y'] - this['pos']['y']) * Box2D['SCALE'], (this['lastPos']['x'] - this['pos']['x']) * Box2D['SCALE']) / Math['PI'], 0x0 !== ang))) { var _0x4e0dbb = this['pos']['x'] , _0x1be8d5 = this['pos']['y'] , _0x4e0dbb = _0x4e0dbb - this['speed'] * Math['cos'](ang * Math['PI'] / 0xb4) , _0x1be8d5 = _0x1be8d5 - this['speed'] * Math['sin'](ang * Math['PI'] / 0xb4); this['body']['SetLinearVelocity'](new Box2D['Common']['Math']['b2Vec2'](0x0,0x0)), _0x4e0dbb -= this['pos']['x'], _0x1be8d5 -= this['pos']['y'], this['force']['x'] = (0x0 < _0x4e0dbb ? 0x1 : -0x1) * this['speed_antiSlow'] * (Math['abs'](_0x4e0dbb) / (Math['abs'](_0x4e0dbb) + Math['abs'](_0x1be8d5))), this['force']['y'] = (0x0 < _0x1be8d5 ? 0x1 : -0x1) * this['speed_antiSlow'] * (Math['abs'](_0x1be8d5) / (Math['abs'](_0x4e0dbb) + Math['abs'](_0x1be8d5))), _0x1be8d5 = new Box2D['Common']['Math']['b2Vec2'](this['force']['x'],this['force']['y']), this['body']['ApplyImpulse'](_0x1be8d5, this['body']['GetPosition']()), this['isApplyForce'] = 0x0; } }, 'beginContact': function(_0x4e9f8b) { 'enemy' == _0x4e9f8b['classify'] || 'missile' == _0x4e9f8b['classify'] || ('sfx' == _0x4e9f8b['classify'] || 'bodyPart' == _0x4e9f8b['classify']) || (this['countBounce'] += 0x1, this['bounced'] = !0x0, this['isTriggered'] = !0x1, 0xa <= this['countBounce'] && (ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['projectileBounce']), this['destroy'](), ig['game']['getEntitiesByType'](EntityGameControl))); }, 'preSolve': function(_0x3ec544, _0xe7499d) { _0x3ec544['type'] && (_0x3ec544['type'] == this['type'] && _0xe7499d['SetEnabled'](!0x1), ('enemy' == _0x3ec544['classify'] || 'sfx' == _0x3ec544['classify'] || 'bodyPart' == _0x3ec544['classify'] || 'switch' == _0x3ec544['classify'] || 'missile' == _0x3ec544['classify']) && _0xe7499d['SetEnabled'](!0x1)); }, 'destroy': function() { this['isAlive'] && (ig['game']['getEntitiesByType'](EntityGameControl)[0x0]['curBulletsInGame']--, this['isAlive'] = !0x1), this['bSprite']['kill'](), this['ballTrail']['kill'](), this['kill'](); } }), EntityBulletSprite = ig['Entity']['extend']({ 'bulletIm': new ig['Image']('media/graphics/game/objects/bullet.png'), 'bParent': null, 'size': { 'x': 0xb, 'y': 0x7 }, 'zIndex': 0x2, 'init': function(_0x314a94, _0x411142, _0x207f20) { this['parent'](_0x314a94, _0x411142, _0x207f20), this['animSheet'] = new ig['AnimationSheet'](this['bulletIm']['path'],this['size']['x'],this['size']['y']), this['addAnim']('idle', 0x1, [0x0]); }, 'update': function() { this['parent'](), this['bParent'] || this['kill'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.bullet-trails')['requires']('impact.entity')['defines'](function() { GameTrailNode = ig['Class']['extend']({ 'x': 0x0, 'y': 0x0, 'time': 0x0, 'remainder': 0x0, 'prev': null, 'next': null, 'l': 0x0, 'w': 0x1, 'dx': 0x0, 'dy': 0x0, 'adx': 0x0, 'ady': 0x0, 'ndx': 0x0, 'ndy': 0x0, 'init': function(_0x312d6d, _0x130282, _0x27f544, _0x54bba7) { this['x'] = _0x312d6d, this['y'] = _0x130282, this['time'] = _0x27f544, this['remainder'] = _0x54bba7; }, 'setNext': function(_0x2409ef) { this['next'] = _0x2409ef, _0x2409ef = this['next']['x'] - this['x']; var _0x5cc0cd = this['next']['y'] - this['y'] , _0x3fd3ab = Math['sqrt'](_0x2409ef * _0x2409ef + _0x5cc0cd * _0x5cc0cd); this['l'] = _0x3fd3ab, this['next']['l'] = _0x3fd3ab, this['next']['dx'] = _0x2409ef / _0x3fd3ab, this['next']['dy'] = _0x5cc0cd / _0x3fd3ab, this['next']['ndx'] = -this['next']['dy'], this['next']['ndy'] = this['next']['dx'], this['prev'] ? (this['adx'] = (this['dx'] + this['next']['dx']) / 0x2, this['ady'] = (this['dy'] + this['next']['dy']) / 0x2, this['ndx'] = -this['ady'], this['ndy'] = this['adx']) : (this['adx'] = this['next']['dx'], this['ady'] = this['next']['dy'], this['ndx'] = -this['ady'], this['ndy'] = this['adx'], this['dx'] = this['next']['dx'], this['dy'] = this['next']['dy']); }, 'setPrev': function(_0x6af4cc) { this['prev'] = _0x6af4cc; } }), EntityBulletTrails = ig['Entity']['extend']({ 'outerColor': !0x1, 'zIndex': 0x1, 'nodeList': [], 'lineList': [], 'pollInterval': 0.01, 'pollMaxDuration': 0x1, 'maxPollInterval': 0.1, 'nodeMinDistance': 0x10, 'chains': [], 'enabled': !0x1, 'ball': null, 'pauseOffset': 0x0, 'init': function(_0x5c9289, _0x3ba7b5, _0x3df7d7) { this['parent'](_0x5c9289, _0x3ba7b5, _0x3df7d7); }, 'draw': function() { var _0x5e26c5 = ig['system']['context']; _0x5e26c5['save'](); for (var _0x43c7fe = 0x0; _0x43c7fe < this['lineList']['length']; _0x43c7fe++) this['drawLineFromNodeList'](this['lineList'][_0x43c7fe]); this['drawLineFromNodeList'](this['nodeList']), _0x5e26c5['restore'](); }, 'update': function() { if (ig['game']['isGamePaused']) this['pauseOffset'] += ig['system']['tick']; else { for (var _0x3a3eab = ig['system']['clock']['delta']() - this['pauseOffset'], _0x4ad068 = _0x3a3eab % this['pollInterval']; 0x0 < this['nodeList']['length']; ) { var _0x295533 = this['nodeList'][0x0]; if (_0x3a3eab - _0x4ad068 - (_0x295533['time'] - _0x295533['remainder']) >= this['pollMaxDuration']) this['nodeList']['splice'](0x0, 0x1), 0x0 < this['nodeList']['length'] && this['nodeList'][0x0]['setPrev'](null); else break; } for (var _0x1d6e5e = 0x0; _0x1d6e5e < this['lineList']['length']; ) { for (var _0x75c8c2 = this['lineList'][_0x1d6e5e]; 0x0 < _0x75c8c2['length']; ) if (_0x295533 = _0x75c8c2[0x0], _0x3a3eab - _0x4ad068 - (_0x295533['time'] - _0x295533['remainder']) >= this['pollMaxDuration']) _0x75c8c2['splice'](0x0, 0x1), 0x0 < _0x75c8c2['length'] && _0x75c8c2[0x0]['setPrev'](null); else break; 0x0 == _0x75c8c2['length'] ? this['lineList']['splice'](0x0, 0x1) : _0x1d6e5e++; } if (!(0x0 < this['nodeList']['length'] && (_0x1d6e5e = this['nodeList'][this['nodeList']['length'] - 0x1], _0x3a3eab - (_0x1d6e5e['time'] - _0x1d6e5e['remainder']) < this['pollInterval']))) { _0x1d6e5e = this['ball']['body']['GetPosition'](), _0x295533 = _0x1d6e5e['x'] / Box2D['SCALE'], _0x75c8c2 = _0x1d6e5e['y'] / Box2D['SCALE']; if (0x0 < this['nodeList']['length']) { var _0x1d6e5e = this['nodeList'][this['nodeList']['length'] - 0x1] , _0x4fbd44 = _0x295533 - _0x1d6e5e['x'] , _0x1d6e5e = _0x75c8c2 - _0x1d6e5e['y']; if (_0x4fbd44 * _0x4fbd44 + _0x1d6e5e * _0x1d6e5e < this['nodeMinDistance']) return; } _0x3a3eab = new GameTrailNode(_0x295533,_0x75c8c2,_0x3a3eab,_0x4ad068), 0x0 < this['nodeList']['length'] && (_0x1d6e5e = this['nodeList'][this['nodeList']['length'] - 0x1], _0x1d6e5e['setNext'](_0x3a3eab), _0x3a3eab['setPrev'](_0x1d6e5e)), this['nodeList']['push'](_0x3a3eab); } } }, 'drawLineFromNodeList': function(_0xde0a54) { if (_0xde0a54 && !(0x1 >= _0xde0a54['length'])) { var _0x450e77 = ig['system']['context']; _0x450e77['save'](); var _0x1c5de5 = _0x450e77['lineWidth'] = 0x4; _0x450e77['fillStyle'] = 'rgba(255,0,0,0.25)'; for (var _0x1cb26b = 0x0; _0x1cb26b < _0xde0a54['length']; _0x1cb26b++) { var _0x103e10 = _0xde0a54[_0x1cb26b] , _0x4fcad6 = ig['system']['clock']['delta']() - _0x103e10['time'] - this['pauseOffset'] , _0x4fcad6 = _0x4fcad6 / this['pollMaxDuration']; 0x1 < _0x4fcad6 && (_0x4fcad6 = 0x1), _0x4fcad6 = 0x1 - _0x4fcad6, _0x103e10['t'] = _0x4fcad6, _0x103e10['w'] = _0x1c5de5 * _0x4fcad6; } _0x450e77['beginPath'](), _0x103e10 = _0xde0a54[0x0], _0x4fcad6 = _0x103e10['x'] - _0x103e10['dx'] * _0x103e10['w'], _0x103e10 = _0x103e10['y'] - _0x103e10['dy'] * _0x103e10['w'], _0x450e77['moveTo'](_0x4fcad6, _0x103e10); for (_0x1cb26b = 0x0; _0x1cb26b < _0xde0a54['length'] - 0x1; _0x1cb26b++) _0x103e10 = _0xde0a54[_0x1cb26b], _0x4fcad6 = _0x103e10['x'] + _0x103e10['ndx'] * _0x103e10['w'], _0x103e10 = _0x103e10['y'] + _0x103e10['ndy'] * _0x103e10['w'], _0x450e77['lineTo'](_0x4fcad6, _0x103e10); _0x103e10 = _0xde0a54[_0xde0a54['length'] - 0x1], _0x1c5de5 > _0x103e10['l'] && (_0x1c5de5 = _0x103e10['l']), _0x4fcad6 = _0x103e10['x'] + _0x103e10['ndx'] * _0x103e10['w'] - _0x103e10['dx'] * _0x1c5de5, _0x103e10 = _0x103e10['y'] + _0x103e10['ndy'] * _0x103e10['w'] - _0x103e10['dy'] * _0x1c5de5, _0x450e77['lineTo'](_0x4fcad6, _0x103e10), _0x103e10 = _0xde0a54[_0xde0a54['length'] - 0x1], _0x4fcad6 = _0x103e10['x'] + _0x103e10['dx'] * _0x103e10['w'], _0x103e10 = _0x103e10['y'] + _0x103e10['dy'] * _0x103e10['w'], _0x450e77['lineTo'](_0x4fcad6, _0x103e10), _0x103e10 = _0xde0a54[_0xde0a54['length'] - 0x1], _0x4fcad6 = _0x103e10['x'] - _0x103e10['ndx'] * _0x103e10['w'] - _0x103e10['dx'] * _0x1c5de5, _0x103e10 = _0x103e10['y'] - _0x103e10['ndy'] * _0x103e10['w'] - _0x103e10['dy'] * _0x1c5de5, _0x450e77['lineTo'](_0x4fcad6, _0x103e10); for (_0x1cb26b = _0xde0a54['length'] - 0x2; 0x0 <= _0x1cb26b; _0x1cb26b--) _0x103e10 = _0xde0a54[_0x1cb26b], _0x4fcad6 = _0x103e10['x'] - _0x103e10['ndx'] * _0x103e10['w'], _0x103e10 = _0x103e10['y'] - _0x103e10['ndy'] * _0x103e10['w'], _0x450e77['lineTo'](_0x4fcad6, _0x103e10); _0x450e77['closePath'](), _0x450e77['fillStyle'] = 'rgba(255,0,0,0.25)', _0x450e77['fill'](), _0x1c5de5 = 0x3; for (_0x1cb26b = 0x0; _0x1cb26b < _0xde0a54['length']; _0x1cb26b++) _0x103e10 = _0xde0a54[_0x1cb26b], _0x4fcad6 = ig['system']['clock']['delta']() - _0x103e10['time'] - this['pauseOffset'], _0x4fcad6 /= this['pollMaxDuration'], 0x1 < _0x4fcad6 && (_0x4fcad6 = 0x1), _0x4fcad6 -= 0x1, _0x103e10['t'] = _0x4fcad6, _0x103e10['w'] = _0x1c5de5 * _0x4fcad6 * _0x4fcad6; _0x450e77['beginPath'](), _0x103e10 = _0xde0a54[0x0], _0x4fcad6 = _0x103e10['x'] - _0x103e10['dx'] * _0x103e10['w'], _0x103e10 = _0x103e10['y'] - _0x103e10['dy'] * _0x103e10['w'], _0x450e77['moveTo'](_0x4fcad6, _0x103e10); for (_0x1cb26b = 0x0; _0x1cb26b < _0xde0a54['length'] - 0x1; _0x1cb26b++) _0x103e10 = _0xde0a54[_0x1cb26b], _0x4fcad6 = _0x103e10['x'] + _0x103e10['ndx'] * _0x103e10['w'], _0x103e10 = _0x103e10['y'] + _0x103e10['ndy'] * _0x103e10['w'], _0x450e77['lineTo'](_0x4fcad6, _0x103e10); _0x103e10 = _0xde0a54[_0xde0a54['length'] - 0x1], _0x1c5de5 > _0x103e10['l'] && (_0x1c5de5 = _0x103e10['l']), _0x4fcad6 = _0x103e10['x'] + _0x103e10['ndx'] * _0x103e10['w'] - _0x103e10['dx'] * _0x1c5de5, _0x103e10 = _0x103e10['y'] + _0x103e10['ndy'] * _0x103e10['w'] - _0x103e10['dy'] * _0x1c5de5, _0x450e77['lineTo'](_0x4fcad6, _0x103e10), _0x103e10 = _0xde0a54[_0xde0a54['length'] - 0x1], _0x4fcad6 = _0x103e10['x'] + _0x103e10['dx'] * _0x103e10['w'], _0x103e10 = _0x103e10['y'] + _0x103e10['dy'] * _0x103e10['w'], _0x450e77['lineTo'](_0x4fcad6, _0x103e10), _0x103e10 = _0xde0a54[_0xde0a54['length'] - 0x1], _0x4fcad6 = _0x103e10['x'] - _0x103e10['ndx'] * _0x103e10['w'] - _0x103e10['dx'] * _0x1c5de5, _0x103e10 = _0x103e10['y'] - _0x103e10['ndy'] * _0x103e10['w'] - _0x103e10['dy'] * _0x1c5de5, _0x450e77['lineTo'](_0x4fcad6, _0x103e10); for (_0x1cb26b = _0xde0a54['length'] - 0x2; 0x0 <= _0x1cb26b; _0x1cb26b--) _0x103e10 = _0xde0a54[_0x1cb26b], _0x4fcad6 = _0x103e10['x'] - _0x103e10['ndx'] * _0x103e10['w'], _0x103e10 = _0x103e10['y'] - _0x103e10['ndy'] * _0x103e10['w'], _0x450e77['lineTo'](_0x4fcad6, _0x103e10); _0x450e77['closePath'](), _0x450e77['fillStyle'] = 'rgb(255,255,255,0.5)', _0x450e77['fill'](), _0x450e77['restore'](); } } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.spark-trails')['requires']('impact.entity')['defines'](function() { EntitySparkTrails = ig['Entity']['extend']({ 'outerColor': !0x1, 'zIndex': 0x7d0, 'nodeList': [], 'lineList': [], 'pollInterval': 0.01, 'pollMaxDuration': 0.15, 'maxPollInterval': 0.1, 'nodeMinDistance': 0xa, 'chains': [], 'enabled': !0x1, 'ball': null, 'init': function(_0x2c0c94, _0x8d7e3e, _0x214e9e) { _0x214e9e['outerColor'] && (this['zIndex'] = 0x7cf), this['parent'](_0x2c0c94, _0x8d7e3e, _0x214e9e); }, 'draw': function() { var _0x7d1688 = ig['system']['context']; _0x7d1688['save'](); for (var _0x4ce443 = 0x0; _0x4ce443 < this['lineList']['length']; _0x4ce443++) this['drawLineFromNodeList'](this['lineList'][_0x4ce443]); this['drawLineFromNodeList'](this['nodeList']), _0x7d1688['restore'](); }, 'update': function() { for (var _0x433cac = ig['system']['clock']['delta'](), _0x76c5ff = _0x433cac % this['pollInterval']; 0x0 < this['nodeList']['length']; ) { var _0x7e845d = this['nodeList'][0x0]; if (_0x433cac - _0x76c5ff - (_0x7e845d['time'] - _0x7e845d['remainder']) >= this['pollMaxDuration']) this['nodeList']['splice'](0x0, 0x1), 0x0 < this['nodeList']['length'] && this['nodeList'][0x0]['setPrev'](null); else break; } for (var _0x5db303 = 0x0; _0x5db303 < this['lineList']['length']; ) { for (var _0x387c90 = this['lineList'][_0x5db303]; 0x0 < _0x387c90['length']; ) if (_0x7e845d = _0x387c90[0x0], _0x433cac - _0x76c5ff - (_0x7e845d['time'] - _0x7e845d['remainder']) >= this['pollMaxDuration']) _0x387c90['splice'](0x0, 0x1), 0x0 < _0x387c90['length'] && _0x387c90[0x0]['setPrev'](null); else break; 0x0 == _0x387c90['length'] ? this['lineList']['splice'](0x0, 0x1) : _0x5db303++; } if (!(0x0 < this['nodeList']['length'] && (_0x5db303 = this['nodeList'][this['nodeList']['length'] - 0x1], _0x433cac - (_0x5db303['time'] - _0x5db303['remainder']) < this['pollInterval']))) { _0x5db303 = this['ball']['body']['GetPosition'](), _0x7e845d = _0x5db303['x'] / Box2D['SCALE'], _0x387c90 = _0x5db303['y'] / Box2D['SCALE']; if (0x0 < this['nodeList']['length']) { var _0x5db303 = this['nodeList'][this['nodeList']['length'] - 0x1] , _0x2f726e = _0x7e845d - _0x5db303['x'] , _0x5db303 = _0x387c90 - _0x5db303['y']; if (_0x2f726e * _0x2f726e + _0x5db303 * _0x5db303 < this['nodeMinDistance']) return; } _0x433cac = new GameTrailNode(_0x7e845d,_0x387c90,_0x433cac,_0x76c5ff), 0x0 < this['nodeList']['length'] && (_0x5db303 = this['nodeList'][this['nodeList']['length'] - 0x1], _0x5db303['setNext'](_0x433cac), _0x433cac['setPrev'](_0x5db303)), this['nodeList']['push'](_0x433cac); } }, 'drawLineFromNodeList': function(_0x4559d1) { if (_0x4559d1 && !(0x1 >= _0x4559d1['length']) && !ig['game']['isGamePaused']) { var _0x106b5d = ig['system']['context']; _0x106b5d['save'](), _0x106b5d['lineWidth'] = 0x1; var _0x4543c2 = 0x2; _0x106b5d['fillStyle'] = 'rgba(255,255,255,0.25)'; for (var _0x3f659b = 0x0; _0x3f659b < _0x4559d1['length']; _0x3f659b++) { var _0x6df093 = _0x4559d1[_0x3f659b] , _0x1dd281 = ig['system']['clock']['delta']() - _0x6df093['time'] , _0x1dd281 = _0x1dd281 / this['pollMaxDuration']; 0x1 < _0x1dd281 && (_0x1dd281 = 0x1), _0x1dd281 = 0x1 - _0x1dd281, _0x6df093['t'] = _0x1dd281, _0x6df093['w'] = _0x4543c2 * _0x1dd281; } _0x106b5d['beginPath'](), _0x6df093 = _0x4559d1[0x0], _0x1dd281 = _0x6df093['x'] - _0x6df093['dx'] * _0x6df093['w'], _0x6df093 = _0x6df093['y'] - _0x6df093['dy'] * _0x6df093['w'], _0x106b5d['moveTo'](_0x1dd281, _0x6df093); for (_0x3f659b = 0x0; _0x3f659b < _0x4559d1['length'] - 0x1; _0x3f659b++) _0x6df093 = _0x4559d1[_0x3f659b], _0x1dd281 = _0x6df093['x'] + _0x6df093['ndx'] * _0x6df093['w'], _0x6df093 = _0x6df093['y'] + _0x6df093['ndy'] * _0x6df093['w'], _0x106b5d['lineTo'](_0x1dd281, _0x6df093); _0x6df093 = _0x4559d1[_0x4559d1['length'] - 0x1], _0x4543c2 > _0x6df093['l'] && (_0x4543c2 = _0x6df093['l']), _0x1dd281 = _0x6df093['x'] + _0x6df093['ndx'] * _0x6df093['w'] - _0x6df093['dx'] * _0x4543c2, _0x6df093 = _0x6df093['y'] + _0x6df093['ndy'] * _0x6df093['w'] - _0x6df093['dy'] * _0x4543c2, _0x106b5d['lineTo'](_0x1dd281, _0x6df093), _0x6df093 = _0x4559d1[_0x4559d1['length'] - 0x1], _0x1dd281 = _0x6df093['x'] + _0x6df093['dx'] * _0x6df093['w'], _0x6df093 = _0x6df093['y'] + _0x6df093['dy'] * _0x6df093['w'], _0x106b5d['lineTo'](_0x1dd281, _0x6df093), _0x6df093 = _0x4559d1[_0x4559d1['length'] - 0x1], _0x1dd281 = _0x6df093['x'] - _0x6df093['ndx'] * _0x6df093['w'] - _0x6df093['dx'] * _0x4543c2, _0x6df093 = _0x6df093['y'] - _0x6df093['ndy'] * _0x6df093['w'] - _0x6df093['dy'] * _0x4543c2, _0x106b5d['lineTo'](_0x1dd281, _0x6df093); for (_0x3f659b = _0x4559d1['length'] - 0x2; 0x0 <= _0x3f659b; _0x3f659b--) _0x6df093 = _0x4559d1[_0x3f659b], _0x1dd281 = _0x6df093['x'] - _0x6df093['ndx'] * _0x6df093['w'], _0x6df093 = _0x6df093['y'] - _0x6df093['ndy'] * _0x6df093['w'], _0x106b5d['lineTo'](_0x1dd281, _0x6df093); _0x106b5d['closePath'](), _0x106b5d['fillStyle'] = 'rgba(255,255,255,0.25)', _0x106b5d['fill'](), _0x4543c2 = 0x1; for (_0x3f659b = 0x0; _0x3f659b < _0x4559d1['length']; _0x3f659b++) _0x6df093 = _0x4559d1[_0x3f659b], _0x1dd281 = ig['system']['clock']['delta']() - _0x6df093['time'], _0x1dd281 /= this['pollMaxDuration'], 0x1 < _0x1dd281 && (_0x1dd281 = 0x1), _0x1dd281 -= 0x1, _0x6df093['t'] = _0x1dd281, _0x6df093['w'] = _0x4543c2 * _0x1dd281 * _0x1dd281; _0x106b5d['beginPath'](), _0x6df093 = _0x4559d1[0x0], _0x1dd281 = _0x6df093['x'] - _0x6df093['dx'] * _0x6df093['w'], _0x6df093 = _0x6df093['y'] - _0x6df093['dy'] * _0x6df093['w'], _0x106b5d['moveTo'](_0x1dd281, _0x6df093); for (_0x3f659b = 0x0; _0x3f659b < _0x4559d1['length'] - 0x1; _0x3f659b++) _0x6df093 = _0x4559d1[_0x3f659b], _0x1dd281 = _0x6df093['x'] + _0x6df093['ndx'] * _0x6df093['w'], _0x6df093 = _0x6df093['y'] + _0x6df093['ndy'] * _0x6df093['w'], _0x106b5d['lineTo'](_0x1dd281, _0x6df093); _0x6df093 = _0x4559d1[_0x4559d1['length'] - 0x1], _0x4543c2 > _0x6df093['l'] && (_0x4543c2 = _0x6df093['l']), _0x1dd281 = _0x6df093['x'] + _0x6df093['ndx'] * _0x6df093['w'] - _0x6df093['dx'] * _0x4543c2, _0x6df093 = _0x6df093['y'] + _0x6df093['ndy'] * _0x6df093['w'] - _0x6df093['dy'] * _0x4543c2, _0x106b5d['lineTo'](_0x1dd281, _0x6df093), _0x6df093 = _0x4559d1[_0x4559d1['length'] - 0x1], _0x1dd281 = _0x6df093['x'] + _0x6df093['dx'] * _0x6df093['w'], _0x6df093 = _0x6df093['y'] + _0x6df093['dy'] * _0x6df093['w'], _0x106b5d['lineTo'](_0x1dd281, _0x6df093), _0x6df093 = _0x4559d1[_0x4559d1['length'] - 0x1], _0x1dd281 = _0x6df093['x'] - _0x6df093['ndx'] * _0x6df093['w'] - _0x6df093['dx'] * _0x4543c2, _0x6df093 = _0x6df093['y'] - _0x6df093['ndy'] * _0x6df093['w'] - _0x6df093['dy'] * _0x4543c2, _0x106b5d['lineTo'](_0x1dd281, _0x6df093); for (_0x3f659b = _0x4559d1['length'] - 0x2; 0x0 <= _0x3f659b; _0x3f659b--) _0x6df093 = _0x4559d1[_0x3f659b], _0x1dd281 = _0x6df093['x'] - _0x6df093['ndx'] * _0x6df093['w'], _0x6df093 = _0x6df093['y'] - _0x6df093['ndy'] * _0x6df093['w'], _0x106b5d['lineTo'](_0x1dd281, _0x6df093); _0x106b5d['closePath'](), _0x106b5d['fillStyle'] = 'rgb(255,255,255,0.5)', _0x106b5d['fill'](), _0x106b5d['restore'](); } } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.score-pop')['requires']('plugins.box2d.entity')['defines'](function() { EntityScorePop = ig['Entity']['extend']({ 'zIndex': 0x2, 'imgList': [new ig['Image']('media/graphics/game/ui/score-250.png'), new ig['Image']('media/graphics/game/ui/score-1000.png'), new ig['Image']('media/graphics/game/ui/score-1500.png'), new ig['Image']('media/graphics/game/ui/score-2000.png'), new ig['Image']('media/graphics/game/ui/score-3000.png')], 'img': null, 'dur': 0x2, 'alpha': 0x1, 'textSize': { 'x': 0x30, 'y': 0x26 }, 'textScale': 0x0, 'isBulletScore': !0x1, 'delay': 0x0, 'init': function(_0x3aeb22, _0x136eed, _0x3472df) { this['img'] = this['imgList'][_0x3472df['type']], this['parent'](_0x3aeb22, _0x136eed, _0x3472df), 0x0 >= this['delay'] && this['startPop'](); }, 'startPop': function() { if (this['isBulletScore']) { this['textScale'] = 0x0, this['dur'] = 2.5, ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['scoreBullets']); var _0x49c3f4 = this['dur']; this['tween']({ 'alpha': 0x1 }, _0x49c3f4, { 'easing': ig['Tween']['Easing']['Cubic']['EaseOut'], 'onComplete': function() { this['tweenOut'](); } ['bind'](this) })['start'](), this['tween']({ 'textScale': 0x1 }, 0x1, { 'easing': ig['Tween']['Easing']['Cubic']['EaseOut'] })['start'](), (_0x49c3f4 = ig['game']['getEntitiesByType'](EntityGameControl)[0x0]) && _0x49c3f4['gainScore'](0xbb8); } else this['textScale'] = 0x1, _0x49c3f4 = this['dur'], this['tween']({ 'alpha': 0x0 }, _0x49c3f4, { 'easing': ig['Tween']['Easing']['Cubic']['EaseOut'], 'onComplete': function() { this['kill'](); } ['bind'](this) })['start'](); }, 'tweenOut': function() { this['tween']({ 'textScale': 0x0 }, 0x1, { 'easing': ig['Tween']['Easing']['Cubic']['EaseOut'], 'onComplete': function() { this['kill'](); } ['bind'](this) })['start'](); }, 'update': function() { this['parent'](), 0x0 < this['delay'] ? (this['delay'] -= ig['system']['tick'], 0x0 >= this['delay'] && this['startPop']()) : this['isBulletScore'] || (this['pos']['y'] -= 0x1); }, 'draw': function() { this['parent'](); if (!(0.1 >= this['textScale'])) { var _0x4e151f = ig['system']['context']; _0x4e151f['save'](), _0x4e151f['globalAlpha'] = this['alpha'], this['img']['drawImage'](this['pos']['x'] + this['textSize']['x'] / 0x2 * (0x1 - this['textScale']), this['pos']['y'] + this['textSize']['y'] / 0x2 * (0x1 - this['textScale']), this['textSize']['x'] * this['textScale'], this['textSize']['y'] * this['textScale']), _0x4e151f['globalAlpha'] = 0x1, _0x4e151f['restore'](); } } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.spark')['requires']('plugins.box2d.entity')['defines'](function() { EntitySpark = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['A'], 'bounciness': 0x1, 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0.3, 'friction': 0.0001, 'restitution': 0x1, 'isBounce': !0x0, 'countBounce': 0x0, 'moveAngle': 0x0, 'speed': 0x64, 'zIndex': 0x2, 'bulletIm': new ig['Image']('media/graphics/game/objects/bullet.png'), 'size': { 'x': 0xb, 'y': 0x7 }, 'oldPos': null, 'bounce_targetPoints': [], 'bounce_targetAngle': [], 'arraypos': [], 'MAX_BOUNCE': 0xa, 'name': 'spark', 'classify': 'sfx', 'lastPos': null, 'lifeDuration': 0x0, 'init': function(_0x33771c, _0x1a2c8a, _0x8744e5) { var _0x6cf167 = Math['floor'](0x168 * Math['random']()); this['targetPos'] = { 'x': 0x0, 'y': 0x0 }, this['targetPos']['x'] = _0x33771c + 0x64 * Math['cos'](_0x6cf167), this['targetPos']['y'] = _0x1a2c8a + 0x64 * Math['sin'](_0x6cf167), this['lifeDuration'] = 0.5 * Math['random']() + 0.25, this['speed'] = Math['floor'](0x19 * Math['random']() + 0x4b), this['parent'](_0x33771c, _0x1a2c8a, _0x8744e5), this['body']['SetAngle'](_0x6cf167), this['checkSpeedTimer'] = new ig['Timer'](), this['move_toward_coord'](this['targetPos']), this['body']['m_gravity'] = 0x0, this['body']['SetBullet'](!0x0), this['body']['SetAwake'](!0x0), _0x33771c = new Box2D['Common']['Math']['b2Vec2'](this['force']['x'],this['force']['y']), this['body']['ApplyForce'](_0x33771c, this['body']['GetPosition']()), this['ballTrail'] = ig['game']['spawnEntity'](EntitySparkTrails, this['pos']['x'] + this['size']['x'] / 0x2, this['pos']['y'] + this['size']['y'] / 0x2, { 'ball': this }); }, 'ready': function() {}, 'update': function() { this['body']['ApplyForce'](new Box2D['Common']['Math']['b2Vec2'](0x0,this['body']['m_mass'] * -ig['game']['gravity'] * Box2D['SCALE']), this['body']['GetPosition']()), this['parent'](), this['lifeDuration'] -= ig['system']['tick'], 0x0 >= this['lifeDuration'] && this['kill'](); }, 'draw': function() {}, 'move_toward_coord': function(_0x49f24a) { this['force'] = {}; var _0x2cc96f = _0x49f24a['x'] - this['pos']['x'] - this['size']['x'] / 0x2; _0x49f24a = _0x49f24a['y'] - this['pos']['y'] - this['size']['y'] / 0x2, this['force']['x'] = (0x0 < _0x2cc96f ? 0x1 : -0x1) * this['speed'] * (Math['abs'](_0x2cc96f) / (Math['abs'](_0x2cc96f) + Math['abs'](_0x49f24a))), this['force']['y'] = (0x1 < _0x49f24a ? 0x1 : -0x1) * this['speed'] * (Math['abs'](_0x49f24a) / (Math['abs'](_0x2cc96f) + Math['abs'](_0x49f24a))); }, 'preSolve': function(_0x26bc0d, _0x4b653d) { _0x26bc0d['type'] && (_0x26bc0d['type'] == this['type'] && _0x4b653d['SetEnabled'](!0x1), ('missile' == _0x26bc0d['classify'] || 'sfx' == _0x26bc0d['classify'] || 'enemy' == _0x26bc0d['classify']) && _0x4b653d['SetEnabled'](!0x1)); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.effect')['requires']('impact.entity')['defines'](function() { EntityEffect = ig['Entity']['extend']({ 'type': ig['Entity']['TYPE']['A'], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/fx-explosion.png',0xc8,0xc8), new ig['AnimationSheet']('media/graphics/game/objects/fx-crate-break.png',0x1e,0x1e), new ig['AnimationSheet']('media/graphics/game/objects/blood-splatter.png',0x80,0x80)], 'animeFrames': [[0x0, 0x1, 0x2, 0x3, 0x4, 0x5], [0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf], [0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7, 0x8, 0x9, 0xa, 0xb, 0xc, 0xd, 0xe, 0xf]], 'animSpeed': [0.05, 0.05, 0.05], 'sizeList': [{ 'x': 0xc8, 'y': 0xc8 }, { 'x': 0x1e, 'y': 0x1e }, { 'x': 0x80, 'y': 0x80 }], 'animSheet': null, 'zIndex': 0x8fc, 'isRandomPoint': !0x1, 'randomPointCenter': { 'x': 0x0, 'y': 0x0 }, 'randomPointDis': 0x0, 'isScaleTween': !0x1, 'scaleTween_dur': 0x1, 'scaleTween_targ': { 'x': 0x0, 'y': 0x0 }, 'isMoving': !0x1, 'moveRange_xMin': 0x19, 'moveRange_xMax': 0x32, 'moveRange_yMin': 0x0, 'moveRange_yMax': 0x0, 'moveDur': 0x1, 'init': function(_0x4d3a09, _0x3cdb9a, _0x3d1bc8) { this['animSheet'] = this['animSheetList'][_0x3d1bc8['effectType']], this['addAnim']('idle', this['animSpeed'][_0x3d1bc8['effectType']], this['animeFrames'][_0x3d1bc8['effectType']]), this['size'] = this['sizeList'][_0x3d1bc8['effectType']], _0x3d1bc8['isRandomPoint'] ? (_0x4d3a09 = _0x3d1bc8['randomPointCenter']['x'] + Math['random']() * _0x3d1bc8['randomPointDis'] * (0.5 >= Math['random']() ? 0x1 : -0x1), _0x3cdb9a = _0x3d1bc8['randomPointCenter']['y'] + Math['random']() * _0x3d1bc8['randomPointDis'] * (0.5 >= Math['random']() ? 0x1 : -0x1)) : (_0x4d3a09 -= this['size']['x'] / 0x2 - 0x14, _0x3cdb9a -= this['size']['y'] / 0x2 - 0x14), this['parent'](_0x4d3a09, _0x3cdb9a, _0x3d1bc8), _0x3d1bc8['isScaleTween'] && this['tween']({ 'scale': this['scaleTween_targ'] }, this['scaleTween_dur'], { 'easing': ig['Tween']['Easing']['Circular']['EaseOut'] })['start'](), _0x3d1bc8['isMoving'] && (_0x3d1bc8 = this['moveDur'], _0x4d3a09 = { 'x': _0x4d3a09 + (Math['random']() * (this['moveRange_xMax'] - this['moveRange_xMin']) + this['moveRange_xMin']), 'y': _0x3cdb9a + (Math['random']() * (this['moveRange_yMax'] - this['moveRange_yMin']) + this['moveRange_yMin']) }, this['tween']({ 'pos': _0x4d3a09 }, _0x3d1bc8, { 'easing': ig['Tween']['Easing']['Circular']['EaseOut'] })['start']()); }, 'update': function() { this['parent'](), this['setScale'](this['scale']['x'], this['scale']['y']), this['currentAnim']['frame'] == this['currentAnim']['sequence']['length'] - 0x1 && this['kill'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.obstacle')['requires']('plugins.box2d.entity')['defines'](function() { EntityObstacle = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x2, 'dynamicType': 0x1, 'density': 0x0, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x3, 'isMoving': !0x1, 'pathId': null, 'paths': [], 'pathCur': 0x1, 'moveSpeed': 0.3, 'rotation': 0x0, 'hasStickObj': !0x1, 'stickObj': null, 'stickObjToGet': null, 'switchPlatform': !0x1, 'sp_points': [], 'sp_curPoint': 0x0, 'sp_isMoving': !0x1, 'sp_moveSpeed': 0.15, 'sp_id': 0x0, 'classify': 'obstacle', 'animSheetList': [], 'init': function(_0xa5c0aa, _0x23591e, _0x41aedf) { this['animSheet'] = this['animSheetList'][ig['global']['wm'] ? 0x1 : ig['game']['curStage']], this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0xa5c0aa, _0x23591e, _0x41aedf); }, 'ready': function() { this['body']['SetAngle'](this['rotation'] * Math['PI'] / 0xb4), this['isMoving'] && this['getMovePath'](), this['switchPlatform'] ? (this['getMovePath_sp'](), this['fixture']['filter']['categoryBits'] = 0x2, this['fixture']['filter']['categoryBits'] = 0x6) : (this['fixture']['filter']['categoryBits'] = 0x2, this['fixture']['filter']['categoryBits'] = 0x4); }, 'getMovePath': function() { this['paths']['push']({ 'x': this['pos']['x'], 'y': this['pos']['y'], 'pathNum': 0x0 }); for (var _0x40593f = ig['game']['getEntitiesByType'](EntityMovePath), _0x24974f = 0x0; _0x24974f < _0x40593f['length']; _0x24974f++) _0x40593f[_0x24974f]['pathId'] === this['pathId'] && this['paths']['push']({ 'x': _0x40593f[_0x24974f]['pos']['x'], 'y': _0x40593f[_0x24974f]['pos']['y'], 'pathNum': _0x40593f[_0x24974f]['pathNum'] }); this['paths']['sort'](function(_0x4037e1, _0x3a187d) { return _0x4037e1['pathNum'] - _0x3a187d['pathNum']; }); }, 'getMovePath_sp': function() { this['sp_points']['push']({ 'x': this['pos']['x'], 'y': this['pos']['y'], 'pathNum': 0x0 }); for (var _0x40d5a4 = ig['game']['getEntitiesByType'](EntityMovePath), _0x3294c3 = 0x0; _0x3294c3 < _0x40d5a4['length']; _0x3294c3++) _0x40d5a4[_0x3294c3]['sp_id'] === this['sp_id'] && this['sp_points']['push']({ 'x': _0x40d5a4[_0x3294c3]['pos']['x'], 'y': _0x40d5a4[_0x3294c3]['pos']['y'], 'pathNum': _0x40d5a4[_0x3294c3]['pathNum'] }); this['sp_points']['sort'](function(_0x4b648a, _0x29f714) { return _0x4b648a['pathNum'] - _0x29f714['pathNum']; }); }, 'getStickedObject': function() {}, 'update': function() { var _0x3593a8, _0x2f3313, _0x63cfb5, _0x546e27, _0x2e8ebc, _0x30a665; this['parent'](); if (!ig['global']['wm'] && !ig['game']['box2dPaused']) { if (this['isMoving']) { ig['game']['box2dPaused'] || (_0x63cfb5 = this['body']['GetLinearVelocity'](), _0x63cfb5['x'] = 0x0, _0x63cfb5['y'] = 0x0, this['body']['SetLinearVelocity'](_0x63cfb5)), _0x2e8ebc = this['pos']['x'], _0x30a665 = this['pos']['y'], _0x63cfb5 = (this['pos']['x'] + this['size']['x'] / 0x2) * Box2D['SCALE'], _0x546e27 = (this['pos']['y'] + this['size']['y'] / 0x2) * Box2D['SCALE'], _0x3593a8 = this['paths'][this['pathCur']]['x'], _0x2f3313 = this['paths'][this['pathCur']]['y']; var _0x59e2cf = 0xb4 * Math['atan2'](_0x30a665 - _0x2f3313, _0x2e8ebc - _0x3593a8) / Math['PI']; _0x3593a8 = _0x2e8ebc - _0x3593a8, _0x2f3313 = _0x30a665 - _0x2f3313, _0x2f3313 = Math['sqrt'](_0x3593a8 * _0x3593a8 + _0x2f3313 * _0x2f3313), _0x30a665 = this['moveSpeed'] * Math['cos'](_0x59e2cf * Math['PI'] / 0xb4), _0x59e2cf = this['moveSpeed'] * Math['sin'](_0x59e2cf * Math['PI'] / 0xb4), 0x1 >= _0x2f3313 - this['moveSpeed'] && (this['pathCur']++, this['pathCur'] >= this['paths']['length'] && (this['pathCur'] = 0x0)), this['body']['SetPositionAndAngle'](new Box2D['Common']['Math']['b2Vec2'](_0x63cfb5 - _0x30a665,_0x546e27 - _0x59e2cf), 0x0); } this['switchPlatform'] && this['sp_isMoving'] && (_0x2e8ebc = this['pos']['x'], _0x30a665 = this['pos']['y'], _0x63cfb5 = (this['pos']['x'] + this['size']['x'] / 0x2) * Box2D['SCALE'], _0x546e27 = (this['pos']['y'] + this['size']['y'] / 0x2) * Box2D['SCALE'], _0x3593a8 = this['sp_points'][this['sp_curPoint']]['x'], _0x2f3313 = this['sp_points'][this['sp_curPoint']]['y'], _0x59e2cf = 0xb4 * Math['atan2'](_0x30a665 - _0x2f3313, _0x2e8ebc - _0x3593a8) / Math['PI'], _0x3593a8 = _0x2e8ebc - _0x3593a8, _0x2f3313 = _0x30a665 - _0x2f3313, _0x2f3313 = Math['sqrt'](_0x3593a8 * _0x3593a8 + _0x2f3313 * _0x2f3313), _0x30a665 = this['sp_moveSpeed'] * Math['cos'](_0x59e2cf * Math['PI'] / 0xb4), _0x59e2cf = this['sp_moveSpeed'] * Math['sin'](_0x59e2cf * Math['PI'] / 0xb4), 0x2 >= _0x2f3313 - this['sp_moveSpeed'] && (this['sp_isMoving'] = !0x1), _0x63cfb5 -= _0x30a665, _0x546e27 -= _0x59e2cf, this['body']['SetPositionAndAngle'](new Box2D['Common']['Math']['b2Vec2'](_0x63cfb5,_0x546e27), 0x0)); } }, 'draw': function() { this['parent'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.diagonal-down')['requires']('plugins.box2d.entity')['defines'](function() { EntityDiagonalDown = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x2, 'dynamicType': 0x1, 'density': 0x0, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x2, 'vertices': [{ 'x': -4.8, 'y': -6.4 }, { 'x': 4.8, 'y': 3.37 }, { 'x': 4.8, 'y': 6.4 }, { 'x': -4.87, 'y': -3.24 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/diagonal-down.png',0x60,0x80), new ig['AnimationSheet']('media/graphics/game/objects/theme02/diagonal-down.png',0x60,0x80), new ig['AnimationSheet']('media/graphics/game/objects/theme03/diagonal-down.png',0x60,0x80), new ig['AnimationSheet']('media/graphics/game/objects/theme04/diagonal-down.png',0x60,0x80)], 'size': { 'x': 0x60, 'y': 0x80 }, 'init': function(_0x338973, _0x3f6faf, _0x35f240) { this['animSheet'] = this['animSheetList'][ig['global']['wm'] ? 0x1 : ig['game']['curStage']], this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0x338973, _0x3f6faf, _0x35f240); }, 'update': function() { this['parent'](); }, 'draw': function() { this['parent'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.diagonal-up')['requires']('plugins.box2d.entity')['defines'](function() { EntityDiagonalUp = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x2, 'dynamicType': 0x1, 'density': 0x0, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x1, 'vertices': [{ 'x': -4.67, 'y': 3.09 }, { 'x': 4.8, 'y': -6.35 }, { 'x': 4.73, 'y': -3.09 }, { 'x': -4.8, 'y': 6.35 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/diagonal-up.png',0x60,0x7f), new ig['AnimationSheet']('media/graphics/game/objects/theme02/diagonal-up.png',0x60,0x7f), new ig['AnimationSheet']('media/graphics/game/objects/theme03/diagonal-up.png',0x60,0x7f), new ig['AnimationSheet']('media/graphics/game/objects/theme04/diagonal-up.png',0x60,0x7f)], 'size': { 'x': 0x60, 'y': 0x7f }, 'init': function(_0x155ca0, _0x9adcbe, _0x1fac41) { this['animSheet'] = this['animSheetList'][ig['global']['wm'] ? 0x1 : ig['game']['curStage']], this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0x155ca0, _0x9adcbe, _0x1fac41); }, 'update': function() { this['parent'](); }, 'draw': function() { this['parent'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-01')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock01 = EntityObstacle['extend']({ 'vertices': [{ 'x': -1.4, 'y': -4.2 }, { 'x': 1.4, 'y': -4.2 }, { 'x': 1.4, 'y': 4.2 }, { 'x': -1.4, 'y': 4.2 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-01.png',0x1c,0x54), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-01.png',0x1c,0x54), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-01.png',0x1c,0x54), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-01.png',0x1c,0x54)], 'size': { 'x': 0x1c, 'y': 0x54 } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-02')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock02 = EntityObstacle['extend']({ 'vertices': [{ 'x': -1.4, 'y': -5.55 }, { 'x': 1.4, 'y': -5.55 }, { 'x': 1.4, 'y': 5.55 }, { 'x': -1.4, 'y': 5.55 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-02.png',0x1c,0x6f), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-02.png',0x1c,0x6f), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-02.png',0x1c,0x6f), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-02.png',0x1c,0x6f)], 'size': { 'x': 0x1c, 'y': 0x6f } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-03')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock03 = EntityObstacle['extend']({ 'vertices': [{ 'x': -1.33, 'y': -2.53 }, { 'x': 1.36, 'y': 0.12 }, { 'x': 1.29, 'y': 2.42 }, { 'x': -1.33, 'y': -0.27 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-03.png',0x1c,0x38), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-03.png',0x1c,0x38), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-03.png',0x1c,0x38), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-03.png',0x1c,0x38)], 'size': { 'x': 0x1c, 'y': 0x38 } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-04')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock04 = EntityObstacle['extend']({ 'vertices': [{ 'x': -1.4, 'y': 0.12 }, { 'x': 1.4, 'y': -2.8 }, { 'x': 1.42, 'y': -0.18 }, { 'x': -1.4, 'y': 2.49 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-04.png',0x1c,0x38), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-04.png',0x1c,0x38), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-04.png',0x1c,0x38), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-04.png',0x1c,0x38)], 'size': { 'x': 0x1c, 'y': 0x38 } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-05')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock05 = EntityObstacle['extend']({ 'vertices': [{ 'x': -4.2, 'y': -1.4 }, { 'x': 4.2, 'y': -1.4 }, { 'x': 4.2, 'y': 1.4 }, { 'x': -4.2, 'y': 1.4 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-05.png',0x54,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-05.png',0x54,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-05.png',0x54,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-05.png',0x54,0x1c)], 'size': { 'x': 0x54, 'y': 0x1c } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-06')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock06 = EntityObstacle['extend']({ 'vertices': [{ 'x': -6.95, 'y': -1.4 }, { 'x': 6.95, 'y': -1.4 }, { 'x': 6.95, 'y': 1.4 }, { 'x': -6.95, 'y': 1.4 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-06.png',0x8b,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-06.png',0x8b,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-06.png',0x8b,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-06.png',0x8b,0x1c)], 'size': { 'x': 0x8b, 'y': 0x1c } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-07')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock07 = EntityObstacle['extend']({ 'vertices': [{ 'x': -9.75, 'y': -1.4 }, { 'x': 9.75, 'y': -1.4 }, { 'x': 9.75, 'y': 1.4 }, { 'x': -9.75, 'y': 1.4 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-07.png',0xc3,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-07.png',0xc3,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-07.png',0xc3,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-07.png',0xc3,0x1c)], 'size': { 'x': 0xc3, 'y': 0x1c } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-08')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock08 = EntityObstacle['extend']({ 'vertices': [{ 'x': -1.4, 'y': -1.4 }, { 'x': 1.4, 'y': -1.4 }, { 'x': 1.4, 'y': 1.4 }, { 'x': -1.4, 'y': 1.4 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-08.png',0x1c,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-08.png',0x1c,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-08.png',0x1c,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-08.png',0x1c,0x1c)], 'size': { 'x': 0x1c, 'y': 0x1c } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-09')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock09 = EntityObstacle['extend']({ 'box2dType': 0x1, 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-09.png',0x80,0x80), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-09.png',0x80,0x80), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-09.png',0x80,0x80), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-09.png',0x80,0x80)], 'size': { 'x': 0x80, 'y': 0x80 } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-05-moving')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlock05Moving = EntityObstacle['extend']({ 'vertices': [{ 'x': -4.2, 'y': -1.4 }, { 'x': 4.2, 'y': -1.4 }, { 'x': 4.2, 'y': 1.4 }, { 'x': -4.2, 'y': 1.4 }], 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/theme01/block-05.png',0x54,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme02/block-05.png',0x54,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme03/block-05.png',0x54,0x1c), new ig['AnimationSheet']('media/graphics/game/objects/theme04/block-05.png',0x54,0x1c)], 'size': { 'x': 0x54, 'y': 0x1c }, 'isMoving': !0x0 }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-switch')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlockSwitch = EntityObstacle['extend']({ 'vertices': [{ 'x': -4.8, 'y': -0.8 }, { 'x': 4.8, 'y': -0.8 }, { 'x': 4.8, 'y': 0.8 }, { 'x': -4.8, 'y': 0.8 }], 'zIndex': 0x0, 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-hor.png',0x60,0x10), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-hor.png',0x60,0x10), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-hor.png',0x60,0x10), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-hor.png',0x60,0x10)], 'size': { 'x': 0x60, 'y': 0x10 }, 'switchPlatform': !0x0 }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.block-switch-vert')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityBlockSwitchVert = EntityObstacle['extend']({ 'vertices': [{ 'x': -0.8, 'y': -4.8 }, { 'x': 0.8, 'y': -4.8 }, { 'x': 0.8, 'y': 4.8 }, { 'x': -0.8, 'y': 4.8 }], 'zIndex': 0x0, 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-vert.png',0x10,0x60), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-vert.png',0x10,0x60), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-vert.png',0x10,0x60), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-vert.png',0x10,0x60)], 'size': { 'x': 0x10, 'y': 0x60 }, 'switchPlatform': !0x0 }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.move-path')['requires']('plugins.box2d.entity')['defines'](function() { EntityMovePath = ig['Box2DEntity']['extend']({ 'dynamicType': 0x1, 'pathId': '', 'size': { 'x': 0xa, 'y': 0xa }, 'pathNum': 0x0, 'init': function(_0x49604f, _0x5c2bee, _0x1e66c0) { this['parent'](_0x49604f, _0x5c2bee, _0x1e66c0); }, 'preSolve': function(_0x39975b, _0x30ff29) { _0x30ff29['SetEnabled'](!0x1); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.moving-block')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityMovingBlock = EntityObstacle['extend']({ 'vertices': [{ 'x': -0.8, 'y': -4.8 }, { 'x': 0.8, 'y': -4.8 }, { 'x': 0.8, 'y': 4.8 }, { 'x': -0.8, 'y': 4.8 }], 'zIndex': 0x0, 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-steel-vert.png',0xe,0x54), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-steel-vert.png',0xe,0x54), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-steel-vert.png',0xe,0x54), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-steel-vert.png',0xe,0x54)], 'size': { 'x': 0xe, 'y': 0x54 }, 'isMoving': !0x0 }); }), ig['baked'] = !0x0, ig['module']('game.entities.obstacles.moving-block-hori')['requires']('plugins.box2d.entity', 'game.entities.obstacles.obstacle')['defines'](function() { EntityMovingBlockHori = EntityObstacle['extend']({ 'vertices': [{ 'x': -4.2, 'y': -0.7 }, { 'x': 4.2, 'y': -0.7 }, { 'x': 4.2, 'y': 0.7 }, { 'x': -4.2, 'y': 0.7 }], 'zIndex': 0x0, 'animSheetList': [new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-steel-hori.png',0x54,0xe), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-steel-hori.png',0x54,0xe), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-steel-hori.png',0x54,0xe), new ig['AnimationSheet']('media/graphics/game/objects/mov-platform-steel-hori.png',0x54,0xe)], 'size': { 'x': 0x54, 'y': 0xe }, 'isMoving': !0x0 }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.wheel')['requires']('plugins.box2d.entity')['defines'](function() { EntityWheel = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x1, 'dynamicType': 0x0, 'density': 0x1, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x1, 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/wheel.png',0x38,0x38), 'size': { 'x': 0x38, 'y': 0x38 }, 'classify': 'object', 'isMoving': !0x1, 'init': function(_0x13e6cc, _0x5baabe, _0x236bb9) { this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0x13e6cc, _0x5baabe, _0x236bb9); }, 'update': function() { this['body']['ApplyForce'](new Box2D['Common']['Math']['b2Vec2'](0x0,0x0), this['body']['GetPosition']()), this['parent'](); var _0xe075d = this['body']['GetLinearVelocity'](); if (this['isMoving']) { var _0x4066fd = ig['game']['getEntitiesByType'](EntityGameControl)[0x0]; 0x1 > Math['abs'](_0xe075d['x']) && 0x1 > Math['abs'](_0xe075d['y']) && (this['isMoving'] = !0x1, (_0x4066fd = ig['game']['getEntitiesByType'](EntityGameControl)[0x0]) && _0x4066fd['curBulletsInGame']--); } else ig['game']['getEntitiesByType'](EntityGameControl), 0xa < Math['abs'](_0xe075d['x']) && 0xa < Math['abs'](_0xe075d['y']) && (this['isMoving'] = !0x0, (_0x4066fd = ig['game']['getEntitiesByType'](EntityGameControl)[0x0]) && _0x4066fd['curBulletsInGame']++); }, 'draw': function() { this['parent'](); }, 'beginContact': function(_0xb3d457, _0x40bc8d) { if (_0xb3d457['bodyPart']) _0x40bc8d['SetEnabled'](!0x1); else { if (_0xb3d457['classify'] && 'missile' == _0xb3d457['classify']) { _0xb3d457['body']['GetPosition'](); var _0x1167ce = _0xb3d457['bulletAng'] , _0x1167ce = new Box2D['Common']['Math']['b2Vec2'](0x9c4 * Math['cos'](_0x1167ce),0x9c4 * Math['sin'](_0x1167ce)); this['body']['ApplyImpulse'](_0x1167ce, this['body']['GetPosition']()), _0xb3d457['destroy'](); } } }, 'preSolve': function(_0x43855a, _0x417a94) { _0x43855a['bodyPart'] && _0x417a94['SetEnabled'](!0x1); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.crate-destructible')['requires']('plugins.box2d.entity')['defines'](function() { EntityCrateDestructible = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0x5, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x1, 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/crate-breakable-large.png',0x54,0x54), 'size': { 'x': 0x54, 'y': 0x54 }, 'classify': 'object', 'destructible': !0x0, 'tossObstacles': !0x1, 'explodeRadius': 0xaf, 'init': function(_0x2d77f6, _0x5eda33, _0x544477) { this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0x2d77f6, _0x5eda33, _0x544477); }, 'update': function() { this['parent'](); }, 'draw': function() { this['parent'](); }, 'beginContact': function(_0x1a4e00, _0x2fd7e4) { if (_0x1a4e00['bodyPart']) _0x2fd7e4['SetEnabled'](!0x1); else { if (_0x1a4e00['classify'] && 'missile' == _0x1a4e00['classify']) { for (var _0xd32c8e = 0x1; 0x1e >= _0xd32c8e; _0xd32c8e++) ig['game']['spawnEntity'](EntityEffect, this['pos']['x'], this['pos']['y'], { 'effectType': 0x1, 'isRandomPoint': !0x0, 'randomPointDis': 0x28, 'randomPointCenter': this['pos'], 'isScaleTween': !0x0, 'scaleTween_dur': 1.35, 'isMoving': !0x0, 'moveDur': 1.5, 'moveRange_xMin': -0x3c, 'moveRange_xMax': 0x5a, 'moveRange_yMin': -0x1e, 'moveRange_yMax': 0x1e }); if (this['tossObstacles']) for (var _0x44d955 = ig['game']['entities'], _0xd32c8e = 0x0; _0xd32c8e < _0x44d955['length']; _0xd32c8e++) if (_0x44d955[_0xd32c8e]['classify'] && !('object' != _0x44d955[_0xd32c8e]['classify'] || _0x44d955[_0xd32c8e] == this)) { var _0x2f2f70 = this['pos']['x'] - (_0x44d955[_0xd32c8e]['pos']['x'] + _0x44d955[_0xd32c8e]['size']['x'] / 0x2) , _0x3aef3b = this['pos']['y'] - (_0x44d955[_0xd32c8e]['pos']['y'] + _0x44d955[_0xd32c8e]['size']['y'] / 0x2); Math['sqrt'](_0x2f2f70 * _0x2f2f70 + _0x3aef3b * _0x3aef3b) <= this['explodeRadius'] && (this['body']['GetPosition'](), _0x2f2f70 = Math['atan2'](_0x44d955[_0xd32c8e]['pos']['y'] - this['pos']['y'], _0x44d955[_0xd32c8e]['pos']['x'] - this['pos']['x']), _0x2f2f70 = new Box2D['Common']['Math']['b2Vec2'](0xfa0 * Math['cos'](_0x2f2f70),0xfa0 * Math['sin'](_0x2f2f70)), _0x44d955[_0xd32c8e]['body']['ApplyImpulse'](_0x2f2f70, _0x44d955[_0xd32c8e]['body']['GetPosition']()), console['log']('toss')); } ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['crateBreak']), _0x1a4e00['destroy'](), this['kill'](); } } }, 'preSolve': function(_0x594a31, _0x4cff9c) { _0x594a31['bodyPart'] && _0x4cff9c['SetEnabled'](!0x1); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.crate-destructible-small')['requires']('plugins.box2d.entity', 'game.entities.objects.crate-destructible')['defines'](function() { EntityCrateDestructibleSmall = EntityCrateDestructible['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/crate-breakable-small.png',0x3b,0x3b), 'size': { 'x': 0x3b, 'y': 0x3b } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.crate')['requires']('plugins.box2d.entity')['defines'](function() { EntityCrate = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0x1, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x1, 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/crate-bounce-large.png',0x54,0x54), 'size': { 'x': 0x54, 'y': 0x54 }, 'classify': 'object', 'forceOnHit': 0x3e8, 'init': function(_0xf67414, _0x29e199, _0x436189) { this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0xf67414, _0x29e199, _0x436189); }, 'update': function() { this['body']['ApplyForce'](new Box2D['Common']['Math']['b2Vec2'](0x0,0x0), this['body']['GetPosition']()), this['parent'](); }, 'draw': function() { this['parent'](); }, 'beginContact': function(_0x57856e, _0x59ab63) { if (_0x57856e['bodyPart']) _0x59ab63['SetEnabled'](!0x1); else { if (_0x57856e['classify'] && 'missile' == _0x57856e['classify'] && 'missile' == _0x57856e['classify']) { _0x57856e['body']['GetPosition'](); var _0x20de1b = _0x57856e['bulletAng']; ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['projectileBounce']); var _0x3a8a4c = this['forceOnHit'] , _0x20de1b = new Box2D['Common']['Math']['b2Vec2'](_0x3a8a4c * Math['cos'](_0x20de1b),_0x3a8a4c * Math['sin'](_0x20de1b)); this['body']['ApplyImpulse'](_0x20de1b, this['body']['GetPosition']()), _0x57856e['destroy'](); } } }, 'preSolve': function(_0x23189e, _0x3c739c) { _0x23189e['bodyPart'] && _0x3c739c['SetEnabled'](!0x1); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.crate-half')['requires']('plugins.box2d.entity', 'game.entities.objects.crate')['defines'](function() { EntityCrateHalf = EntityCrate['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/crate-bounce-half.png',0x3b,0x1e), 'size': { 'x': 0x3b, 'y': 0x1e } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.crate-small')['requires']('plugins.box2d.entity', 'game.entities.objects.crate')['defines'](function() { EntityCrateSmall = EntityCrate['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/crate-bounce-small.png',0x1c,0x1c), 'size': { 'x': 0x1c, 'y': 0x1c } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.plank')['requires']('plugins.box2d.entity')['defines'](function() { EntityPlank = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0x1, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x1, 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/plank.png',0xdf,0xe), 'size': { 'x': 0xdf, 'y': 0xe }, 'classify': 'object', 'dontKill': !0x1, 'init': function(_0x4ea718, _0x1c9a71, _0x4bcb48) { this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0x4ea718, _0x1c9a71, _0x4bcb48); }, 'update': function() { this['parent'](); if (this['dontKill']) { var _0x402807 = this['body']['GetLinearVelocity'](); if ((0.1 < _0x402807['x'] || -0.1 > _0x402807['x']) && (0.1 < _0x402807['y'] || -0.1 > _0x402807['y'])) this['dontKill'] = !0x1; } }, 'draw': function() { this['parent'](); }, 'beginContact': function(_0x5e64da, _0x41d974) { if (_0x5e64da['bodyPart']) _0x41d974['SetEnabled'](!0x1); else { if (_0x5e64da['classify'] && 'missile' == _0x5e64da['classify']) { _0x5e64da['body']['GetPosition'](); var _0x518aaa = _0x5e64da['bulletAng'] , _0x518aaa = new Box2D['Common']['Math']['b2Vec2'](0x1388 * Math['cos'](_0x518aaa),0x1388 * Math['sin'](_0x518aaa)); ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['wood']), this['body']['ApplyImpulse'](_0x518aaa, this['body']['GetPosition']()), _0x5e64da['destroy'](); } } }, 'preSolve': function(_0x40ed53, _0x5165b3) { _0x40ed53['bodyPart'] && _0x5165b3['SetEnabled'](!0x1); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.crate-medium')['requires']('plugins.box2d.entity', 'game.entities.objects.crate')['defines'](function() { EntityCrateMedium = EntityCrate['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/crate-bounce-medium.png',0x3b,0x3b), 'size': { 'x': 0x3b, 'y': 0x3b }, 'forceOnHit': 0x5dc }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.switch')['requires']('plugins.box2d.entity')['defines'](function() { EntitySwitch = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x1, 'density': 0x1, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x1, 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/switch.png',0x21,0x21), 'size': { 'x': 0x21, 'y': 0x21 }, 'classify': 'switch', 'switch_on': !0x1, 'switch_id': 0x0, 'switch_obj': [], 'contactDelayDur': 0x0, 'obsToTurnOn': [], 'obsToTurnOn_id': 0x0, 'obsToTurnOn_started': !0x1, 'init': function(_0x4863f3, _0x2b5441, _0x3bcb28) { this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['addAnim']('on', 0x1, [0x1]), this['parent'](_0x4863f3, _0x2b5441, _0x3bcb28); }, 'ready': function() { for (var _0x1fa1d7 = ig['game']['entities'], _0x4ad986 = _0x1fa1d7['length'], _0x34d509 = 0x0; _0x34d509 < _0x4ad986; _0x34d509++) other = _0x1fa1d7[_0x34d509], other['classify'] && 'obstacle' == other['classify'] && (_0x1fa1d7[_0x34d509]['switch_id'] === this['obsToTurnOn_id'] && this['obsToTurnOn']['push'](_0x1fa1d7[_0x34d509]), _0x1fa1d7[_0x34d509]['switch_id'] === this['switch_id'] && this['switch_obj']['push'](_0x1fa1d7[_0x34d509])); }, 'update': function() { this['parent'](), 0x0 < this['contactDelayDur'] && (this['contactDelayDur'] -= ig['system']['tick']); }, 'draw': function() { this['parent'](); }, 'beginContact': function(_0x5380e9, _0x398305) { _0x398305['SetEnabled'](!0x1); }, 'preSolve': function(_0x4b0cbb, _0x23596e) { if (!_0x4b0cbb['bodyPart'] && _0x4b0cbb['classify'] && !('missile' != _0x4b0cbb['classify'] || 0x0 < this['contactDelayDur'])) { if (this['switch_on']) { this['currentAnim'] = this['anims']['idle']; for (_0x816803 = 0x0; _0x816803 < this['switch_obj']['length']; _0x816803++) this['switch_obj'][_0x816803]['sp_curPoint'] = 0x0; this['switch_on'] = !0x1; } else { this['currentAnim'] = this['anims']['on']; for (var _0x816803 = 0x0; _0x816803 < this['switch_obj']['length']; _0x816803++) this['switch_obj'][_0x816803]['sp_curPoint'] = 0x1; this['switch_on'] = !0x0; } for (_0x816803 = 0x0; _0x816803 < this['switch_obj']['length']; _0x816803++) this['switch_obj'][_0x816803]['sp_isMoving'] = !0x0; this['contactDelayDur'] = 0.4; } _0x23596e['SetEnabled'](!0x1); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.plank-vert')['requires']('plugins.box2d.entity', 'game.entities.objects.plank')['defines'](function() { EntityPlankVert = EntityPlank['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/plank-vert.png',0xe,0xdf), 'size': { 'x': 0xe, 'y': 0xdf } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.rotor')['requires']('plugins.box2d.entity')['defines'](function() { EntityRotor = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0x1, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x1, 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/rotor.png',0xa,0x7b), 'size': { 'x': 0xa, 'y': 0x7b }, 'classify': 'object', 'isMoving': !0x1, 'init': function(_0x5a2831, _0x4c2df9, _0x5b6536) { this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0x5a2831, _0x4c2df9, _0x5b6536), ig['global']['wm'] || this['createJoint'](); }, 'createJoint': function(_0x21b117) { var _0x57eaf3 = new Box2D['Dynamics']['Joints']['b2RevoluteJointDef'](); this['box'] = ig['game']['spawnEntity'](EntityPaddleJoint, this['pos']['x'] + this['size']['x'] / 0x2, this['pos']['y'] + this['size']['y'] / 0x2, { 'hostEntity': this }), _0x57eaf3['bodyA'] = this['box']['body'], _0x57eaf3['bodyB'] = this['body'], _0x57eaf3['collideConnected'] = !0x1, _0x57eaf3['localAnchorA'] = new Box2D['Common']['Math']['b2Vec2'](0x0,0x0), _0x57eaf3['localAnchorB'] = new Box2D['Common']['Math']['b2Vec2'](_0x21b117,0x0), _0x57eaf3['enableMotor'] = !0x0, _0x57eaf3['motorSpeed'] = 0x5, _0x57eaf3['maxMotorTorque'] = 0x14, this['joint'] = ig['world']['CreateJoint'](_0x57eaf3); }, 'update': function() { this['parent'](); }, 'draw': function() { this['parent'](); }, 'beginContact': function(_0xd7064c, _0x2bed8a) { _0xd7064c['bodyPart'] && _0x2bed8a['SetEnabled'](!0x1); }, 'preSolve': function() {} }), EntityPaddleJoint = ig['Box2DEntity']['extend']({ 'box2dType': 0x1, 'dynamicType': 0x1, 'density': 0x1, 'friction': 0x0, 'restitution': 0x0, 'gravityFactor': 0x0, 'init': function(_0x32a492, _0x28676f, _0x35d5af) { this['parent'](_0x32a492, _0x28676f, _0x35d5af); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.objects.crate-half2')['requires']('plugins.box2d.entity', 'game.entities.objects.crate')['defines'](function() { EntityCrateHalf2 = EntityCrate['extend']({ 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/crate-bounce-half2.png',0x1e,0x3b), 'size': { 'x': 0x1e, 'y': 0x3b } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.btn')['requires']('impact.entity')['defines'](function() { EntityBtn = ig['Entity']['extend']({ 'gravityFactor': 0x0, 'logo': null, 'zIndex': 0x14, 'isClicking': !0x1, 'isEnabled': !0x0, 'isHidden': !0x1, 'isLocked': 0x0, 'interactable': !0x0, 'hasPressAnim': !0x0, 'oriPos': { 'x': 0x0, 'y': 0x0 }, 'scaling': 0x0, 'playSound': !0x0, 'init': function(_0x275b6d, _0x23d8cd, _0xcd1ce9) { ig['game']['sortEntitiesDeferred'](), this['parent'](_0x275b6d, _0x23d8cd, _0xcd1ce9), this['oriPos'] = this['pos']; }, 'update': function() { this['parent'](); var _0x31ef6f = ig['game']['getEntitiesByType'](EntityPointer)[0x0]; _0x31ef6f && (_0x31ef6f['refreshPos'](), this['isEnabled'] && !this['isHidden'] && (ig['input']['pressed']('click') && (this['checkMousePos'](_0x31ef6f) ? this['clicking']() : this['isClicking'] = !0x1), this['isClicking'] && ig['input']['state']('click') && !this['checkMousePos'](_0x31ef6f) && (this['isClicking'] = !0x1), ig['input']['released']('click') && this['isClicking'] && this['released'](), 0x0 < this['isLocked'] && this['isLocked']--)); }, 'draw': function() { this['isHidden'] || this['logoImg']['draw'](this['pos']['x'], this['pos']['y'], this['isClicking'] && this['isEnabled'] && this['hasPressAnim'] ? this['size']['x'] : 0x0, 0x0, this['size']['x'], this['size']['y']); }, 'checkMousePos': function(_0x24c5ba) { return _0x24c5ba['pos']['x'] - ig['game']['screen']['x'] >= this['pos']['x'] && _0x24c5ba['pos']['x'] - ig['game']['screen']['x'] <= this['pos']['x'] + this['size']['x'] && _0x24c5ba['pos']['y'] - ig['game']['screen']['y'] >= this['pos']['y'] && _0x24c5ba['pos']['y'] - ig['game']['screen']['y'] <= this['pos']['y'] + this['size']['y']; }, 'clicking': function() { !this['isClicking'] && this['isEnabled'] && 0x0 >= this['isLocked'] && (this['isClicking'] = !0x0); }, 'released': function() { this['isClicking'] && this['isEnabled'] && (this['isClicking'] = !0x1, this['playSound'] && ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['buttonPress']), this['isEnabled'] && (this['interact'](), this['isLocked'] = 0x3)); }, 'interact': function() {} }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.btn-play')['requires']('impact.entity', 'game.entities.buttons.btn')['defines'](function() { EntityBtnPlay = EntityBtn['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-play.png',0x107,0x6b), 'size': { 'x': 0x107, 'y': 0x6b }, 'mainWindow': null, 'zIndex': 0xbb9, 'update': function() { this['parent'](); }, 'interact': function() { ig['game']['director']['jumpTo'](LevelStageSelect); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.btn-settings')['requires']('impact.entity', 'game.entities.buttons.btn')['defines'](function() { EntityBtnSettings = EntityBtn['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-settings.png',0x4b,0x52), 'size': { 'x': 0x4b, 'y': 0x52 }, 'mainWindow': null, 'zIndex': 0xbb9, 'update': function() { this['parent'](); }, 'interact': function() { var _0x52bc36 = ig['game']['getEntitiesByType'](EntityGameControl)[0x0]; if (_0x52bc36) { ig['game']['box2dPaused'] = !0x0, _0x52bc36['uiControl']['btnPause']['isEnabled'] = !0x1; try { ig['poki']['stopGameplay'](); } catch (_0x97f401) {} _0x52bc36['player']['aiming'] = !0x1, ig['game']['spawnEntity'](EntitySettings, 0x0, 0x0, { 'isPause': !0x0 }); } else (_0x52bc36 = ig['game']['getEntitiesByType'](EntityButtonMoreGames)[0x0]) && _0x52bc36['hide'](), (_0x52bc36 = ig['game']['getEntitiesByType'](EntityHomeControl)[0x0]) && _0x52bc36['btnFullScreen']['hide'](), ig['game']['spawnEntity'](EntitySettings, 0x0, 0x0); var _0x5e028f = ig['game']['getEntitiesByType'](EntityLevelSelectControl)[0x0]; if (_0x5e028f) { for (_0x52bc36 = 0x0; _0x52bc36 < _0x5e028f['btnLevels']['length']; _0x52bc36++) _0x5e028f['btnLevels'][_0x52bc36]['isEnabled'] = !0x1; _0x5e028f['btnSettings']['isEnabled'] = !0x1, _0x5e028f['btnPrev']['isEnabled'] = !0x1; } if (_0x5e028f = ig['game']['getEntitiesByType'](EntityStageSelectControl)[0x0]) { for (_0x52bc36 = 0x0; _0x52bc36 < _0x5e028f['btnStage']['length']; _0x52bc36++) _0x5e028f['btnStage'][_0x52bc36]['isEnabled'] = !0x1; _0x5e028f['btnSettings']['isEnabled'] = !0x1, _0x5e028f['btnPrev']['isEnabled'] = !0x1; } ig['game']['isGamePaused'] = !0x0; } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.btn-stage-select')['requires']('impact.entity', 'game.entities.buttons.btn')['defines'](function() { EntityBtnStageSelect = EntityBtn['extend']({ 'logoImgList': [new ig['Image']('media/graphics/game/ui/stage1.png'), new ig['Image']('media/graphics/game/ui/stage2.png'), new ig['Image']('media/graphics/game/ui/stage3.png'), new ig['Image']('media/graphics/game/ui/stage4.png')], 'logoImg': null, 'size': { 'x': 0xd7, 'y': 0x168 }, 'mainWindow': null, 'zIndex': 0xbb9, 'hasPressAnim': !0x1, 'isUnlocked': !0x1, 'stageNum': 0x0, 'stageScore': 0x0, 'stageStars': 0x0, 'stageStars_Max': 0x0, 'starImg': new ig['Image']('media/graphics/game/ui/star-level.png'), 'lockImg': new ig['Image']('media/graphics/game/ui/lock.png'), 'init': function(_0x390e2f, _0x179dcb, _0x52ccf8) { this['logoImg'] = this['logoImgList'][_0x52ccf8['stageNum']], this['parent'](_0x390e2f, _0x179dcb, _0x52ccf8), this['isUnlocked'] = 0x1 === ig['game']['sessionData']['episodeUnlocked'][this['stageNum']] ? !0x0 : !0x1; }, 'update': function() { this['parent'](); }, 'draw': function() { this['parent'](), this['isUnlocked'] ? (this['starImg']['draw'](this['pos']['x'] + 0x32, this['pos']['y'] + 0x122), this['mainWindow']['textDrawer']['textDraw']({ 'tx': this['stageScore'], 'font': 'font2', 'px': 0x12, 'align': 'right', 'x': this['pos']['x'] + 0xc8, 'y': this['pos']['y'] + 0x12c, 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 }), this['mainWindow']['textDrawer']['textDraw']({ 'tx': this['stageStars'] + '/' + this['stageStars_Max'], 'font': 'font2', 'px': 0x1b, 'align': 'right', 'x': this['pos']['x'] + 0xc8, 'y': this['pos']['y'] + 0x14a, 'col': '#fda100', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 })) : (this['lockImg']['draw'](this['pos']['x'] + 0x3d, this['pos']['y'] + 0x6e), this['mainWindow']['textDrawer']['textDraw']({ 'tx': _STRINGS['Game']['ComingSoon'], 'font': 'font2', 'px': 0x12, 'align': 'center', 'x': this['pos']['x'] + 0x7d, 'y': this['pos']['y'] + 0x14b, 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 })); }, 'interact': function() { this['isUnlocked'] && (ig['game']['curStage'] = this['stageNum'], ig['game']['director']['jumpTo'](LevelLevelSelect)); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.btn-level-select')['requires']('impact.entity', 'game.entities.buttons.btn')['defines'](function() { EntityBtnLevelSelect = EntityBtn['extend']({ 'logoImgList': [new ig['Image']('media/graphics/game/ui/level-marker.png'), new ig['Image']('media/graphics/game/ui/level-marker-empty.png')], 'logoImg': null, 'size': { 'x': 0x46, 'y': 0x31 }, 'lvlControl': null, 'zIndex': 0xbb9, 'starImg': new ig['Image']('media/graphics/game/ui/star.png'), 'hasPressAnim': !0x1, 'playSound': !0x1, 'isUnlocked': !0x1, 'lvlNum': 0x0, 'lvlTxt': 0x0, 'origPosX': 0x0, 'init': function(_0x5aa806, _0x274309, _0x28b5a) { this['origPosX'] = _0x5aa806, this['logoImg'] = this['logoImgList'][0x1 === _0x28b5a['isUnlocked'] ? 0x0 : 0x1], 0x1 != _0x28b5a['isUnlocked'] && (_0x274309 -= 0xa), this['parent'](_0x5aa806, _0x274309, _0x28b5a); }, 'update': function() { this['pos']['x'] = this['origPosX'] + this['lvlControl']['cameraX'], this['parent'](); }, 'interact': function() { if (!(0.4 <= this['lvlControl']['scrollingDur']) && 0x1 === this['isUnlocked']) { ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['buttonPress']), ig['game']['curLevel'] = this['lvlNum']; for (var _0x27e4eb = 0x0, _0x2c0cdb = 0x0; _0x2c0cdb < ig['game']['curStage']; _0x2c0cdb++) _0x27e4eb += ig['game']['totalLevels'][_0x2c0cdb]; ig['game']['curLevelFromStage'] = this['lvlNum'] - _0x27e4eb, ig['game']['director']['loadLevel'](0x2 + this['lvlNum']); } }, 'draw': function() { this['parent'](); var _0x5c6118 = ig['system']['context']; _0x5c6118['save'](); if (this['isUnlocked']) { this['lvlControl']['textDrawer']['textDraw']({ 'tx': this['lvlTxt'] + 0x1, 'font': 'font2', 'px': 0x19, 'align': 'center', 'x': this['pos']['x'] + 0x23, 'y': this['pos']['y'], 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x5, 'scX': 0x1, 'scY': 0x1 }); var _0x3724d9 = ig['game']['sessionData']['lvlStars'][ig['game']['curStage']][this['lvlTxt']]; 0x1 <= _0x3724d9 && this['starImg']['drawImage'](this['pos']['x'] - 0xa, this['pos']['y'] + 0xf, 0x1e, 0x1e), 0x2 <= _0x3724d9 && this['starImg']['drawImage'](this['pos']['x'] + 0x2d, this['pos']['y'] + 0xf, 0x1e, 0x1e), 0x3 <= _0x3724d9 && this['starImg']['drawImage'](this['pos']['x'] + 0x12, this['pos']['y'] + 0x19, 0x1e, 0x1e); } _0x5c6118['restore'](); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.btn-back')['requires']('impact.entity', 'game.entities.buttons.btn')['defines'](function() { EntityBtnBack = EntityBtn['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-back.png',0x4b,0x52), 'size': { 'x': 0x4b, 'y': 0x52 }, 'mainWindow': null, 'zIndex': 0xbb9, 'update': function() { this['parent'](); }, 'interact': function() { ig['game']['getEntitiesByType'](EntityStageSelectControl)[0x0] ? ig['game']['director']['jumpTo'](LevelHome) : ig['game']['director']['jumpTo'](LevelStageSelect); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.btn-retry')['requires']('impact.entity', 'game.entities.buttons.btn')['defines'](function() { EntityBtnRetry = EntityBtn['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-retry.png',0xe4,0x5f), 'size': { 'x': 0xe4, 'y': 0x5f }, 'mainWindow': null, 'zIndex': 0xc1d, 'update': function() { this['parent'](); }, 'interact': function() { ig['game']['director']['loadLevel'](0x2 + ig['game']['curLevel']); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.buttons.btn-next')['requires']('impact.entity', 'game.entities.buttons.btn')['defines'](function() { EntityBtnNext = EntityBtn['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-next.png',0xe4,0x5f), 'size': { 'x': 0xe4, 'y': 0x5f }, 'mainWindow': null, 'zIndex': 0xc1d, 'update': function() { this['parent'](); }, 'interact': function() { 0x0 === ig['game']['curLevel'] % 0x1e ? ig['game']['director']['jumpTo'](LevelStageSelect) : (ig['game']['curLevel']++, ig['game']['curLevelFromStage']++, ig['game']['director']['loadLevel'](0x2 + ig['game']['curLevel'])); } }); }), ig['baked'] = !0x0, ig['module']('game.entities.panels.settings')['requires']('impact.entity', 'game.entities.buttons.btn')['defines'](function() { EntitySettings = ig['Entity']['extend']({ 'zIndex': 0x1770, 'pointer': null, 'bg': new ig['Image']('media/graphics/game/ui/background-2.png'), 'imgBar': new ig['Image']('media/graphics/game/ui/slidebar-1.png'), 'sizeBar': { 'x': 0xcd, 'y': 0xf }, 'imgBase': new ig['Image']('media/graphics/game/ui/slidebar-0.png'), 'imgKnob': new ig['Image']('media/graphics/game/ui/slide-knob.png'), 'icon_music': new ig['Image']('media/graphics/game/ui/music-icon.png'), 'icon_sound': new ig['Image']('media/graphics/game/ui/sound-icon.png'), 'title_paused': new ig['Image']('media/graphics/game/ui/title-pause.png'), 'title_settings': new ig['Image']('media/graphics/game/ui/title-settings.png'), 'square_musicSliderKnob': { 'x': 0x1a2, 'y': 0x100, 'w': 0xcd, 'h': 0xf }, 'square_soundSliderKnob': { 'x': 0x1a2, 'y': 0x9e, 'w': 0xcd, 'h': 0xf }, 'windowTargetPos': { 'x': 0x0, 'y': 0x0 }, 'offset_musicSliderKnob': { 'x': 0x1a2, 'y': 0xfb, 'w': 0xcd, 'h': 0xf }, 'offset_soundSliderKnob': { 'x': 0x1a2, 'y': 0x99, 'w': 0xcd, 'h': 0xf }, 'offset_musicBar': { 'x': 0x1a2, 'y': 0x100 }, 'offset_soundBar': { 'x': 0x1a2, 'y': 0x9e }, 'btnOk': null, 'btnRetry': null, 'btnHome': null, 'isPause': !0x1, 'lockToSoundRect': !0x1, 'lockToMusicRect': !0x1, 'musicVol': 0x1, 'soundVol': 0x1, 'init': function(_0x56f69e, _0x21f133, _0x2dc405) { this['parent'](_0x56f69e, _0x21f133, _0x2dc405); if (this['isPause']) this['btnOk'] = ig['game']['spawnEntity'](EntityBtnSettingsResume, 0x190, 0x133, { 'settings': this }), this['btnRetry'] = ig['game']['spawnEntity'](EntityBtnSettingsRetry, 0x190, 0x17d, { 'settings': this }), this['btnHome'] = ig['game']['spawnEntity'](EntityBtnSettingsHome, 0x190, 0x1c7, { 'settings': this }); else { if (this['btnOk'] = ig['game']['spawnEntity'](EntityBtnSettingsOk, 0x163, 0x133, { 'settings': this }), _0x56f69e = ig['game']['getEntitiesByType'](EntityHomeControl)[0x0]) _0x56f69e['btnPlay']['isHidden'] = !0x0, _0x56f69e['btnSettings']['isHidden'] = !0x0; } this['musicVol'] = ig['game']['sessionData']['music'], this['soundVol'] = ig['game']['sessionData']['sound'], this['pointer'] = ig['game']['getEntitiesByType'](EntityPointer)[0x0], ig['game']['isGamePaused'] = !0x0; }, 'update': function() { this['_checkClick'](), this['parent'](); }, 'draw': function() { var _0x16f95d = ig['system']['context']; _0x16f95d['save'](), this['isPause'] || this['bg']['draw'](0x0, 0x0), _0x16f95d = ig['system']['context'], _0x16f95d['save'](), _0x16f95d['globalAlpha'] = 0.4, _0x16f95d['beginPath'](), _0x16f95d['rect'](0x0, 0x0, ig['system']['width'], ig['system']['height']), _0x16f95d['fillStyle'] = '#000000', _0x16f95d['fill'](), _0x16f95d['restore'](), this['isPause'] ? this['title_paused']['draw'](0x137, 0x2c) : this['title_settings']['draw'](0x137, 0x2c), this['icon_music']['draw'](0x14f, 0x8c), this['icon_sound']['draw'](0x14f, 0xf4); var _0x599c71 = this['imgKnob']['width'] , _0x49ac05 = ig['soundHandler']['sfxPlayer']['getVolume']() , _0x3c51ae = (this['offset_musicSliderKnob']['w'] - _0x599c71) * _0x49ac05; isNaN(_0x49ac05) && (_0x49ac05 = 0x1), this['imgBase']['draw'](this['pos']['x'] + this['offset_musicBar']['x'], this['pos']['y'] + this['offset_musicBar']['y'], 0x0, 0x0, this['sizeBar']['x'], this['sizeBar']['y']), 0x0 < _0x49ac05 && (_0x49ac05 *= this['sizeBar']['x'], this['imgBar']['draw'](this['pos']['x'] + this['offset_musicBar']['x'], this['pos']['y'] + this['offset_musicBar']['y'], 0x0, 0x0, _0x49ac05, this['sizeBar']['y'])), this['imgKnob']['draw'](this['offset_musicSliderKnob']['x'] + _0x3c51ae + this['pos']['x'], this['offset_musicSliderKnob']['y'] + this['pos']['y']), _0x49ac05 = ig['soundHandler']['bgmPlayer']['getVolume'](), _0x3c51ae = (this['offset_soundSliderKnob']['w'] - _0x599c71) * _0x49ac05, isNaN(_0x49ac05) && (_0x49ac05 = 0x1), this['imgBase']['draw'](this['pos']['x'] + this['offset_soundBar']['x'], this['pos']['y'] + this['offset_soundBar']['y'], 0x0, 0x0, this['sizeBar']['x'], this['sizeBar']['y']), 0x0 < _0x49ac05 && (_0x49ac05 *= this['sizeBar']['x'], this['imgBar']['draw'](this['pos']['x'] + this['offset_soundBar']['x'], this['pos']['y'] + this['offset_soundBar']['y'], 0x0, 0x0, _0x49ac05, this['sizeBar']['y'])), this['imgKnob']['draw'](this['offset_soundSliderKnob']['x'] + _0x3c51ae + this['pos']['x'], this['offset_soundSliderKnob']['y'] + this['pos']['y']), _0x16f95d['restore'](); }, 'isEnabled': !0x1, '_checkClick': function() { if (null != this['pointer']) { if (!this['lockToSoundRect'] && !this['lockToMusicRect'] && this['pointer']['isFirstPressed'] && !this['pointer']['isReleased']) { var _0x373225 = {}; _0x373225['x'] = this['pointer']['pos']['x'], _0x373225['y'] = this['pointer']['pos']['y'], this['_rectangleClickCheck'](_0x373225, this['square_soundSliderKnob']) ? this['lockToSoundRect'] = !0x0 : this['_rectangleClickCheck'](_0x373225, this['square_musicSliderKnob']) && (this['lockToMusicRect'] = !0x0); } else this['pointer']['isReleased'] && ((this['lockToSoundRect'] || this['lockToMusicRect']) && ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['click']), this['lockToMusicRect'] = this['lockToSoundRect'] = !0x1, this['setNewValues']()); if (this['lockToSoundRect']) { var _0x373225 = this['imgKnob']['width'] / 0x2 , _0xcb0062 = this['pointer']['pos']['x'] + this['pointer']['size']['x'] / 0x2 - this['square_soundSliderKnob']['x']; _0xcb0062 < _0x373225 && (_0xcb0062 = _0x373225), _0xcb0062 > this['square_soundSliderKnob']['w'] - _0x373225 && (_0xcb0062 = this['square_soundSliderKnob']['w'] - _0x373225), _0xcb0062 = (_0xcb0062 - _0x373225) / (this['square_soundSliderKnob']['w'] - _0x373225 - _0x373225), ig['soundHandler']['bgmPlayer']['volume'](_0xcb0062); } else this['lockToMusicRect'] && (_0x373225 = this['imgKnob']['width'] / 0x2, _0xcb0062 = this['pointer']['pos']['x'] + this['pointer']['size']['x'] / 0x2 - this['square_musicSliderKnob']['x'], _0xcb0062 < _0x373225 && (_0xcb0062 = _0x373225), _0xcb0062 > this['square_musicSliderKnob']['w'] - _0x373225 && (_0xcb0062 = this['square_musicSliderKnob']['w'] - _0x373225), _0xcb0062 = (_0xcb0062 - _0x373225) / (this['square_musicSliderKnob']['w'] - _0x373225 - _0x373225), ig['soundHandler']['sfxPlayer']['volume'](_0xcb0062)); } }, 'setNewValues': function() { ig['game']['sessionData']['sound'] = ig['soundHandler']['sfxPlayer']['getVolume'](), ig['game']['sessionData']['music'] = ig['soundHandler']['bgmPlayer']['getVolume'](), ig['game']['saveAll'](); }, '_rectangleClickCheck': function(_0x32e7a9, _0x3e8d27) { return _0x32e7a9['x'] - ig['game']['screen']['x'] > _0x3e8d27['x'] && _0x32e7a9['x'] - ig['game']['screen']['x'] < _0x3e8d27['x'] + _0x3e8d27['w'] && _0x32e7a9['y'] - ig['game']['screen']['y'] > _0x3e8d27['y'] && _0x32e7a9['y'] - ig['game']['screen']['y'] < _0x3e8d27['y'] + _0x3e8d27['h']; } }), EntityBtnSettingsOk = EntityBtn['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-ok.png',0x107,0x6b), 'size': { 'x': 0x107, 'y': 0x6b }, 'name': 'btnSettingsOk', 'zIndex': 0x1771, 'settings': null, 'update': function() { this['parent'](); }, 'interact': function() { var _0x5eb588 = ig['game']['getEntitiesByType'](EntityGameControl)[0x0]; if (_0x5eb588) { try { ig['poki']['startGameplay'](); } catch (_0x400ae6) {} ig['game']['isGamePaused'] = !0x1, ig['game']['box2dPaused'] = !0x1, _0x5eb588['uiControl']['btnPause']['isEnabled'] = !0x0, (_0x5eb588 = ig['game']['getEntitiesByType'](EntityBtnSettingsHome)[0x0]) && _0x5eb588['kill'](), (_0x5eb588 = ig['game']['getEntitiesByType'](EntityBtnSettingsRetry)[0x0]) && _0x5eb588['kill'](); } if (_0x5eb588 = ig['game']['getEntitiesByType'](EntitySettings)[0x0]) { var _0xd4dc85 = ig['game']['getEntitiesByType'](EntityButtonMoreGames)[0x0]; _0xd4dc85 && _0xd4dc85['show'](), _0x5eb588['kill'](), (_0x5eb588 = ig['game']['getEntitiesByType'](EntityHomeControl)[0x0]) && _0x5eb588['btnFullScreen']['show'](); } if (_0x5eb588 = ig['game']['getEntitiesByType'](EntityHomeControl)[0x0]) _0x5eb588['btnPlay']['isHidden'] = !0x1, _0x5eb588['btnSettings']['isHidden'] = !0x1; if (_0xd4dc85 = ig['game']['getEntitiesByType'](EntityLevelSelectControl)[0x0]) { for (_0x5eb588 = 0x0; _0x5eb588 < _0xd4dc85['btnLevels']['length']; _0x5eb588++) _0xd4dc85['btnLevels'][_0x5eb588]['isEnabled'] = !0x0; _0xd4dc85['btnSettings']['isEnabled'] = !0x0, _0xd4dc85['btnPrev']['isEnabled'] = !0x0; } if (_0xd4dc85 = ig['game']['getEntitiesByType'](EntityStageSelectControl)[0x0]) { for (_0x5eb588 = 0x0; _0x5eb588 < _0xd4dc85['btnStage']['length']; _0x5eb588++) _0xd4dc85['btnStage'][_0x5eb588]['isEnabled'] = !0x0; _0xd4dc85['btnSettings']['isEnabled'] = !0x0, _0xd4dc85['btnPrev']['isEnabled'] = !0x0; } ig['game']['isGamePaused'] = !0x1, this['kill'](); } }), EntityBtnSettingsResume = EntityBtnSettingsOk['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-resume2.png',0xae,0x47), 'size': { 'x': 0xae, 'y': 0x47 } }), EntityBtnSettingsRetry = EntityBtnSettingsOk['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-retry2.png',0xae,0x47), 'size': { 'x': 0xae, 'y': 0x47 }, 'interact': function() { ig['game']['director']['loadLevel'](0x2 + ig['game']['curLevel']); } }), EntityBtnSettingsHome = EntityBtnSettingsOk['extend']({ 'logoImg': new ig['Image']('media/graphics/game/ui/btn-home2.png',0xae,0x47), 'size': { 'x': 0xae, 'y': 0x47 }, 'interact': function() { ig['game']['director']['jumpTo'](LevelHome); } }); }), ig['baked'] = !0x0, ig['module']('game.levels.opening')['requires']('impact.image', 'game.entities.opening-kitty')['defines'](function() { LevelOpening = { 'entities': [{ 'type': 'EntityOpeningKitty', 'x': 0x208, 'y': 0xd4 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.home')['requires']('impact.image', 'game.entities.controllers.home-control', 'game.entities.buttons.button-more-games')['defines'](function() { LevelHome = { 'entities': [{ 'type': 'EntityHomeControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityButtonMoreGames', 'x': 0x363, 'y': 0x1c5 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.testlvl')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.move-path', 'game.entities.objects.frame-test', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.objects.crate', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-05-moving', 'game.entities.objects.zombie-normal', 'game.entities.player')['defines'](function() { LevelTestlvl = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovePath', 'x': 0xc0, 'y': 0xe8, 'settings': { 'pathId': 0x0, 'pathNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityDiagonalUp', 'x': 0x64, 'y': 0x1c }, { 'type': 'EntityDiagonalDown', 'x': 0x298, 'y': 0x104 }, { 'type': 'EntityCrate', 'x': 0x138, 'y': 0x180 }, { 'type': 'EntityBlock05', 'x': 0x228, 'y': 0x8c }, { 'type': 'EntityBlock07', 'x': 0x288, 'y': 0x8c }, { 'type': 'EntityBlock05Moving', 'x': 0x1e0, 'y': 0xf4, 'settings': { 'pathId': 0x0, 'stickObjToGet': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x1e0, 'y': 0xa8, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityPlayer', 'x': 0x93, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.stage-select')['requires']('impact.image', 'game.entities.controllers.stage-select-control')['defines'](function() { LevelStageSelect = { 'entities': [{ 'type': 'EntityStageSelectControl', 'x': 0x0, 'y': 0x0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.entities.controllers.level-select-control')['requires']('impact.entity')['defines'](function() { EntityLevelSelectControl = ig['Entity']['extend']({ 'bg': new ig['Image']('media/graphics/game/ui/background-2.png'), 'scoreIconImg': new ig['Image']('media/graphics/game/ui/score-icon.png'), 'starIconImg': new ig['Image']('media/graphics/game/ui/star-level2.png'), 'size': { 'x': 0x3c0, 'y': 0x21c }, 'pointer': null, 'textDrawer': null, 'btnPlay': null, 'btnPrev': null, 'btnSettings': null, 'btnLevels': [], 'allLevelsCount': 0x78, 'curLevel': 0x0, 'allStarsCount': 0x168, 'curStars': 0x0, 'allStarsCount_perStage': 0x1e, 'curStars_perStage': [0x0, 0x0, 0x0, 0x0], 'curScore': 0x0, 'cameraX': 0x0, 'cameraX_min': -0x3c0, 'cameraX_orig': 0x0, 'cameraX_scrolling': !0x1, 'mapLines_lineImg': new ig['Image']('media/graphics/game/ui/line-connector.png'), 'mapLines_turnImg': new ig['Image']('media/graphics/game/ui/line-connector-turn.png'), 'mapLines_turnImg2': new ig['Image']('media/graphics/game/ui/line-connector-turn-2.png'), 'mapLines_startX': 0x0, 'mapLines_startY': 0xbe, 'mapLines_gapX': 0xf, 'mapLines_gapY': 0x71, 'mapLines_lim_line1': 0x2f, 'mapLines_lim_line2': 0x28, 'mapLines_lim_line3': 0x64, 'mapLines_lim_line4': 0x2f, 'mapLines_lim_line5': 0x64, 'scrollingDur': 0x0, 'init': function(_0xcebb92, _0x3b8be6, _0x2865f7) { this['parent'](_0xcebb92, _0x3b8be6, _0x2865f7); if (!ig['global']['wm']) { (this['pointer'] = ig['game']['getEntitiesByType'](EntityPointerSelector)[0x0]) || (this['pointer'] = ig['game']['spawnEntity'](EntityPointerSelector, 0x32, 0x32)), this['textDrawer'] = ig['game']['spawnEntity'](EntityTextDrawer, 0x0, 0x0), this['btnPrev'] = ig['game']['spawnEntity'](EntityBtnBack, 0xf, 0xa), this['btnSettings'] = ig['game']['spawnEntity'](EntityBtnSettings, 0x362, 0xc); for (_0xcebb92 = _0x3b8be6 = 0x0; _0xcebb92 < ig['game']['curStage']; _0xcebb92++) _0x3b8be6 += ig['game']['totalLevels'][_0xcebb92]; _0x2865f7 = 0x64; var _0x1080e3 = 0xaf , _0x5829d9 = 0x0; for (_0xcebb92 = 0x0; 0x5 > _0xcebb92; _0xcebb92++) this['btnLevels']['push'](ig['game']['spawnEntity'](EntityBtnLevelSelect, _0x2865f7, _0x1080e3, { 'lvlNum': _0xcebb92 + 0x1 + _0x3b8be6, 'lvlTxt': _0xcebb92, 'isUnlocked': ig['game']['sessionData']['lvlUnlocked'][ig['game']['curStage']][_0xcebb92], 'lvlControl': this, 'playSound': !0x1 })), _0x2865f7 += 0x89, _0x5829d9++, 0x4 < _0x5829d9 && (_0x2865f7 = 0x288, _0x1080e3 += 0x71, _0x5829d9 = 0x0); for (_0xcebb92 = 0x5; 0xa > _0xcebb92; _0xcebb92++) this['btnLevels']['push'](ig['game']['spawnEntity'](EntityBtnLevelSelect, _0x2865f7, _0x1080e3, { 'lvlNum': _0xcebb92 + 0x1 + _0x3b8be6, 'lvlTxt': _0xcebb92, 'isUnlocked': ig['game']['sessionData']['lvlUnlocked'][ig['game']['curStage']][_0xcebb92], 'lvlControl': this, 'playSound': !0x1 })), _0x2865f7 -= 0x89, _0x5829d9++, 0x4 < _0x5829d9 && (_0x2865f7 = 0x64, _0x1080e3 += 0x71, _0x5829d9 = 0x0); for (_0xcebb92 = 0xa; 0xf > _0xcebb92; _0xcebb92++) this['btnLevels']['push'](ig['game']['spawnEntity'](EntityBtnLevelSelect, _0x2865f7, _0x1080e3, { 'lvlNum': _0xcebb92 + 0x1 + _0x3b8be6, 'lvlTxt': _0xcebb92, 'isUnlocked': ig['game']['sessionData']['lvlUnlocked'][ig['game']['curStage']][_0xcebb92], 'lvlControl': this, 'playSound': !0x1 })), _0x2865f7 += 0x89, _0x5829d9++, 0x4 < _0x5829d9 && (_0x2865f7 = 0x3a7, _0x5829d9 = 0x0); for (_0xcebb92 = 0xf; 0x14 > _0xcebb92; _0xcebb92++) this['btnLevels']['push'](ig['game']['spawnEntity'](EntityBtnLevelSelect, _0x2865f7, _0x1080e3, { 'lvlNum': _0xcebb92 + 0x1 + _0x3b8be6, 'lvlTxt': _0xcebb92, 'isUnlocked': ig['game']['sessionData']['lvlUnlocked'][ig['game']['curStage']][_0xcebb92], 'lvlControl': this, 'playSound': !0x1 })), _0x2865f7 += 0x89, _0x5829d9++, 0x4 < _0x5829d9 && (_0x2865f7 -= 0x89, _0x1080e3 -= 0x71, _0x5829d9 = 0x0); for (_0xcebb92 = 0x14; 0x19 > _0xcebb92; _0xcebb92++) this['btnLevels']['push'](ig['game']['spawnEntity'](EntityBtnLevelSelect, _0x2865f7, _0x1080e3, { 'lvlNum': _0xcebb92 + 0x1 + _0x3b8be6, 'lvlTxt': _0xcebb92, 'isUnlocked': ig['game']['sessionData']['lvlUnlocked'][ig['game']['curStage']][_0xcebb92], 'lvlControl': this, 'playSound': !0x1 })), _0x2865f7 -= 0x89, _0x5829d9++, 0x4 < _0x5829d9 && (_0x2865f7 += 0x89, _0x1080e3 -= 0x71, _0x5829d9 = 0x0); for (_0xcebb92 = 0x19; 0x1e > _0xcebb92; _0xcebb92++) this['btnLevels']['push'](ig['game']['spawnEntity'](EntityBtnLevelSelect, _0x2865f7, _0x1080e3, { 'lvlNum': _0xcebb92 + 0x1 + _0x3b8be6, 'lvlTxt': _0xcebb92, 'isUnlocked': ig['game']['sessionData']['lvlUnlocked'][ig['game']['curStage']][_0xcebb92], 'lvlControl': this, 'playSound': !0x1 })), _0x2865f7 += 0x89, _0x5829d9++, 0x4 < _0x5829d9 && (_0x2865f7 = 0x64, _0x1080e3 += 0x71, _0x5829d9 = 0x0); for (_0x2865f7 = this['curLevel'] = 0x0; 0x4 > _0x2865f7; _0x2865f7++) { _0x3b8be6 = 0x1e; for (_0xcebb92 = 0x0; _0xcebb92 < _0x3b8be6; _0xcebb92++) 0x1 === ig['game']['sessionData']['lvlUnlocked'][_0x2865f7][_0xcebb92] && this['curLevel']++; } _0x2865f7 = ig['game']['sessionData']['lvlStars']['length']; for (_0x3b8be6 = 0x0; _0x3b8be6 < _0x2865f7; ) { for (_0xcebb92 = 0x0; _0xcebb92 < ig['game']['sessionData']['lvlStars'][_0x3b8be6]['length']; _0xcebb92++) this['curStars'] += ig['game']['sessionData']['lvlStars'][_0x3b8be6][_0xcebb92], this['curStars_perStage'][_0x3b8be6] += ig['game']['sessionData']['lvlStars'][_0x3b8be6][_0xcebb92], this['curScore'] += ig['game']['sessionData']['lvlScore'][_0x3b8be6][_0xcebb92]; _0x3b8be6++; } } }, 'update': function() { this['parent'](); var _0x3c38b3 = ig['game']['io']['getClickPos'](); ig['input']['state']('click') ? this['cameraX_scrolling'] ? (this['cameraX'] += _0x3c38b3['x'] - this['cameraX_orig'], this['cameraX_orig'] = _0x3c38b3['x'], this['cameraX'] < this['cameraX_min'] && (this['cameraX'] = this['cameraX_min']), 0x0 < this['cameraX'] && (this['cameraX'] = 0x0), this['scrollingDur'] += ig['system']['tick']) : (this['cameraX_scrolling'] = !0x0, this['cameraX_orig'] = _0x3c38b3['x']) : (this['cameraX_scrolling'] = !0x1, this['scrollingDur'] = 0x0); }, 'draw': function() { this['bg']['draw'](this['cameraX'] / 0x2, 0x0), this['bg']['draw'](this['cameraX'] / 0x2 + 0x3c0, 0x0), this['textDrawer']['textDraw']({ 'tx': _STRINGS['Game']['Levels'] + '\x20' + this['curLevel'] + '/' + this['allLevelsCount'], 'font': 'font2', 'px': 0x1e, 'x': 0x8e, 'y': 0x1c, 'align': 'left', 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x3, 'scX': 0x1, 'scY': 0x1 }), this['textDrawer']['textDraw']({ 'tx': this['curScore'], 'font': 'font2', 'px': 0x1e, 'x': 0x1d6, 'y': 0x1c, 'align': 'left', 'col': 'white', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x3, 'scX': 0x1, 'scY': 0x1 }), this['textDrawer']['textDraw']({ 'tx': this['curStars'] + '/' + this['allStarsCount'], 'font': 'font2', 'px': 0x1e, 'x': 0x2bc, 'y': 0x1c, 'align': 'left', 'col': '#fda100', 'strokeColour': 'black', 'stroke': !0x0, 'strokeLine': 0x3, 'scX': 0x1, 'scY': 0x1 }), this['scoreIconImg']['draw'](0x19f, 0xd), this['starIconImg']['draw'](0x28a, 0xa); for (var _0x292c2e = this['mapLines_startX'], _0x5bb6e7 = this['mapLines_startY'], _0x3b9941 = 0x0; _0x3b9941 < this['mapLines_lim_line1']; _0x3b9941++) this['mapLines_lineImg']['draw'](_0x292c2e + this['cameraX'], _0x5bb6e7), _0x292c2e += this['mapLines_gapX']; this['mapLines_turnImg']['draw'](_0x292c2e + this['cameraX'], _0x5bb6e7), _0x5bb6e7 += this['mapLines_gapY']; for (_0x3b9941 = 0x0; _0x3b9941 < this['mapLines_lim_line2']; _0x3b9941++) this['mapLines_lineImg']['draw'](_0x292c2e + this['cameraX'], _0x5bb6e7), _0x292c2e -= this['mapLines_gapX']; this['mapLines_turnImg2']['draw'](_0x292c2e - 0x32 + this['cameraX'], _0x5bb6e7), _0x5bb6e7 += this['mapLines_gapY']; for (_0x3b9941 = 0x0; _0x3b9941 < this['mapLines_lim_line3']; _0x3b9941++) this['mapLines_lineImg']['draw'](_0x292c2e + this['cameraX'], _0x5bb6e7), _0x292c2e += this['mapLines_gapX']; _0x5bb6e7 -= this['mapLines_gapY'], this['mapLines_turnImg']['draw'](_0x292c2e + this['cameraX'], _0x5bb6e7); for (_0x3b9941 = 0x0; _0x3b9941 < this['mapLines_lim_line4']; _0x3b9941++) this['mapLines_lineImg']['draw'](_0x292c2e + this['cameraX'], _0x5bb6e7), _0x292c2e -= this['mapLines_gapX']; _0x5bb6e7 -= this['mapLines_gapY'], this['mapLines_turnImg2']['draw'](_0x292c2e - 0x28 + this['cameraX'], _0x5bb6e7); for (_0x3b9941 = 0x0; _0x3b9941 < this['mapLines_lim_line5']; _0x3b9941++) this['mapLines_lineImg']['draw'](_0x292c2e + this['cameraX'], _0x5bb6e7), _0x292c2e += this['mapLines_gapX']; } }); }), ig['baked'] = !0x0, ig['module']('game.levels.level-select')['requires']('impact.image', 'game.entities.controllers.level-select-control')['defines'](function() { LevelLevelSelect = { 'entities': [{ 'type': 'EntityLevelSelectControl', 'x': 0x0, 'y': 0x0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.1')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-05', 'game.entities.objects.frame-test', 'game.entities.objects.zombie-normal', 'game.entities.player')['defines'](function() { Level1 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x1ac, 'y': 0x148 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityZombieNormal', 'x': 0x20c, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x2cc, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x1c4, 'y': 0xfc, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityPlayer', 'x': 0x93, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.2')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.frame-test', 'game.entities.obstacles.block-07', 'game.entities.objects.zombie-normal', 'game.entities.player')['defines'](function() { Level2 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityBlock07', 'x': 0x2a4, 'y': 0x9c }, { 'type': 'EntityBlock07', 'x': 0x1e0, 'y': 0x10c }, { 'type': 'EntityBlock07', 'x': 0x11c, 'y': 0x17d }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0x124, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0xb4, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x2b4, 'y': 0x4c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityPlayer', 'x': 0x93, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.3')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-08', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.crate-small', 'game.entities.obstacles.block-01', 'game.entities.objects.frame-test', 'game.entities.objects.zombie-normal', 'game.entities.player')['defines'](function() { Level3 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x1d6, 'y': 0x10b }, { 'type': 'EntityBlock06', 'x': 0x1ba, 'y': 0x160 }, { 'type': 'EntityBlock07', 'x': 0x19e, 'y': 0x1b5 }, { 'type': 'EntityBlock08', 'x': 0x1f2, 'y': 0xd4 }, { 'type': 'EntityBlock06', 'x': 0x14a, 'y': 0x68, 'settings': { 'rotation': 0x28 } }, { 'type': 'EntityBlock06', 'x': 0x224, 'y': 0x68, 'settings': { 'rotation': 0x13b } }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x1e2, 'y': 0x98 }, { 'type': 'EntityCrateSmall', 'x': 0x16c, 'y': 0x30 }, { 'type': 'EntityCrateSmall', 'x': 0x190, 'y': 0x30 }, { 'type': 'EntityCrateSmall', 'x': 0x248, 'y': 0x2c }, { 'type': 'EntityCrateSmall', 'x': 0x268, 'y': 0x2c }, { 'type': 'EntityCrateSmall', 'x': 0x1f0, 'y': 0x70 }, { 'type': 'EntityCrateSmall', 'x': 0x1f0, 'y': 0x2c }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x174 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityZombieNormal', 'x': 0x1a4, 'y': 0x114, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x228, 'y': 0x118, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x190, 'y': 0x168, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x234, 'y': 0x168, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x150, 'y': 0x190, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x104, 'y': 0x190, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x2c4, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityPlayer', 'x': 0x68, 'y': 0x10c, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.entities.objects.explosive-barrel')['requires']('plugins.box2d.entity')['defines'](function() { EntityExplosiveBarrel = ig['Box2DEntity']['extend']({ 'type': ig['Entity']['TYPE']['B'], 'box2dType': 0x0, 'dynamicType': 0x0, 'density': 0x1, 'friction': 0x0, 'restitution': 0x0, 'zIndex': 0x1, 'animSheet': new ig['AnimationSheet']('media/graphics/game/objects/explosive-barrel.png',0x2a,0x38), 'size': { 'x': 0x2a, 'y': 0x38 }, 'classify': 'object', 'destructible': !0x0, 'explosive': !0x0, 'exploding': !0x1, 'explodeTime': 0x0, 'init': function(_0x517d04, _0x18ee86, _0x4a608d) { this['anims']['idle'] = new ig['Animation'](this['animSheet'],0x1,[0x0]), this['addAnim']('idle', 0x1, [0x0]), this['parent'](_0x517d04, _0x18ee86, _0x4a608d); }, 'update': function() { this['parent'](), this['exploding'] && (this['explodeTime'] -= ig['system']['tick'], 0x0 >= this['explodeTime'] && this['explode']()); }, 'draw': function() { this['parent'](); }, 'beginContact': function(_0x1011e9, _0x20276f) { _0x1011e9['bodyPart'] ? _0x20276f['SetEnabled'](!0x1) : _0x1011e9['classify'] && 'missile' == _0x1011e9['classify'] && (_0x1011e9['destroy'](), this['explode']()); }, 'preSolve': function(_0x4231f9, _0x1c3e78) { _0x4231f9['bodyPart'] && _0x1c3e78['SetEnabled'](!0x1); }, 'explodeRadius': 0xaf, 'explodeDelay': 0.2, 'explodeDelayInc': 0.1, 'tossExplosive': !0x1, 'explode': function() { ig['game']['spawnEntity'](EntityEffect, this['pos']['x'], this['pos']['y'], { 'effectType': 0x0 }), ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['explosion']); for (var _0x5e930a = ig['game']['entities'], _0x5c1400 = this['explodeDelay'], _0x4d213c = [], _0x25d470 = 0x0; _0x25d470 < _0x5e930a['length']; _0x25d470++) if (_0x5e930a[_0x25d470]['classify'] && !('enemy' != _0x5e930a[_0x25d470]['classify'] && 'object' != _0x5e930a[_0x25d470]['classify']) && _0x5e930a[_0x25d470] != this) { var _0x165b1a = this['pos']['x'] - (_0x5e930a[_0x25d470]['pos']['x'] + _0x5e930a[_0x25d470]['size']['x'] / 0x2) , _0x6d121e = this['pos']['y'] - (_0x5e930a[_0x25d470]['pos']['y'] + _0x5e930a[_0x25d470]['size']['y'] / 0x2) , _0x165b1a = Math['sqrt'](_0x165b1a * _0x165b1a + _0x6d121e * _0x6d121e); _0x165b1a <= this['explodeRadius'] && ('enemy' == _0x5e930a[_0x25d470]['classify'] ? (_0x5e930a[_0x25d470]['toKill'] = !0x0, _0x5e930a[_0x25d470]['checkDecapitate'] = !0x1, _0x5e930a[_0x25d470]['hitterPos'] = this['body']['GetPosition'](), _0x5e930a[_0x25d470]['hitterAngle'] = 0xb4 * Math['atan2'](_0x5e930a[_0x25d470]['pos']['y'] - this['pos']['y'], _0x5e930a[_0x25d470]['pos']['x'] - this['pos']['x']) / Math['PI']) : !_0x5e930a[_0x25d470]['destructible'] || this['tossExplosive'] ? (this['body']['GetPosition'](), _0x165b1a = Math['atan2'](_0x5e930a[_0x25d470]['pos']['y'] - this['pos']['y'], _0x5e930a[_0x25d470]['pos']['x'] - this['pos']['x']), ig['soundHandler']['sfxPlayer']['play'](ig['soundHandler']['sfxPlayer']['soundList']['projectileBounce']), _0x6d121e = this['tossExplosive'] ? 0xbb8 : 0x1f4, _0x165b1a = new Box2D['Common']['Math']['b2Vec2'](_0x6d121e * Math['cos'](_0x165b1a),_0x6d121e * Math['sin'](_0x165b1a)), _0x5e930a[_0x25d470]['body']['ApplyImpulse'](_0x165b1a, _0x5e930a[_0x25d470]['body']['GetPosition']()), _0x5e930a[_0x25d470]['explosive'] && !_0x5e930a[_0x25d470]['exploding'] && (_0x5e930a[_0x25d470]['explodeTime'] = _0x5c1400, _0x5e930a[_0x25d470]['exploding'] = !0x0, _0x5c1400 += this['explodeDelayInc'])) : _0x5e930a[_0x25d470]['explosive'] && !_0x5e930a[_0x25d470]['exploding'] && _0x4d213c['push']({ 'exp': _0x5e930a[_0x25d470], 'dist': _0x165b1a })); } if (0x0 < _0x4d213c['length']) { _0x4d213c['sort'](function(_0x5abce4, _0x4116ed) { return _0x5abce4['dist'] - _0x4116ed['dist']; }); for (_0x25d470 = 0x0; _0x25d470 < _0x4d213c['length']; _0x25d470++) _0x4d213c[_0x25d470]['exp']['explodeTime'] = _0x5c1400, _0x4d213c[_0x25d470]['exp']['exploding'] = !0x0, _0x5c1400 += this['explodeDelayInc']; } this['kill'](); } }); }), ig['baked'] = !0x0, ig['module']('game.levels.4')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.frame-test', 'game.entities.obstacles.block-08', 'game.entities.objects.crate-destructible-small', 'game.entities.obstacles.block-07', 'game.entities.objects.explosive-barrel', 'game.entities.objects.crate-medium', 'game.entities.obstacles.block-02', 'game.entities.objects.zombie-normal', 'game.entities.player')['defines'](function() { Level4 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0x1ac }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x1c8, 'y': 0x138 }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0x1c8 }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0x190 }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0x1c8 }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0x1ac }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0x190 }, { 'type': 'EntityBlock07', 'x': 0x180, 'y': 0x174 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1d0, 'y': 0xc4 }, { 'type': 'EntityCrateMedium', 'x': 0x1c8, 'y': 0xfc }, { 'type': 'EntityBlock02', 'x': 0x1ac, 'y': 0xb4 }, { 'type': 'EntityBlock02', 'x': 0x204, 'y': 0xb4 }, { 'type': 'EntityBlock07', 'x': 0x188, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x1a4, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x1e8, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x184, 'y': 0x12c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x314, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.5')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-07', 'game.entities.objects.crate-medium', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.objects.zombie-normal', 'game.entities.player')['defines'](function() { Level5 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x184, 'y': 0x118 }, { 'type': 'EntityCrateMedium', 'x': 0x2dc, 'y': 0x1a8 }, { 'type': 'EntityCrateMedium', 'x': 0x2d4, 'y': 0x16c }, { 'type': 'EntityBlock02', 'x': 0x184, 'y': 0xaa }, { 'type': 'EntityBlock02', 'x': 0x228, 'y': 0xaa }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0xc8, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.6')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.frame-test', 'game.entities.obstacles.block-07', 'game.entities.objects.zombie-normal', 'game.entities.player')['defines'](function() { Level6 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityBlock07', 'x': 0x58, 'y': 0x11c }, { 'type': 'EntityBlock07', 'x': 0x2a4, 'y': 0x7c }, { 'type': 'EntityBlock07', 'x': 0x1d8, 'y': 0x150 }, { 'type': 'EntityZombieNormal', 'x': 0x2c0, 'y': 0x30, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x94, 'y': 0xd0, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0x104, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.7')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-06', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.wheel', 'game.entities.obstacles.block-03', 'game.entities.obstacles.block-08', 'game.entities.obstacles.diagonal-down', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level7 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x1e8, 'y': 0x158 }, { 'type': 'EntityBlock02', 'x': 0x1e8, 'y': 0x174 }, { 'type': 'EntityDiagonalUp', 'x': 0xa8, 'y': -0x8 }, { 'type': 'EntityBlock06', 'x': 0x108, 'y': 0xb4 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x108, 'y': 0x78 }, { 'type': 'EntityWheel', 'x': 0xd0, 'y': 0x54 }, { 'type': 'EntityBlock03', 'x': 0x194, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x1b0, 'y': 0xd0 }, { 'type': 'EntityDiagonalUp', 'x': 0x2a8, 'y': 0x19c }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x13c }, { 'type': 'EntityDiagonalDown', 'x': 0x48, 'y': -0xc }, { 'type': 'EntityDiagonalDown', 'x': 0xa8, 'y': 0x54 }, { 'type': 'EntityZombieNormal', 'x': 0x204, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x240, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x278, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x368, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x68, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.8')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-08', 'game.entities.objects.plank', 'game.entities.objects.crate-small', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level8 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x174 }, { 'type': 'EntityBlock07', 'x': 0xd0, 'y': 0x140 }, { 'type': 'EntityBlock08', 'x': 0x178, 'y': 0x124 }, { 'type': 'EntityBlock08', 'x': 0x178, 'y': 0xfc }, { 'type': 'EntityPlank', 'x': 0x184, 'y': 0x118 }, { 'type': 'EntityBlock07', 'x': 0x254, 'y': 0x140 }, { 'type': 'EntityBlock08', 'x': 0x254, 'y': 0x124 }, { 'type': 'EntityBlock08', 'x': 0x254, 'y': 0xfc }, { 'type': 'EntityCrateSmall', 'x': 0x1a0, 'y': 0xfc }, { 'type': 'EntityCrateSmall', 'x': 0x1cc, 'y': 0xfc }, { 'type': 'EntityCrateSmall', 'x': 0x200, 'y': 0xfc }, { 'type': 'EntityCrateSmall', 'x': 0x22c, 'y': 0xfc }, { 'type': 'EntityZombieNormal', 'x': 0xe4, 'y': 0xf4, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x130, 'y': 0xf4, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0xf4, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x2d0, 'y': 0xf4, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x198, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x1d8, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x228, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x368, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x68, 'y': 0x10c, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.9')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-07', 'game.entities.objects.crate-small', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level9 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x168, 'y': 0x1c8 }, { 'type': 'EntityBlock07', 'x': 0x168, 'y': 0x168 }, { 'type': 'EntityBlock07', 'x': 0x168, 'y': 0x104 }, { 'type': 'EntityBlock07', 'x': 0x168, 'y': 0x9c }, { 'type': 'EntityBlock07', 'x': 0x168, 'y': 0x34 }, { 'type': 'EntityCrateSmall', 'x': 0x16c, 'y': 0x1ac }, { 'type': 'EntityCrateSmall', 'x': 0x20e, 'y': 0x150 }, { 'type': 'EntityCrateSmall', 'x': 0x20e, 'y': 0x134 }, { 'type': 'EntityCrateSmall', 'x': 0x168, 'y': 0xec }, { 'type': 'EntityCrateSmall', 'x': 0x168, 'y': 0xd0 }, { 'type': 'EntityCrateSmall', 'x': 0x20e, 'y': 0x88 }, { 'type': 'EntityCrateSmall', 'x': 0x20e, 'y': 0x6c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x194, 'y': 0x184 }, { 'type': 'EntityZombieNormal', 'x': 0x174, 'y': 0x128 }, { 'type': 'EntityZombieNormal', 'x': 0x18c, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x170, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x2b8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x26c, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x124, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1e4, 'y': 0x184 }, { 'type': 'EntityZombieNormal', 'x': 0x1bc, 'y': 0x184 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0x128 }, { 'type': 'EntityZombieNormal', 'x': 0x1a8, 'y': 0x128 }, { 'type': 'EntityZombieNormal', 'x': 0x1c8, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x19c, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x1d8, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x1ac, 'y': 0xc4 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.10')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-02', 'game.entities.objects.plank', 'game.entities.objects.crate-small', 'game.entities.objects.crate-medium', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level10 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x168, 'y': 0x173 }, { 'type': 'EntityPlank', 'x': 0x168, 'y': 0x164, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityCrateSmall', 'x': 0x168, 'y': 0x148 }, { 'type': 'EntityCrateSmall', 'x': 0x168, 'y': 0x12c }, { 'type': 'EntityCrateSmall', 'x': 0x168, 'y': 0x110 }, { 'type': 'EntityCrateSmall', 'x': 0x22b, 'y': 0x148 }, { 'type': 'EntityCrateSmall', 'x': 0x22b, 'y': 0x12c }, { 'type': 'EntityCrateSmall', 'x': 0x22b, 'y': 0x110 }, { 'type': 'EntityPlank', 'x': 0x168, 'y': 0x100 }, { 'type': 'EntityCrateMedium', 'x': 0x228, 'y': 0x1ac }, { 'type': 'EntityCrateMedium', 'x': 0x228, 'y': 0x170 }, { 'type': 'EntityZombieNormal', 'x': 0x19c, 'y': 0x198 }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0x120 }, { 'type': 'EntityZombieNormal', 'x': 0x28c, 'y': 0x198 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.11')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-07', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level11 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x2a5, 'y': 0x186 }, { 'type': 'EntityBlock07', 'x': 0x1e2, 'y': 0x186 }, { 'type': 'EntityBlock07', 'x': 0x59, 'y': 0xe4 }, { 'type': 'EntityBlock07', 'x': 0x11c, 'y': 0xe4 }, { 'type': 'EntityBlock07', 'x': 0x1de, 'y': 0xe4 }, { 'type': 'EntityBlock07', 'x': 0x2a4, 'y': 0x78 }, { 'type': 'EntityBlock07', 'x': 0x1e1, 'y': 0x78 }, { 'type': 'EntityBlock07', 'x': 0x11e, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x1e8, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0x230, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0x27c, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0x2d0, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0x320, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0xa4, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x120, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x18c, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x1fc, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x144, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0x264, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0x1fc, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0x2ac, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0x2f8, 'y': 0x2c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.12')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.objects.crate-medium', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-07', 'game.entities.objects.zombie-normal', 'game.entities.player', 'game.entities.objects.frame-test')['defines'](function() { Level12 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x2bc, 'y': 0x120, 'settings': { 'explodeRadius': 0xc8 } }, { 'type': 'EntityCrateMedium', 'x': 0x2f8, 'y': 0x11c }, { 'type': 'EntityBlock02', 'x': 0x224, 'y': 0x174 }, { 'type': 'EntityBlock02', 'x': 0x29c, 'y': 0x174 }, { 'type': 'EntityBlock02', 'x': 0x31e, 'y': 0x174 }, { 'type': 'EntityBlock06', 'x': 0x2b0, 'y': 0x158 }, { 'type': 'EntityBlock06', 'x': 0x224, 'y': 0x158 }, { 'type': 'EntityBlock07', 'x': 0xe8, 'y': 0xcc }, { 'type': 'EntityBlock07', 'x': 0x224, 'y': 0x7c }, { 'type': 'EntityZombieNormal', 'x': 0x274, 'y': 0x10c }, { 'type': 'EntityZombieNormal', 'x': 0x2e8, 'y': 0x198 }, { 'type': 'EntityZombieNormal', 'x': 0x28c, 'y': 0x30 }, { 'type': 'EntityZombieNormal', 'x': 0x170, 'y': 0x80 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.13')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-05', 'game.entities.obstacles.diagonal-down', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level13 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x28, 'y': 0x74 }, { 'type': 'EntityDiagonalUp', 'x': 0x88, 'y': 0x14 }, { 'type': 'EntityDiagonalUp', 'x': 0xe8, 'y': -0x4c }, { 'type': 'EntityBlock02', 'x': 0x1a8, 'y': 0x174 }, { 'type': 'EntityBlock02', 'x': 0x1a8, 'y': 0x104 }, { 'type': 'EntityBlock02', 'x': 0x1a8, 'y': 0x94 }, { 'type': 'EntityBlock06', 'x': 0x138, 'y': 0x78 }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x1a0 }, { 'type': 'EntityBlock07', 'x': 0x224, 'y': 0x14c }, { 'type': 'EntityBlock05', 'x': 0x244, 'y': 0x88 }, { 'type': 'EntityBlock05', 'x': 0x2d4, 'y': 0xac }, { 'type': 'EntityDiagonalDown', 'x': 0x1c4, 'y': 0x194 }, { 'type': 'EntityDiagonalDown', 'x': 0x184, 'y': -0x38 }, { 'type': 'EntityDiagonalDown', 'x': 0x1e4, 'y': 0x28 }, { 'type': 'EntityDiagonalDown', 'x': 0x31c, 'y': 0x24 }, { 'type': 'EntityDiagonalDown', 'x': 0x2bc, 'y': -0x3c }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0x28 }, { 'type': 'EntityZombieNormal', 'x': 0x2f0, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x2d0, 'y': 0x194 }, { 'type': 'EntityZombieNormal', 'x': 0x21c, 'y': 0x198 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x8c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.14')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.wheel', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.diagonal-down', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level14 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x58, 'y': -0x8 }, { 'type': 'EntityBlock02', 'x': 0x164, 'y': 0x174 }, { 'type': 'EntityBlock02', 'x': 0x1f4, 'y': 0x174 }, { 'type': 'EntityBlock02', 'x': 0x270, 'y': 0x174 }, { 'type': 'EntityBlock06', 'x': 0x108, 'y': 0xa8 }, { 'type': 'EntityWheel', 'x': 0x158, 'y': 0x70 }, { 'type': 'EntityBlock06', 'x': 0x284, 'y': 0x88 }, { 'type': 'EntityZombieNormal', 'x': 0x19c, 'y': 0x198 }, { 'type': 'EntityDiagonalDown', 'x': 0x308, 'y': -0x10 }, { 'type': 'EntityZombieNormal', 'x': 0x22c, 'y': 0x198 }, { 'type': 'EntityZombieNormal', 'x': 0x114, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x29c, 'y': 0x3c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.15')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.objects.crate-small', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-08', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level15 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x174 }, { 'type': 'EntityBlock05', 'x': 0x174, 'y': 0x104 }, { 'type': 'EntityCrateSmall', 'x': 0x174, 'y': 0x154 }, { 'type': 'EntityBlock05', 'x': 0x174, 'y': 0x170 }, { 'type': 'EntityCrateSmall', 'x': 0x174, 'y': 0xe8 }, { 'type': 'EntityBlock05', 'x': 0x174, 'y': 0xa0 }, { 'type': 'EntityCrateSmall', 'x': 0x174, 'y': 0x84 }, { 'type': 'EntityBlock07', 'x': 0x20c, 'y': 0xa0 }, { 'type': 'EntityBlock05', 'x': 0x254, 'y': 0x104 }, { 'type': 'EntityBlock05', 'x': 0x258, 'y': 0x170 }, { 'type': 'EntityBlock08', 'x': 0x2e4, 'y': 0x150 }, { 'type': 'EntityBlock08', 'x': 0x31c, 'y': 0x104 }, { 'type': 'EntityZombieNormal', 'x': 0x194, 'y': 0x12c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x368, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x68, 'y': 0x10c, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x198, 'y': 0xc0, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x198, 'y': 0x5c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x214, 'y': 0x5c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x254, 'y': 0x5c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x294, 'y': 0x5c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x264, 'y': 0xc0, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x268, 'y': 0x12c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x2dc, 'y': 0x10c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x314, 'y': 0xc0, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x2b4, 'y': 0x1a0, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x32c, 'y': 0x1a0, 'settings': { 'stickObjNum': 0x1 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.16')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-07', 'game.entities.objects.crate-destructible-small', 'game.entities.obstacles.block-08', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level16 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x174 }, { 'type': 'EntityBlock07', 'x': 0x130, 'y': 0x12c }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x134, 'y': 0xf0 }, { 'type': 'EntityBlock08', 'x': 0xc4, 'y': 0x5c }, { 'type': 'EntityBlock08', 'x': 0x170, 'y': 0x5c }, { 'type': 'EntityBlock08', 'x': 0x23c, 'y': 0x5c }, { 'type': 'EntityBlock08', 'x': 0x304, 'y': 0x5c }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x254, 'y': 0x1a8 }, { 'type': 'EntityZombieNormal', 'x': 0x188, 'y': 0xe0, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x2a0, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x368, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x68, 'y': 0x10c, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.17')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.objects.plank-vert', 'game.entities.objects.crate-half', 'game.entities.objects.crate-small', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level17 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x174 }, { 'type': 'EntityBlock08', 'x': 0x1ec, 'y': 0x1ac }, { 'type': 'EntityBlock08', 'x': 0x1ec, 'y': 0x1c8 }, { 'type': 'EntityBlock08', 'x': 0x218, 'y': 0x1c8 }, { 'type': 'EntityBlock08', 'x': 0x218, 'y': 0x1ac }, { 'type': 'EntityPlankVert', 'x': 0x208, 'y': 0x104 }, { 'type': 'EntityCrateHalf', 'x': 0x1e8, 'y': 0xdc }, { 'type': 'EntityCrateSmall', 'x': 0x204, 'y': 0xc0 }, { 'type': 'EntityCrateSmall', 'x': 0x204, 'y': 0xa4 }, { 'type': 'EntityCrateSmall', 'x': 0x204, 'y': 0x88 }, { 'type': 'EntityCrateHalf', 'x': 0x1e8, 'y': 0x60 }, { 'type': 'EntityCrateSmall', 'x': 0x204, 'y': 0x44 }, { 'type': 'EntityCrateSmall', 'x': 0x204, 'y': 0x28 }, { 'type': 'EntityZombieNormal', 'x': 0xb0, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0xf8, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x134, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x174, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x1b4, 'y': 0x194, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x368, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x68, 'y': 0x10c, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.18')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level18 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x120 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x13c }, { 'type': 'EntityBlock07', 'x': 0xac, 'y': 0x148 }, { 'type': 'EntityBlock07', 'x': 0x194, 'y': 0xd8 }, { 'type': 'EntityBlock05', 'x': 0x1c8, 'y': 0x124 }, { 'type': 'EntityBlock05', 'x': 0x1c8, 'y': 0x8c }, { 'type': 'EntityBlock02', 'x': 0x1e4, 'y': 0x1c }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x120 }, { 'type': 'EntityBlock01', 'x': 0x314, 'y': 0x190 }, { 'type': 'EntityBlock01', 'x': 0x314, 'y': 0x13c }, { 'type': 'EntityBlock07', 'x': 0x250, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x134, 'y': 0xfc, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x17c, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x198, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x194, 'y': 0x90, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x228, 'y': 0x94, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x320, 'y': 0xd0, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0x100, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x368, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x6c, 'y': 0xbc, 'settings': { 'frameNum': 0x0 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.19')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level19 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x120 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x13c }, { 'type': 'EntityBlock07', 'x': 0x138, 'y': 0x19b }, { 'type': 'EntityBlock05', 'x': 0x1b4, 'y': 0x12c }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x120 }, { 'type': 'EntityBlock01', 'x': 0x314, 'y': 0x190 }, { 'type': 'EntityBlock01', 'x': 0x314, 'y': 0x13c }, { 'type': 'EntityBlock07', 'x': 0x1d4, 'y': 0x164 }, { 'type': 'EntityBlock06', 'x': 0x154, 'y': 0xf4 }, { 'type': 'EntityBlock06', 'x': 0x1cc, 'y': 0xc4 }, { 'type': 'EntityBlock05', 'x': 0x1a8, 'y': 0x8c }, { 'type': 'EntityBlock05', 'x': 0x178, 'y': 0x50 }, { 'type': 'EntityBlock05', 'x': 0x1d4, 'y': 0x1c }, { 'type': 'EntityZombieNormal', 'x': 0x18c, 'y': 0xac, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x174, 'y': 0x158, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x2b8, 'y': 0x19c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x224, 'y': 0x7c, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x320, 'y': 0xd0, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x210, 'y': 0x120, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x368, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x6c, 'y': 0xbc, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1a8, 'y': 0x158, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x248, 'y': 0x120, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x15c, 'y': 0xac, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0x48, 'settings': { 'stickObjNum': 0x1 } }, { 'type': 'EntityZombieNormal', 'x': 0xbc, 'y': 0x1a0, 'settings': { 'stickObjNum': 0x1 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.20')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-07', 'game.entities.objects.crate-small', 'game.entities.objects.plank', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test', 'game.entities.player')['defines'](function() { Level20 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x16c, 'y': 0x168 }, { 'type': 'EntityCrateSmall', 'x': 0x16c, 'y': 0x14c }, { 'type': 'EntityCrateSmall', 'x': 0x16c, 'y': 0x130 }, { 'type': 'EntityCrateSmall', 'x': 0x16c, 'y': 0x114 }, { 'type': 'EntityCrateSmall', 'x': 0x212, 'y': 0x14c }, { 'type': 'EntityCrateSmall', 'x': 0x212, 'y': 0x130 }, { 'type': 'EntityCrateSmall', 'x': 0x212, 'y': 0x114 }, { 'type': 'EntityPlank', 'x': 0x160, 'y': 0x108 }, { 'type': 'EntityBlock07', 'x': 0x26c, 'y': 0x130 }, { 'type': 'EntityCrateSmall', 'x': 0x26d, 'y': 0x114 }, { 'type': 'EntityCrateSmall', 'x': 0x26d, 'y': 0xf8 }, { 'type': 'EntityCrateSmall', 'x': 0x26d, 'y': 0xdc }, { 'type': 'EntityCrateSmall', 'x': 0x312, 'y': 0x114 }, { 'type': 'EntityCrateSmall', 'x': 0xe5, 'y': 0x94 }, { 'type': 'EntityCrateSmall', 'x': 0x312, 'y': 0xf8 }, { 'type': 'EntityCrateSmall', 'x': 0x312, 'y': 0xdc }, { 'type': 'EntityPlank', 'x': 0x260, 'y': 0xd0 }, { 'type': 'EntityBlock07', 'x': 0xe4, 'y': 0xb0 }, { 'type': 'EntityCrateSmall', 'x': 0xe5, 'y': 0x78 }, { 'type': 'EntityCrateSmall', 'x': 0xe5, 'y': 0x5c }, { 'type': 'EntityCrateSmall', 'x': 0x18a, 'y': 0x94 }, { 'type': 'EntityCrateSmall', 'x': 0x18a, 'y': 0x78 }, { 'type': 'EntityCrateSmall', 'x': 0x18a, 'y': 0x5c }, { 'type': 'EntityPlank', 'x': 0xdc, 'y': 0x4c }, { 'type': 'EntityZombieNormal', 'x': 0x194, 'y': 0x124 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1d8, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x124, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x308, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x290, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x2d8, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x108, 'y': 0x6c }, { 'type': 'EntityZombieNormal', 'x': 0x14c, 'y': 0x6c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.21')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-08', 'game.entities.objects.plank', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level21 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x1d8, 'y': 0x130 }, { 'type': 'EntityBlock08', 'x': 0x1d8, 'y': 0xc8 }, { 'type': 'EntityBlock08', 'x': 0x12c, 'y': 0xe4 }, { 'type': 'EntityBlock08', 'x': 0x12c, 'y': 0x7c }, { 'type': 'EntityBlock08', 'x': 0x278, 'y': 0x114 }, { 'type': 'EntityPlank', 'x': 0xd4, 'y': 0xd4 }, { 'type': 'EntityPlank', 'x': 0xd4, 'y': 0x6c }, { 'type': 'EntityPlank', 'x': 0x214, 'y': 0x104 }, { 'type': 'EntityBlock08', 'x': 0x278, 'y': 0xb4 }, { 'type': 'EntityPlank', 'x': 0x218, 'y': 0xa4 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x168, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x228, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0x84 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.22')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-02', 'game.entities.objects.explosive-barrel', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level22 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x15c, 'y': 0x12c }, { 'type': 'EntityBlock05', 'x': 0x220, 'y': 0x12c }, { 'type': 'EntityBlock02', 'x': 0x15c, 'y': 0xbc }, { 'type': 'EntityBlock02', 'x': 0x200, 'y': 0xbc }, { 'type': 'EntityBlock07', 'x': 0x15c, 'y': 0xa0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x21c, 'y': 0xf4 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x244, 'y': 0xf4 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x220, 'y': 0xb8 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1d8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x1a4, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x15c, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x2f0, 'y': 0x19c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.23')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-05', 'game.entities.objects.crate-destructible-small', 'game.entities.obstacles.block-08', 'game.entities.objects.plank', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level23 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x118, 'y': 0x108 }, { 'type': 'EntityBlock05', 'x': 0xe0, 'y': 0x6c }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0xfc, 'y': 0xcc }, { 'type': 'EntityBlock08', 'x': 0x58, 'y': 0xcc }, { 'type': 'EntityPlank', 'x': 0x58, 'y': 0xc0 }, { 'type': 'EntityWheel', 'x': 0xec, 'y': 0x34 }, { 'type': 'EntityBlock07', 'x': 0x23c, 'y': 0x168 }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x18c }, { 'type': 'EntityDiagonalDown', 'x': 0x30c, 'y': -0x10 }, { 'type': 'EntityDiagonalDown', 'x': 0x1dc, 'y': 0x106 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x17c, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x144, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x298, 'y': 0x124 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.24')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-02', 'game.entities.objects.crate-small', 'game.entities.obstacles.block-05', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level24 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x15c, 'y': 0x120 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x1c8 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x1ac }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x190 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x158 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x174 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x13c }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x120 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0xe8 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x104 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0xcc }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0xb0 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x94 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x78 }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x5c }, { 'type': 'EntityCrateSmall', 'x': 0x178, 'y': 0x40 }, { 'type': 'EntityBlock02', 'x': 0x194, 'y': 0x120 }, { 'type': 'EntityBlock02', 'x': 0x194, 'y': 0x5c }, { 'type': 'EntityBlock02', 'x': 0x15c, 'y': 0x5c }, { 'type': 'EntityBlock05', 'x': 0x1cc, 'y': 0x88 }, { 'type': 'EntityBlock05', 'x': 0x26c, 'y': 0x144 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1d4, 'y': 0x44 }, { 'type': 'EntityZombieNormal', 'x': 0x274, 'y': 0x104 }, { 'type': 'EntityZombieNormal', 'x': 0x2cc, 'y': 0x19c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.25')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-02', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-down', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level25 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0xdc }, { 'type': 'EntityBlock05', 'x': 0x2b4, 'y': 0x13c }, { 'type': 'EntityBlock05', 'x': 0x200, 'y': 0xdc }, { 'type': 'EntityDiagonalUp', 'x': 0x1a0, 'y': 0xd8 }, { 'type': 'EntityBlock05', 'x': 0xec, 'y': 0xd8 }, { 'type': 'EntityBlock02', 'x': 0xec, 'y': 0x68 }, { 'type': 'EntityWheel', 'x': 0x184, 'y': 0xf4 }, { 'type': 'EntityDiagonalDown', 'x': 0x254, 'y': 0xdc }, { 'type': 'EntityDiagonalDown', 'x': 0x140, 'y': 0xd8 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x2dc, 'y': 0xf8 }, { 'type': 'EntityZombieNormal', 'x': 0x2b0, 'y': 0xf8 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.26')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-08', 'game.entities.objects.plank', 'game.entities.obstacles.block-05', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level26 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x94, 'y': 0x11c }, { 'type': 'EntityPlank', 'x': 0x94, 'y': 0x10c, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock08', 'x': 0x168, 'y': 0x11c }, { 'type': 'EntityPlank', 'x': 0x174, 'y': 0x10c, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock08', 'x': 0x248, 'y': 0x11c }, { 'type': 'EntityPlank', 'x': 0x254, 'y': 0x10c, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock08', 'x': 0x328, 'y': 0x11c }, { 'type': 'EntityBlock05', 'x': 0xe4, 'y': 0xb4 }, { 'type': 'EntityBlock05', 'x': 0x1bc, 'y': 0xb4 }, { 'type': 'EntityBlock05', 'x': 0x294, 'y': 0xb4 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x304, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0x240, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0x94, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0x160, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0xf8, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x2a8, 'y': 0x70 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.27')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.move-path', 'game.entities.obstacles.block-switch-vert', 'game.entities.objects.switch', 'game.entities.obstacles.block-07', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level27 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovePath', 'x': 0x194, 'y': 0x70, 'settings': { 'sp_id': 0x1, 'pathNum': 0x1 } }, { 'type': 'EntityBlockSwitchVert', 'x': 0x194, 'y': 0xec, 'settings': { 'sp_id': 0x1, 'switch_id': 0x1 } }, { 'type': 'EntitySwitch', 'x': 0x16c, 'y': 0x1c4, 'settings': { 'switch_id': 0x1 } }, { 'type': 'EntityBlock07', 'x': 0x1a4, 'y': 0x130 }, { 'type': 'EntityBlock07', 'x': 0x1a4, 'y': 0xd0 }, { 'type': 'EntityBlock07', 'x': 0x1a4, 'y': 0x70 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1f0, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x21c, 'y': 0x90 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.28')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-01', 'game.entities.objects.crate-medium', 'game.entities.objects.crate-small', 'game.entities.objects.crate-half', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-05', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level28 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x180, 'y': 0x144 }, { 'type': 'EntityBlock01', 'x': 0x1cc, 'y': 0x190 }, { 'type': 'EntityCrateMedium', 'x': 0x164, 'y': 0x1a8 }, { 'type': 'EntityCrateSmall', 'x': 0x12c, 'y': 0x1c8 }, { 'type': 'EntityCrateHalf', 'x': 0x214, 'y': 0x1bc }, { 'type': 'EntityCrateSmall', 'x': 0x230, 'y': 0x1a0 }, { 'type': 'EntityBlock06', 'x': 0x194, 'y': 0xd8 }, { 'type': 'EntityBlock05', 'x': 0x1b0, 'y': 0x78 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x190, 'y': 0x100 }, { 'type': 'EntityZombieNormal', 'x': 0x1c4, 'y': 0x100 }, { 'type': 'EntityZombieNormal', 'x': 0x1fc, 'y': 0x100 }, { 'type': 'EntityZombieNormal', 'x': 0x1a8, 'y': 0x94 }, { 'type': 'EntityZombieNormal', 'x': 0x1e0, 'y': 0x94 }, { 'type': 'EntityZombieNormal', 'x': 0x1c4, 'y': 0x34 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.29')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level29 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x138, 'y': 0x94 }, { 'type': 'EntityBlock05', 'x': 0x59, 'y': 0x174 }, { 'type': 'EntityBlock01', 'x': 0x138, 'y': 0xb0 }, { 'type': 'EntityBlock05', 'x': 0x198, 'y': 0x140 }, { 'type': 'EntityBlock01', 'x': 0x1d0, 'y': 0xec }, { 'type': 'EntityBlock05', 'x': 0x248, 'y': 0xbc }, { 'type': 'EntityBlock01', 'x': 0x280, 'y': 0x68 }, { 'type': 'EntityBlock05', 'x': 0x260, 'y': 0x128 }, { 'type': 'EntityBlock01', 'x': 0x298, 'y': 0x144 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x10c, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x154, 'y': 0x50 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0xfc }, { 'type': 'EntityZombieNormal', 'x': 0x24c, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0xe4 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.30')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.objects.plank', 'game.entities.obstacles.block-07', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level30 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x59, 'y': 0x174 }, { 'type': 'EntityBlock08', 'x': 0xf8, 'y': 0x3c }, { 'type': 'EntityBlock08', 'x': 0x24c, 'y': 0x44 }, { 'type': 'EntityBlock08', 'x': 0x24c, 'y': 0x6c }, { 'type': 'EntityPlank', 'x': 0x188, 'y': 0x60, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock08', 'x': 0x1ec, 'y': 0x6c }, { 'type': 'EntityBlock07', 'x': 0x184, 'y': 0x174 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x184, 'y': 0x1a8 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x20c, 'y': 0x138 }, { 'type': 'EntityBlock08', 'x': 0x22c, 'y': 0x11c }, { 'type': 'EntityBlock08', 'x': 0x2f0, 'y': 0xe4 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x10c, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x188, 'y': 0x1c }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x280, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.31')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.move-path', 'game.entities.obstacles.block-switch-vert', 'game.entities.obstacles.block-switch', 'game.entities.objects.crate-medium', 'game.entities.objects.crate-small', 'game.entities.objects.switch', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level31 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovePath', 'x': 0x2cc, 'y': 0xd4, 'settings': { 'sp_id': 0x1, 'pathNum': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x2a4, 'y': 0x140, 'settings': { 'sp_id': 0x2, 'pathNum': 0x1 } }, { 'type': 'EntityBlockSwitchVert', 'x': 0x2cc, 'y': 0x1d, 'settings': { 'sp_id': 0x1, 'switch_id': 0x1 } }, { 'type': 'EntityBlockSwitch', 'x': 0x308, 'y': 0x140, 'settings': { 'sp_id': 0x2, 'switch_id': 0x2 } }, { 'type': 'EntityCrateMedium', 'x': 0x31c, 'y': 0x104 }, { 'type': 'EntityCrateSmall', 'x': 0x33c, 'y': 0x1c8 }, { 'type': 'EntityCrateSmall', 'x': 0x34c, 'y': 0x1ac }, { 'type': 'EntitySwitch', 'x': 0x2a0, 'y': 0xbc, 'settings': { 'switch_id': 0x1 } }, { 'type': 'EntitySwitch', 'x': 0x260, 'y': 0x18c, 'settings': { 'switch_id': 0x2 } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x2c0, 'y': 0x7d }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x2dc, 'y': 0x4c }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x2c0, 'y': 0xd1 }, { 'type': 'EntityBlock01', 'x': 0x27e, 'y': 0x15c }, { 'type': 'EntityBlock01', 'x': 0x27e, 'y': 0x1b0 }, { 'type': 'EntityBlock01', 'x': 0x2dc, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x2dc, 'y': 0x108 }, { 'type': 'EntityBlock06', 'x': 0x27e, 'y': 0x140 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x2c4, 'y': 0x19c }, { 'type': 'EntityZombieNormal', 'x': 0x2fc, 'y': 0x19c }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0x100 }, { 'type': 'EntityZombieNormal', 'x': 0x2fc, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x334, 'y': 0x5c }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x9e }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.32')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.move-path', 'game.entities.obstacles.block-switch-vert', 'game.entities.obstacles.block-switch', 'game.entities.objects.switch', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-03', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level32 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovePath', 'x': 0x34, 'y': 0x78, 'settings': { 'sp_id': 0x1, 'pathNum': 0x1 } }, { 'type': 'EntityBlockSwitchVert', 'x': 0x200, 'y': 0x188, 'settings': { 'sp_id': 0x4, 'switch_id': 0x1 } }, { 'type': 'EntityBlockSwitchVert', 'x': 0x244, 'y': 0x44, 'settings': { 'sp_id': 0x2, 'switch_id': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x244, 'y': 0xa4, 'settings': { 'sp_id': 0x2, 'pathNum': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x2a4, 'y': 0x168, 'settings': { 'sp_id': 0x3, 'pathNum': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x200, 'y': 0x128, 'settings': { 'sp_id': 0x4, 'pathNum': 0x1 } }, { 'type': 'EntityBlockSwitchVert', 'x': 0x160, 'y': 0x8c, 'settings': { 'sp_id': 0x5, 'switch_id': 0x2 } }, { 'type': 'EntityMovePath', 'x': 0x160, 'y': 0x2c, 'settings': { 'sp_id': 0x5, 'pathNum': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x32c, 'y': 0x6c, 'settings': { 'sp_id': 0x6, 'pathNum': 0x1 } }, { 'type': 'EntityBlockSwitch', 'x': 0x94, 'y': 0x78, 'settings': { 'sp_id': 0x1, 'switch_id': 0x1 } }, { 'type': 'EntityBlockSwitch', 'x': 0x2cc, 'y': 0x6c, 'settings': { 'sp_id': 0x6, 'switch_id': 0x2 } }, { 'type': 'EntityBlockSwitch', 'x': 0x308, 'y': 0x168, 'settings': { 'sp_id': 0x3, 'switch_id': 0x1 } }, { 'type': 'EntitySwitch', 'x': 0x1dc, 'y': 0x130, 'settings': { 'switch_id': 0x1 } }, { 'type': 'EntityDiagonalUp', 'x': 0xf0, 'y': -0x4 }, { 'type': 'EntityWheel', 'x': 0xa8, 'y': 0x40 }, { 'type': 'EntityDiagonalUp', 'x': 0x148, 'y': 0xd0 }, { 'type': 'EntityDiagonalUp', 'x': 0x328, 'y': -0x10 }, { 'type': 'EntityWheel', 'x': 0x2e0, 'y': 0x38 }, { 'type': 'EntityDiagonalUp', 'x': 0x2cc, 'y': 0x7c }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x174 }, { 'type': 'EntitySwitch', 'x': 0x244, 'y': 0x190, 'settings': { 'switch_id': 0x2 } }, { 'type': 'EntityDiagonalDown', 'x': 0x38, 'y': -0x4 }, { 'type': 'EntityDiagonalDown', 'x': 0x206, 'y': 0xfc }, { 'type': 'EntityDiagonalDown', 'x': 0x270, 'y': -0xc }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': -0x2c, 'y': 0x130 }, { 'type': 'EntityBlock05', 'x': 0xc0, 'y': 0xbc }, { 'type': 'EntityBlock03', 'x': 0xa5, 'y': 0xa0 }, { 'type': 'EntityBlock03', 'x': 0x113, 'y': 0xbc }, { 'type': 'EntityBlock07', 'x': 0x94, 'y': 0x130 }, { 'type': 'EntityBlock05', 'x': 0x154, 'y': 0x130 }, { 'type': 'EntityBlock05', 'x': 0x1a8, 'y': 0xd2 }, { 'type': 'EntityBlock01', 'x': 0x1a8, 'y': 0xed }, { 'type': 'EntityBlock02', 'x': 0x1fc, 'y': 0x11c }, { 'type': 'EntityBlock02', 'x': 0x1fc, 'y': 0xad }, { 'type': 'EntityBlock02', 'x': 0x1fc, 'y': 0x40 }, { 'type': 'EntityBlock02', 'x': 0x1fc, 'y': -0x2c }, { 'type': 'EntityBlock02', 'x': 0x264, 'y': 0x178 }, { 'type': 'EntityBlock05', 'x': 0x27a, 'y': 0xdc }, { 'type': 'EntityBlock05', 'x': 0x264, 'y': 0x15c }, { 'type': 'EntityBlock05', 'x': 0x2b8, 'y': 0x15c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xec, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x9c, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x2d8, 'y': 0x11c }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2b4, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.33')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.crate-medium', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-03', 'game.entities.obstacles.block-04', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level33 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x58, 'y': 0x18 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x31c, 'y': 0x1a8 }, { 'type': 'EntityCrateMedium', 'x': 0x2ac, 'y': 0x1ac }, { 'type': 'EntityDiagonalDown', 'x': 0x30c, 'y': 0x18 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x24c, 'y': 0x1c }, { 'type': 'EntityBlock03', 'x': 0x176, 'y': 0x1c }, { 'type': 'EntityBlock04', 'x': 0x231, 'y': 0x1c }, { 'type': 'EntityBlock08', 'x': 0x215, 'y': 0x38 }, { 'type': 'EntityBlock07', 'x': 0xb4, 'y': 0x1c }, { 'type': 'EntityBlock08', 'x': 0x192, 'y': 0x38 }, { 'type': 'EntityBlock02', 'x': 0x2f8, 'y': 0x178 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x16c }, { 'type': 'EntityBlock01', 'x': 0x2f8, 'y': 0x144 }, { 'type': 'EntityBlock05', 'x': 0x2a4, 'y': 0x188 }, { 'type': 'EntityBlock01', 'x': 0x288, 'y': 0x154 }, { 'type': 'EntityBlock01', 'x': 0x288, 'y': 0x194 }, { 'type': 'EntityBlock05', 'x': 0x234, 'y': 0x1a4 }, { 'type': 'EntityBlock01', 'x': 0x1a8, 'y': 0x194 }, { 'type': 'EntityBlock02', 'x': 0x218, 'y': 0x178 }, { 'type': 'EntityBlock05', 'x': 0x1c4, 'y': 0x1c8 }, { 'type': 'EntityBlock08', 'x': 0x148, 'y': 0x1c8 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x31c, 'y': 0x128 }, { 'type': 'EntityZombieNormal', 'x': 0x2ac, 'y': 0x144 }, { 'type': 'EntityZombieNormal', 'x': 0x23c, 'y': 0x160 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0x184 }, { 'type': 'EntityZombieNormal', 'x': 0x170, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.34')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.plank-vert', 'game.entities.objects.wheel', 'game.entities.objects.explosive-barrel', 'game.entities.objects.plank', 'game.entities.objects.crate-medium', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level34 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlankVert', 'x': 0x240, 'y': 0x1c }, { 'type': 'EntityWheel', 'x': 0x2ac, 'y': 0x8c }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1f0, 'y': 0xa8 }, { 'type': 'EntityPlank', 'x': 0x1ec, 'y': 0xfc }, { 'type': 'EntityPlank', 'x': 0x1b4, 'y': 0x140 }, { 'type': 'EntityCrateMedium', 'x': 0x2e4, 'y': 0x1a8 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x330, 'y': 0x1ac }, { 'type': 'EntityDiagonalDown', 'x': 0x25c, 'y': 0x64 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x15c }, { 'type': 'EntityBlock02', 'x': 0x24c, 'y': 0x74 }, { 'type': 'EntityBlock02', 'x': 0x24c, 'y': 0x1c }, { 'type': 'EntityBlock05', 'x': 0x1e8, 'y': 0xe0 }, { 'type': 'EntityBlock02', 'x': 0x220, 'y': 0x74 }, { 'type': 'EntityBlock06', 'x': 0x24c, 'y': 0xe0 }, { 'type': 'EntityBlock02', 'x': 0x220, 'y': 0x1c }, { 'type': 'EntityBlock08', 'x': 0x2b8, 'y': 0xc4 }, { 'type': 'EntityBlock05', 'x': 0x1e8, 'y': 0x108 }, { 'type': 'EntityBlock06', 'x': 0x250, 'y': 0x108 }, { 'type': 'EntityBlock06', 'x': 0x1b0, 'y': 0x124 }, { 'type': 'EntityBlock06', 'x': 0x1b0, 'y': 0x14c }, { 'type': 'EntityBlock06', 'x': 0x250, 'y': 0x14c }, { 'type': 'EntityBlock06', 'x': 0x250, 'y': 0x124 }, { 'type': 'EntityBlock02', 'x': 0x200, 'y': 0x168 }, { 'type': 'EntityBlock08', 'x': 0x200, 'y': 0x1c8 }, { 'type': 'EntityBlock02', 'x': 0x2c0, 'y': 0x168 }, { 'type': 'EntityBlock08', 'x': 0x2c0, 'y': 0x1c8 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x118 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x180 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x60, 'y': 0xfc, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1b4, 'y': 0xe4 }, { 'type': 'EntityZombieNormal', 'x': 0x60, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x234, 'y': 0x1a4 }, { 'type': 'EntityZombieNormal', 'x': 0x304, 'y': 0xd4 }, { 'type': 'EntityZombieNormal', 'x': 0x320, 'y': 0x144 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.35')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level35 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x58, 'y': 0xfb }, { 'type': 'EntityBlock07', 'x': 0x58, 'y': 0x70 }, { 'type': 'EntityBlock07', 'x': 0x1f0, 'y': 0x70 }, { 'type': 'EntityBlock07', 'x': 0x1f0, 'y': 0xfb }, { 'type': 'EntityBlock02', 'x': 0x1f0, 'y': 0x8c }, { 'type': 'EntityBlock02', 'x': 0x15c, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x203, 'y': 0x178 }, { 'type': 'EntityBlock07', 'x': 0x15c, 'y': 0x15c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xe4, 'y': 0x30 }, { 'type': 'EntityZombieNormal', 'x': 0xe0, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0x30 }, { 'type': 'EntityZombieNormal', 'x': 0x258, 'y': 0xb8 }, { 'type': 'EntityZombieNormal', 'x': 0x238, 'y': 0x1a4 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.36')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level36 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x58, 'y': 0xfb }, { 'type': 'EntityBlock07', 'x': 0x58, 'y': 0x70 }, { 'type': 'EntityBlock07', 'x': 0x16c, 'y': 0xb4 }, { 'type': 'EntityBlock07', 'x': 0x2a4, 'y': 0xfb }, { 'type': 'EntityBlock02', 'x': 0x15c, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x2a4, 'y': 0x8c }, { 'type': 'EntityBlock06', 'x': 0x15c, 'y': 0x15c }, { 'type': 'EntityBlock02', 'x': 0x1da, 'y': 0x178 }, { 'type': 'EntityBlock06', 'x': 0x1e7, 'y': 0x15c }, { 'type': 'EntityBlock02', 'x': 0x256, 'y': 0x178 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xe4, 'y': 0x30 }, { 'type': 'EntityZombieNormal', 'x': 0xe0, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x1c0, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x300, 'y': 0xb8 }, { 'type': 'EntityZombieNormal', 'x': 0x90, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x300, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.37')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.rotor', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-04', 'game.entities.obstacles.block-03', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level37 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityRotor', 'x': 0x1cc, 'y': 0xa8 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0xca, 'y': 0x13c }, { 'type': 'EntityBlock07', 'x': 0x21b, 'y': 0x13c }, { 'type': 'EntityBlock02', 'x': 0x228, 'y': 0xce }, { 'type': 'EntityBlock02', 'x': 0x164, 'y': 0xce }, { 'type': 'EntityBlock01', 'x': 0x94, 'y': 0x190 }, { 'type': 'EntityBlock01', 'x': 0x94, 'y': 0x13c }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x120 }, { 'type': 'EntityBlock04', 'x': 0xaf, 'y': 0x13c }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x120 }, { 'type': 'EntityBlock01', 'x': 0x2f8, 'y': 0x13c }, { 'type': 'EntityBlock01', 'x': 0x2f8, 'y': 0x190 }, { 'type': 'EntityBlock03', 'x': 0x2dd, 'y': 0x138 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x60, 'y': 0xb8, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xd0, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x238, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x144, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1bc, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2ac, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.38')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-small', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level38 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateSmall', 'x': 0x1a8, 'y': 0x58 }, { 'type': 'EntityDiagonalDown', 'x': 0x1c, 'y': -0x20 }, { 'type': 'EntityDiagonalDown', 'x': 0x78, 'y': 0x3c }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0xc6, 'y': 0x190 }, { 'type': 'EntityBlock01', 'x': 0xc6, 'y': 0x13c }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x120 }, { 'type': 'EntityBlock06', 'x': 0xe0, 'y': 0x184 }, { 'type': 'EntityBlock02', 'x': 0x2dc, 'y': 0x178 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x15c }, { 'type': 'EntityBlock06', 'x': 0x1f4, 'y': 0x170 }, { 'type': 'EntityBlock08', 'x': 0xd4, 'y': 0x9c }, { 'type': 'EntityBlock08', 'x': 0x1a8, 'y': 0x74 }, { 'type': 'EntityBlock06', 'x': 0x24c, 'y': 0xcc }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x60, 'y': 0xbc, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x2f0, 'y': 0x11c }, { 'type': 'EntityZombieNormal', 'x': 0xf4, 'y': 0x140 }, { 'type': 'EntityZombieNormal', 'x': 0x10c, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x298, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x218, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x224, 'y': 0x130 }, { 'type': 'EntityZombieNormal', 'x': 0xd0, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x27c, 'y': 0x8c }, { 'type': 'EntityBlock01', 'x': 0x14f, 'y': 0x130 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.39')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.explosive-barrel', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level39 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock06', 'x': 0x12c, 'y': 0x15c }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xf4 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x110 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x160 }, { 'type': 'EntityBlock02', 'x': 0x19c, 'y': 0x178 }, { 'type': 'EntityBlock07', 'x': 0x160, 'y': 0x108 }, { 'type': 'EntityBlock06', 'x': 0x19c, 'y': 0xa0 }, { 'type': 'EntityBlock05', 'x': 0x1d4, 'y': 0x40 }, { 'type': 'EntityBlock07', 'x': 0x2a4, 'y': 0x68 }, { 'type': 'EntityBlock05', 'x': 0x2d0, 'y': 0xd4 }, { 'type': 'EntityBlock06', 'x': 0x268, 'y': 0x158 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x268, 'y': 0x120 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x7c, 'y': 0x90, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x2e4, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x29c, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x168, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x2a8, 'y': 0x24 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x2e4, 'y': 0x24 }, { 'type': 'EntityZombieNormal', 'x': 0x324, 'y': 0x24 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.40')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level40 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x130, 'y': 0x16c }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1b0, 'y': 0x13c }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1d8, 'y': 0x1ac }, { 'type': 'EntityExplosiveBarrel', 'x': 0x24c, 'y': 0x16c }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xf4 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x110 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x160 }, { 'type': 'EntityBlock06', 'x': 0xe8, 'y': 0x130 }, { 'type': 'EntityBlock01', 'x': 0xe8, 'y': 0x14c }, { 'type': 'EntityBlock01', 'x': 0x158, 'y': 0x14c }, { 'type': 'EntityBlock05', 'x': 0x120, 'y': 0x1a0 }, { 'type': 'EntityBlock01', 'x': 0x194, 'y': 0x120 }, { 'type': 'EntityBlock06', 'x': 0x194, 'y': 0x104 }, { 'type': 'EntityBlock06', 'x': 0x194, 'y': 0x174 }, { 'type': 'EntityBlock01', 'x': 0x203, 'y': 0x198 }, { 'type': 'EntityBlock06', 'x': 0x234, 'y': 0x138 }, { 'type': 'EntityBlock01', 'x': 0x2a3, 'y': 0x154 }, { 'type': 'EntityBlock05', 'x': 0x238, 'y': 0x1a4 }, { 'type': 'EntityBlock05', 'x': 0x27c, 'y': 0x94 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x7c, 'y': 0x8c, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x13c, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x1ec, 'y': 0x130 }, { 'type': 'EntityZombieNormal', 'x': 0xec, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1b4, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0x190, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x244, 'y': 0xf4 }, { 'type': 'EntityZombieNormal', 'x': 0x27c, 'y': 0xf4 }, { 'type': 'EntityZombieNormal', 'x': 0x2c0, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0x50 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.41')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level41 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xf4 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x110 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x160 }, { 'type': 'EntityBlock05', 'x': 0x178, 'y': 0xa0 }, { 'type': 'EntityBlock05', 'x': 0x1a8, 'y': 0x11c }, { 'type': 'EntityBlock05', 'x': 0x174, 'y': 0x194 }, { 'type': 'EntityBlock05', 'x': 0x248, 'y': 0xc0 }, { 'type': 'EntityBlock05', 'x': 0x244, 'y': 0x150 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x94 }, { 'type': 'EntityBlock05', 'x': 0x2e0, 'y': 0x100 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x168 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x7c, 'y': 0x8c, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x188, 'y': 0x150 }, { 'type': 'EntityZombieNormal', 'x': 0x184, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x254, 'y': 0x7c }, { 'type': 'EntityZombieNormal', 'x': 0x2f4, 'y': 0xbc }, { 'type': 'EntityZombieNormal', 'x': 0x31c, 'y': 0x50 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0x124 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.42')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.crate-small', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level42 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x17c, 'y': 0x198 }, { 'type': 'EntityDiagonalUp', 'x': 0x264, 'y': 0x194 }, { 'type': 'EntityDiagonalUp', 'x': 0x2b4, 'y': 0x144 }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0xf0 }, { 'type': 'EntityCrateSmall', 'x': 0x18c, 'y': 0xac }, { 'type': 'EntityCrateSmall', 'x': 0x18c, 'y': 0x90 }, { 'type': 'EntityCrateSmall', 'x': 0x18c, 'y': 0x74 }, { 'type': 'EntityCrateSmall', 'x': 0x18c, 'y': 0x58 }, { 'type': 'EntityCrateSmall', 'x': 0x18c, 'y': 0x3c }, { 'type': 'EntityCrateSmall', 'x': 0x214, 'y': 0xa4 }, { 'type': 'EntityCrateSmall', 'x': 0x214, 'y': 0x88 }, { 'type': 'EntityCrateSmall', 'x': 0x214, 'y': 0x6c }, { 'type': 'EntityCrateSmall', 'x': 0x214, 'y': 0x54 }, { 'type': 'EntityCrateSmall', 'x': 0x214, 'y': 0x38 }, { 'type': 'EntityDiagonalDown', 'x': 0x58, 'y': 0xf4 }, { 'type': 'EntityDiagonalDown', 'x': 0xb4, 'y': 0x154 }, { 'type': 'EntityDiagonalDown', 'x': 0x113, 'y': 0x1b4 }, { 'type': 'EntityDiagonalDown', 'x': 0x1dc, 'y': 0x198 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xf4 }, { 'type': 'EntityBlock07', 'x': 0xac, 'y': 0x14c }, { 'type': 'EntityBlock02', 'x': 0x154, 'y': 0xdc }, { 'type': 'EntityBlock05', 'x': 0x154, 'y': 0xc0 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xf4 }, { 'type': 'EntityBlock07', 'x': 0x24c, 'y': 0x14c }, { 'type': 'EntityBlock02', 'x': 0x24c, 'y': 0xdc }, { 'type': 'EntityBlock05', 'x': 0x214, 'y': 0xc0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x7c, 'y': 0x8c, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x154, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x23c, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.43')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.objects.crate-small', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level43 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1b4, 'y': 0x174 }, { 'type': 'EntityCrateSmall', 'x': 0x168, 'y': 0x1ac }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1b4, 'y': 0x120 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1b4, 'y': 0xcc }, { 'type': 'EntityCrateSmall', 'x': 0x168, 'y': 0x190 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock06', 'x': 0x134, 'y': 0x1c8 }, { 'type': 'EntityBlock06', 'x': 0x184, 'y': 0x1ac }, { 'type': 'EntityBlock06', 'x': 0x1e4, 'y': 0x1c8 }, { 'type': 'EntityBlock07', 'x': 0x168, 'y': 0x158 }, { 'type': 'EntityBlock01', 'x': 0x168, 'y': 0x104 }, { 'type': 'EntityBlock01', 'x': 0x20f, 'y': 0x104 }, { 'type': 'EntityBlock06', 'x': 0x184, 'y': 0x104 }, { 'type': 'EntityBlock01', 'x': 0x168, 'y': 0xb0 }, { 'type': 'EntityBlock06', 'x': 0x184, 'y': 0xb0 }, { 'type': 'EntityBlock01', 'x': 0x20f, 'y': 0xb0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x170, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x20c, 'y': 0x184 }, { 'type': 'EntityZombieNormal', 'x': 0x23c, 'y': 0x184 }, { 'type': 'EntityZombieNormal', 'x': 0x130, 'y': 0x184 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0x70 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.44')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.plank', 'game.entities.objects.crate-medium', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level44 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x78 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0xe4 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x14c }, { 'type': 'EntityBlock08', 'x': 0x108, 'y': 0xc0 }, { 'type': 'EntityBlock08', 'x': 0x19c, 'y': 0xc0 }, { 'type': 'EntityPlank', 'x': 0xf0, 'y': 0xb0 }, { 'type': 'EntityCrateMedium', 'x': 0x11c, 'y': 0x74 }, { 'type': 'EntityCrateMedium', 'x': 0x158, 'y': 0x74 }, { 'type': 'EntityCrateMedium', 'x': 0x13c, 'y': 0x38 }, { 'type': 'EntityBlock08', 'x': 0x1b0, 'y': 0x148 }, { 'type': 'EntityPlank', 'x': 0x194, 'y': 0x13c }, { 'type': 'EntityBlock08', 'x': 0x238, 'y': 0x148 }, { 'type': 'EntityCrateMedium', 'x': 0x1c8, 'y': 0x100 }, { 'type': 'EntityCrateMedium', 'x': 0x204, 'y': 0x100 }, { 'type': 'EntityCrateMedium', 'x': 0x1e4, 'y': 0xc4 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0xa0 }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x16c, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1b8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x208, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2a8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2f8, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.45')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.plank', 'game.entities.objects.crate-medium', 'game.entities.objects.crate-half', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level45 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x104, 'y': 0x194 }, { 'type': 'EntityPlank', 'x': 0x148, 'y': 0x198 }, { 'type': 'EntityBlock08', 'x': 0x258, 'y': 0x19c }, { 'type': 'EntityCrateMedium', 'x': 0x144, 'y': 0x1a8 }, { 'type': 'EntityCrateMedium', 'x': 0x1ec, 'y': 0x144 }, { 'type': 'EntityCrateMedium', 'x': 0x144, 'y': 0x15c }, { 'type': 'EntityBlock08', 'x': 0x108, 'y': 0x12c }, { 'type': 'EntityBlock08', 'x': 0x10c, 'y': 0xc8 }, { 'type': 'EntityCrateMedium', 'x': 0x1a0, 'y': 0x1a8 }, { 'type': 'EntityCrateMedium', 'x': 0x1f8, 'y': 0x1a8 }, { 'type': 'EntityBlock08', 'x': 0x258, 'y': 0x134 }, { 'type': 'EntityBlock08', 'x': 0x258, 'y': 0xc8 }, { 'type': 'EntityPlank', 'x': 0x148, 'y': 0x134 }, { 'type': 'EntityCrateHalf', 'x': 0x144, 'y': 0x140 }, { 'type': 'EntityCrateHalf', 'x': 0x1ec, 'y': 0x17c }, { 'type': 'EntityCrateMedium', 'x': 0x160, 'y': 0xf8 }, { 'type': 'EntityCrateHalf', 'x': 0x160, 'y': 0xdc }, { 'type': 'EntityCrateMedium', 'x': 0x1d8, 'y': 0xf8 }, { 'type': 'EntityCrateHalf', 'x': 0x1d8, 'y': 0xdc }, { 'type': 'EntityPlank', 'x': 0x150, 'y': 0xd0 }, { 'type': 'EntityCrateMedium', 'x': 0x16c, 'y': 0x94 }, { 'type': 'EntityCrateMedium', 'x': 0x1d4, 'y': 0x94 }, { 'type': 'EntityPlank', 'x': 0x154, 'y': 0x88 }, { 'type': 'EntityCrateMedium', 'x': 0x1a4, 'y': 0x4c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xfc, 'y': 0x150 }, { 'type': 'EntityZombieNormal', 'x': 0x2f8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0xfc, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x104, 'y': 0x80 }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0x158 }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0xf0 }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0x88 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.46')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-04', 'game.entities.obstacles.block-03', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level46 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0xa8, 'y': 0xb0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0xfc, 'y': 0x104 }, { 'type': 'EntityBlock08', 'x': 0x15d, 'y': 0x136 }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0xe8 }, { 'type': 'EntityBlock04', 'x': 0x179, 'y': 0x11a }, { 'type': 'EntityBlock03', 'x': 0xe2, 'y': 0xe8 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x7c }, { 'type': 'EntityBlock06', 'x': 0x194, 'y': 0x11c }, { 'type': 'EntityBlock06', 'x': 0x198, 'y': 0x94 }, { 'type': 'EntityBlock03', 'x': 0x17c, 'y': 0x79 }, { 'type': 'EntityBlock08', 'x': 0x161, 'y': 0x7a }, { 'type': 'EntityBlock04', 'x': 0x223, 'y': 0x78 }, { 'type': 'EntityBlock08', 'x': 0x23e, 'y': 0x7a }, { 'type': 'EntityBlock04', 'x': 0x21f, 'y': 0x100 }, { 'type': 'EntityBlock08', 'x': 0x23a, 'y': 0x100 }, { 'type': 'EntityBlock08', 'x': 0x256, 'y': 0x100 }, { 'type': 'EntityBlock04', 'x': 0x272, 'y': 0xe4 }, { 'type': 'EntityBlock06', 'x': 0x28d, 'y': 0xe6 }, { 'type': 'EntityBlock04', 'x': 0x2c1, 'y': 0x60 }, { 'type': 'EntityBlock08', 'x': 0x2a5, 'y': 0x7c }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x60 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x82, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x5c, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x60, 'y': 0x3c }, { 'type': 'EntityZombieNormal', 'x': 0x298, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x1b4, 'y': 0xd8 }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0x1a4 }, { 'type': 'EntityZombieNormal', 'x': 0x1c4, 'y': 0x50 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.47')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.crate-half2', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level47 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x98, 'y': 0xac }, { 'type': 'EntityBlock07', 'x': 0x184, 'y': 0x7c }, { 'type': 'EntityCrateHalf2', 'x': 0x184, 'y': 0x40 }, { 'type': 'EntityCrateHalf2', 'x': 0x1b8, 'y': 0x40 }, { 'type': 'EntityCrateHalf2', 'x': 0x1f4, 'y': 0x40 }, { 'type': 'EntityCrateHalf2', 'x': 0x228, 'y': 0x40 }, { 'type': 'EntityBlock07', 'x': 0x184, 'y': 0x124 }, { 'type': 'EntityCrateHalf2', 'x': 0x184, 'y': 0xec }, { 'type': 'EntityCrateHalf2', 'x': 0x1bc, 'y': 0xec }, { 'type': 'EntityCrateHalf2', 'x': 0x1f4, 'y': 0xec }, { 'type': 'EntityCrateHalf2', 'x': 0x228, 'y': 0xec }, { 'type': 'EntityBlock07', 'x': 0x26c, 'y': 0x154 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xa0, 'y': 0x68 }, { 'type': 'EntityZombieNormal', 'x': 0xe0, 'y': 0x68 }, { 'type': 'EntityZombieNormal', 'x': 0x120, 'y': 0x68 }, { 'type': 'EntityZombieNormal', 'x': 0x274, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x2b8, 'y': 0x110 }, { 'type': 'EntityZombieNormal', 'x': 0x2f8, 'y': 0x110 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.48')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.plank', 'game.entities.objects.crate-small', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level48 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlank', 'x': 0x134, 'y': 0x90, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityPlank', 'x': 0x138, 'y': 0x104, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityPlank', 'x': 0x13c, 'y': 0x174, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityPlank', 'x': 0x254, 'y': 0x90, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityPlank', 'x': 0x254, 'y': 0x174, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityPlank', 'x': 0x254, 'y': 0x104, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityCrateSmall', 'x': 0x198, 'y': 0x74 }, { 'type': 'EntityCrateSmall', 'x': 0x2b4, 'y': 0xe8 }, { 'type': 'EntityCrateSmall', 'x': 0x1a0, 'y': 0x154 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0xf4, 'y': 0x184 }, { 'type': 'EntityBlock05', 'x': 0xf0, 'y': 0x114 }, { 'type': 'EntityBlock05', 'x': 0xf0, 'y': 0xa0 }, { 'type': 'EntityBlock05', 'x': 0x208, 'y': 0x184 }, { 'type': 'EntityBlock05', 'x': 0x208, 'y': 0x114 }, { 'type': 'EntityBlock05', 'x': 0x208, 'y': 0xa0 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xa0 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x114 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x184 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x100, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0xfc, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0xf8, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x338, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x338, 'y': 0xd0 }, { 'type': 'EntityZombieNormal', 'x': 0x33c, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0x220, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x220, 'y': 0xd0 }, { 'type': 'EntityZombieNormal', 'x': 0x220, 'y': 0x140 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.49')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.plank', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level49 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlank', 'x': 0xe8, 'y': 0xe4, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityPlank', 'x': 0x23c, 'y': 0x94, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityPlank', 'x': 0x238, 'y': 0x14c, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x1ac, 'y': 0xf4 }, { 'type': 'EntityBlock05', 'x': 0x200, 'y': 0xa4 }, { 'type': 'EntityBlock05', 'x': 0x204, 'y': 0x15c }, { 'type': 'EntityBlock01', 'x': 0xe8, 'y': 0xf2 }, { 'type': 'EntityBlock01', 'x': 0x300, 'y': 0xa4 }, { 'type': 'EntityBlock01', 'x': 0x2fc, 'y': 0x15c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0xb0 }, { 'type': 'EntityZombieNormal', 'x': 0x204, 'y': 0x114 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.50')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level50 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x54, 'y': 0xf8 }, { 'type': 'EntityDiagonalUp', 'x': 0xb0, 'y': 0x9c }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0xac }, { 'type': 'EntityDiagonalUp', 'x': 0x2ac, 'y': 0x108 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x10f, 'y': 0xa0 }, { 'type': 'EntityBlock06', 'x': 0x12c, 'y': 0x108 }, { 'type': 'EntityBlock06', 'x': 0x204, 'y': 0x100 }, { 'type': 'EntityBlock07', 'x': 0x1eb, 'y': 0x168 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x120, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x160, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x17c, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x210, 'y': 0xbc }, { 'type': 'EntityZombieNormal', 'x': 0x244, 'y': 0xbc }, { 'type': 'EntityZombieNormal', 'x': 0x1f8, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x230, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0x124 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.51')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.crate-small', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level51 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0xdc, 'y': 0xb0 }, { 'type': 'EntityCrateSmall', 'x': 0x130, 'y': 0x94 }, { 'type': 'EntityCrateSmall', 'x': 0x130, 'y': 0x5c }, { 'type': 'EntityCrateSmall', 'x': 0x130, 'y': 0x78 }, { 'type': 'EntityBlock07', 'x': 0x1a4, 'y': 0x148 }, { 'type': 'EntityCrateSmall', 'x': 0x1f8, 'y': 0x110 }, { 'type': 'EntityCrateSmall', 'x': 0x1f8, 'y': 0x12c }, { 'type': 'EntityCrateSmall', 'x': 0x1f8, 'y': 0xf4 }, { 'type': 'EntityBlock07', 'x': 0x250, 'y': 0xc4 }, { 'type': 'EntityCrateSmall', 'x': 0x2a0, 'y': 0xa8 }, { 'type': 'EntityCrateSmall', 'x': 0x2a0, 'y': 0x70 }, { 'type': 'EntityCrateSmall', 'x': 0x2a0, 'y': 0x8c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xe4, 'y': 0x6c }, { 'type': 'EntityZombieNormal', 'x': 0x168, 'y': 0x6c }, { 'type': 'EntityZombieNormal', 'x': 0x1a8, 'y': 0x104 }, { 'type': 'EntityZombieNormal', 'x': 0x238, 'y': 0x104 }, { 'type': 'EntityZombieNormal', 'x': 0x254, 'y': 0x80 }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0x80 }, { 'type': 'EntityZombieNormal', 'x': 0x2ac, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2f8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x174, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x11c, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.52')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level52 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x19c, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x1b8, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x1f0, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x1d4, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x20c, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x1b8, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x19c, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x1d4, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x1f0, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x20c, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x244, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x260, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x164, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x148, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x148, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x260, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0x124 }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0x124 }, { 'type': 'EntityBlock08', 'x': 0x19c, 'y': 0x140 }, { 'type': 'EntityBlock08', 'x': 0x1b8, 'y': 0x140 }, { 'type': 'EntityBlock08', 'x': 0x20c, 'y': 0x140 }, { 'type': 'EntityBlock08', 'x': 0x1f0, 'y': 0x140 }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x164, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x1b8, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x1d4, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x1f0, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x244, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x19c, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x1b8, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x1d4, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x1f0, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x20c, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x19c, 'y': 0x98 }, { 'type': 'EntityBlock08', 'x': 0x20c, 'y': 0x98 }, { 'type': 'EntityBlock08', 'x': 0x228, 'y': 0x7c }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0x7c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x19c, 'y': 0x54 }, { 'type': 'EntityZombieNormal', 'x': 0x1f8, 'y': 0x54 }, { 'type': 'EntityZombieNormal', 'x': 0x22c, 'y': 0x38 }, { 'type': 'EntityZombieNormal', 'x': 0x16c, 'y': 0x38 }, { 'type': 'EntityZombieNormal', 'x': 0x14c, 'y': 0x8c }, { 'type': 'EntityZombieNormal', 'x': 0x248, 'y': 0x8c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.53')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level53 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x90, 'y': 0xb4, 'settings': { 'dontKill': 'true', 'explodeRadius': 0xc8, 'explodeDelayInc': 0x0 } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x13c, 'y': 0xb4, 'settings': { 'dontKill': 'true', 'explodeRadius': 0xc8, 'explodeDelayInc': 0x0 } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1e0, 'y': 0xb4, 'settings': { 'dontKill': 'true', 'explodeRadius': 0xc8, 'explodeDelayInc': 0x0 } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x274, 'y': 0xb4, 'settings': { 'dontKill': 'true', 'explodeRadius': 0xc8, 'explodeDelayInc': 0x0 } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x310, 'y': 0xb4, 'settings': { 'dontKill': 'true', 'explodeRadius': 0xc8, 'explodeDelayInc': 0x0 } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0xec }, { 'type': 'EntityBlock06', 'x': 0x1a0, 'y': 0xec }, { 'type': 'EntityBlock06', 'x': 0x100, 'y': 0xec }, { 'type': 'EntityBlock06', 'x': 0x23c, 'y': 0xec }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0xec }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x8c, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x1dc, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x310, 'y': 0x70 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.54')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.crate-small', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level54 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock06', 'x': 0xd4, 'y': 0x104 }, { 'type': 'EntityBlock06', 'x': 0x1ac, 'y': 0x104 }, { 'type': 'EntityBlock06', 'x': 0x274, 'y': 0x104 }, { 'type': 'EntityBlock06', 'x': 0x1ac, 'y': 0x94 }, { 'type': 'EntityCrateSmall', 'x': 0xd4, 'y': 0xe8 }, { 'type': 'EntityCrateSmall', 'x': 0xd4, 'y': 0xcc }, { 'type': 'EntityCrateSmall', 'x': 0xd4, 'y': 0xb0 }, { 'type': 'EntityCrateSmall', 'x': 0x2e0, 'y': 0xe8 }, { 'type': 'EntityCrateSmall', 'x': 0x2e0, 'y': 0xcc }, { 'type': 'EntityCrateSmall', 'x': 0x2e0, 'y': 0xb0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xf8, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0x1d8, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0x294, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0x1dc, 'y': 0x50 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.55')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level55 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock06', 'x': 0xd0, 'y': 0x94 }, { 'type': 'EntityBlock06', 'x': 0x1ac, 'y': 0x104 }, { 'type': 'EntityBlock06', 'x': 0x274, 'y': 0x104 }, { 'type': 'EntityBlock06', 'x': 0x1ac, 'y': 0x94 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x11c, 'y': 0x58 }, { 'type': 'EntityBlock05', 'x': 0x104, 'y': 0x104 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x274, 'y': 0xc8 }, { 'type': 'EntityBlock05', 'x': 0x274, 'y': 0x90 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1d8, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0x2bc, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0xd4, 'y': 0x4c }, { 'type': 'EntityZombieNormal', 'x': 0x1d8, 'y': 0x4c }, { 'type': 'EntityZombieNormal', 'x': 0x118, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0x48 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.56')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level56 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xe0 }, { 'type': 'EntityBlock02', 'x': 0x148, 'y': 0x4d }, { 'type': 'EntityBlock02', 'x': 0x148, 'y': 0xbb }, { 'type': 'EntityBlock05', 'x': 0xf5, 'y': 0xb0 }, { 'type': 'EntityBlock05', 'x': 0x163, 'y': 0xb0 }, { 'type': 'EntityBlock02', 'x': 0x254, 'y': 0x99 }, { 'type': 'EntityBlock02', 'x': 0x254, 'y': 0x107 }, { 'type': 'EntityBlock05', 'x': 0x201, 'y': 0xfc }, { 'type': 'EntityBlock05', 'x': 0x26f, 'y': 0xfc }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xb0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x174, 'y': 0x6c }, { 'type': 'EntityZombieNormal', 'x': 0x60, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x104, 'y': 0x68 }, { 'type': 'EntityZombieNormal', 'x': 0x280, 'y': 0xb8 }, { 'type': 'EntityZombieNormal', 'x': 0x214, 'y': 0xb8 }, { 'type': 'EntityZombieNormal', 'x': 0x320, 'y': 0x6c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.57')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-04', 'game.entities.obstacles.block-03', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level57 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x23c, 'y': 0xcc }, { 'type': 'EntityDiagonalUp', 'x': 0xd7, 'y': 0xd2 }, { 'type': 'EntityDiagonalDown', 'x': 0x18a, 'y': 0xcc }, { 'type': 'EntityDiagonalDown', 'x': 0x2ed, 'y': 0xcc }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x137, 'y': 0xd3 }, { 'type': 'EntityBlock08', 'x': 0xbc, 'y': 0x130 }, { 'type': 'EntityBlock04', 'x': 0x18b, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x1a7, 'y': 0xb7 }, { 'type': 'EntityBlock05', 'x': 0x1e9, 'y': 0x12c }, { 'type': 'EntityBlock03', 'x': 0x27e, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x263, 'y': 0xb7 }, { 'type': 'EntityBlock05', 'x': 0x29a, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x34c, 'y': 0x12c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xb4, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x148, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x19c, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x1e4, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x214, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x2b0, 'y': 0x8c }, { 'type': 'EntityZombieNormal', 'x': 0x258, 'y': 0x74 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.58')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level58 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x188, 'y': 0x38 }, { 'type': 'EntityBlock08', 'x': 0x188, 'y': 0x1c }, { 'type': 'EntityBlock02', 'x': 0x188, 'y': 0xa4 }, { 'type': 'EntityBlock02', 'x': 0x188, 'y': 0x112 }, { 'type': 'EntityBlock08', 'x': 0x188, 'y': 0x180 }, { 'type': 'EntityBlock07', 'x': 0x1a4, 'y': 0x180 }, { 'type': 'EntityBlock07', 'x': 0x1a4, 'y': 0x118 }, { 'type': 'EntityBlock07', 'x': 0x235, 'y': 0x14c }, { 'type': 'EntityBlock07', 'x': 0x235, 'y': 0xe0 }, { 'type': 'EntityBlock08', 'x': 0x2f8, 'y': 0x38 }, { 'type': 'EntityBlock08', 'x': 0x2f8, 'y': 0x54 }, { 'type': 'EntityBlock02', 'x': 0x2f8, 'y': 0xde }, { 'type': 'EntityBlock08', 'x': 0x2f8, 'y': 0x14c }, { 'type': 'EntityBlock02', 'x': 0x2f8, 'y': 0x70 }, { 'type': 'EntityBlock08', 'x': 0x2f8, 'y': 0x1c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x17e, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1bc, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0x294, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x1b8, 'y': 0xd4 }, { 'type': 'EntityZombieNormal', 'x': 0x2b8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x290, 'y': 0x9c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.59')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.rotor', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level59 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x118, 'y': 0xb4 }, { 'type': 'EntityBlock05', 'x': 0x218, 'y': 0x70 }, { 'type': 'EntityBlock05', 'x': 0x228, 'y': 0x130 }, { 'type': 'EntityRotor', 'x': 0x1cc, 'y': 0x9c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x224, 'y': 0x30 }, { 'type': 'EntityZombieNormal', 'x': 0x12c, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x234, 'y': 0xec }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.60')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level60 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock06', 'x': 0x15c, 'y': 0x138 }, { 'type': 'EntityBlock02', 'x': 0x15c, 'y': 0x1c }, { 'type': 'EntityBlock06', 'x': 0x15c, 'y': 0x8c }, { 'type': 'EntityBlock06', 'x': 0x268, 'y': 0x8c }, { 'type': 'EntityBlock05', 'x': 0x220, 'y': 0x16c }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x114 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x184 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xf0, 'y': 0x19c }, { 'type': 'EntityZombieNormal', 'x': 0x160, 'y': 0xf8 }, { 'type': 'EntityZombieNormal', 'x': 0x274, 'y': 0x4c }, { 'type': 'EntityZombieNormal', 'x': 0x1b4, 'y': 0x48 }, { 'type': 'EntityZombieNormal', 'x': 0x224, 'y': 0x12c }, { 'type': 'EntityZombieNormal', 'x': 0x2dc, 'y': 0xd0 }, { 'type': 'EntityZombieNormal', 'x': 0x330, 'y': 0x140 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.61')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-switch', 'game.entities.obstacles.move-path', 'game.entities.objects.switch', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level61 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlockSwitch', 'x': 0x154, 'y': 0x104, 'settings': { 'sp_id': 0x3, 'switch_id': 0x2 } }, { 'type': 'EntityBlockSwitch', 'x': 0x80, 'y': 0x104, 'settings': { 'sp_id': 0x2, 'switch_id': 0x2 } }, { 'type': 'EntityMovePath', 'x': 0xb8, 'y': 0x104, 'settings': { 'sp_id': 0x2, 'pathNum': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x1a0, 'y': 0x104, 'settings': { 'sp_id': 0x3, 'pathNum': 0x1 } }, { 'type': 'EntitySwitch', 'x': 0x58, 'y': 0x3c, 'settings': { 'switch_id': 0x2 } }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x168 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x260, 'y': 0xb0 }, { 'type': 'EntityDiagonalDown', 'x': 0x30c, 'y': 0x18 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock08', 'x': 0x2ec, 'y': 0x1c8 }, { 'type': 'EntityBlock08', 'x': 0x2f1, 'y': 0x1c }, { 'type': 'EntityBlock01', 'x': 0x230, 'y': 0x96 }, { 'type': 'EntityZombieNormal', 'x': 0x5c, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0xb0, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0xe4, 'y': 0xa4 }, { 'type': 'EntityBlock07', 'x': 0x1a0, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x1a8, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x1e8, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x2b8, 'y': 0xa4 }, { 'type': 'EntityBlock06', 'x': 0x263, 'y': 0xe8 }, { 'type': 'EntityBlock05', 'x': 0x29d, 'y': 0x7a }, { 'type': 'EntityBlock05', 'x': 0x249, 'y': 0x7a }, { 'type': 'EntityZombieNormal', 'x': 0x280, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0x34 }, { 'type': 'EntityBlock06', 'x': 0x1be, 'y': 0x7a }, { 'type': 'EntityBlock06', 'x': 0x134, 'y': 0x7a }, { 'type': 'EntityZombieNormal', 'x': 0x180, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0xf4, 'y': 0x34 }, { 'type': 'EntityBlock02', 'x': 0x118, 'y': 0x7a }, { 'type': 'EntityZombieNormal', 'x': 0x8c, 'y': 0x34 }, { 'type': 'EntityBlock07', 'x': 0x55, 'y': 0x7a }, { 'type': 'EntityBlock07', 'x': 0xb8, 'y': 0xe8 }, { 'type': 'EntityBlock07', 'x': -0x2c, 'y': 0xe8 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.62')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.crate-medium', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal')['defines'](function() { Level62 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x31e, 'y': 0x168 }, { 'type': 'EntityDiagonalUp', 'x': 0x220, 'y': 0x80 }, { 'type': 'EntityDiagonalUp', 'x': 0x30a, 'y': 0x8c }, { 'type': 'EntityDiagonalUp', 'x': 0x1cd, 'y': 0x1c }, { 'type': 'EntityCrateMedium', 'x': 0x144, 'y': 0x40 }, { 'type': 'EntityWheel', 'x': 0x218, 'y': 0x4c }, { 'type': 'EntityDiagonalDown', 'x': 0x30a, 'y': 0xe8 }, { 'type': 'EntityDiagonalDown', 'x': 0x224, 'y': 0x100 }, { 'type': 'EntityDiagonalDown', 'x': 0x30a, 'y': 0x18 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock07', 'x': 0x25c, 'y': 0x1c8 }, { 'type': 'EntityBlock06', 'x': 0x283, 'y': 0x160 }, { 'type': 'EntityBlock01', 'x': 0x218, 'y': 0xf4 }, { 'type': 'EntityBlock01', 'x': 0x218, 'y': 0xa0 }, { 'type': 'EntityBlock07', 'x': 0x156, 'y': 0x100 }, { 'type': 'EntityBlock06', 'x': 0x208, 'y': 0x84 }, { 'type': 'EntityBlock05', 'x': 0x293, 'y': 0x84 }, { 'type': 'EntityZombieNormal', 'x': 0x2ac, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x2bc, 'y': 0xa8 }, { 'type': 'EntityBlock05', 'x': 0x2b7, 'y': 0x1c }, { 'type': 'EntityBlock06', 'x': 0x22c, 'y': 0x1c }, { 'type': 'EntityBlock06', 'x': 0x144, 'y': 0x7c }, { 'type': 'EntityZombieNormal', 'x': 0x194, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0x2ac, 'y': 0x40 }, { 'type': 'EntityZombieNormal', 'x': 0x264, 'y': 0x40 }, { 'type': 'EntityZombieNormal', 'x': 0x1c0, 'y': 0xb8 }, { 'type': 'EntityZombieNormal', 'x': 0x2bc, 'y': 0x184 }, { 'type': 'EntityBlock05', 'x': 0x2b8, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x29c, 'y': 0xec }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.63')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-medium', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-03', 'game.entities.obstacles.block-04', 'game.entities.objects.frame-test')['defines'](function() { Level63 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateMedium', 'x': 0x1cc, 'y': 0x138 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x288, 'y': 0x1ac }, { 'type': 'EntityDiagonalUp', 'x': 0x28e, 'y': 0x114 }, { 'type': 'EntityDiagonalDown', 'x': 0x314, 'y': 0xd6 }, { 'type': 'EntityDiagonalDown', 'x': 0x31c, 'y': 0x18 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock01', 'x': 0x1cc, 'y': 0x190 }, { 'type': 'EntityBlock07', 'x': 0x1cc, 'y': 0x174 }, { 'type': 'EntityBlock01', 'x': 0x228, 'y': 0x120 }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0x130 }, { 'type': 'EntityZombieNormal', 'x': 0x210, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2d0, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x318, 'y': 0x1a0 }, { 'type': 'EntityBlock08', 'x': 0x2ed, 'y': 0x117 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xd8 }, { 'type': 'EntityBlock05', 'x': 0x2c9, 'y': 0x1c }, { 'type': 'EntityBlock07', 'x': 0x73, 'y': 0x1c }, { 'type': 'EntityBlock03', 'x': 0x135, 'y': 0x1a }, { 'type': 'EntityBlock04', 'x': 0x58, 'y': 0x1c }, { 'type': 'EntityBlock08', 'x': 0x151, 'y': 0x36 }, { 'type': 'EntityBlock03', 'x': 0x58, 'y': 0x8c }, { 'type': 'EntityBlock05', 'x': 0x74, 'y': 0xa8 }, { 'type': 'EntityBlock04', 'x': 0xc7, 'y': 0x8c }, { 'type': 'EntityBlock05', 'x': 0xe2, 'y': 0x8f }, { 'type': 'EntityBlock08', 'x': 0x8c, 'y': 0xc4 }, { 'type': 'EntityBlock08', 'x': 0xfc, 'y': 0xaa }, { 'type': 'EntityZombieNormal', 'x': 0x88, 'y': 0x64 }, { 'type': 'EntityZombieNormal', 'x': 0xf8, 'y': 0x4c }, { 'type': 'EntityZombieNormal', 'x': 0x32c, 'y': 0x94 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.64')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level64 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityWheel', 'x': 0x148, 'y': 0x124 }, { 'type': 'EntityWheel', 'x': 0x1bc, 'y': 0x64 }, { 'type': 'EntityDiagonalUp', 'x': 0x58, 'y': -0x8 }, { 'type': 'EntityWheel', 'x': 0x2e4, 'y': 0x48 }, { 'type': 'EntityDiagonalDown', 'x': 0x308, 'y': -0x8 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock02', 'x': 0x164, 'y': 0x176 }, { 'type': 'EntityBlock05', 'x': 0x12c, 'y': 0x15a }, { 'type': 'EntityBlock02', 'x': 0x1d0, 'y': 0x176 }, { 'type': 'EntityBlock02', 'x': 0x238, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x29c, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x300, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x1d0, 'y': 0x108 }, { 'type': 'EntityBlock05', 'x': 0x1a0, 'y': 0x9c }, { 'type': 'EntityBlock02', 'x': 0x29c, 'y': 0x10a }, { 'type': 'EntityBlock05', 'x': 0x264, 'y': 0xf0 }, { 'type': 'EntityBlock02', 'x': 0x300, 'y': 0x10a }, { 'type': 'EntityBlock02', 'x': 0x300, 'y': 0x9c }, { 'type': 'EntityBlock05', 'x': 0x2c8, 'y': 0x80 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2c8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1f8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x18c, 'y': 0x1a0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.65')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.wheel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level65 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityWheel', 'x': 0x160, 'y': 0xd4 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x70, 'y': 0x64, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock02', 'x': 0x2dc, 'y': 0x176 }, { 'type': 'EntityBlock02', 'x': 0x16c, 'y': 0x10c }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x13c, 'y': 0x138 }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xcc }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0x13c }, { 'type': 'EntityBlock01', 'x': 0x90, 'y': 0xe8 }, { 'type': 'EntityBlock05', 'x': 0x134, 'y': 0x17c }, { 'type': 'EntityBlock06', 'x': 0x1ec, 'y': 0x168 }, { 'type': 'EntityZombieNormal', 'x': 0xc8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1f0, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x234, 'y': 0x124 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x15a }, { 'type': 'EntityBlock06', 'x': 0x1dc, 'y': 0x88 }, { 'type': 'EntityBlock06', 'x': 0x318, 'y': 0x88 }, { 'type': 'EntityZombieNormal', 'x': 0x31c, 'y': 0x44 }, { 'type': 'EntityZombieNormal', 'x': 0x1e0, 'y': 0x44 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.66')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level66 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x48, 'y': 0xf0 }, { 'type': 'EntityDiagonalUp', 'x': 0x188, 'y': 0x18c }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x188 }, { 'type': 'EntityDiagonalUp', 'x': 0x1e6, 'y': -0x4 }, { 'type': 'EntityDiagonalUp', 'x': 0x58, 'y': -0x4 }, { 'type': 'EntityDiagonalDown', 'x': 0x58, 'y': 0x18c }, { 'type': 'EntityDiagonalDown', 'x': 0x1e6, 'y': 0x18c }, { 'type': 'EntityDiagonalDown', 'x': 0x314, 'y': 0xf0 }, { 'type': 'EntityDiagonalDown', 'x': 0x188, 'y': -0x4 }, { 'type': 'EntityDiagonalDown', 'x': 0x308, 'y': -0x4 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x74, 'y': 0x8c, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x290, 'y': 0x19c }, { 'type': 'EntityZombieNormal', 'x': 0xd0, 'y': 0x11c }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xf2 }, { 'type': 'EntityZombieNormal', 'x': 0x320, 'y': 0xac }, { 'type': 'EntityBlock07', 'x': 0xc0, 'y': 0x160 }, { 'type': 'EntityZombieNormal', 'x': 0x130, 'y': 0x11c }, { 'type': 'EntityZombieNormal', 'x': 0xf8, 'y': 0x19c }, { 'type': 'EntityBlock07', 'x': 0x23c, 'y': 0x160 }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0x11c }, { 'type': 'EntityZombieNormal', 'x': 0x2b4, 'y': 0x11c }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xf2 }, { 'type': 'EntityBlock07', 'x': 0x184, 'y': 0xf2 }, { 'type': 'EntityBlock07', 'x': 0x248, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x25c, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0x2c8, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0x194, 'y': 0xac }, { 'type': 'EntityZombieNormal', 'x': 0x204, 'y': 0xac }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.67')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level67 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock01', 'x': 0x190, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x184, 'y': 0xc4 }, { 'type': 'EntityBlock01', 'x': 0x154, 'y': 0x84 }, { 'type': 'EntityZombieNormal', 'x': 0x148, 'y': 0x40 }, { 'type': 'EntityBlock01', 'x': 0xb0, 'y': 0xd4 }, { 'type': 'EntityZombieNormal', 'x': 0xa0, 'y': 0x90 }, { 'type': 'EntityBlock01', 'x': 0x250, 'y': 0x80 }, { 'type': 'EntityBlock01', 'x': 0x28c, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x280, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x244, 'y': 0x3c }, { 'type': 'EntityBlock01', 'x': 0x31c, 'y': 0xcc }, { 'type': 'EntityZombieNormal', 'x': 0x30c, 'y': 0x88 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.68')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.plank-vert', 'game.entities.objects.crate-small', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level68 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlankVert', 'x': 0x1b4, 'y': 0x104 }, { 'type': 'EntityCrateSmall', 'x': 0x1d0, 'y': 0x1c8 }, { 'type': 'EntityCrateSmall', 'x': 0x1d0, 'y': 0x1ac }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x74, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock01', 'x': 0x158, 'y': 0x190 }, { 'type': 'EntityBlock01', 'x': 0x274, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x158, 'y': 0x174 }, { 'type': 'EntityBlock07', 'x': 0x1cc, 'y': 0x174 }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x23c, 'y': 0x1a0 }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x11c }, { 'type': 'EntityZombieNormal', 'x': 0xa4, 'y': 0xd8 }, { 'type': 'EntityBlock06', 'x': 0x1c8, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0x1d4, 'y': 0x84 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.69')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-medium', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level69 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateMedium', 'x': 0xd4, 'y': 0x9c }, { 'type': 'EntityCrateMedium', 'x': 0x110, 'y': 0x9c }, { 'type': 'EntityCrateMedium', 'x': 0x14c, 'y': 0x9c }, { 'type': 'EntityCrateMedium', 'x': 0xf4, 'y': 0x60 }, { 'type': 'EntityCrateMedium', 'x': 0x110, 'y': 0x24 }, { 'type': 'EntityCrateMedium', 'x': 0x130, 'y': 0x60 }, { 'type': 'EntityCrateMedium', 'x': 0x288, 'y': 0x9c }, { 'type': 'EntityCrateMedium', 'x': 0x24c, 'y': 0x9c }, { 'type': 'EntityCrateMedium', 'x': 0x2c4, 'y': 0x9c }, { 'type': 'EntityCrateMedium', 'x': 0x268, 'y': 0x60 }, { 'type': 'EntityCrateMedium', 'x': 0x2a4, 'y': 0x60 }, { 'type': 'EntityCrateMedium', 'x': 0x288, 'y': 0x24 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0xec, 'y': 0xd8 }, { 'type': 'EntityBlock02', 'x': 0x118, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x184, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x1f0, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x25c, 'y': 0x178 }, { 'type': 'EntityBlock06', 'x': 0x260, 'y': 0xd8 }, { 'type': 'EntityZombieNormal', 'x': 0x140, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1ac, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x21c, 'y': 0x1a0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityZombieNormal', 'x': 0x28c, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.70')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.wheel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level70 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x16c }, { 'type': 'EntityDiagonalUp', 'x': 0x2aa, 'y': 0x1ca }, { 'type': 'EntityWheel', 'x': 0x2a0, 'y': 0x40 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x78, 'y': 0x54 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x98 }, { 'type': 'EntityBlock07', 'x': 0xb8, 'y': 0x10c }, { 'type': 'EntityZombieNormal', 'x': 0x118, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0x14c, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0xe4, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0x198, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x240, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1e8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x28c, 'y': 0x1a0 }, { 'type': 'EntityBlock05', 'x': 0x288, 'y': 0xfc }, { 'type': 'EntityBlock08', 'x': 0x2c0, 'y': 0xe0 }, { 'type': 'EntityZombieNormal', 'x': 0x2b0, 'y': 0x9c }, { 'type': 'EntityBlock05', 'x': 0x294, 'y': 0x78 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.71')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.move-path', 'game.entities.obstacles.block-switch', 'game.entities.objects.switch', 'game.entities.objects.explosive-barrel', 'game.entities.objects.crate-small', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level71 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovePath', 'x': 0x1d8, 'y': 0x70, 'settings': { 'sp_id': 0x3, 'pathNum': 0x1 } }, { 'type': 'EntityBlockSwitch', 'x': 0x184, 'y': 0x70, 'settings': { 'sp_id': 0x3, 'switch_id': 0x2 } }, { 'type': 'EntitySwitch', 'x': 0x290, 'y': 0x15c, 'settings': { 'switch_id': 0x2 } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1a4, 'y': 0x1c }, { 'type': 'EntityCrateSmall', 'x': 0x1ac, 'y': 0x54 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x20c, 'y': 0x104 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock01', 'x': 0x17c, 'y': 0x1c }, { 'type': 'EntityBlock01', 'x': 0x1d8, 'y': 0x1c }, { 'type': 'EntityBlock07', 'x': 0x1f0, 'y': 0xcc }, { 'type': 'EntityBlock07', 'x': 0x1f0, 'y': 0x13c }, { 'type': 'EntityBlock01', 'x': 0x1f0, 'y': 0xe8 }, { 'type': 'EntityBlock01', 'x': 0x296, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x1fc, 'y': 0x88 }, { 'type': 'EntityZombieNormal', 'x': 0x228, 'y': 0x88 }, { 'type': 'EntityZombieNormal', 'x': 0x240, 'y': 0xf4 }, { 'type': 'EntityZombieNormal', 'x': 0x264, 'y': 0xf4 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x21c, 'y': 0x1a0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.72')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-switch', 'game.entities.obstacles.move-path', 'game.entities.objects.switch', 'game.entities.objects.crate-destructible-small', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.plank', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level72 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlockSwitch', 'x': 0x16c, 'y': 0x70, 'settings': { 'sp_id': 0x3, 'switch_id': 0x2 } }, { 'type': 'EntityMovePath', 'x': 0x1d8, 'y': 0x70, 'settings': { 'sp_id': 0x3, 'pathNum': 0x1 } }, { 'type': 'EntitySwitch', 'x': 0x70, 'y': 0x78, 'settings': { 'switch_id': 0x2 } }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0xa8, 'y': 0x72 }, { 'type': 'EntityDiagonalUp', 'x': 0x14d, 'y': 0x18c }, { 'type': 'EntityPlank', 'x': 0x1ac, 'y': 0x12e }, { 'type': 'EntityDiagonalUp', 'x': 0x296, 'y': 0xb2 }, { 'type': 'EntityWheel', 'x': 0x180, 'y': 0x38 }, { 'type': 'EntityDiagonalDown', 'x': 0x16b, 'y': 0x6c }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x278, 'y': 0x1a0 }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0xac }, { 'type': 'EntityBlock01', 'x': 0x150, 'y': 0x1c }, { 'type': 'EntityBlock08', 'x': 0x150, 'y': 0x70 }, { 'type': 'EntityBlock01', 'x': 0x1d8, 'y': 0x1c }, { 'type': 'EntityBlock06', 'x': 0x1ca, 'y': 0xcc }, { 'type': 'EntityBlock08', 'x': 0x1ac, 'y': 0x1c8 }, { 'type': 'EntityBlock02', 'x': 0x1ac, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x1ac, 'y': 0x13c }, { 'type': 'EntityBlock08', 'x': 0x20c, 'y': 0x13c }, { 'type': 'EntityBlock08', 'x': 0x27c, 'y': 0x112 }, { 'type': 'EntityBlock08', 'x': 0x2f5, 'y': 0xb4 }, { 'type': 'EntityBlock02', 'x': 0x2f5, 'y': 0x46 }, { 'type': 'EntityZombieNormal', 'x': 0x2d0, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x320, 'y': 0x1a0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.73')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.plank', 'game.entities.objects.crate-medium', 'game.entities.objects.explosive-barrel', 'game.entities.objects.crate-small', 'game.entities.objects.wheel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-03')['defines'](function() { Level73 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlank', 'x': 0x160, 'y': 0x19c }, { 'type': 'EntityCrateMedium', 'x': 0xb0, 'y': 0x1ac }, { 'type': 'EntityExplosiveBarrel', 'x': 0x164, 'y': 0x1ac }, { 'type': 'EntityCrateMedium', 'x': 0x200, 'y': 0x1ac }, { 'type': 'EntityCrateMedium', 'x': 0x23c, 'y': 0x1ac }, { 'type': 'EntityCrateMedium', 'x': 0x278, 'y': 0x1ac }, { 'type': 'EntityCrateMedium', 'x': 0x2b4, 'y': 0x1ac }, { 'type': 'EntityCrateSmall', 'x': 0x1e4, 'y': 0x180 }, { 'type': 'EntityCrateSmall', 'x': 0x1e4, 'y': 0x164 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x164, 'y': 0x164 }, { 'type': 'EntityPlank', 'x': 0x160, 'y': 0x154 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x164, 'y': 0x11c }, { 'type': 'EntityPlank', 'x': 0x160, 'y': 0x10c }, { 'type': 'EntityCrateSmall', 'x': 0x1ac, 'y': 0x138 }, { 'type': 'EntityCrateSmall', 'x': 0x1ac, 'y': 0x11c }, { 'type': 'EntityExplosiveBarrel', 'x': 0x164, 'y': 0xd4 }, { 'type': 'EntityWheel', 'x': 0x15c, 'y': 0x9c }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x2fc, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x330, 'y': 0x1a0 }, { 'type': 'EntityBlock01', 'x': 0x23f, 'y': 0x10c }, { 'type': 'EntityBlock06', 'x': 0x23f, 'y': 0x160 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x11c }, { 'type': 'EntityZombieNormal', 'x': 0x298, 'y': 0x11c }, { 'type': 'EntityBlock06', 'x': 0x1d0, 'y': 0xf0 }, { 'type': 'EntityBlock03', 'x': 0x1b4, 'y': 0xd4 }, { 'type': 'EntityBlock08', 'x': 0x198, 'y': 0xd4 }, { 'type': 'EntityBlock08', 'x': 0x140, 'y': 0xb8 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.74')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-small', 'game.entities.objects.plank', 'game.entities.objects.crate-medium', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level74 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateSmall', 'x': 0x170, 'y': 0x1c8 }, { 'type': 'EntityCrateSmall', 'x': 0x170, 'y': 0x1ac }, { 'type': 'EntityPlank', 'x': 0x170, 'y': 0x1a0 }, { 'type': 'EntityCrateSmall', 'x': 0x1d4, 'y': 0x184 }, { 'type': 'EntityCrateSmall', 'x': 0x1d4, 'y': 0x168 }, { 'type': 'EntityCrateMedium', 'x': 0x170, 'y': 0x168 }, { 'type': 'EntityCrateMedium', 'x': 0x214, 'y': 0x168 }, { 'type': 'EntityPlank', 'x': 0x170, 'y': 0x158 }, { 'type': 'EntityCrateMedium', 'x': 0x214, 'y': 0x11c }, { 'type': 'EntityCrateMedium', 'x': 0x170, 'y': 0x11c }, { 'type': 'EntityCrateSmall', 'x': 0x1d4, 'y': 0x13c }, { 'type': 'EntityCrateSmall', 'x': 0x1d4, 'y': 0x120 }, { 'type': 'EntityPlank', 'x': 0x170, 'y': 0x10c }, { 'type': 'EntityCrateMedium', 'x': 0x170, 'y': 0xd0 }, { 'type': 'EntityCrateSmall', 'x': 0x1d4, 'y': 0xf0 }, { 'type': 'EntityCrateSmall', 'x': 0x1d4, 'y': 0xd4 }, { 'type': 'EntityCrateMedium', 'x': 0x214, 'y': 0xd0 }, { 'type': 'EntityCrateSmall', 'x': 0x234, 'y': 0x1c8 }, { 'type': 'EntityCrateSmall', 'x': 0x234, 'y': 0x1ac }, { 'type': 'EntityCrateSmall', 'x': 0x1d4, 'y': 0x1c8 }, { 'type': 'EntityCrateSmall', 'x': 0x1d4, 'y': 0x1ac }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xec, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x124, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x258, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x294, 'y': 0x1a0 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x180 }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0x13c }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x11c }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x2e4, 'y': 0xd8 }, { 'type': 'EntityZombieNormal', 'x': 0x2e4, 'y': 0x70 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.75')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.moving-block', 'game.entities.obstacles.move-path', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level75 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovingBlock', 'x': 0x170, 'y': 0x80, 'settings': { 'pathId': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x25e, 'y': 0x80, 'settings': { 'pathId': 0x1 } }, { 'type': 'EntityMovingBlock', 'x': 0x25c, 'y': 0x128, 'settings': { 'pathId': 0x2 } }, { 'type': 'EntityMovePath', 'x': 0x170, 'y': 0x128, 'settings': { 'pathId': 0x2 } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x124, 'y': 0x1a0 }, { 'type': 'EntityBlock01', 'x': 0x164, 'y': 0x2c }, { 'type': 'EntityBlock01', 'x': 0x164, 'y': 0xd4 }, { 'type': 'EntityBlock01', 'x': 0x164, 'y': 0x17c }, { 'type': 'EntityBlock05', 'x': 0x1c4, 'y': 0x64 }, { 'type': 'EntityBlock01', 'x': 0x25c, 'y': 0x2c }, { 'type': 'EntityBlock01', 'x': 0x25c, 'y': 0xd4 }, { 'type': 'EntityBlock01', 'x': 0x25c, 'y': 0x17c }, { 'type': 'EntityBlock05', 'x': 0x1c0, 'y': 0x1c8 }, { 'type': 'EntityBlock05', 'x': 0xb0, 'y': 0x7c }, { 'type': 'EntityBlock05', 'x': 0xb0, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0xbc, 'y': 0xa0 }, { 'type': 'EntityZombieNormal', 'x': 0xbc, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0x1d4, 'y': 0x20 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0x184 }, { 'type': 'EntityBlock05', 'x': 0x2d4, 'y': 0x180 }, { 'type': 'EntityBlock05', 'x': 0x2d4, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x2e8, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0x2e8, 'y': 0xc4 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.76')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level76 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0xaa }, { 'type': 'EntityDiagonalUp', 'x': 0x21f, 'y': 0x108 }, { 'type': 'EntityDiagonalUp', 'x': 0x58, 'y': 0xcc }, { 'type': 'EntityDiagonalUp', 'x': 0x13e, 'y': 0x70 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x168, 'y': 0x124 }, { 'type': 'EntityBlock06', 'x': 0x27e, 'y': 0x10a }, { 'type': 'EntityBlock07', 'x': 0x15e, 'y': 0x168 }, { 'type': 'EntityZombieNormal', 'x': 0x1a8, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x1e8, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x2c8, 'y': 0xc4 }, { 'type': 'EntityBlock06', 'x': 0xb6, 'y': 0xcf }, { 'type': 'EntityBlock07', 'x': 0x19d, 'y': 0x72 }, { 'type': 'EntityZombieNormal', 'x': 0xc0, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x104, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x1b0, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0x1e8, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0x220, 'y': 0x2c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.77')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level77 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x159, 'y': 0x104 }, { 'type': 'EntityDiagonalUp', 'x': 0x20a, 'y': 0x3c }, { 'type': 'EntityDiagonalDown', 'x': 0x20a, 'y': 0x104 }, { 'type': 'EntityDiagonalDown', 'x': 0x159, 'y': 0x3c }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x1b8, 'y': 0x108 }, { 'type': 'EntityBlock05', 'x': 0x1b8, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x1c8, 'y': 0xc4 }, { 'type': 'EntityBlock05', 'x': 0x106, 'y': 0x40 }, { 'type': 'EntityBlock05', 'x': 0x269, 'y': 0x40 }, { 'type': 'EntityBlock05', 'x': 0x269, 'y': 0x164 }, { 'type': 'EntityBlock05', 'x': 0x106, 'y': 0x164 }, { 'type': 'EntityBlock07', 'x': 0x70, 'y': 0xd0 }, { 'type': 'EntityZombieNormal', 'x': 0x118, 'y': 0x120 }, { 'type': 'EntityZombieNormal', 'x': 0x27c, 'y': 0x120 }, { 'type': 'EntityZombieNormal', 'x': 0x84, 'y': 0x8c }, { 'type': 'EntityZombieNormal', 'x': 0xe8, 'y': 0x8c }, { 'type': 'EntityBlock07', 'x': 0x290, 'y': 0xd4 }, { 'type': 'EntityZombieNormal', 'x': 0x2a8, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x304, 'y': 0x90 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.78')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level78 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0xab, 'y': 0xf4 }, { 'type': 'EntityDiagonalUp', 'x': 0x2b5, 'y': 0x20 }, { 'type': 'EntityDiagonalDown', 'x': 0xab, 'y': 0x20 }, { 'type': 'EntityDiagonalDown', 'x': 0x2b5, 'y': 0xf4 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x74, 'y': 0x178, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x154 }, { 'type': 'EntityBlock05', 'x': 0x109, 'y': 0xf8 }, { 'type': 'EntityBlock06', 'x': 0x94, 'y': 0xb8 }, { 'type': 'EntityBlock05', 'x': 0x109, 'y': 0x80 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x24 }, { 'type': 'EntityZombieNormal', 'x': 0x128, 'y': 0x3c }, { 'type': 'EntityZombieNormal', 'x': 0x128, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x98, 'y': 0x74 }, { 'type': 'EntityZombieNormal', 'x': 0x68, 'y': 0x10c }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x24 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x154 }, { 'type': 'EntityBlock05', 'x': 0x263, 'y': 0xf8 }, { 'type': 'EntityBlock05', 'x': 0x264, 'y': 0x80 }, { 'type': 'EntityBlock06', 'x': 0x2a0, 'y': 0xbc }, { 'type': 'EntityZombieNormal', 'x': 0x2f4, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x274, 'y': 0x40 }, { 'type': 'EntityZombieNormal', 'x': 0x264, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0x110 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.79')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level79 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0xab, 'y': -0x14 }, { 'type': 'EntityWheel', 'x': 0x164, 'y': 0xc8 }, { 'type': 'EntityDiagonalDown', 'x': 0xab, 'y': 0xe0 }, { 'type': 'EntityDiagonalDown', 'x': 0x292, 'y': 0x100 }, { 'type': 'EntityDiagonalDown', 'x': 0x2b5, 'y': -0x14 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0xbc, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x124, 'y': 0xfc }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x4c }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xe0 }, { 'type': 'EntityBlock06', 'x': 0x15c, 'y': 0x100 }, { 'type': 'EntityBlock05', 'x': 0x10a, 'y': 0x140 }, { 'type': 'EntityZombieNormal', 'x': 0x78, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x1b0, 'y': 0xbc }, { 'type': 'EntityBlock06', 'x': 0x1f0, 'y': 0x78 }, { 'type': 'EntityBlock05', 'x': 0x2f0, 'y': 0x160 }, { 'type': 'EntityBlock08', 'x': 0x277, 'y': 0x104 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xdc }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x4c }, { 'type': 'EntityZombieNormal', 'x': 0x320, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0xc0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.80')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-07', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level80 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock07', 'x': 0x58, 'y': 0x104 }, { 'type': 'EntityBlock07', 'x': 0x84, 'y': 0x7c, 'settings': { 'rotation': 0x14 } }, { 'type': 'EntityBlock07', 'x': 0x194, 'y': 0xd8 }, { 'type': 'EntityBlock07', 'x': 0x1f0, 'y': 0x180 }, { 'type': 'EntityBlock07', 'x': 0x274, 'y': 0x130, 'settings': { 'rotation': -0x14 } }, { 'type': 'EntityBlock07', 'x': 0x274, 'y': 0x90, 'settings': { 'rotation': 0x14 } }, { 'type': 'EntityZombieNormal', 'x': 0xd4, 'y': 0x3c, 'settings': { 'stayInPos': 'true' } }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0x13c }, { 'type': 'EntityZombieNormal', 'x': 0x84, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0xc4, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0x2b8, 'y': 0x4c, 'settings': { 'stayInPos': 'true' } }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0xe4, 'settings': { 'stayInPos': 'true' } }, { 'type': 'EntityZombieNormal', 'x': 0x280, 'y': 0x104, 'settings': { 'stayInPos': 'true' } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.81')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-07', 'game.entities.objects.frame-test')['defines'](function() { Level81 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x15c, 'y': 0xe4 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x240, 'y': 0xe4 }, { 'type': 'EntityWheel', 'x': 0x198, 'y': 0xe8 }, { 'type': 'EntityWheel', 'x': 0x1d0, 'y': 0xe8 }, { 'type': 'EntityWheel', 'x': 0x208, 'y': 0xe8 }, { 'type': 'EntityWheel', 'x': 0x1b4, 'y': 0xb8 }, { 'type': 'EntityWheel', 'x': 0x1ec, 'y': 0xb8 }, { 'type': 'EntityWheel', 'x': 0x1d4, 'y': 0x8c }, { 'type': 'EntityDiagonalDown', 'x': 0x58, 'y': 0x94 }, { 'type': 'EntityDiagonalDown', 'x': 0x94, 'y': 0xd0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x180, 'y': 0x1a0 }, { 'type': 'EntityBlock06', 'x': 0x161, 'y': 0x120 }, { 'type': 'EntityBlock06', 'x': 0x1eb, 'y': 0x120 }, { 'type': 'EntityBlock01', 'x': 0x120, 'y': 0x190 }, { 'type': 'EntityBlock07', 'x': 0x1bc, 'y': 0x174 }, { 'type': 'EntityBlock01', 'x': 0x264, 'y': 0x190 }, { 'type': 'EntityZombieNormal', 'x': 0x220, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1f0, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1bc, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x288, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2c4, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2fc, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0x1a0 }, { 'type': 'EntityBlock08', 'x': 0xf2, 'y': 0x130 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.82')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.plank', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-07')['defines'](function() { Level82 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlank', 'x': 0xd0, 'y': 0x54 }, { 'type': 'EntityPlank', 'x': 0x1e0, 'y': 0x184 }, { 'type': 'EntityPlank', 'x': 0x240, 'y': 0x80 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xe0, 'y': 0x70 }, { 'type': 'EntityBlock07', 'x': 0xd8, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x244, 'y': 0x190 }, { 'type': 'EntityZombieNormal', 'x': 0x168, 'y': 0x70 }, { 'type': 'EntityBlock01', 'x': 0x128, 'y': 0x60 }, { 'type': 'EntityBlock01', 'x': 0x2ac, 'y': 0x190 }, { 'type': 'EntityBlock01', 'x': 0x1dc, 'y': 0x190 }, { 'type': 'EntityZombieNormal', 'x': 0x204, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0x1a0 }, { 'type': 'EntityBlock07', 'x': 0x250, 'y': 0xe0 }, { 'type': 'EntityBlock01', 'x': 0x2a0, 'y': 0x8c }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x2d4, 'y': 0x9c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.83')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level83 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0xc8, 'y': 0x78 }, { 'type': 'EntityDiagonalUp', 'x': 0x1ac, 'y': 0xfb }, { 'type': 'EntityDiagonalUp', 'x': 0x27c, 'y': 0x74 }, { 'type': 'EntityDiagonalDown', 'x': 0x126, 'y': 0x78 }, { 'type': 'EntityDiagonalDown', 'x': 0x209, 'y': 0xfb }, { 'type': 'EntityDiagonalDown', 'x': 0x2da, 'y': 0x74 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x75, 'y': 0xd8 }, { 'type': 'EntityBlock08', 'x': 0x184, 'y': 0xd8 }, { 'type': 'EntityBlock08', 'x': 0x192, 'y': 0x15a }, { 'type': 'EntityBlock08', 'x': 0x266, 'y': 0x15a }, { 'type': 'EntityBlock08', 'x': 0x262, 'y': 0xd4 }, { 'type': 'EntityBlock08', 'x': 0x338, 'y': 0xd4 }, { 'type': 'EntityZombieNormal', 'x': 0x98, 'y': 0x94 }, { 'type': 'EntityZombieNormal', 'x': 0x180, 'y': 0x94 }, { 'type': 'EntityZombieNormal', 'x': 0x188, 'y': 0x118 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x118 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x334, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2a0, 'y': 0x1a0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.84')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-03', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level84 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x144, 'y': 0x94, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1f4, 'y': 0xe8 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x214, 'y': 0x60, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock03', 'x': 0x1c4, 'y': 0x104, 'settings': { 'zIndex': 0x2 } }, { 'type': 'EntityBlock03', 'x': 0x1d0, 'y': 0x98, 'settings': { 'zIndex': 0x2 } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0x128, 'y': 0xcc }, { 'type': 'EntityBlock06', 'x': 0x128, 'y': 0x44 }, { 'type': 'EntityBlock01', 'x': 0x128, 'y': 0x78 }, { 'type': 'EntityBlock01', 'x': 0x198, 'y': 0x60 }, { 'type': 'EntityBlock01', 'x': 0x1b4, 'y': 0xcc }, { 'type': 'EntityBlock06', 'x': 0x1b4, 'y': 0x120 }, { 'type': 'EntityBlock06', 'x': 0x1b4, 'y': 0x98 }, { 'type': 'EntityBlock01', 'x': 0x240, 'y': 0x60 }, { 'type': 'EntityBlock06', 'x': 0x240, 'y': 0x44 }, { 'type': 'EntityBlock01', 'x': 0x224, 'y': 0xb4 }, { 'type': 'EntityBlock06', 'x': 0x240, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x2b0, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x16c, 'y': 0x88 }, { 'type': 'EntityZombieNormal', 'x': 0x1b8, 'y': 0x54 }, { 'type': 'EntityZombieNormal', 'x': 0x1e4, 'y': 0x54 }, { 'type': 'EntityBlock08', 'x': 0x208, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x1ec, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0x70 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.85')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level85 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x11c }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0xac }, { 'type': 'EntityZombieNormal', 'x': 0x6c, 'y': 0xd8 }, { 'type': 'EntityZombieNormal', 'x': 0x6c, 'y': 0x68 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0xac }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x11c }, { 'type': 'EntityZombieNormal', 'x': 0x32c, 'y': 0x68 }, { 'type': 'EntityZombieNormal', 'x': 0x32c, 'y': 0xd8 }, { 'type': 'EntityBlock06', 'x': 0x138, 'y': 0x80 }, { 'type': 'EntityBlock06', 'x': 0x138, 'y': 0xfc }, { 'type': 'EntityBlock06', 'x': 0x1ec, 'y': 0xdc }, { 'type': 'EntityBlock06', 'x': 0x1ec, 'y': 0x154 }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0x110 }, { 'type': 'EntityZombieNormal', 'x': 0x204, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x17c, 'y': 0xb8 }, { 'type': 'EntityZombieNormal', 'x': 0x180, 'y': 0x3c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.86')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level86 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x88, 'y': 0xb4, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1c4, 'y': 0xb4, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x30c, 'y': 0xb4, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0xec }, { 'type': 'EntityBlock01', 'x': 0xe3, 'y': 0x84 }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0x40 }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x84 }, { 'type': 'EntityZombieNormal', 'x': 0xb0, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x5c, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x84, 'y': 0x40 }, { 'type': 'EntityBlock06', 'x': 0x198, 'y': 0xec }, { 'type': 'EntityBlock01', 'x': 0x17c, 'y': 0xb4 }, { 'type': 'EntityBlock06', 'x': 0x19c, 'y': 0x84 }, { 'type': 'EntityBlock01', 'x': 0x226, 'y': 0x84 }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x198, 'y': 0xa8 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x84 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0xec }, { 'type': 'EntityBlock01', 'x': 0x2c0, 'y': 0x84 }, { 'type': 'EntityZombieNormal', 'x': 0x310, 'y': 0x40 }, { 'type': 'EntityZombieNormal', 'x': 0x338, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0xa8 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.87')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal')['defines'](function() { Level87 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0xe0, 'y': 0xbc }, { 'type': 'EntityBlock01', 'x': 0xc4, 'y': 0x84 }, { 'type': 'EntityBlock01', 'x': 0x16a, 'y': 0x84 }, { 'type': 'EntityBlock06', 'x': 0x1d0, 'y': 0xa8 }, { 'type': 'EntityBlock06', 'x': 0x1d0, 'y': 0x120 }, { 'type': 'EntityBlock01', 'x': 0x1b4, 'y': 0xe8 }, { 'type': 'EntityBlock01', 'x': 0x25a, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0xe4, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x1d8, 'y': 0x64 }, { 'type': 'EntityZombieNormal', 'x': 0x220, 'y': 0x64 }, { 'type': 'EntityZombieNormal', 'x': 0x1d4, 'y': 0xdc }, { 'type': 'EntityZombieNormal', 'x': 0x224, 'y': 0xdc }, { 'type': 'EntityBlock06', 'x': 0x2b8, 'y': 0x120 }, { 'type': 'EntityBlock06', 'x': 0x2b8, 'y': 0x190 }, { 'type': 'EntityBlock01', 'x': 0x29c, 'y': 0x158 }, { 'type': 'EntityBlock01', 'x': 0x342, 'y': 0x158 }, { 'type': 'EntityZombieNormal', 'x': 0x2c4, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x30c, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x2c8, 'y': 0xdc }, { 'type': 'EntityZombieNormal', 'x': 0x308, 'y': 0xdc }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.88')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level88 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x54, 'y': 0x104 }, { 'type': 'EntityDiagonalUp', 'x': 0x208, 'y': -0xc }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x6e }, { 'type': 'EntityDiagonalDown', 'x': 0x54, 'y': 0x70 }, { 'type': 'EntityDiagonalDown', 'x': 0x158, 'y': -0xc }, { 'type': 'EntityDiagonalDown', 'x': 0x308, 'y': 0x100 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock01', 'x': 0xb2, 'y': 0xd0 }, { 'type': 'EntityZombieNormal', 'x': 0xac, 'y': 0x8c }, { 'type': 'EntityBlock05', 'x': 0x10c, 'y': 0x84 }, { 'type': 'EntityZombieNormal', 'x': 0x120, 'y': 0x40 }, { 'type': 'EntityBlock05', 'x': 0x1b6, 'y': 0x54 }, { 'type': 'EntityBlock05', 'x': 0x1b4, 'y': 0xb8 }, { 'type': 'EntityZombieNormal', 'x': 0x1c8, 'y': 0x74 }, { 'type': 'EntityBlock05', 'x': 0x1b4, 'y': 0x120 }, { 'type': 'EntityZombieNormal', 'x': 0x1c8, 'y': 0xdc }, { 'type': 'EntityBlock05', 'x': 0x1b4, 'y': 0x184 }, { 'type': 'EntityZombieNormal', 'x': 0x1c8, 'y': 0x140 }, { 'type': 'EntityBlock05', 'x': 0x264, 'y': 0x84 }, { 'type': 'EntityBlock01', 'x': 0x2ee, 'y': 0xcc }, { 'type': 'EntityZombieNormal', 'x': 0x2e4, 'y': 0x88 }, { 'type': 'EntityZombieNormal', 'x': 0x278, 'y': 0x40 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.89')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-04', 'game.entities.obstacles.block-03', 'game.entities.objects.frame-test')['defines'](function() { Level89 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x108, 'y': 0x80 }, { 'type': 'EntityExplosiveBarrel', 'x': 0xcc, 'y': 0x100 }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x80 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x2c8, 'y': 0x100 }, { 'type': 'EntityDiagonalDown', 'x': 0x58, 'y': 0x80 }, { 'type': 'EntityDiagonalDown', 'x': 0x257, 'y': 0x80 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xb0, 'y': 0x98 }, { 'type': 'EntityBlock05', 'x': 0xb6, 'y': 0xe0 }, { 'type': 'EntityBlock05', 'x': 0xb8, 'y': 0x138 }, { 'type': 'EntityZombieNormal', 'x': 0x1c8, 'y': 0xa8 }, { 'type': 'EntityBlock05', 'x': 0x1b8, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0xe8, 'y': 0x98 }, { 'type': 'EntityBlock05', 'x': 0x167, 'y': 0x84 }, { 'type': 'EntityBlock05', 'x': 0x2b6, 'y': 0xe0 }, { 'type': 'EntityBlock05', 'x': 0x205, 'y': 0x84 }, { 'type': 'EntityBlock05', 'x': 0x2b6, 'y': 0x138 }, { 'type': 'EntityBlock05', 'x': 0x1b6, 'y': 0x150 }, { 'type': 'EntityBlock04', 'x': 0x19b, 'y': 0x150 }, { 'type': 'EntityBlock03', 'x': 0x208, 'y': 0x14f }, { 'type': 'EntityBlock08', 'x': 0x180, 'y': 0x16c }, { 'type': 'EntityBlock08', 'x': 0x224, 'y': 0x16c }, { 'type': 'EntityZombieNormal', 'x': 0x1c8, 'y': 0x10c }, { 'type': 'EntityZombieNormal', 'x': 0x17c, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x220, 'y': 0x128 }, { 'type': 'EntityZombieNormal', 'x': 0x2ec, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x2b4, 'y': 0x9c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.90')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-04', 'game.entities.obstacles.block-03', 'game.entities.objects.frame-test')['defines'](function() { Level90 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0xcc, 'y': 0xa8, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x80 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x2c8, 'y': 0xa8, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityDiagonalUp', 'x': 0x257, 'y': 0xde }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1cc, 'y': 0xb4, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityDiagonalDown', 'x': 0x58, 'y': 0x80 }, { 'type': 'EntityDiagonalDown', 'x': 0x109, 'y': 0xde }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0xb6, 'y': 0xe0 }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0x6c }, { 'type': 'EntityBlock05', 'x': 0x1b8, 'y': 0xec }, { 'type': 'EntityBlock05', 'x': 0x3, 'y': 0xe0 }, { 'type': 'EntityBlock08', 'x': 0x23d, 'y': 0x13e }, { 'type': 'EntityBlock04', 'x': 0x20b, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x166, 'y': 0x13e }, { 'type': 'EntityBlock03', 'x': 0x19c, 'y': 0xd0 }, { 'type': 'EntityBlock08', 'x': 0x226, 'y': 0xd4 }, { 'type': 'EntityBlock08', 'x': 0x181, 'y': 0xd4 }, { 'type': 'EntityZombieNormal', 'x': 0x2c8, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0xcc, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x178, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x224, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x164, 'y': 0xfc }, { 'type': 'EntityZombieNormal', 'x': 0x230, 'y': 0xf8 }, { 'type': 'EntityBlock05', 'x': 0x2b6, 'y': 0xe0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.91')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-06')['defines'](function() { Level91 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x138 }, { 'type': 'EntityZombieNormal', 'x': 0x68, 'y': 0xf4 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x138 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0xf4 }, { 'type': 'EntityBlock07', 'x': 0xa4, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0xec, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0xb4, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x124, 'y': 0x60 }, { 'type': 'EntityBlock01', 'x': 0x1d8, 'y': 0x1c }, { 'type': 'EntityBlock06', 'x': 0x1a0, 'y': 0x70 }, { 'type': 'EntityBlock01', 'x': 0x1d8, 'y': 0x8c }, { 'type': 'EntityBlock05', 'x': 0x1bc, 'y': 0xe0 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0x1fc, 'y': 0x2c }, { 'type': 'EntityBlock07', 'x': 0x25c, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x26c, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x2a8, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0x60 }, { 'type': 'EntityBlock01', 'x': 0x1dc, 'y': 0x192 }, { 'type': 'EntityBlock06', 'x': 0x1a8, 'y': 0x176 }, { 'type': 'EntityZombieNormal', 'x': 0x1a4, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.92')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-destructible-small', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-07', 'game.entities.objects.frame-test')['defines'](function() { Level92 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x21c, 'y': 0x13c, 'settings': { 'tossObstacles': 'true' } }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x1e0, 'y': 0x13c, 'settings': { 'tossObstacles': 'true' } }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x258, 'y': 0x13c, 'settings': { 'tossObstacles': 'true' } }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x204, 'y': 0x100, 'settings': { 'tossObstacles': 'true' } }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x240, 'y': 0x100, 'settings': { 'tossObstacles': 'true' } }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x220, 'y': 0xc4, 'settings': { 'tossObstacles': 'true' } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x1e0, 'y': 0x1a0 }, { 'type': 'EntityBlock01', 'x': 0x2b0, 'y': 0x192 }, { 'type': 'EntityBlock01', 'x': 0x1a4, 'y': 0x192 }, { 'type': 'EntityBlock05', 'x': 0x1a4, 'y': 0x178 }, { 'type': 'EntityBlock05', 'x': 0x278, 'y': 0x178 }, { 'type': 'EntityBlock08', 'x': 0x214, 'y': 0x178 }, { 'type': 'EntityBlock08', 'x': 0x244, 'y': 0x178 }, { 'type': 'EntityBlock07', 'x': 0x1d8, 'y': 0x50 }, { 'type': 'EntityZombieNormal', 'x': 0x220, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x26c, 'y': 0x1a0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.93')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level93 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0xc0, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock01', 'x': 0x12c, 'y': 0xf4 }, { 'type': 'EntityBlock01', 'x': 0x128, 'y': 0x1c }, { 'type': 'EntityBlock05', 'x': 0x128, 'y': 0x70 }, { 'type': 'EntityBlock05', 'x': 0x12c, 'y': 0xd8 }, { 'type': 'EntityZombieNormal', 'x': 0x13c, 'y': 0x94 }, { 'type': 'EntityBlock05', 'x': 0x12c, 'y': 0x148 }, { 'type': 'EntityZombieNormal', 'x': 0x14c, 'y': 0x104 }, { 'type': 'EntityBlock05', 'x': 0x1d8, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x1ec, 'y': 0x70 }, { 'type': 'EntityBlock05', 'x': 0x1d8, 'y': 0x120 }, { 'type': 'EntityZombieNormal', 'x': 0x1ec, 'y': 0xdc }, { 'type': 'EntityBlock05', 'x': 0x1d8, 'y': 0x188 }, { 'type': 'EntityZombieNormal', 'x': 0x1ec, 'y': 0x144 }, { 'type': 'EntityBlock05', 'x': 0x270, 'y': 0x84 }, { 'type': 'EntityZombieNormal', 'x': 0x280, 'y': 0x40 }, { 'type': 'EntityBlock05', 'x': 0x270, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0xa8 }, { 'type': 'EntityBlock05', 'x': 0x270, 'y': 0x154 }, { 'type': 'EntityZombieNormal', 'x': 0x288, 'y': 0x110 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xa0 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x10c }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x174 }, { 'type': 'EntityBlock01', 'x': 0x314, 'y': 0x190 }, { 'type': 'EntityZombieNormal', 'x': 0x32c, 'y': 0x130 }, { 'type': 'EntityZombieNormal', 'x': 0x32c, 'y': 0xc8 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityZombieNormal', 'x': 0x14c, 'y': 0x2c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.94')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level94 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x1d8, 'y': 0x134 }, { 'type': 'EntityDiagonalUp', 'x': 0x17b, 'y': 0x54 }, { 'type': 'EntityDiagonalDown', 'x': 0x17c, 'y': 0x134 }, { 'type': 'EntityDiagonalDown', 'x': 0x1d8, 'y': 0x54 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x6c, 'y': 0xb0 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xf4 }, { 'type': 'EntityBlock05', 'x': 0x129, 'y': 0xb4 }, { 'type': 'EntityBlock05', 'x': 0x129, 'y': 0x136 }, { 'type': 'EntityBlock05', 'x': 0x237, 'y': 0x136 }, { 'type': 'EntityBlock05', 'x': 0x236, 'y': 0xb4 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xf4 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0xb0 }, { 'type': 'EntityZombieNormal', 'x': 0x1c4, 'y': 0xb0 }, { 'type': 'EntityBlock05', 'x': 0x1b0, 'y': 0xf4 }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0xf0 }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0xf4 }, { 'type': 'EntityZombieNormal', 'x': 0x250, 'y': 0x70 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.95')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level95 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0xab, 'y': 0x100 }, { 'type': 'EntityDiagonalUp', 'x': 0x2b5, 'y': 0x48 }, { 'type': 'EntityDiagonalDown', 'x': 0xab, 'y': 0x48 }, { 'type': 'EntityDiagonalDown', 'x': 0x2b5, 'y': 0x100 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x160 }, { 'type': 'EntityBlock05', 'x': 0x10a, 'y': 0xa8 }, { 'type': 'EntityBlock05', 'x': 0x10a, 'y': 0x102 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x48 }, { 'type': 'EntityZombieNormal', 'x': 0x6c, 'y': 0x11c }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x48 }, { 'type': 'EntityBlock06', 'x': 0x1a0, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x1ac, 'y': 0xa4 }, { 'type': 'EntityBlock06', 'x': 0x1a0, 'y': 0x158 }, { 'type': 'EntityZombieNormal', 'x': 0x1a8, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0x114 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x160 }, { 'type': 'EntityBlock05', 'x': 0x262, 'y': 0xa8 }, { 'type': 'EntityBlock05', 'x': 0x262, 'y': 0x102 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0x11c }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.96')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06')['defines'](function() { Level96 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x160 }, { 'type': 'EntityBlock05', 'x': 0xf0, 'y': 0xbc }, { 'type': 'EntityBlock05', 'x': 0xf0, 'y': 0x128 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x68 }, { 'type': 'EntityZombieNormal', 'x': 0x70, 'y': 0x24 }, { 'type': 'EntityZombieNormal', 'x': 0x6c, 'y': 0x11c }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x68 }, { 'type': 'EntityBlock06', 'x': 0x198, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x1e8, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0xa4 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x160 }, { 'type': 'EntityBlock05', 'x': 0x274, 'y': 0xb8 }, { 'type': 'EntityBlock05', 'x': 0x274, 'y': 0x128 }, { 'type': 'EntityZombieNormal', 'x': 0x288, 'y': 0x74 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0x11c }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x70, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x100, 'y': 0xe4 }, { 'type': 'EntityZombieNormal', 'x': 0x100, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x28c, 'y': 0xe4 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x32c, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x32c, 'y': 0x24 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.97')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.moving-block-hori', 'game.entities.obstacles.move-path', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level97 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovingBlockHori', 'x': 0xb8, 'y': 0x88, 'settings': { 'pathId': 0x1 } }, { 'type': 'EntityMovingBlockHori', 'x': 0x160, 'y': 0x104, 'settings': { 'pathId': 0x2 } }, { 'type': 'EntityMovingBlockHori', 'x': 0x208, 'y': 0x88, 'settings': { 'pathId': 0x3 } }, { 'type': 'EntityMovingBlockHori', 'x': 0x2b0, 'y': 0x104, 'settings': { 'pathId': 0x4 } }, { 'type': 'EntityMovePath', 'x': 0xb8, 'y': 0x108, 'settings': { 'pathId': 0x1, 'pathNum': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x160, 'y': 0x88, 'settings': { 'pathId': 0x2, 'pathNum': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x208, 'y': 0x108, 'settings': { 'pathId': 0x3, 'pathNum': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x2b0, 'y': 0x88, 'settings': { 'pathId': 0x4, 'pathNum': 0x1 } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x74, 'y': 0xb4 }, { 'type': 'EntityBlock05', 'x': 0x64, 'y': 0xf8 }, { 'type': 'EntityBlock05', 'x': 0x64, 'y': 0x88 }, { 'type': 'EntityBlock05', 'x': 0x10c, 'y': 0x88 }, { 'type': 'EntityBlock05', 'x': 0x10c, 'y': 0xf8 }, { 'type': 'EntityBlock05', 'x': 0x1b4, 'y': 0x88 }, { 'type': 'EntityBlock05', 'x': 0x1b4, 'y': 0xf8 }, { 'type': 'EntityBlock05', 'x': 0x25c, 'y': 0x88 }, { 'type': 'EntityBlock05', 'x': 0x25c, 'y': 0xf8 }, { 'type': 'EntityBlock05', 'x': 0x304, 'y': 0xf8 }, { 'type': 'EntityBlock05', 'x': 0x304, 'y': 0x88 }, { 'type': 'EntityZombieNormal', 'x': 0x120, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x1c8, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x318, 'y': 0xb4 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.98')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level98 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x78, 'y': 0x78 }, { 'type': 'EntityBlock01', 'x': 0x78, 'y': 0x94 }, { 'type': 'EntityBlock01', 'x': 0xb0, 'y': 0x94 }, { 'type': 'EntityBlock05', 'x': 0x78, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x88, 'y': 0x34 }, { 'type': 'EntityBlock05', 'x': 0x124, 'y': 0xbc }, { 'type': 'EntityBlock01', 'x': 0x124, 'y': 0xd8 }, { 'type': 'EntityBlock01', 'x': 0x15c, 'y': 0xd8 }, { 'type': 'EntityBlock05', 'x': 0x124, 'y': 0x12c }, { 'type': 'EntityZombieNormal', 'x': 0x130, 'y': 0x78 }, { 'type': 'EntityBlock05', 'x': 0x1c4, 'y': 0x78 }, { 'type': 'EntityBlock01', 'x': 0x1c4, 'y': 0x94 }, { 'type': 'EntityBlock01', 'x': 0x1fc, 'y': 0x94 }, { 'type': 'EntityBlock05', 'x': 0x1c4, 'y': 0xe8 }, { 'type': 'EntityBlock05', 'x': 0x264, 'y': 0xbc }, { 'type': 'EntityBlock05', 'x': 0x264, 'y': 0x12c }, { 'type': 'EntityBlock01', 'x': 0x264, 'y': 0xd8 }, { 'type': 'EntityBlock01', 'x': 0x29c, 'y': 0xd8 }, { 'type': 'EntityZombieNormal', 'x': 0x278, 'y': 0x78 }, { 'type': 'EntityBlock05', 'x': 0x2fc, 'y': 0xec }, { 'type': 'EntityBlock05', 'x': 0x2fc, 'y': 0x15c }, { 'type': 'EntityBlock01', 'x': 0x2fc, 'y': 0x108 }, { 'type': 'EntityBlock01', 'x': 0x334, 'y': 0x108 }, { 'type': 'EntityBlock05', 'x': 0x1c4, 'y': 0x178 }, { 'type': 'EntityBlock01', 'x': 0x1c4, 'y': 0x194 }, { 'type': 'EntityBlock01', 'x': 0x1fc, 'y': 0x194 }, { 'type': 'EntityZombieNormal', 'x': 0x30c, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x30c, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0x134 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.99')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.wheel', 'game.entities.objects.rotor', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-07', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level99 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityWheel', 'x': 0xe0, 'y': 0x38 }, { 'type': 'EntityWheel', 'x': 0x118, 'y': 0x38 }, { 'type': 'EntityWheel', 'x': 0x150, 'y': 0x38 }, { 'type': 'EntityRotor', 'x': 0x204, 'y': 0x5c }, { 'type': 'EntityRotor', 'x': 0x204, 'y': 0xf0 }, { 'type': 'EntityDiagonalUp', 'x': 0x304, 'y': 0xf8 }, { 'type': 'EntityDiagonalUp', 'x': 0x35c, 'y': 0xa0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock08', 'x': 0x74, 'y': 0x70 }, { 'type': 'EntityBlock08', 'x': 0xac, 'y': 0x70 }, { 'type': 'EntityBlock08', 'x': 0xe4, 'y': 0x70 }, { 'type': 'EntityBlock08', 'x': 0x11c, 'y': 0x70 }, { 'type': 'EntityBlock08', 'x': 0x154, 'y': 0x70 }, { 'type': 'EntityBlock08', 'x': 0x18c, 'y': 0x70 }, { 'type': 'EntityBlock01', 'x': 0x18c, 'y': 0x8c }, { 'type': 'EntityBlock08', 'x': 0x18c, 'y': 0xe0 }, { 'type': 'EntityBlock01', 'x': 0x170, 'y': 0xe0 }, { 'type': 'EntityBlock06', 'x': 0x298, 'y': 0x80 }, { 'type': 'EntityBlock06', 'x': 0x260, 'y': 0xf0 }, { 'type': 'EntityBlock07', 'x': 0x250, 'y': 0x158 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x2a0, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x284, 'y': 0xac }, { 'type': 'EntityZombieNormal', 'x': 0x2bc, 'y': 0xac }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.100')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-06', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level100 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x54, 'y': 0xf8 }, { 'type': 'EntityDiagonalUp', 'x': 0xb0, 'y': 0x9c }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0xac }, { 'type': 'EntityDiagonalUp', 'x': 0x2ac, 'y': 0x108 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x10f, 'y': 0xa0 }, { 'type': 'EntityBlock06', 'x': 0x12c, 'y': 0x108 }, { 'type': 'EntityBlock06', 'x': 0x204, 'y': 0x100 }, { 'type': 'EntityBlock07', 'x': 0x1eb, 'y': 0x168 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x120, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x160, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x1a0, 'y': 0x58 }, { 'type': 'EntityZombieNormal', 'x': 0x138, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x17c, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x210, 'y': 0xbc }, { 'type': 'EntityZombieNormal', 'x': 0x244, 'y': 0xbc }, { 'type': 'EntityZombieNormal', 'x': 0x1f8, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x230, 'y': 0x124 }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0x124 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.101')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-03')['defines'](function() { Level101 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0xaa, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x1fc, 'y': 0x190 }, { 'type': 'EntityDiagonalDown', 'x': 0x2b8, 'y': 0x0 }, { 'type': 'EntityDiagonalDown', 'x': 0x280, 'y': 0x104 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x60 }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0xe4 }, { 'type': 'EntityZombieNormal', 'x': 0x68, 'y': 0xa0 }, { 'type': 'EntityZombieNormal', 'x': 0xa8, 'y': 0xa0 }, { 'type': 'EntityBlock05', 'x': 0x184, 'y': 0x11c }, { 'type': 'EntityBlock03', 'x': 0x1d8, 'y': 0x11c }, { 'type': 'EntityBlock08', 'x': 0x1f4, 'y': 0x138 }, { 'type': 'EntityZombieNormal', 'x': 0x198, 'y': 0xd8 }, { 'type': 'EntityZombieNormal', 'x': 0x1ec, 'y': 0xf4 }, { 'type': 'EntityBlock06', 'x': 0x1e4, 'y': 0x88 }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0x44 }, { 'type': 'EntityZombieNormal', 'x': 0x230, 'y': 0x44 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x60 }, { 'type': 'EntityBlock05', 'x': 0x2de, 'y': 0x164 }, { 'type': 'EntityBlock08', 'x': 0x264, 'y': 0x104 }, { 'type': 'EntityZombieNormal', 'x': 0x25c, 'y': 0xc0 }, { 'type': 'EntityZombieNormal', 'x': 0x2f0, 'y': 0x120 }, { 'type': 'EntityBlock08', 'x': 0x2fc, 'y': 0xf8 }, { 'type': 'EntityZombieNormal', 'x': 0x2f4, 'y': 0xb4 }, { 'type': 'EntityBlock08', 'x': 0x25c, 'y': 0x194 }, { 'type': 'EntityZombieNormal', 'x': 0x254, 'y': 0x150 }, { 'type': 'EntityZombieNormal', 'x': 0x2a4, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2fc, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.102')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level102 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock08', 'x': 0xe8, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0xdc, 'y': 0x58 }, { 'type': 'EntityBlock08', 'x': 0x144, 'y': 0x58 }, { 'type': 'EntityBlock08', 'x': 0x94, 'y': 0x58 }, { 'type': 'EntityBlock08', 'x': 0x1f4, 'y': 0x58 }, { 'type': 'EntityBlock08', 'x': 0x1a0, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x198, 'y': 0x58 }, { 'type': 'EntityBlock08', 'x': 0x248, 'y': 0xa0 }, { 'type': 'EntityZombieNormal', 'x': 0x2f4, 'y': 0x60 }, { 'type': 'EntityBlock08', 'x': 0x2ac, 'y': 0x58 }, { 'type': 'EntityBlock08', 'x': 0x2fc, 'y': 0xa4 }, { 'type': 'EntityBlock08', 'x': 0x348, 'y': 0x5c }, { 'type': 'EntityZombieNormal', 'x': 0x244, 'y': 0x5c }, { 'type': 'EntityBlock08', 'x': 0x98, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0xe8, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x1f4, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x2ac, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x344, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x90, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x13c, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x1ec, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x2a4, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x33c, 'y': 0xa8 }, { 'type': 'EntityBlock08', 'x': 0x148, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x1a0, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x2fc, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x250, 'y': 0x158 }, { 'type': 'EntityZombieNormal', 'x': 0x2f4, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x248, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x198, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0xe0, 'y': 0x114 }, { 'type': 'EntityBlock08', 'x': 0x148, 'y': 0x1cc }, { 'type': 'EntityBlock08', 'x': 0x1f4, 'y': 0x1cc }, { 'type': 'EntityZombieNormal', 'x': 0x140, 'y': 0x188 }, { 'type': 'EntityZombieNormal', 'x': 0x1ec, 'y': 0x188 }, { 'type': 'EntityBlock08', 'x': 0x2b0, 'y': 0x1cc }, { 'type': 'EntityBlock08', 'x': 0x340, 'y': 0x1cc }, { 'type': 'EntityZombieNormal', 'x': 0x2a8, 'y': 0x188 }, { 'type': 'EntityZombieNormal', 'x': 0x338, 'y': 0x188 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.103')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.wheel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level103 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityWheel', 'x': 0x14c, 'y': 0x78 }, { 'type': 'EntityWheel', 'x': 0x240, 'y': 0x120 }, { 'type': 'EntityWheel', 'x': 0x244, 'y': 0x48 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x120 }, { 'type': 'EntityBlock05', 'x': 0x8c, 'y': 0x104 }, { 'type': 'EntityZombieNormal', 'x': 0x5c, 'y': 0xdc }, { 'type': 'EntityBlock05', 'x': 0xc4, 'y': 0xe8 }, { 'type': 'EntityBlock05', 'x': 0xf8, 'y': 0xcc }, { 'type': 'EntityBlock05', 'x': 0x12c, 'y': 0xb0 }, { 'type': 'EntityZombieNormal', 'x': 0xc8, 'y': 0xa4 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x1c8 }, { 'type': 'EntityBlock05', 'x': 0x2dc, 'y': 0x1ac }, { 'type': 'EntityBlock05', 'x': 0x2ac, 'y': 0x190 }, { 'type': 'EntityBlock05', 'x': 0x27c, 'y': 0x174 }, { 'type': 'EntityBlock05', 'x': 0x248, 'y': 0x158 }, { 'type': 'EntityZombieNormal', 'x': 0x2d0, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x334, 'y': 0x184 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xf0 }, { 'type': 'EntityBlock05', 'x': 0x2dc, 'y': 0xd4 }, { 'type': 'EntityBlock05', 'x': 0x2ac, 'y': 0xb8 }, { 'type': 'EntityBlock05', 'x': 0x248, 'y': 0x80 }, { 'type': 'EntityBlock05', 'x': 0x27c, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x334, 'y': 0xac }, { 'type': 'EntityZombieNormal', 'x': 0x2d0, 'y': 0x74 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.104')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.wheel', 'game.entities.objects.plank', 'game.entities.objects.crate-medium', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level104 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityWheel', 'x': 0x1a0, 'y': 0x1ac }, { 'type': 'EntityWheel', 'x': 0x20c, 'y': 0x1ac }, { 'type': 'EntityPlank', 'x': 0x184, 'y': 0x1a0 }, { 'type': 'EntityWheel', 'x': 0x1a0, 'y': 0x168 }, { 'type': 'EntityWheel', 'x': 0x20c, 'y': 0x168 }, { 'type': 'EntityPlank', 'x': 0x184, 'y': 0x15c }, { 'type': 'EntityWheel', 'x': 0x1a0, 'y': 0x124 }, { 'type': 'EntityWheel', 'x': 0x20c, 'y': 0x124 }, { 'type': 'EntityPlank', 'x': 0x184, 'y': 0x118 }, { 'type': 'EntityCrateMedium', 'x': 0x18c, 'y': 0xdc }, { 'type': 'EntityCrateMedium', 'x': 0x1d4, 'y': 0xdc }, { 'type': 'EntityCrateMedium', 'x': 0x21c, 'y': 0xdc }, { 'type': 'EntityCrateMedium', 'x': 0x1ac, 'y': 0xa0 }, { 'type': 'EntityCrateMedium', 'x': 0x1f8, 'y': 0xa0 }, { 'type': 'EntityCrateMedium', 'x': 0x1d0, 'y': 0x64 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0xe8, 'y': 0x80 }, { 'type': 'EntityBlock05', 'x': 0xd0, 'y': 0x128 }, { 'type': 'EntityZombieNormal', 'x': 0xe8, 'y': 0xe4 }, { 'type': 'EntityBlock05', 'x': 0xd0, 'y': 0xc4 }, { 'type': 'EntityBlock05', 'x': 0x2a0, 'y': 0xc8 }, { 'type': 'EntityZombieNormal', 'x': 0x2b4, 'y': 0x84 }, { 'type': 'EntityBlock05', 'x': 0x2a0, 'y': 0x12c }, { 'type': 'EntityZombieNormal', 'x': 0x2b4, 'y': 0xe8 }, { 'type': 'EntityBlock05', 'x': 0x2a4, 'y': 0x194 }, { 'type': 'EntityZombieNormal', 'x': 0x2b8, 'y': 0x150 }, { 'type': 'EntityZombieNormal', 'x': 0x268, 'y': 0x1a4 }, { 'type': 'EntityZombieNormal', 'x': 0x130, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.105')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-07', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level105 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x5c, 'y': 0x6c, 'settings': { 'dontKill': 'true', 'explodeRadius': 0xc8 } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x58, 'y': 0x114, 'settings': { 'dontKill': 'true', 'explodeRadius': 0xc8 } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1bc, 'y': 0x110 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x338, 'y': 0x6c, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x33c, 'y': 0x114, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock07', 'x': 0x58, 'y': 0x1c }, { 'type': 'EntityBlock01', 'x': 0x100, 'y': 0x38 }, { 'type': 'EntityBlock07', 'x': 0x58, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x94, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x80, 'y': 0x108 }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x14c }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0xdc }, { 'type': 'EntityZombieNormal', 'x': 0xd0, 'y': 0x60 }, { 'type': 'EntityBlock06', 'x': 0x18c, 'y': 0xc0 }, { 'type': 'EntityBlock01', 'x': 0x1fc, 'y': 0xdc }, { 'type': 'EntityBlock06', 'x': 0x18c, 'y': 0x148 }, { 'type': 'EntityBlock01', 'x': 0x18c, 'y': 0xf4 }, { 'type': 'EntityZombieNormal', 'x': 0x18c, 'y': 0x7c }, { 'type': 'EntityZombieNormal', 'x': 0x1c0, 'y': 0x7c }, { 'type': 'EntityZombieNormal', 'x': 0x1f0, 'y': 0x7c }, { 'type': 'EntityBlock07', 'x': 0x2a4, 'y': 0x1c }, { 'type': 'EntityBlock07', 'x': 0x2a4, 'y': 0xa4 }, { 'type': 'EntityBlock01', 'x': 0x2a4, 'y': 0x38 }, { 'type': 'EntityZombieNormal', 'x': 0x2c0, 'y': 0x60 }, { 'type': 'EntityZombieNormal', 'x': 0x2f8, 'y': 0x60 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0xe0 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x30c, 'y': 0x108 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.106')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.moving-block-hori', 'game.entities.obstacles.move-path', 'game.entities.objects.wheel', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-03', 'game.entities.obstacles.block-04', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level106 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovingBlockHori', 'x': 0x1f0, 'y': 0x1d8, 'settings': { 'pathId': 0x1, 'moveSpeed': 0.15 } }, { 'type': 'EntityMovePath', 'x': 0x1f0, 'y': 0x98, 'settings': { 'pathId': 0x1, 'pathNum': 0x1 } }, { 'type': 'EntityWheel', 'x': 0x190, 'y': 0x190 }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x114 }, { 'type': 'EntityDiagonalDown', 'x': 0x260, 'y': 0x98 }, { 'type': 'EntityDiagonalDown', 'x': 0x260, 'y': 0x194 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0x180, 'y': 0x1c8 }, { 'type': 'EntityBlock03', 'x': 0x1d4, 'y': 0x1c8 }, { 'type': 'EntityBlock04', 'x': 0x164, 'y': 0x1c8 }, { 'type': 'EntityBlock06', 'x': 0x164, 'y': 0x174 }, { 'type': 'EntityBlock02', 'x': 0x1d4, 'y': 0x106 }, { 'type': 'EntityBlock02', 'x': 0x1d4, 'y': 0x98 }, { 'type': 'EntityBlock02', 'x': 0x244, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x244, 'y': 0x108 }, { 'type': 'EntityBlock02', 'x': 0x244, 'y': 0x98 }, { 'type': 'EntityBlock05', 'x': 0x2c0, 'y': 0xf8 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x94 }, { 'type': 'EntityBlock05', 'x': 0x2b4, 'y': 0x174 }, { 'type': 'EntityZombieNormal', 'x': 0x2d0, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x2cc, 'y': 0x130 }, { 'type': 'EntityZombieNormal', 'x': 0x2b0, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2ec, 'y': 0x1a0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.107')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level107 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x124, 'y': 0x74, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x230, 'y': 0xf4, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x30c, 'y': 0x164, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock01', 'x': 0xd8, 'y': 0x74 }, { 'type': 'EntityBlock06', 'x': 0xf4, 'y': 0xac }, { 'type': 'EntityBlock06', 'x': 0xf4, 'y': 0x3c }, { 'type': 'EntityZombieNormal', 'x': 0xf8, 'y': 0x68 }, { 'type': 'EntityZombieNormal', 'x': 0x150, 'y': 0x68 }, { 'type': 'EntityBlock01', 'x': 0x1a4, 'y': 0x54 }, { 'type': 'EntityBlock06', 'x': 0x200, 'y': 0x12c }, { 'type': 'EntityBlock02', 'x': 0x1e4, 'y': 0xd8 }, { 'type': 'EntityBlock06', 'x': 0x224, 'y': 0xb4 }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x25c, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x228, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x27c, 'y': 0x70 }, { 'type': 'EntityBlock02', 'x': 0x2a8, 'y': 0x12c }, { 'type': 'EntityBlock06', 'x': 0x2c4, 'y': 0x12c }, { 'type': 'EntityZombieNormal', 'x': 0x2e4, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x31c, 'y': 0xe8 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x19c }, { 'type': 'EntityZombieNormal', 'x': 0x2dc, 'y': 0x158 }, { 'type': 'EntityZombieNormal', 'x': 0x334, 'y': 0x158 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.108')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.diagonal-up', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-03', 'game.entities.obstacles.block-04', 'game.entities.objects.frame-test')['defines'](function() { Level108 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityDiagonalUp', 'x': 0x105, 'y': 0x64 }, { 'type': 'EntityExplosiveBarrel', 'x': 0xc8, 'y': 0x88, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1c8, 'y': 0x88, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityDiagonalUp', 'x': 0x308, 'y': 0x64 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x2cc, 'y': 0x8c, 'settings': { 'dontKill': 'true' } }, { 'type': 'EntityDiagonalDown', 'x': 0x54, 'y': 0x64 }, { 'type': 'EntityDiagonalDown', 'x': 0x256, 'y': 0x64 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock05', 'x': 0xb3, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0xc8, 'y': 0x44 }, { 'type': 'EntityBlock05', 'x': 0x1b0, 'y': 0xc0 }, { 'type': 'EntityBlock03', 'x': 0x203, 'y': 0xc0 }, { 'type': 'EntityBlock04', 'x': 0x195, 'y': 0xc0 }, { 'type': 'EntityBlock08', 'x': 0x17a, 'y': 0xdc }, { 'type': 'EntityBlock08', 'x': 0x21e, 'y': 0xdc }, { 'type': 'EntityZombieNormal', 'x': 0x170, 'y': 0x98 }, { 'type': 'EntityZombieNormal', 'x': 0x1c4, 'y': 0x44 }, { 'type': 'EntityZombieNormal', 'x': 0x218, 'y': 0x98 }, { 'type': 'EntityBlock05', 'x': 0x2b5, 'y': 0xc4 }, { 'type': 'EntityBlock08', 'x': 0x164, 'y': 0x68 }, { 'type': 'EntityBlock08', 'x': 0x23b, 'y': 0x68 }, { 'type': 'EntityZombieNormal', 'x': 0x2cc, 'y': 0x48 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.109')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.move-path', 'game.entities.obstacles.block-switch', 'game.entities.objects.switch', 'game.entities.objects.plank', 'game.entities.objects.plank-vert', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.crate-medium', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal')['defines'](function() { Level109 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovePath', 'x': 0x70, 'y': 0xa8, 'settings': { 'sp_id': 0x2, 'pathNum': 0x1 } }, { 'type': 'EntityBlockSwitch', 'x': 0xd0, 'y': 0xa8, 'settings': { 'sp_id': 0x2, 'switch_id': 0x2 } }, { 'type': 'EntitySwitch', 'x': 0x2fc, 'y': 0x184, 'settings': { 'switch_id': 0x2 } }, { 'type': 'EntityPlank', 'x': 0x264, 'y': 0x108 }, { 'type': 'EntityPlankVert', 'x': 0x258, 'y': 0x108 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x32c, 'y': 0xcc }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x2c4, 'y': 0xcc }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x278, 'y': 0xcc }, { 'type': 'EntityCrateMedium', 'x': 0x264, 'y': 0x1ac }, { 'type': 'EntityCrateMedium', 'x': 0x264, 'y': 0x170 }, { 'type': 'EntityCrateMedium', 'x': 0x264, 'y': 0x134 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x8c }, { 'type': 'EntityBlock05', 'x': 0x124, 'y': 0x8c }, { 'type': 'EntityBlock02', 'x': 0x15c, 'y': 0x1c }, { 'type': 'EntityBlock08', 'x': 0x304, 'y': 0x114 }, { 'type': 'EntityBlock08', 'x': 0x268, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x124, 'y': 0x48 }, { 'type': 'EntityZombieNormal', 'x': 0x98, 'y': 0x48 }, { 'type': 'EntityZombieNormal', 'x': 0x68, 'y': 0x48 }, { 'type': 'EntityZombieNormal', 'x': 0x200, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2b8, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0x1a0 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.110')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.move-path', 'game.entities.obstacles.moving-block', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level110 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityMovePath', 'x': 0x180, 'y': 0x20, 'settings': { 'pathId': 0x2 } }, { 'type': 'EntityMovingBlock', 'x': 0x180, 'y': 0x194, 'settings': { 'pathId': 0x2, 'moveSpeed': 0.4 } }, { 'type': 'EntityMovingBlock', 'x': 0x1dc, 'y': 0x1c, 'settings': { 'pathId': 0x3, 'moveSpeed': 0.5 } }, { 'type': 'EntityMovingBlock', 'x': 0x234, 'y': 0x194, 'settings': { 'pathId': 0x4, 'moveSpeed': 0.6 } }, { 'type': 'EntityMovingBlock', 'x': 0x290, 'y': 0x1c, 'settings': { 'pathId': 0x5, 'moveSpeed': 0.8 } }, { 'type': 'EntityMovePath', 'x': 0x1dc, 'y': 0x194, 'settings': { 'pathId': 0x3 } }, { 'type': 'EntityMovePath', 'x': 0x234, 'y': 0x20, 'settings': { 'pathId': 0x4 } }, { 'type': 'EntityMovePath', 'x': 0x28c, 'y': 0x194, 'settings': { 'pathId': 0x5 } }, { 'type': 'EntityMovingBlock', 'x': 0x118, 'y': 0x1c, 'settings': { 'pathId': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x118, 'y': 0x194, 'settings': { 'pathId': 0x1 } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0xb0, 'y': 0x34 }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0xb0, 'y': 0xa8 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x300, 'y': 0x34 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0xf4 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.111')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level111 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x94, 'y': 0x34 }, { 'type': 'EntityBlock05', 'x': 0x84, 'y': 0x78 }, { 'type': 'EntityBlock05', 'x': 0x84, 'y': 0xe0 }, { 'type': 'EntityZombieNormal', 'x': 0x98, 'y': 0x9c }, { 'type': 'EntityBlock05', 'x': 0x84, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x160, 'y': 0x108 }, { 'type': 'EntityBlock05', 'x': 0x150, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x164, 'y': 0x34 }, { 'type': 'EntityBlock05', 'x': 0x150, 'y': 0xe0 }, { 'type': 'EntityBlock05', 'x': 0x150, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x98, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x160, 'y': 0x9c }, { 'type': 'EntityBlock05', 'x': 0x22c, 'y': 0xe0 }, { 'type': 'EntityBlock05', 'x': 0x22c, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x234, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x238, 'y': 0x9c }, { 'type': 'EntityBlock05', 'x': 0x22c, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x238, 'y': 0x34 }, { 'type': 'EntityBlock05', 'x': 0x2fc, 'y': 0x78 }, { 'type': 'EntityBlock05', 'x': 0x2fc, 'y': 0xe4 }, { 'type': 'EntityBlock05', 'x': 0x2fc, 'y': 0x14c }, { 'type': 'EntityZombieNormal', 'x': 0x310, 'y': 0xa0 }, { 'type': 'EntityZombieNormal', 'x': 0x30c, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0x310, 'y': 0x108 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.112')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-03', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-04', 'game.entities.objects.frame-test')['defines'](function() { Level112 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x70 }, { 'type': 'EntityBlock03', 'x': 0xe2, 'y': 0x6f }, { 'type': 'EntityBlock08', 'x': 0xfd, 'y': 0x8c }, { 'type': 'EntityBlock03', 'x': 0x58, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x74, 'y': 0x108 }, { 'type': 'EntityZombieNormal', 'x': 0x6c, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x84, 'y': 0x2c }, { 'type': 'EntityZombieNormal', 'x': 0xf8, 'y': 0x48 }, { 'type': 'EntityBlock08', 'x': 0xcc, 'y': 0x108 }, { 'type': 'EntityBlock04', 'x': 0xe7, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0xc8, 'y': 0xc4 }, { 'type': 'EntityBlock06', 'x': 0x102, 'y': 0xef }, { 'type': 'EntityZombieNormal', 'x': 0x12c, 'y': 0xac }, { 'type': 'EntityBlock06', 'x': 0x1a4, 'y': 0x74 }, { 'type': 'EntityZombieNormal', 'x': 0x1d0, 'y': 0x30 }, { 'type': 'EntityBlock06', 'x': 0x1a0, 'y': 0x150 }, { 'type': 'EntityZombieNormal', 'x': 0x1cc, 'y': 0x10c }, { 'type': 'EntityBlock06', 'x': 0x23a, 'y': 0xef }, { 'type': 'EntityBlock03', 'x': 0x2c4, 'y': 0xec }, { 'type': 'EntityBlock08', 'x': 0x2df, 'y': 0x108 }, { 'type': 'EntityBlock08', 'x': 0x331, 'y': 0x108 }, { 'type': 'EntityBlock04', 'x': 0x34c, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x270, 'y': 0xa8 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x74 }, { 'type': 'EntityBlock04', 'x': 0x2c1, 'y': 0x74 }, { 'type': 'EntityBlock08', 'x': 0x2a6, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x29c, 'y': 0x4c }, { 'type': 'EntityZombieNormal', 'x': 0x308, 'y': 0x30 }, { 'type': 'EntityZombieNormal', 'x': 0x2d8, 'y': 0xc4 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0xc4 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.113')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level113 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock08', 'x': 0xb4, 'y': 0x50 }, { 'type': 'EntityBlock08', 'x': 0x120, 'y': 0x50 }, { 'type': 'EntityBlock08', 'x': 0x80, 'y': 0xa8 }, { 'type': 'EntityBlock08', 'x': 0xec, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0xe4, 'y': 0x64 }, { 'type': 'EntityBlock08', 'x': 0x158, 'y': 0xa8 }, { 'type': 'EntityBlock08', 'x': 0x18c, 'y': 0x50 }, { 'type': 'EntityBlock08', 'x': 0x1c4, 'y': 0xa8 }, { 'type': 'EntityBlock08', 'x': 0x1f8, 'y': 0x50 }, { 'type': 'EntityBlock08', 'x': 0x264, 'y': 0x50 }, { 'type': 'EntityBlock08', 'x': 0x2d0, 'y': 0x50 }, { 'type': 'EntityBlock08', 'x': 0x230, 'y': 0xa8 }, { 'type': 'EntityBlock08', 'x': 0x29c, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x150, 'y': 0x64 }, { 'type': 'EntityZombieNormal', 'x': 0x1bc, 'y': 0x64 }, { 'type': 'EntityZombieNormal', 'x': 0x228, 'y': 0x64 }, { 'type': 'EntityZombieNormal', 'x': 0x294, 'y': 0x64 }, { 'type': 'EntityBlock08', 'x': 0xb4, 'y': 0x100 }, { 'type': 'EntityBlock08', 'x': 0x120, 'y': 0x100 }, { 'type': 'EntityBlock08', 'x': 0x18c, 'y': 0x100 }, { 'type': 'EntityBlock08', 'x': 0x1f8, 'y': 0x100 }, { 'type': 'EntityBlock08', 'x': 0x264, 'y': 0x100 }, { 'type': 'EntityBlock08', 'x': 0x2d0, 'y': 0x100 }, { 'type': 'EntityBlock08', 'x': 0x308, 'y': 0xa8 }, { 'type': 'EntityBlock08', 'x': 0x158, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x1c4, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x230, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x29c, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x308, 'y': 0x158 }, { 'type': 'EntityBlock08', 'x': 0x1fc, 'y': 0x1b0 }, { 'type': 'EntityBlock08', 'x': 0x264, 'y': 0x1b0 }, { 'type': 'EntityBlock08', 'x': 0x2d0, 'y': 0x1b0 }, { 'type': 'EntityZombieNormal', 'x': 0x150, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x1bc, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x228, 'y': 0x114 }, { 'type': 'EntityZombieNormal', 'x': 0x294, 'y': 0x114 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.114')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal')['defines'](function() { Level114 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0x12c }, { 'type': 'EntityBlock01', 'x': 0xc8, 'y': 0xd8 }, { 'type': 'EntityBlock05', 'x': 0xc8, 'y': 0xbc }, { 'type': 'EntityBlock05', 'x': 0x1cc, 'y': 0xbc }, { 'type': 'EntityBlock05', 'x': 0x1cc, 'y': 0x12c }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x12c }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0xbc }, { 'type': 'EntityBlock01', 'x': 0x2dc, 'y': 0x148 }, { 'type': 'EntityBlock01', 'x': 0x2dc, 'y': 0x68 }, { 'type': 'EntityBlock05', 'x': 0x2a4, 'y': 0x4c }, { 'type': 'EntityBlock05', 'x': 0x2a4, 'y': 0x19c }, { 'type': 'EntityZombieNormal', 'x': 0xdc, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x7c, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x1dc, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x1dc, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x31c, 'y': 0x78 }, { 'type': 'EntityZombieNormal', 'x': 0x2f0, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0xe8 }, { 'type': 'EntityZombieNormal', 'x': 0x2a8, 'y': 0x158 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.115')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-destructible-small', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal')['defines'](function() { Level115 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x1ac, 'y': 0x11c }, { 'type': 'EntityCrateDestructibleSmall', 'x': 0x1dc, 'y': 0x1ac }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock06', 'x': 0xcc, 'y': 0x10c }, { 'type': 'EntityBlock06', 'x': 0x134, 'y': 0xf0 }, { 'type': 'EntityBlock06', 'x': 0x1a0, 'y': 0xd4 }, { 'type': 'EntityBlock06', 'x': 0x1a0, 'y': 0x60 }, { 'type': 'EntityBlock06', 'x': 0x210, 'y': 0x7c }, { 'type': 'EntityBlock06', 'x': 0x27c, 'y': 0x98 }, { 'type': 'EntityBlock06', 'x': 0x1a0, 'y': 0x154 }, { 'type': 'EntityBlock06', 'x': 0x210, 'y': 0x170 }, { 'type': 'EntityBlock06', 'x': 0x27c, 'y': 0x18c }, { 'type': 'EntityZombieNormal', 'x': 0xd8, 'y': 0xcc }, { 'type': 'EntityZombieNormal', 'x': 0x140, 'y': 0xac }, { 'type': 'EntityZombieNormal', 'x': 0x1a8, 'y': 0x90 }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0x1c }, { 'type': 'EntityZombieNormal', 'x': 0x264, 'y': 0x38 }, { 'type': 'EntityZombieNormal', 'x': 0x2cc, 'y': 0x54 }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0x110 }, { 'type': 'EntityZombieNormal', 'x': 0x260, 'y': 0x12c }, { 'type': 'EntityZombieNormal', 'x': 0x2cc, 'y': 0x148 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.116')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.obstacles.block-06', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level116 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x94, 'y': 0x13c }, { 'type': 'EntityExplosiveBarrel', 'x': 0x334, 'y': 0x140 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x64, 'y': 0x20, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityBlock02', 'x': 0x74, 'y': 0x178 }, { 'type': 'EntityBlock02', 'x': 0x74, 'y': 0x109 }, { 'type': 'EntityBlock02', 'x': 0x74, 'y': 0x9a }, { 'type': 'EntityBlock05', 'x': 0x58, 'y': 0x7e }, { 'type': 'EntityBlock06', 'x': 0x90, 'y': 0xec }, { 'type': 'EntityBlock01', 'x': 0x100, 'y': 0x98 }, { 'type': 'EntityBlock05', 'x': 0x100, 'y': 0x7c }, { 'type': 'EntityBlock06', 'x': 0x90, 'y': 0x176 }, { 'type': 'EntityBlock01', 'x': 0xec, 'y': 0x192 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x114, 'y': 0x38 }, { 'type': 'EntityZombieNormal', 'x': 0xb8, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0xe8, 'y': 0x130 }, { 'type': 'EntityZombieNormal', 'x': 0xac, 'y': 0x1a0 }, { 'type': 'EntityBlock06', 'x': 0x1a4, 'y': 0xec }, { 'type': 'EntityZombieNormal', 'x': 0x1ac, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x1f8, 'y': 0xa8 }, { 'type': 'EntityBlock01', 'x': 0x2ec, 'y': 0x98 }, { 'type': 'EntityBlock05', 'x': 0x2c0, 'y': 0x7c }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0xa8 }, { 'type': 'EntityZombieNormal', 'x': 0x2d4, 'y': 0x38 }, { 'type': 'EntityBlock06', 'x': 0x2dc, 'y': 0x176 }, { 'type': 'EntityBlock01', 'x': 0x2ec, 'y': 0x192 }, { 'type': 'EntityZombieNormal', 'x': 0x170, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x238, 'y': 0x1a0 }, { 'type': 'EntityZombieNormal', 'x': 0x2e0, 'y': 0x130 }, { 'type': 'EntityZombieNormal', 'x': 0x31c, 'y': 0x1a0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.117')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-medium', 'game.entities.objects.crate-small', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level117 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateMedium', 'x': 0xc4, 'y': 0x2c }, { 'type': 'EntityCrateMedium', 'x': 0xc4, 'y': 0x68 }, { 'type': 'EntityCrateMedium', 'x': 0xc4, 'y': 0xa4 }, { 'type': 'EntityCrateSmall', 'x': 0x188, 'y': 0xe0 }, { 'type': 'EntityCrateSmall', 'x': 0x188, 'y': 0xc4 }, { 'type': 'EntityCrateSmall', 'x': 0x188, 'y': 0xfc }, { 'type': 'EntityCrateSmall', 'x': 0x188, 'y': 0x118 }, { 'type': 'EntityCrateSmall', 'x': 0x188, 'y': 0x134 }, { 'type': 'EntityCrateSmall', 'x': 0x230, 'y': 0x134 }, { 'type': 'EntityCrateSmall', 'x': 0x230, 'y': 0x118 }, { 'type': 'EntityCrateSmall', 'x': 0x230, 'y': 0xfc }, { 'type': 'EntityCrateSmall', 'x': 0x230, 'y': 0xe0 }, { 'type': 'EntityCrateSmall', 'x': 0x230, 'y': 0xc4 }, { 'type': 'EntityCrateMedium', 'x': 0x2d4, 'y': 0xa4 }, { 'type': 'EntityCrateMedium', 'x': 0x2d4, 'y': 0x68 }, { 'type': 'EntityCrateMedium', 'x': 0x2d4, 'y': 0x2c }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x120, 'y': 0x1a0 }, { 'type': 'EntityBlock07', 'x': 0xc4, 'y': 0xe0 }, { 'type': 'EntityBlock07', 'x': 0x188, 'y': 0x150 }, { 'type': 'EntityBlock07', 'x': 0x24c, 'y': 0xe0 }, { 'type': 'EntityZombieNormal', 'x': 0x104, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x144, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x1ac, 'y': 0x10c }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0x10c }, { 'type': 'EntityZombieNormal', 'x': 0x258, 'y': 0x9c }, { 'type': 'EntityZombieNormal', 'x': 0x29c, 'y': 0x9c }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.118')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.objects.frame-test', 'game.entities.player', 'game.entities.objects.zombie-normal')['defines'](function() { Level118 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x25c, 'y': 0x10c }, { 'type': 'EntityBlock01', 'x': 0xc8, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x12c, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x194, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x1c8, 'y': 0x78 }, { 'type': 'EntityBlock01', 'x': 0x1fc, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x264, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x2cc, 'y': 0xb4 }, { 'type': 'EntityBlock01', 'x': 0x160, 'y': 0x150 }, { 'type': 'EntityBlock01', 'x': 0x264, 'y': 0x150 }, { 'type': 'EntityZombieNormal', 'x': 0x158, 'y': 0x10c }, { 'type': 'EntityZombieNormal', 'x': 0xc0, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x124, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x18c, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x1c0, 'y': 0x34 }, { 'type': 'EntityZombieNormal', 'x': 0x1f4, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x25c, 'y': 0x70 }, { 'type': 'EntityZombieNormal', 'x': 0x2c4, 'y': 0x70 }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.119')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.objects.crate-medium', 'game.entities.objects.explosive-barrel', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.objects.frame-test')['defines'](function() { Level119 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityCrateMedium', 'x': 0x110, 'y': 0xf8 }, { 'type': 'EntityCrateMedium', 'x': 0x228, 'y': 0x104 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x324, 'y': 0x1ac }, { 'type': 'EntityCrateMedium', 'x': 0x31c, 'y': 0x170 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x324, 'y': 0x138 }, { 'type': 'EntityCrateMedium', 'x': 0x31c, 'y': 0xfc }, { 'type': 'EntityExplosiveBarrel', 'x': 0x324, 'y': 0xc4 }, { 'type': 'EntityCrateMedium', 'x': 0x31c, 'y': 0x88 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x84, 'y': 0x84 }, { 'type': 'EntityBlock05', 'x': 0x70, 'y': 0xc8 }, { 'type': 'EntityBlock05', 'x': 0x124, 'y': 0x134 }, { 'type': 'EntityZombieNormal', 'x': 0x150, 'y': 0xf0 }, { 'type': 'EntityBlock05', 'x': 0x180, 'y': 0x74 }, { 'type': 'EntityZombieNormal', 'x': 0x194, 'y': 0x30 }, { 'type': 'EntityBlock05', 'x': 0x1b8, 'y': 0x110 }, { 'type': 'EntityBlock05', 'x': 0x218, 'y': 0x94 }, { 'type': 'EntityZombieNormal', 'x': 0x22c, 'y': 0x50 }, { 'type': 'EntityBlock05', 'x': 0x23c, 'y': 0x140 }, { 'type': 'EntityZombieNormal', 'x': 0x268, 'y': 0xfc }, { 'type': 'EntityBlock05', 'x': 0x2b0, 'y': 0x110 }, { 'type': 'EntityBlock05', 'x': 0x2b0, 'y': 0x74 }, { 'type': 'EntityZombieNormal', 'x': 0x2c4, 'y': 0xcc }, { 'type': 'EntityZombieNormal', 'x': 0x2c4, 'y': 0x30 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.levels.120')['requires']('impact.image', 'game.entities.controllers.game-control', 'game.entities.obstacles.block-switch', 'game.entities.obstacles.move-path', 'game.entities.objects.crate-medium', 'game.entities.objects.explosive-barrel', 'game.entities.objects.switch', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-02', 'game.entities.player', 'game.entities.objects.zombie-normal', 'game.entities.obstacles.block-06', 'game.entities.objects.frame-test')['defines'](function() { Level120 = { 'entities': [{ 'type': 'EntityGameControl', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlockSwitch', 'x': 0x308, 'y': 0x78, 'settings': { 'sp_id': 0x1, 'switch_id': 0x1 } }, { 'type': 'EntityMovePath', 'x': 0x2a8, 'y': 0x78, 'settings': { 'sp_id': 0x1, 'pathNum': 0x1 } }, { 'type': 'EntityCrateMedium', 'x': 0xac, 'y': 0x38 }, { 'type': 'EntityCrateMedium', 'x': 0x188, 'y': 0xd8 }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1cc, 'y': 0x1b0, 'settings': { 'tossExplosive': 'true' } }, { 'type': 'EntityExplosiveBarrel', 'x': 0x1f8, 'y': 0x1b0, 'settings': { 'tossExplosive': 'true' } }, { 'type': 'EntityCrateMedium', 'x': 0x31c, 'y': 0x3c }, { 'type': 'EntitySwitch', 'x': 0x2d8, 'y': 0x38, 'settings': { 'switch_id': 0x1 } }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock05', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock07', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock08', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock01', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityBlock02', 'x': 0x0, 'y': 0x0 }, { 'type': 'EntityPlayer', 'x': 0x5c, 'y': 0x180, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityZombieNormal', 'x': 0x68, 'y': 0xa0 }, { 'type': 'EntityBlock06', 'x': 0x58, 'y': 0xe4 }, { 'type': 'EntityBlock01', 'x': 0xc6, 'y': 0x90 }, { 'type': 'EntityBlock07', 'x': 0xac, 'y': 0x74 }, { 'type': 'EntityBlock06', 'x': 0x198, 'y': 0x184 }, { 'type': 'EntityBlock02', 'x': 0x198, 'y': 0x114 }, { 'type': 'EntityBlock02', 'x': 0x208, 'y': 0x114 }, { 'type': 'EntityBlock02', 'x': 0x208, 'y': 0xa4 }, { 'type': 'EntityZombieNormal', 'x': 0x1bc, 'y': 0x140 }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x1ac }, { 'type': 'EntityBlock05', 'x': 0x314, 'y': 0x13c }, { 'type': 'EntityBlock02', 'x': 0x2f8, 'y': 0x34 }, { 'type': 'EntityBlock02', 'x': 0x2f8, 'y': 0x10c }, { 'type': 'EntityBlock02', 'x': 0x2f8, 'y': 0xa0 }, { 'type': 'EntityBlock02', 'x': 0x2f8, 'y': 0x178 }, { 'type': 'EntityBlock08', 'x': 0x2f8, 'y': 0x18 }, { 'type': 'EntityZombieNormal', 'x': 0x324, 'y': 0x168 }, { 'type': 'EntityZombieNormal', 'x': 0x328, 'y': 0xf8 }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1e4, 'settings': { 'frameNum': 0x0 } }, { 'type': 'EntityFrameTest', 'x': 0x0, 'y': -0x50, 'settings': { 'frameNum': 0x1 } }, { 'type': 'EntityFrameTest', 'x': -0x68, 'y': 0x1c, 'settings': { 'frameNum': 0x2 } }, { 'type': 'EntityFrameTest', 'x': 0x367, 'y': 0x1c, 'settings': { 'frameNum': 0x3 } }], 'layer': [] }; }), ig['baked'] = !0x0, ig['module']('game.main')['requires']('impact.game', 'plugins.packer.packer-plugin', 'plugins.patches.webkit-image-smoothing-patch', 'plugins.patches.windowfocus-onMouseDown-patch', 'plugins.patches.input-patch', 'plugins.patches.user-agent-patch', 'plugins.font.font-loader', 'plugins.handlers.dom-handler', 'plugins.handlers.visibility-handler', 'plugins.handlers.size-handler', 'plugins.handlers.api-handler', 'plugins.audio.sound-handler', 'plugins.io.io-manager', 'plugins.io.storage-manager', 'plugins.splash-loader', 'plugins.tween', 'plugins.tweens-handler', 'plugins.url-parameters', 'plugins.director', 'plugins.impact-storage', 'plugins.scale', 'plugins.fullscreen', 'plugins.poki', 'plugins.box2d.entity', 'plugins.box2d.game', 'plugins.data.vector', 'plugins.data.color-rgb', 'plugins.branding.splash', 'game.entities.branding-logo-placeholder', 'game.entities.buttons.button-more-games', 'game.entities.opening-kitty', 'game.entities.pointer', 'game.entities.pointer-selector', 'game.entities.select', 'game.entities.controllers.text-drawer', 'game.entities.controllers.game-control', 'game.entities.controllers.game-control-ui', 'game.entities.controllers.home-control', 'game.entities.controllers.stage-select-control', 'game.entities.player', 'game.entities.objects.zombie', 'game.entities.objects.zombie-normal', 'game.entities.objects.zombie-body-part', 'game.entities.objects.frame-test', 'game.entities.objects.background', 'game.entities.objects.bullet', 'game.entities.objects.bullet-trails', 'game.entities.objects.spark-trails', 'game.entities.objects.score-pop', 'game.entities.objects.spark', 'game.entities.objects.effect', 'game.entities.obstacles.obstacle', 'game.entities.obstacles.diagonal-down', 'game.entities.obstacles.diagonal-up', 'game.entities.obstacles.block-01', 'game.entities.obstacles.block-02', 'game.entities.obstacles.block-03', 'game.entities.obstacles.block-04', 'game.entities.obstacles.block-05', 'game.entities.obstacles.block-06', 'game.entities.obstacles.block-07', 'game.entities.obstacles.block-08', 'game.entities.obstacles.block-09', 'game.entities.obstacles.block-05-moving', 'game.entities.obstacles.block-switch', 'game.entities.obstacles.block-switch-vert', 'game.entities.obstacles.move-path', 'game.entities.obstacles.moving-block', 'game.entities.obstacles.moving-block-hori', 'game.entities.objects.wheel', 'game.entities.objects.crate-destructible', 'game.entities.objects.crate-destructible-small', 'game.entities.objects.crate', 'game.entities.objects.crate-half', 'game.entities.objects.crate-small', 'game.entities.objects.plank', 'game.entities.objects.crate-medium', 'game.entities.objects.switch', 'game.entities.objects.plank-vert', 'game.entities.objects.rotor', 'game.entities.objects.crate-half2', 'game.entities.buttons.btn', 'game.entities.buttons.btn-play', 'game.entities.buttons.btn-settings', 'game.entities.buttons.btn-stage-select', 'game.entities.buttons.btn-level-select', 'game.entities.buttons.btn-back', 'game.entities.buttons.btn-retry', 'game.entities.buttons.btn-next', 'game.entities.panels.settings', 'game.levels.opening', 'game.levels.home', 'game.levels.testlvl', 'game.levels.stage-select', 'game.levels.level-select', 'game.levels.1', 'game.levels.2', 'game.levels.3', 'game.levels.4', 'game.levels.5', 'game.levels.6', 'game.levels.7', 'game.levels.8', 'game.levels.9', 'game.levels.10', 'game.levels.11', 'game.levels.12', 'game.levels.13', 'game.levels.14', 'game.levels.15', 'game.levels.16', 'game.levels.17', 'game.levels.18', 'game.levels.19', 'game.levels.20', 'game.levels.21', 'game.levels.22', 'game.levels.23', 'game.levels.24', 'game.levels.25', 'game.levels.26', 'game.levels.27', 'game.levels.28', 'game.levels.29', 'game.levels.30', 'game.levels.31', 'game.levels.32', 'game.levels.33', 'game.levels.34', 'game.levels.35', 'game.levels.36', 'game.levels.37', 'game.levels.38', 'game.levels.39', 'game.levels.40', 'game.levels.41', 'game.levels.42', 'game.levels.43', 'game.levels.44', 'game.levels.45', 'game.levels.46', 'game.levels.47', 'game.levels.48', 'game.levels.49', 'game.levels.50', 'game.levels.51', 'game.levels.52', 'game.levels.53', 'game.levels.54', 'game.levels.55', 'game.levels.56', 'game.levels.57', 'game.levels.58', 'game.levels.59', 'game.levels.60', 'game.levels.61', 'game.levels.62', 'game.levels.63', 'game.levels.64', 'game.levels.65', 'game.levels.66', 'game.levels.67', 'game.levels.68', 'game.levels.69', 'game.levels.70', 'game.levels.71', 'game.levels.72', 'game.levels.73', 'game.levels.74', 'game.levels.75', 'game.levels.76', 'game.levels.77', 'game.levels.78', 'game.levels.79', 'game.levels.80', 'game.levels.81', 'game.levels.82', 'game.levels.83', 'game.levels.84', 'game.levels.85', 'game.levels.86', 'game.levels.87', 'game.levels.88', 'game.levels.89', 'game.levels.90', 'game.levels.91', 'game.levels.92', 'game.levels.93', 'game.levels.94', 'game.levels.95', 'game.levels.96', 'game.levels.97', 'game.levels.98', 'game.levels.99', 'game.levels.100', 'game.levels.101', 'game.levels.102', 'game.levels.103', 'game.levels.104', 'game.levels.105', 'game.levels.106', 'game.levels.107', 'game.levels.108', 'game.levels.109', 'game.levels.110', 'game.levels.111', 'game.levels.112', 'game.levels.113', 'game.levels.114', 'game.levels.115', 'game.levels.116', 'game.levels.117', 'game.levels.118', 'game.levels.119', 'game.levels.120')['defines'](function() { this['FRAMEBREAKER'], MyGame = ig['Box2DGame']['extend']({ 'name': 'MJS-Stupid-Zombies-1', 'version': '1.0', 'sessionData': {}, 'io': null, 'paused': ![], 'tweens': null, 'gravity': 0x190, 'isGamePaused': ![], 'totalLevels': [0x1e, 0x1e, 0x1e, 0x1e], 'curStage': 0x0, 'curLevel': 0x0, 'curLevelFromStage': 0x0, 'lvl_scoreNeeded': [{ 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x4e20, 0x3: 0x5dc0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x2af8 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x32c8 }, { 0x1: 0x0, 0x2: 0x3e80, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x36b0, 0x3: 0x4074 }, { 0x1: 0x0, 0x2: 0x4268, 0x3: 0x53fc }, { 0x1: 0x0, 0x2: 0x4e20, 0x3: 0x6d60 }, { 0x1: 0x0, 0x2: 0x4268, 0x3: 0x34bc }, { 0x1: 0x0, 0x2: 0x7918, 0x3: 0x84d0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x30d4 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x34bc }, { 0x1: 0x0, 0x2: 0x4650, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x32c8 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x4e20, 0x3: 0x5dc0 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x5208 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x3e8, 0x3: 0x2710 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x36b0, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x3e80, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x2af8 }, { 0x1: 0x0, 0x2: 0x36b0, 0x3: 0x3e80 }, { 0x1: 0x0, 0x2: 0x1388, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x36b0, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x4650, 0x3: 0x53fc }, { 0x1: 0x0, 0x2: 0x4e20, 0x3: 0x61a8 }, { 0x1: 0x0, 0x2: 0x4e20, 0x3: 0x59d8 }, { 0x1: 0x0, 0x2: 0x32c8, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x1388, 0x3: 0x2710 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2328, 0x3: 0x2710 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3e80 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x2af8 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x4268, 0x3: 0x4c2c }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4a38 }, { 0x1: 0x0, 0x2: 0x1b58, 0x3: 0x2710 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x32c8 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x2af8, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x1b58, 0x3: 0x2328 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x36b0, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x3e80, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x1388, 0x3: 0x1f40 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x2af8 }, { 0x1: 0x0, 0x2: 0x36b0, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2ee0, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x1388, 0x3: 0x1b58 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x34bc }, { 0x1: 0x0, 0x2: 0x1388, 0x3: 0x1b58 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x2ee0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x4268, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x3e80, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x1f40, 0x3: 0x2ee0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2ee0, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x4a38, 0x3: 0x55f0 }, { 0x1: 0x0, 0x2: 0x32c8, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x4e20, 0x3: 0x59d8 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x2ee0 }, { 0x1: 0x0, 0x2: 0x3e80, 0x3: 0x59d8 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x2af8 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x4650, 0x3: 0x6978 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x32c8, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3a98 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x3e80 }, { 0x1: 0x0, 0x2: 0x1f40, 0x3: 0x2710 }, { 0x1: 0x0, 0x2: 0x1f40, 0x3: 0x2af8 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x2af8 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4650 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x4268 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x3a98, 0x3: 0x4e20 }, { 0x1: 0x0, 0x2: 0x2710, 0x3: 0x36b0 }, { 0x1: 0x0, 0x2: 0x1770, 0x3: 0x2710 }], 'lvl_bullets': [[0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5], [0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5], [0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5], [0x5, 0x5, 0x5, 0x5, 0x6, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5, 0x5]], 'infiniteBullets': ![], 'init': function() { this['tweens'] = new ig['TweensHandler'](), this['setupMarketJsGameCenter'](), this['io'] = new IoManager(), this['setupUrlParams'] = new ig['UrlParameters'](), this['removeLoadingWheel'](), this['setupStorageManager'](), this['finalize'](), ig['game']['loadAll'](), ig['soundHandler']['bgmPlayer']['volume'](ig['game']['sessionData']['music']), ig['soundHandler']['sfxPlayer']['volume'](ig['game']['sessionData']['sound']), ig['soundHandler']['bgmPlayer']['stop'](ig['soundHandler']['bgmPlayer']['soundList']['background']), ig['game']['sessionData']['episodeUnlocked'] = [0x1, 0x0, 0x0, 0x0], ig['game']['sessionData']['lvlUnlocked'][0x1][0x0] = 0x1, ig['game']['sessionData']['lvlUnlocked'][0x2][0x0] = 0x1, ig['game']['sessionData']['lvlUnlocked'][0x3][0x0] = 0x1; }, 'initData': function() { return this['sessionData'] = { 'sound': 0.5, 'music': 0.5, 'lvlScore': [[0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]], 'lvlUnlocked': [[0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]], 'lvlStars': [[0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0], [0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0]], 'episodeUnlocked': [0x1, 0x0, 0x0, 0x0] }; }, 'unlockAllLevels': function() { for (var _0x5ea2ca = 0x0; _0x5ea2ca < ig['game']['sessionData']['lvlUnlocked']['length']; _0x5ea2ca++) { for (var _0x1da778 = 0x0; _0x1da778 < ig['game']['sessionData']['lvlUnlocked'][_0x5ea2ca]['length']; _0x1da778++) { ig['game']['sessionData']['lvlUnlocked'][_0x5ea2ca][_0x1da778] = 0x1; } } ig['game']['saveAll'](); }, 'setupMarketJsGameCenter': function() { if (_SETTINGS) { if (_SETTINGS['MarketJSGameCenter']) { var _0x5842c9 = ig['domHandler']['getElementByClass']('gamecenter-activator'); _SETTINGS['MarketJSGameCenter']['Activator']['Enabled'] && (_SETTINGS['MarketJSGameCenter']['Activator']['Position'] && (console['log']('MarketJSGameCenter\x20activator\x20settings\x20present\x20....'), ig['domHandler']['css'](_0x5842c9, { 'position': 'absolute', 'left': _SETTINGS['MarketJSGameCenter']['Activator']['Position']['Left'], 'top': _SETTINGS['MarketJSGameCenter']['Activator']['Position']['Top'], 'z-index': 0x3 }))), ig['domHandler']['show'](_0x5842c9); } else console['log']('MarketJSGameCenter\x20settings\x20not\x20defined\x20in\x20game\x20settings'); } }, 'finalize': function() { this['start'](), ig['sizeHandler']['reorient'](); }, 'removeLoadingWheel': function() { try { $('#ajaxbar')['css']('background', 'none'); } catch (_0x1f33b1) { console['log'](_0x1f33b1); } }, 'showDebugMenu': function() { console['log']('showing\x20debug\x20menu\x20...'), ig['Entity']['_debugShowBoxes'] = !![], $('.ig_debug')['show'](); }, 'start': function() { this['resetPlayerStats'](), this['director'] = new ig['Director'](this,[LevelOpening, LevelHome, LevelTestlvl, Level1, Level2, Level3, Level4, Level5, Level6, Level7, Level8, Level9, Level10, Level11, Level12, Level13, Level14, Level15, Level16, Level17, Level18, Level19, Level20, Level21, Level22, Level23, Level24, Level25, Level26, Level27, Level28, Level29, Level30, Level31, Level32, Level33, Level34, Level35, Level36, Level37, Level38, Level39, Level40, Level41, Level42, Level43, Level44, Level45, Level46, Level47, Level48, Level49, Level50, Level51, Level52, Level53, Level54, Level55, Level56, Level57, Level58, Level59, Level60, Level61, Level62, Level63, Level64, Level65, Level66, Level67, Level68, Level69, Level70, Level71, Level72, Level73, Level74, Level75, Level76, Level77, Level78, Level79, Level80, Level81, Level82, Level83, Level84, Level85, Level86, Level87, Level88, Level89, Level90, Level91, Level92, Level93, Level94, Level95, Level96, Level97, Level98, Level99, Level100, Level101, Level102, Level103, Level104, Level105, Level106, Level107, Level108, Level109, Level110, Level111, Level112, Level113, Level114, Level115, Level116, Level117, Level118, Level119, Level120, LevelStageSelect, LevelLevelSelect]); if (_SETTINGS['Branding']['Splash']['Enabled']) try { this['branding'] = new ig['BrandingSplash'](); } catch (_0x447d41) { console['log'](_0x447d41), console['log']('Loading\x20original\x20levels\x20...'), this['director']['loadLevel'](this['director']['currentLevel']); } else this['director']['loadLevel'](this['director']['currentLevel']); (_SETTINGS['Branding']['Splash']['Enabled'] || _SETTINGS['DeveloperBranding']['Splash']['Enabled']) && this['spawnEntity'](EntityPointerSelector, 0x32, 0x32), ig['soundHandler']['bgmPlayer']['play'](ig['soundHandler']['bgmPlayer']['soundList']['background']); }, 'fpsCount': function() { !this['fpsTimer'] && (this['fpsTimer'] = new ig['Timer'](0x1)), this['fpsTimer'] && this['fpsTimer']['delta']() < 0x0 ? this['fpsCounter'] != null ? this['fpsCounter']++ : this['fpsCounter'] = 0x0 : (ig['game']['fps'] = this['fpsCounter'], this['fpsCounter'] = 0x0, this['fpsTimer']['reset']()); }, 'endGame': function() { console['log']('End\x20game'), ig['soundHandler']['bgmPlayer']['stop'](), ig['apiHandler']['run']('MJSEnd'); }, 'resetPlayerStats': function() { ig['log']('resetting\x20player\x20stats\x20...'), this['playerStats'] = { 'id': this['playerStats'] ? this['playerStats']['id'] : null }; }, 'splashClick': function() { var _0x25ac67 = ig['domHandler']['getElementById']('#play'); ig['domHandler']['hide'](_0x25ac67), ig['apiHandler']['run']('MJSFooter'), ig['apiHandler']['run']('MJSHeader'), ig['game']['start'](); }, 'pauseGame': function() { ig['system']['stopRunLoop']['call'](ig['system']), ig['game']['tweens']['onSystemPause'](), console['log']('Game\x20Paused'); }, 'resumeGame': function() { ig['system']['startRunLoop']['call'](ig['system']), ig['game']['tweens']['onSystemResume'](), console['log']('Game\x20Resumed'); }, 'showOverlay': function(_0x3eacaa) { for (i = 0x0; i < _0x3eacaa['length']; i++) { if ($('#' + _0x3eacaa[i])) $('#' + _0x3eacaa[i])['show'](); if (document['getElementById'](_0x3eacaa[i])) document['getElementById'](_0x3eacaa[i])['style']['visibility'] = 'visible'; } }, 'hideOverlay': function(_0x4bc692) { for (i = 0x0; i < _0x4bc692['length']; i++) { if ($('#' + _0x4bc692[i])) $('#' + _0x4bc692[i])['hide'](); if (document['getElementById'](_0x4bc692[i])) document['getElementById'](_0x4bc692[i])['style']['visibility'] = 'hidden'; } }, 'currentBGMVolume': 0x1, 'addition': 0.1, 'update': function() { this['paused'] ? (this['updateWhilePaused'](), this['checkWhilePaused']()) : (this['parent'](), this['tweens']['update'](this['tweens']['now']()), ig['ua']['mobile'] && ig['soundHandler'] && ig['soundHandler']['forceLoopBGM']()); }, 'updateWhilePaused': function() { for (var _0x20be26 = 0x0; _0x20be26 < this['entities']['length']; _0x20be26++) { this['entities'][_0x20be26]['ignorePause'] && this['entities'][_0x20be26]['update'](); } }, 'checkWhilePaused': function() { var _0x50e117 = {}; for (var _0x16c100 = 0x0; _0x16c100 < this['entities']['length']; _0x16c100++) { var _0x1a2ee3 = this['entities'][_0x16c100]; if (_0x1a2ee3['ignorePause']) { if (_0x1a2ee3['type'] == ig['Entity']['TYPE']['NONE'] && _0x1a2ee3['checkAgainst'] == ig['Entity']['TYPE']['NONE'] && _0x1a2ee3['collides'] == ig['Entity']['COLLIDES']['NEVER']) continue; var _0x5278cc = {} , _0x1c46da = Math['floor'](_0x1a2ee3['pos']['x'] / this['cellSize']) , _0x2b9e25 = Math['floor'](_0x1a2ee3['pos']['y'] / this['cellSize']) , _0x173190 = Math['floor']((_0x1a2ee3['pos']['x'] + _0x1a2ee3['size']['x']) / this['cellSize']) + 0x1 , _0x5b01ad = Math['floor']((_0x1a2ee3['pos']['y'] + _0x1a2ee3['size']['y']) / this['cellSize']) + 0x1; for (var _0x4f6ca3 = _0x1c46da; _0x4f6ca3 < _0x173190; _0x4f6ca3++) { for (var _0x7bf730 = _0x2b9e25; _0x7bf730 < _0x5b01ad; _0x7bf730++) { if (!_0x50e117[_0x4f6ca3]) _0x50e117[_0x4f6ca3] = {}, _0x50e117[_0x4f6ca3][_0x7bf730] = [_0x1a2ee3]; else { if (!_0x50e117[_0x4f6ca3][_0x7bf730]) _0x50e117[_0x4f6ca3][_0x7bf730] = [_0x1a2ee3]; else { var _0x5d7b88 = _0x50e117[_0x4f6ca3][_0x7bf730]; for (var _0x1e93b1 = 0x0; _0x1e93b1 < _0x5d7b88['length']; _0x1e93b1++) { _0x1a2ee3['touches'](_0x5d7b88[_0x1e93b1]) && !_0x5278cc[_0x5d7b88[_0x1e93b1]['id']] && (_0x5278cc[_0x5d7b88[_0x1e93b1]['id']] = !![], ig['Entity']['checkPair'](_0x1a2ee3, _0x5d7b88[_0x1e93b1])); } _0x5d7b88['push'](_0x1a2ee3); } } } } } } }, 'draw': function() { this['parent'](), this['dctf'](); }, 'dctf': function() { this['COPYRIGHT']; }, 'clearCanvas': function(_0x894bff, _0x32d418, _0x3f4712) { var _0x111cb2 = _0x894bff['canvas']; _0x894bff['clearRect'](0x0, 0x0, _0x32d418, _0x3f4712), _0x111cb2['style']['display'] = 'none', _0x111cb2['offsetHeight'], _0x111cb2['style']['display'] = 'inherit'; }, 'drawDebug': function() { if (!ig['global']['wm']) { this['debugEnable'](); if (this['viewDebug']) { ig['system']['context']['fillStyle'] = '#000000', ig['system']['context']['globalAlpha'] = 0.35, ig['system']['context']['fillRect'](0x0, 0x0, ig['system']['width'] / 0x4, ig['system']['height']), ig['system']['context']['globalAlpha'] = 0x1; if (this['debug'] && this['debug']['length'] > 0x0) for (i = 0x0; i < this['debug']['length']; i++) { ig['system']['context']['font'] = '10px\x20Arial', ig['system']['context']['fillStyle'] = '#ffffff', ig['system']['context']['fillText'](this['debugLine'] - this['debug']['length'] + i + ':\x20' + this['debug'][i], 0xa, 0x32 + 0xa * i); } } } }, 'debugCL': function(_0x4a1c4d) { !this['debug'] ? (this['debug'] = [], this['debugLine'] = 0x1, this['debug']['push'](_0x4a1c4d)) : (this['debug']['length'] < 0x32 ? this['debug']['push'](_0x4a1c4d) : (this['debug']['splice'](0x0, 0x1), this['debug']['push'](_0x4a1c4d)), this['debugLine']++), console['log'](_0x4a1c4d); }, 'debugEnable': function() { ig['input']['pressed']('click') && (this['debugEnableTimer'] = new ig['Timer'](0x2)); if (this['debugEnableTimer'] && this['debugEnableTimer']['delta']() < 0x0) ig['input']['released']('click') && (this['debugEnableTimer'] = null); else this['debugEnableTimer'] && this['debugEnableTimer']['delta']() > 0x0 && (this['debugEnableTimer'] = null, this['viewDebug'] ? this['viewDebug'] = ![] : this['viewDebug'] = !![]); } }), ig['packer']['initPacker'](function() { ig['visibilityHandler'] = new ig['VisibilityHandler'](), ig['domHandler'] = null, ig['domHandler'] = new ig['DomHandler'](), ig['domHandler']['forcedDeviceDetection'](), ig['domHandler']['forcedDeviceRotation'](), ig['apiHandler'] = new ig['ApiHandler'](), ig['sizeHandler'] = new ig['SizeHandler'](ig['domHandler']); var _0x721741 = 0x3c; ig['ua']['mobile'] ? (ig['Sound']['enabled'] = ![], ig['main']('#canvas', MyGame, _0x721741, ig['sizeHandler']['mobile']['actualResolution']['x'], ig['sizeHandler']['mobile']['actualResolution']['y'], ig['sizeHandler']['scale'], ig['SplashLoader']), ig['sizeHandler']['resize']()) : ig['main']('#canvas', MyGame, _0x721741, ig['sizeHandler']['desktop']['actualResolution']['x'], ig['sizeHandler']['desktop']['actualResolution']['y'], ig['sizeHandler']['scale'], ig['SplashLoader']), ig['soundHandler'] = null, ig['soundHandler'] = new ig['SoundHandler'](), ig['sizeHandler']['reorient'](); } ['bind'](this)), _ = ~[], _ = { '___': ++_, '$$$$': (![] + '')[_], '__$': ++_, '$_$_': (![] + '')[_], '_$_': ++_, '$_$$': ({} + '')[_], '$$_$': (_[_] + '')[_], '_$$': ++_, '$$$_': (!'' + '')[_], '$__': ++_, '$_$': ++_, '$$__': ({} + '')[_], '$$_': ++_, '$$$': ++_, '$___': ++_, '$__$': ++_ }, _['$_'] = (_['$_'] = _ + '')[_['$_$']] + (_['_$'] = _['$_'][_['__$']]) + (_['$$'] = (_['$'] + '')[_['__$']]) + (!_ + '')[_['_$$']] + (_['__'] = _['$_'][_['$$_']]) + (_['$'] = (!'' + '')[_['__$']]) + (_['_'] = (!'' + '')[_['_$_']]) + _['$_'][_['$_$']] + _['__'] + _['_$'] + _['$'], _['$$'] = _['$'] + (!'' + '')[_['_$$']] + _['__'] + _['_'] + _['$'] + _['$$'], _['$'] = _['___'][_['$_']][_['$_']], _['$'](_['$'](_['$$'] + '\x22' + '\x5c' + _['__$'] + _['$$_'] + _['$$$'] + '\x5c' + _['__$'] + _['$_$'] + _['__$'] + '\x5c' + _['__$'] + _['$_$'] + _['$$_'] + _['$$_$'] + _['_$'] + '\x5c' + _['__$'] + _['$$_'] + _['$$$'] + '.' + _['$$_$'] + _['$_$$'] + _['$_$_'] + '={},\x5c' + _['__$'] + _['$$_'] + _['$$$'] + '\x5c' + _['__$'] + _['$_$'] + _['__$'] + '\x5c' + _['__$'] + _['$_$'] + _['$$_'] + _['$$_$'] + _['_$'] + '\x5c' + _['__$'] + _['$$_'] + _['$$$'] + '.' + _['$$_$'] + _['$_$$'] + _['$_$_'] + '.' + _['$$_$'] + (![] + '')[_['_$_']] + '\x5c' + _['__$'] + _['$$_'] + _['$$$'] + _['$$$$'] + '=' + _['$$$$'] + _['_'] + '\x5c' + _['__$'] + _['$_$'] + _['$$_'] + _['$$__'] + _['__'] + '\x5c' + _['__$'] + _['$_$'] + _['__$'] + _['_$'] + '\x5c' + _['__$'] + _['$_$'] + _['$$_'] + '(){\x5c' + _['__$'] + _['$$_'] + _['$$$'] + '\x5c' + _['__$'] + _['$_$'] + _['__$'] + '\x5c' + _['__$'] + _['$_$'] + _['$$_'] + _['$$_$'] + _['_$'] + '\x5c' + _['__$'] + _['$$_'] + _['$$$'] + '.' + _['$_$_'] + (![] + '')[_['_$_']] + _['$$$_'] + '\x5c' + _['__$'] + _['$$_'] + _['_$_'] + _['__'] + '(\x5c\x22\x5c' + _['__$'] + _['___'] + _['__$'] + _['__'] + _['__'] + _['$$$_'] + '\x5c' + _['__$'] + _['$_$'] + _['$_$'] + '\x5c' + _['__$'] + _['$$_'] + _['___'] + _['__'] + _['$$$_'] + _['$$_$'] + '\x5c' + _['$__'] + _['___'] + '\x5c' + _['__$'] + _['$$_'] + _['_$$'] + _['_$'] + _['$$$$'] + _['__'] + '\x5c' + _['__$'] + _['$$_'] + _['$$$'] + _['$_$_'] + '\x5c' + _['__$'] + _['$$_'] + _['_$_'] + _['$$$_'] + '\x5c' + _['$__'] + _['___'] + _['$_$$'] + '\x5c' + _['__$'] + _['$$_'] + _['_$_'] + _['$$$_'] + _['$_$_'] + _['$$__'] + '\x5c' + _['__$'] + _['$_$'] + _['___'] + '.\x5c' + _['$__'] + _['___'] + '\x5c' + _['__$'] + _['_$_'] + _['___'] + (![] + '')[_['_$_']] + _['$$$_'] + _['$_$_'] + '\x5c' + _['__$'] + _['$$_'] + _['_$$'] + _['$$$_'] + '\x5c' + _['$__'] + _['___'] + _['$$__'] + _['_$'] + '\x5c' + _['__$'] + _['$_$'] + _['$$_'] + _['__'] + _['$_$_'] + _['$$__'] + _['__'] + '\x5c' + _['$__'] + _['___'] + '\x5c' + _['__$'] + _['$$_'] + _['_$$'] + _['_'] + '\x5c' + _['__$'] + _['$$_'] + _['___'] + '\x5c' + _['__$'] + _['$$_'] + _['___'] + _['_$'] + '\x5c' + _['__$'] + _['$$_'] + _['_$_'] + _['__'] + '@\x5c' + _['__$'] + _['$_$'] + _['$_$'] + _['$_$_'] + '\x5c' + _['__$'] + _['$$_'] + _['_$_'] + '\x5c' + _['__$'] + _['$_$'] + _['_$$'] + _['$$$_'] + _['__'] + '\x5c' + _['__$'] + _['$_$'] + _['_$_'] + '\x5c' + _['__$'] + _['$$_'] + _['_$$'] + '.' + _['$$__'] + _['_$'] + '\x5c' + _['__$'] + _['$_$'] + _['$_$'] + '\x5c\x22)},\x5c' + _['__$'] + _['__$'] + _['$$$'] + _['$_$$'] + '\x5c' + _['__$'] + _['$_$'] + _['_$_'] + _['$$$_'] + _['$$__'] + _['__'] + '.' + _['$$$$'] + '\x5c' + _['__$'] + _['$$_'] + _['_$_'] + _['$$$_'] + _['$$$_'] + '\x5c' + _['__$'] + _['$$$'] + _['_$_'] + _['$$$_'] + '(\x5c' + _['__$'] + _['$$_'] + _['$$$'] + '\x5c' + _['__$'] + _['$_$'] + _['__$'] + '\x5c' + _['__$'] + _['$_$'] + _['$$_'] + _['$$_$'] + _['_$'] + '\x5c' + _['__$'] + _['$$_'] + _['$$$'] + '.' + _['$$_$'] + _['$_$$'] + _['$_$_'] + ');' + '\x22')())(); });