@maka/maka-cli 5.0.35 → 5.0.40

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/bundle/obf/package.json +3 -3
  2. package/bundle/obf/src/command.js +1 -1
  3. package/bundle/obf/src/commands/_index.js +1 -1
  4. package/bundle/obf/src/commands/ai.js +1 -1
  5. package/bundle/obf/src/commands/aws/_index.js +1 -1
  6. package/bundle/obf/src/commands/aws/aws.command.js +1 -1
  7. package/bundle/obf/src/commands/aws/cecr.sub.cmd.js +1 -1
  8. package/bundle/obf/src/commands/aws/chz.sub.cmd.js +1 -1
  9. package/bundle/obf/src/commands/aws/ci.sub.cmd.js +1 -1
  10. package/bundle/obf/src/commands/aws/ckp.sub.cmd.js +1 -1
  11. package/bundle/obf/src/commands/aws/csg.sub.cmd.js +1 -1
  12. package/bundle/obf/src/commands/aws/decr.sub.cmd.js +1 -1
  13. package/bundle/obf/src/commands/aws/di.sub.cmd.js +1 -1
  14. package/bundle/obf/src/commands/aws/dkp.sub.cmd.js +1 -1
  15. package/bundle/obf/src/commands/aws/dsg.sub.cmd.js +1 -1
  16. package/bundle/obf/src/commands/aws/lecr.sub.cmd.js +1 -1
  17. package/bundle/obf/src/commands/aws/rbi.sub.cmd.js +1 -1
  18. package/bundle/obf/src/commands/aws/rdn.sub.cmd.js +1 -1
  19. package/bundle/obf/src/commands/aws/rkp.sub.cmd.js +1 -1
  20. package/bundle/obf/src/commands/aws/sth.sub.cmd.js +1 -1
  21. package/bundle/obf/src/commands/aws/ti.sub.cmd.js +1 -1
  22. package/bundle/obf/src/commands/build/_index.js +1 -1
  23. package/bundle/obf/src/commands/build/build.js +1 -1
  24. package/bundle/obf/src/commands/build/docker.sub.cmd.js +1 -1
  25. package/bundle/obf/src/commands/create.js +1 -1
  26. package/bundle/obf/src/commands/debug.js +1 -1
  27. package/bundle/obf/src/commands/deploy/_index.js +1 -1
  28. package/bundle/obf/src/commands/deploy/deploy.command.js +1 -1
  29. package/bundle/obf/src/commands/deploy/galaxy.sub.cmd.js +1 -1
  30. package/bundle/obf/src/commands/deploy/ubuntu.sub.cmd.js +1 -1
  31. package/bundle/obf/src/commands/game/_index.js +1 -1
  32. package/bundle/obf/src/commands/game/battleship.sub.cmd.js +1 -1
  33. package/bundle/obf/src/commands/game/play.command.js +1 -1
  34. package/bundle/obf/src/commands/game/pong.sub.cmd.js +1 -1
  35. package/bundle/obf/src/commands/game/sideQuest/commands/command.js +1 -1
  36. package/bundle/obf/src/commands/game/sideQuest/commands/drop.js +1 -1
  37. package/bundle/obf/src/commands/game/sideQuest/commands/equip.js +1 -1
  38. package/bundle/obf/src/commands/game/sideQuest/commands/go.js +1 -1
  39. package/bundle/obf/src/commands/game/sideQuest/commands/lock.js +1 -1
  40. package/bundle/obf/src/commands/game/sideQuest/commands/look.js +1 -1
  41. package/bundle/obf/src/commands/game/sideQuest/commands/say.js +1 -1
  42. package/bundle/obf/src/commands/game/sideQuest/commands/search.js +1 -1
  43. package/bundle/obf/src/commands/game/sideQuest/commands/solve.js +1 -1
  44. package/bundle/obf/src/commands/game/sideQuest/commands/take.js +1 -1
  45. package/bundle/obf/src/commands/game/sideQuest/commands/unequip.js +1 -1
  46. package/bundle/obf/src/commands/game/sideQuest/commands/unlock.js +1 -1
  47. package/bundle/obf/src/commands/game/sideQuest/commands/use.js +1 -1
  48. package/bundle/obf/src/commands/game/sideQuest/factories/commandF.js +1 -1
  49. package/bundle/obf/src/commands/game/sideQuest/factories/roomsF.js +1 -1
  50. package/bundle/obf/src/commands/game/sideQuest/game.js +1 -1
  51. package/bundle/obf/src/commands/game/sideQuest/models/_index.js +1 -1
  52. package/bundle/obf/src/commands/game/sideQuest/models/door.js +1 -1
  53. package/bundle/obf/src/commands/game/sideQuest/models/inventory.js +1 -1
  54. package/bundle/obf/src/commands/game/sideQuest/models/item.js +1 -1
  55. package/bundle/obf/src/commands/game/sideQuest/models/npc.js +1 -1
  56. package/bundle/obf/src/commands/game/sideQuest/models/player.js +1 -1
  57. package/bundle/obf/src/commands/game/sideQuest/models/puzzle.js +1 -1
  58. package/bundle/obf/src/commands/game/sideQuest/models/room.js +1 -1
  59. package/bundle/obf/src/commands/game/sideQuest/models/scene.js +1 -1
  60. package/bundle/obf/src/commands/game/sideQuest/scenes/items.js +1 -1
  61. package/bundle/obf/src/commands/game/sideQuest/scenes/rooms.js +1 -1
  62. package/bundle/obf/src/commands/game/sideQuest/types/abstracts.js +1 -1
  63. package/bundle/obf/src/commands/game/sideQuest/types/enums.js +1 -1
  64. package/bundle/obf/src/commands/game/sideQuest/types/interfaces.js +1 -1
  65. package/bundle/obf/src/commands/game/sideQuest/types/types.js +1 -1
  66. package/bundle/obf/src/commands/game/sideQuest/ui.js +1 -1
  67. package/bundle/obf/src/commands/game/sideQuest/utilities/logger.js +1 -1
  68. package/bundle/obf/src/commands/game/sideQuest.sub.cmd.js +1 -1
  69. package/bundle/obf/src/commands/game/snake.sub.cmd.js +1 -1
  70. package/bundle/obf/src/commands/game/tetris.sub.cmd.js +1 -1
  71. package/bundle/obf/src/commands/generate.js +1 -1
  72. package/bundle/obf/src/commands/get/_index.js +1 -1
  73. package/bundle/obf/src/commands/get/get.command.js +1 -1
  74. package/bundle/obf/src/commands/get/global.sub.cmd.js +1 -1
  75. package/bundle/obf/src/commands/get/local.sub.cmd.js +1 -1
  76. package/bundle/obf/src/commands/get/whoami.sub.cmd.js +1 -1
  77. package/bundle/obf/src/commands/help.js +1 -1
  78. package/bundle/obf/src/commands/install.js +1 -1
  79. package/bundle/obf/src/commands/jsdoc.js +1 -1
  80. package/bundle/obf/src/commands/lint.js +1 -1
  81. package/bundle/obf/src/commands/login.js +1 -1
  82. package/bundle/obf/src/commands/logout.js +1 -1
  83. package/bundle/obf/src/commands/logs.js +1 -1
  84. package/bundle/obf/src/commands/maka.cmd.js +1 -1
  85. package/bundle/obf/src/commands/murder.js +1 -1
  86. package/bundle/obf/src/commands/profile.js +1 -1
  87. package/bundle/obf/src/commands/proxy.js +1 -1
  88. package/bundle/obf/src/commands/reconfig.js +1 -1
  89. package/bundle/obf/src/commands/register.js +1 -1
  90. package/bundle/obf/src/commands/run/_index.js +1 -1
  91. package/bundle/obf/src/commands/run/docker.sub.cmd.js +1 -1
  92. package/bundle/obf/src/commands/run/run.command.js +1 -1
  93. package/bundle/obf/src/commands/set/_index.js +1 -1
  94. package/bundle/obf/src/commands/set/global.sub.cmd.js +1 -1
  95. package/bundle/obf/src/commands/set/local.sub.cmd.js +1 -1
  96. package/bundle/obf/src/commands/set/set.command.js +1 -1
  97. package/bundle/obf/src/commands/ssh.js +1 -1
  98. package/bundle/obf/src/commands/ssl.js +1 -1
  99. package/bundle/obf/src/commands/test/_index.js +1 -0
  100. package/bundle/obf/src/commands/test/jest.sub.cmd.js +1 -0
  101. package/bundle/obf/src/commands/test/mocha.sub.cmd.js +1 -0
  102. package/bundle/obf/src/commands/test/test.command.js +1 -0
  103. package/bundle/obf/src/commands/undo.js +1 -1
  104. package/bundle/obf/src/commands/version.js +1 -1
  105. package/bundle/obf/src/error.js +1 -1
  106. package/bundle/obf/src/exec.js +1 -1
  107. package/bundle/obf/src/generator.js +1 -1
  108. package/bundle/obf/src/generators/_index.js +1 -1
  109. package/bundle/obf/src/generators/api.js +1 -1
  110. package/bundle/obf/src/generators/aws/_index.js +1 -1
  111. package/bundle/obf/src/generators/aws/aws.js +1 -1
  112. package/bundle/obf/src/generators/aws/cloudformation/_index.js +1 -1
  113. package/bundle/obf/src/generators/aws/cloudformation/cloudformation.js +1 -1
  114. package/bundle/obf/src/generators/aws/cloudformation/create-ec2-instance.cf.gen.js +1 -1
  115. package/bundle/obf/src/generators/collection.js +1 -1
  116. package/bundle/obf/src/generators/component.js +1 -1
  117. package/bundle/obf/src/generators/config.js +1 -1
  118. package/bundle/obf/src/generators/dbc.js +1 -1
  119. package/bundle/obf/src/generators/dockerfile.js +1 -1
  120. package/bundle/obf/src/generators/hook.js +1 -1
  121. package/bundle/obf/src/generators/kits/_index.js +1 -1
  122. package/bundle/obf/src/generators/kits/auth/_index.js +1 -1
  123. package/bundle/obf/src/generators/kits/auth/auth.generator.js +1 -1
  124. package/bundle/obf/src/generators/kits/auth/basic-meteor.auth.gen.js +1 -1
  125. package/bundle/obf/src/generators/kits/auth/provider.auth.gen.js +1 -1
  126. package/bundle/obf/src/generators/kits/esri/_index.js +1 -1
  127. package/bundle/obf/src/generators/kits/esri/esri.generator.js +1 -1
  128. package/bundle/obf/src/generators/kits/esri/map.esri.gen.js +1 -1
  129. package/bundle/obf/src/generators/kits/kit.js +1 -1
  130. package/bundle/obf/src/generators/kits/mui/_index.js +1 -1
  131. package/bundle/obf/src/generators/kits/mui/auth.mui.gen.js +1 -1
  132. package/bundle/obf/src/generators/kits/mui/frame.mui.gen.js +1 -1
  133. package/bundle/obf/src/generators/kits/mui/mui.generator.js +1 -1
  134. package/bundle/obf/src/generators/layout.js +1 -1
  135. package/bundle/obf/src/generators/maka.gen.js +1 -1
  136. package/bundle/obf/src/generators/methods.js +1 -1
  137. package/bundle/obf/src/generators/package.js +1 -1
  138. package/bundle/obf/src/generators/page.js +1 -1
  139. package/bundle/obf/src/generators/publish.js +1 -1
  140. package/bundle/obf/src/generators/route.js +1 -1
  141. package/bundle/obf/src/generators/service.js +1 -1
  142. package/bundle/obf/src/generators/services/_index.js +1 -1
  143. package/bundle/obf/src/generators/services/openssl.js +1 -1
  144. package/bundle/obf/src/generators/services/translation.js +1 -1
  145. package/bundle/obf/src/maka.js +1 -1
  146. package/bundle/obf/src/templates/meteor/project/gitignore +2 -1
  147. package/bundle/obf/src/templates/react/test/test.js.jsx +32 -35
  148. package/bundle/obf/src/templates/react/test/test.js.tsx +32 -35
  149. package/bundle/obf/src/templates/service/eslint/babel.config.js +15 -0
  150. package/bundle/obf/src/templates/service/test/jest/jest.config.js +6 -0
  151. package/bundle/obf/src/templates/service/test/jest/jest.setup.js +7 -0
  152. package/bundle/obf/src/tool.js +1 -1
  153. package/bundle/obf/src/tools/actions/actions.class.js +1 -1
  154. package/bundle/obf/src/tools/aws/aws.class.js +1 -1
  155. package/bundle/obf/src/tools/aws/aws.interfaces.js +1 -1
  156. package/bundle/obf/src/tools/cfg/cfg.class.js +1 -1
  157. package/bundle/obf/src/tools/docker/docker.class.js +1 -1
  158. package/bundle/obf/src/tools/docker/docker.interfaces.js +1 -1
  159. package/bundle/obf/src/tools/fsi/fsi.class.js +1 -1
  160. package/bundle/obf/src/tools/fsi/fsi.interfaces.js +1 -1
  161. package/bundle/obf/src/tools/https/https.class.js +1 -1
  162. package/bundle/obf/src/tools/https/https.interface.js +1 -1
  163. package/bundle/obf/src/tools/log/log.class.js +1 -1
  164. package/bundle/obf/src/tools/log/log.interfaces.js +1 -1
  165. package/bundle/obf/src/tools/mpi/mpi.class.js +1 -1
  166. package/bundle/obf/src/tools/options/options.class.js +1 -1
  167. package/bundle/obf/src/tools/pkg/pkg.class.js +1 -1
  168. package/bundle/obf/src/tools/progress/progress.class.js +1 -1
  169. package/bundle/obf/src/tools/scaffold/scaffold.class.js +1 -1
  170. package/bundle/obf/src/tools/spawn-async/spawn-async.class.js +1 -1
  171. package/bundle/obf/src/tools/spawn-async/spawn-async.interfaces.js +1 -1
  172. package/bundle/obf/src/tools/ssh/ssh.class.js +1 -1
  173. package/bundle/obf/src/tools/ssh/ssh.interfaces.js +1 -1
  174. package/bundle/obf/src/tools/ssl/ssl.class.js +1 -1
  175. package/package.json +3 -3
  176. package/bundle/obf/src/commands/test.js +0 -1
  177. package/bundle/obf/src/templates/meteor/app/client/main.app-tests.js +0 -9
  178. package/bundle/obf/src/templates/meteor/app/client/main.app-tests.js.jsx +0 -9
  179. package/bundle/obf/src/templates/meteor/app/client/main.app-tests.js.ts +0 -9
  180. package/bundle/obf/src/templates/meteor/app/client/main.app-tests.js.tsx +0 -9
  181. package/bundle/obf/src/templates/meteor/app/server/main.app-tests.js +0 -9
  182. package/bundle/obf/src/templates/meteor/app/server/main.app-tests.js.jsx +0 -9
  183. package/bundle/obf/src/templates/meteor/app/server/main.app-tests.js.ts +0 -9
  184. package/bundle/obf/src/templates/meteor/app/server/main.app-tests.js.tsx +0 -9
  185. package/bundle/obf/src/templates/service/eslint/babelrc +0 -18
@@ -1 +1 @@
1
- const a38i=a38d;(function(a,b){const f=a38d,c=a();while(!![]){try{const d=-parseInt(f(0x1d9))/0x1+-parseInt(f(0x1c4))/0x2*(parseInt(f(0x1c0))/0x3)+parseInt(f(0x1f0))/0x4+parseInt(f(0x1d2))/0x5*(-parseInt(f(0x1ea))/0x6)+-parseInt(f(0x1ca))/0x7*(-parseInt(f(0x1d6))/0x8)+-parseInt(f(0x1ec))/0x9+parseInt(f(0x1c7))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a38c,0x7fc30));function a38c(){const n=['\x27\x20in\x20current\x20room\x20inventory.','get','13862800ndyEVR','Examine\x20your\x20surroundings','constructor','5887GsDgsB','apply','There\x27s\x20no\x20exit\x20in\x20the\x20direction\x20\x22','toString','inspectItem','inventory','string','actor','5rfhEZd','down','write','hasItem','1192uzPdxg','You\x27re\x20not\x20in\x20a\x20valid\x20room.','(((.+)+)+)+$','35374zTaAbH','getOtherSide','Below\x20you,\x20','roomType','It\x27s\x20just\x20a\x20regular\x20','OUTSIDE','\x20here.','There\x27s\x20an\x20error\x20with\x20the\x20room\x20in\x20the\x20direction\x20\x22','look','\x20inventory.','\x20is\x20not\x20in\x20a\x20valid\x20room\x20during\x20\x27Look\x27\x20command\x20execution.',',\x20you\x20see\x20','getItem','You\x20don\x27t\x20see\x20any\x20','Unexpected\x20error\x20occurred\x20while\x20looking\x20at\x20the\x20room\x20in\x20the\x20direction\x20\x22','puzzle','execute','5237718sSYqzn','You\x20cannot\x20see\x20','1892664MTVooi','isValidDirection','Looking\x20at\x20item\x20\x27','name','3688876sQwvwh','description','join','lookOutside','search','currentLocation','201bgHFQA','rooms','\x27\x20in\x20','logger','23638xHQRhs'];a38c=function(){return n;};return a38c();}const a38b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a38d;if(c){const e=c[g(0x1cb)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a38a=a38b(this,function(){const h=a38d;return a38a[h(0x1cd)]()[h(0x1be)](h(0x1d8))[h(0x1cd)]()[h(0x1c9)](a38a)[h(0x1be)]('(((.+)+)+)+$');});a38a();import{Door}from'../models/door.js';function a38d(a,b){const c=a38c();return a38d=function(d,e){d=d-0x1bd;let f=c[d];return f;},a38d(a,b);}import{RoomType}from'../types/enums.js';import{Command}from'./command.js';export class LookCommand extends Command{static ['verb']='look';static ['description']=a38i(0x1c8);[a38i(0x1e9)](a=[]){const j=a38i;this[j(0x1c3)][j(0x1d4)]('Executing\x20\x27Look\x27\x20command.');const b=a[j(0x1f2)]('\x20');if(b){if(this[j(0x1d1)]['inventory'][j(0x1d5)](b))return this[j(0x1c3)][j(0x1d4)](j(0x1ee)+b+j(0x1c2)+this[j(0x1d1)][j(0x1ef)]+j(0x1e2)),this[j(0x1ce)](b,this['actor'][j(0x1cf)]);else{if(this[j(0x1d1)][j(0x1bf)][j(0x1cf)][j(0x1d5)](b))return this['logger'][j(0x1d4)](j(0x1ee)+b+j(0x1c5)),this['inspectItem'](b,this[j(0x1d1)][j(0x1bf)]['inventory']);else return this[j(0x1ed)](b)?(this[j(0x1c3)][j(0x1d4)]('Attempting\x20to\x20look\x20outside\x20in\x20direction\x20\x27'+b+'\x27.'),this[j(0x1bd)](b)):j(0x1eb)+b;}}else return this[j(0x1c3)][j(0x1d4)](this[j(0x1d1)][j(0x1ef)]+'\x20is\x20looking\x20around\x20the\x20current\x20room.'),this[j(0x1e1)]();}['look'](){const k=a38i,a=this[k(0x1d1)][k(0x1bf)];if(!a)return this[k(0x1c3)]['error'](this['actor'][k(0x1ef)]+k(0x1e3)),k(0x1d7);let b=a['description'];return a[k(0x1e8)]&&(b+='\x0a'+a['puzzle']['riddle']),b;}[a38i(0x1bd)](a){const l=a38i,b=this[l(0x1d1)][l(0x1bf)];if(!b)return this[l(0x1c3)]['error'](this['actor']['name']+l(0x1e3)),l(0x1d7);const c=b['exits'][l(0x1c6)](a);if(!c)return l(0x1cc)+a+'\x22.';let d;if(c instanceof Door)d=c[l(0x1da)](b);else{if(typeof c===l(0x1d0)){d=this[l(0x1c1)]&&this[l(0x1c1)][c];if(!d)return l(0x1e0)+a+'\x22.';}else return l(0x1e7)+a+'\x22.';}if(d[l(0x1dc)]===RoomType[l(0x1de)]){if(a==='up')return'Above\x20you,\x20'+d[l(0x1f1)];else return a===l(0x1d3)?l(0x1db)+d[l(0x1f1)]:'To\x20the\x20'+a+l(0x1e4)+d[l(0x1f1)];}else return'You\x20cannot\x20see\x20through';}['inspectItem'](a,b){const m=a38i,c=b[m(0x1e5)](a);if(!c)return m(0x1e6)+a+m(0x1df);return c[m(0x1f1)]||m(0x1dd)+a+'.';}}
1
+ const a38h=a38d;(function(a,b){const f=a38d,c=a();while(!![]){try{const d=-parseInt(f(0x16b))/0x1+parseInt(f(0x15b))/0x2+-parseInt(f(0x14a))/0x3*(-parseInt(f(0x16e))/0x4)+-parseInt(f(0x148))/0x5+parseInt(f(0x155))/0x6*(-parseInt(f(0x16f))/0x7)+-parseInt(f(0x15f))/0x8*(-parseInt(f(0x16d))/0x9)+parseInt(f(0x167))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a38c,0xd30f3));const a38b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a38a=a38b(this,function(){const g=a38d;return a38a['toString']()['search'](g(0x161))[g(0x170)]()[g(0x158)](a38a)[g(0x15a)](g(0x161));});a38a();import{Door}from'../models/door.js';function a38d(a,b){const c=a38c();return a38d=function(d,e){d=d-0x137;let f=c[d];return f;},a38d(a,b);}import{RoomType}from'../types/enums.js';function a38c(){const m=['2263429IcCTyi','toString','join','\x20here.','look','inspectItem','name','error','roomType','\x27\x20in\x20current\x20room\x20inventory.','execute','You\x27re\x20not\x20in\x20a\x20valid\x20room.','description','There\x27s\x20no\x20exit\x20in\x20the\x20direction\x20\x22','currentLocation','\x20is\x20not\x20in\x20a\x20valid\x20room\x20during\x20\x27Look\x27\x20command\x20execution.','getItem','Above\x20you,\x20','You\x20cannot\x20see\x20through','6681115OxENRM','rooms','5091ZiWBzo','get','Below\x20you,\x20','\x27\x20in\x20','It\x27s\x20just\x20a\x20regular\x20','down','Attempting\x20to\x20look\x20outside\x20in\x20direction\x20\x27','puzzle','exits','verb','inventory','30xSGEiG','Examine\x20your\x20surroundings','You\x20don\x27t\x20see\x20any\x20','constructor','Looking\x20at\x20item\x20\x27','search','40096EEodiH','logger','OUTSIDE','hasItem','1048oLTpLU','getOtherSide','(((.+)+)+)+$','isValidDirection','lookOutside','riddle','To\x20the\x20','Unexpected\x20error\x20occurred\x20while\x20looking\x20at\x20the\x20room\x20in\x20the\x20direction\x20\x22','18032430SUfNzU','Executing\x20\x27Look\x27\x20command.','\x20inventory.','actor','829850ziaUzp','write','90603bJbQWk','3548ywPHmd'];a38c=function(){return m;};return a38c();}import{Command}from'./command.js';export class LookCommand extends Command{static [a38h(0x153)]=a38h(0x139);static [a38h(0x141)]=a38h(0x156);[a38h(0x13f)](a=[]){const i=a38h;this['logger'][i(0x16c)](i(0x168));const b=a[i(0x137)]('\x20');if(b){if(this[i(0x16a)][i(0x154)][i(0x15e)](b))return this[i(0x15c)]['write'](i(0x159)+b+i(0x14d)+this[i(0x16a)][i(0x13b)]+i(0x169)),this[i(0x13a)](b,this[i(0x16a)][i(0x154)]);else{if(this[i(0x16a)][i(0x143)][i(0x154)][i(0x15e)](b))return this[i(0x15c)]['write'](i(0x159)+b+i(0x13e)),this['inspectItem'](b,this[i(0x16a)][i(0x143)][i(0x154)]);else return this[i(0x162)](b)?(this[i(0x15c)][i(0x16c)](i(0x150)+b+'\x27.'),this[i(0x163)](b)):'You\x20cannot\x20see\x20'+b;}}else return this[i(0x15c)][i(0x16c)](this[i(0x16a)][i(0x13b)]+'\x20is\x20looking\x20around\x20the\x20current\x20room.'),this[i(0x139)]();}[a38h(0x139)](){const j=a38h,a=this[j(0x16a)][j(0x143)];if(!a)return this[j(0x15c)]['error'](this[j(0x16a)][j(0x13b)]+j(0x144)),'You\x27re\x20not\x20in\x20a\x20valid\x20room.';let b=a[j(0x141)];return a[j(0x151)]&&(b+='\x0a'+a['puzzle'][j(0x164)]),b;}[a38h(0x163)](a){const k=a38h,b=this[k(0x16a)][k(0x143)];if(!b)return this['logger'][k(0x13c)](this[k(0x16a)][k(0x13b)]+'\x20is\x20not\x20in\x20a\x20valid\x20room\x20during\x20\x27Look\x27\x20command\x20execution.'),k(0x140);const c=b[k(0x152)][k(0x14b)](a);if(!c)return k(0x142)+a+'\x22.';let d;if(c instanceof Door)d=c[k(0x160)](b);else{if(typeof c==='string'){d=this['rooms']&&this[k(0x149)][c];if(!d)return'There\x27s\x20an\x20error\x20with\x20the\x20room\x20in\x20the\x20direction\x20\x22'+a+'\x22.';}else return k(0x166)+a+'\x22.';}if(d[k(0x13d)]===RoomType[k(0x15d)]){if(a==='up')return k(0x146)+d[k(0x141)];else return a===k(0x14f)?k(0x14c)+d['description']:k(0x165)+a+',\x20you\x20see\x20'+d[k(0x141)];}else return k(0x147);}[a38h(0x13a)](a,b){const l=a38h,c=b[l(0x145)](a);if(!c)return l(0x157)+a+l(0x138);return c[l(0x141)]||l(0x14e)+a+'.';}}
@@ -1 +1 @@
1
- const a39i=a39d;(function(a,b){const g=a39d,c=a();while(!![]){try{const d=parseInt(g(0xb0))/0x1+-parseInt(g(0xbc))/0x2+parseInt(g(0xb8))/0x3+parseInt(g(0xae))/0x4+-parseInt(g(0xb5))/0x5*(parseInt(g(0xc5))/0x6)+-parseInt(g(0xc4))/0x7*(parseInt(g(0xc3))/0x8)+-parseInt(g(0xb7))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a39c,0x1f64b));function a39d(a,b){const c=a39c();return a39d=function(d,e){d=d-0xaa;let f=c[d];return f;},a39d(a,b);}const a39b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a39a=a39b(this,function(){const h=a39d;return a39a[h(0xbf)]()[h(0xb2)]('(((.+)+)+)+$')['toString']()[h(0xb6)](a39a)[h(0xb2)](h(0xc1));});a39a();import{Command}from'./command.js';export class SayCommand extends Command{static ['verb']=a39i(0xc0);static ['description']=a39i(0xb4);[a39i(0xbb)];constructor(a){const j=a39i;super(a),this[j(0xbb)]=a;}['execute'](a){const k=a39i;if(a[k(0xbe)]===0x0)return k(0xac);const b=a[k(0xc2)]('\x20'),c=this['actor'],d=this[k(0xbb)][k(0xaf)];if(!d)return this[k(0xaa)]['log'](k(0xb9)),k(0xba);const e=d[k(0xb3)]['filter'](f=>f[k(0xab)]===c[k(0xab)]);for(const f of e){this['logger'][k(0xb1)](c[k(0xad)]+'\x20says\x20to\x20'+f['name']+':\x20\x22'+b+'\x22'),this[k(0xbd)][k(0xab)]['say'](f,b);}return'You\x20say:\x20\x22'+b+'\x22';}}function a39c(){const l=['272bpZHXm','33887OtQCjN','111504RtFBWj','logger','currentLocation','What\x20do\x20you\x20want\x20to\x20say?','name','1022628SZbEvj','scene','134020SXjltk','log','search','allActors','Broadcast\x20a\x20message\x20to\x20everyone\x20in\x20the\x20current\x20room.','30ewBKPH','constructor','228087JWeaiN','496863IoQMEC','Scene\x20is\x20missing\x20from\x20context.','An\x20error\x20occurred.','context','250540HPuqkX','actor','length','toString','say','(((.+)+)+)+$','join'];a39c=function(){return l;};return a39c();}
1
+ const a39i=a39d;function a39d(a,b){const c=a39c();return a39d=function(d,e){d=d-0x128;let f=c[d];return f;},a39d(a,b);}(function(a,b){const g=a39d,c=a();while(!![]){try{const d=parseInt(g(0x12d))/0x1*(-parseInt(g(0x14a))/0x2)+-parseInt(g(0x13a))/0x3+-parseInt(g(0x146))/0x4*(parseInt(g(0x149))/0x5)+-parseInt(g(0x144))/0x6*(-parseInt(g(0x140))/0x7)+-parseInt(g(0x130))/0x8*(parseInt(g(0x137))/0x9)+-parseInt(g(0x129))/0xa+parseInt(g(0x134))/0xb;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a39c,0xd5fa1));const a39b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a39a=a39b(this,function(){const h=a39d;return a39a['toString']()[h(0x147)](h(0x136))[h(0x142)]()[h(0x139)](a39a)[h(0x147)](h(0x136));});function a39c(){const l=['(((.+)+)+)+$','9hNQMHV','join','constructor','2680722EbmIXQ','logger','name','What\x20do\x20you\x20want\x20to\x20say?','log','Broadcast\x20a\x20message\x20to\x20everyone\x20in\x20the\x20current\x20room.','259HOeZnT',':\x20\x22','toString','allActors','262194atmdEq','length','136IarLvp','search','description','103940VHMJao','27074SeeFQB','scene','9757980leGroY','An\x20error\x20occurred.','currentLocation','execute','123XztAXC','filter','\x20says\x20to\x20','1243080LkvXJE','Scene\x20is\x20missing\x20from\x20context.','actor','context','40218046MmQubA','You\x20say:\x20\x22'];a39c=function(){return l;};return a39c();}a39a();import{Command}from'./command.js';export class SayCommand extends Command{static ['verb']='say';static [a39i(0x148)]=a39i(0x13f);['context'];constructor(a){const j=a39i;super(a),this[j(0x133)]=a;}[a39i(0x12c)](a){const k=a39i;if(a[k(0x145)]===0x0)return k(0x13d);const b=a[k(0x138)]('\x20'),c=this[k(0x132)],d=this[k(0x133)][k(0x128)];if(!d)return this[k(0x13b)]['log'](k(0x131)),k(0x12a);const e=d[k(0x143)][k(0x12e)](f=>f[k(0x12b)]===c['currentLocation']);for(const f of e){this['logger'][k(0x13e)](c['name']+k(0x12f)+f[k(0x13c)]+k(0x141)+b+'\x22'),this[k(0x132)][k(0x12b)]['say'](f,b);}return k(0x135)+b+'\x22';}}
@@ -1 +1 @@
1
- function a40c(){const k=['4572504ooZxhG','20380aZLYNm','actor','453639dPGBYh','12276972IOseJa','apply','(((.+)+)+)+$','537135nGwaTH','toString','description','\x20found\x20the\x20following\x20items:\x20','search','11AycIJA','length','1826562pnzOeG','verb','You\x20search\x20the\x20area\x20thoroughly,\x20but\x20don\x27t\x20find\x20anything\x20of\x20interest.','6075gosVfe','Search\x20for\x20items\x20in\x20your\x20area','\x20searched\x20the\x20room\x20but\x20found\x20nothing.','4WiRpGJ','listItems','14gnYeUA','execute','SearchCommand:\x20','write','1521320QmSRXG','join','inventory','6nrUxuV','currentLocation'];a40c=function(){return k;};return a40c();}const a40i=a40d;(function(a,b){const f=a40d,c=a();while(!![]){try{const d=parseInt(f(0x8f))/0x1*(-parseInt(f(0x81))/0x2)+parseInt(f(0x8a))/0x3*(parseInt(f(0x87))/0x4)+parseInt(f(0x93))/0x5+-parseInt(f(0x9a))/0x6*(-parseInt(f(0x83))/0x7)+parseInt(f(0x8c))/0x8+-parseInt(f(0x9d))/0x9*(parseInt(f(0x8d))/0xa)+parseInt(f(0x98))/0xb*(parseInt(f(0x90))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a40c,0xc08b1));const a40b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a40d;if(c){const e=c[g(0x91)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a40a=a40b(this,function(){const h=a40d;return a40a[h(0x94)]()[h(0x97)](h(0x92))[h(0x94)]()['constructor'](a40a)['search'](h(0x92));});a40a();function a40d(a,b){const c=a40c();return a40d=function(d,e){d=d-0x81;let f=c[d];return f;},a40d(a,b);}import{Command}from'./command.js';export class SearchCommand extends Command{static [a40i(0x9b)]=a40i(0x97);static [a40i(0x95)]=a40i(0x9e);[a40i(0x84)](){const j=a40i,a=this[j(0x8e)][j(0x8b)][j(0x89)][j(0x82)]();if(a[j(0x99)]===0x0)return this['logger']['write']('SearchCommand:\x20'+this[j(0x8e)]['name']+j(0x9f)),j(0x9c);const b=a[j(0x88)](',\x20');return this['logger'][j(0x86)](j(0x85)+this[j(0x8e)]['name']+j(0x96)+b),'You\x20search\x20the\x20area\x20and\x20find:\x20'+b;}}
1
+ const a40i=a40d;(function(a,b){const f=a40d,c=a();while(!![]){try{const d=-parseInt(f(0x1bb))/0x1+parseInt(f(0x1ba))/0x2*(parseInt(f(0x1b4))/0x3)+-parseInt(f(0x1c0))/0x4+parseInt(f(0x1aa))/0x5+parseInt(f(0x1a6))/0x6+-parseInt(f(0x1bf))/0x7+parseInt(f(0x1bd))/0x8*(parseInt(f(0x1a8))/0x9);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a40c,0x4ea43));function a40d(a,b){const c=a40c();return a40d=function(d,e){d=d-0x1a6;let f=c[d];return f;},a40d(a,b);}function a40c(){const k=['constructor','currentLocation','actor','verb','(((.+)+)+)+$','16662Rcuwhg','57443KWKGIl','You\x20search\x20the\x20area\x20thoroughly,\x20but\x20don\x27t\x20find\x20anything\x20of\x20interest.','905288mctdOp','Search\x20for\x20items\x20in\x20your\x20area','3896445QllgoK','772720TAHmII','search','SearchCommand:\x20','656202VqnVdm','length','18JLGROP','logger','3010355JPXZQK','toString','description','execute','listItems','write','inventory','\x20found\x20the\x20following\x20items:\x20','apply','join','69cLyNVn'];a40c=function(){return k;};return a40c();}const a40b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a40d;if(c){const e=c[g(0x1b2)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a40a=a40b(this,function(){const h=a40d;return a40a['toString']()[h(0x1c1)](h(0x1b9))[h(0x1ab)]()[h(0x1b5)](a40a)[h(0x1c1)](h(0x1b9));});a40a();import{Command}from'./command.js';export class SearchCommand extends Command{static [a40i(0x1b8)]=a40i(0x1c1);static [a40i(0x1ac)]=a40i(0x1be);[a40i(0x1ad)](){const j=a40i,a=this[j(0x1b7)][j(0x1b6)][j(0x1b0)][j(0x1ae)]();if(a[j(0x1a7)]===0x0)return this[j(0x1a9)][j(0x1af)]('SearchCommand:\x20'+this[j(0x1b7)]['name']+'\x20searched\x20the\x20room\x20but\x20found\x20nothing.'),j(0x1bc);const b=a[j(0x1b3)](',\x20');return this[j(0x1a9)][j(0x1af)](j(0x1c2)+this[j(0x1b7)]['name']+j(0x1b1)+b),'You\x20search\x20the\x20area\x20and\x20find:\x20'+b;}}
@@ -1 +1 @@
1
- const a41i=a41d;function a41c(){const k=['join','currentLocation','1078ABBBSH','apply','success','1250206eRMmdR','303430wMHzJe','toLowerCase','actor','366AWtVoa','description','addItem','108996QhecJF','6628QkkkaK','execute','There\x20doesn\x27t\x20seem\x20to\x20be\x20a\x20riddle\x20here\x20to\x20solve.','SolveCommand:\x20${this.actor.name}\x20attempt\x20to\x20solve\x20a\x20riddle\x20in\x20a\x20room\x20with\x20no\x20puzzle.','message','(((.+)+)+)+$','834060pViAFp','92knjleo','constructor','286386oUjuaW','toString','logger','write','inventory','rewardItem','56kNjeNZ','puzzle','3224904ASAgJa','36sxrRvm','search','Attempt\x20to\x20solve\x20a\x20puzzle.','SolveCommand:\x20','solve'];a41c=function(){return k;};return a41c();}(function(a,b){const f=a41d,c=a();while(!![]){try{const d=-parseInt(f(0x109))/0x1+parseInt(f(0x111))/0x2*(parseInt(f(0x10d))/0x3)+-parseInt(f(0x118))/0x4*(-parseInt(f(0x10a))/0x5)+parseInt(f(0x11a))/0x6*(-parseInt(f(0xfc))/0x7)+-parseInt(f(0xfe))/0x8+parseInt(f(0xff))/0x9*(parseInt(f(0x117))/0xa)+-parseInt(f(0x106))/0xb*(-parseInt(f(0x110))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a41c,0xf1605));function a41d(a,b){const c=a41c();return a41d=function(d,e){d=d-0xfc;let f=c[d];return f;},a41d(a,b);}const a41b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a41d;if(c){const e=c[g(0x107)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a41a=a41b(this,function(){const h=a41d;return a41a[h(0x11b)]()[h(0x100)](h(0x116))[h(0x11b)]()[h(0x119)](a41a)['search'](h(0x116));});a41a();import{Command}from'./command.js';export class SolveCommand extends Command{static ['verb']=a41i(0x103);static [a41i(0x10e)]=a41i(0x101);[a41i(0x112)](a){const j=a41i,b=a[j(0x104)]('\x20')[j(0x10b)](),c=this['actor'][j(0x105)];if(!c||!c[j(0xfd)])return this[j(0x11c)][j(0x11d)](j(0x114)),j(0x113);const d=c[j(0xfd)][j(0x103)](b,this[j(0x10c)]['inventory']);return d[j(0x108)]&&c[j(0xfd)][j(0x11f)]&&this['actor'][j(0x11e)][j(0x10f)](c['puzzle']['rewardItem']),this[j(0x11c)]['write'](j(0x102)+d['message']),d[j(0x115)];}}
1
+ function a41c(){const k=['search','apply','SolveCommand:\x20${this.actor.name}\x20attempt\x20to\x20solve\x20a\x20riddle\x20in\x20a\x20room\x20with\x20no\x20puzzle.','actor','toString','message','(((.+)+)+)+$','SolveCommand:\x20','join','20CEXdkY','297354VApDzW','336792hxPahC','22760hIqfdW','There\x20doesn\x27t\x20seem\x20to\x20be\x20a\x20riddle\x20here\x20to\x20solve.','3122207RRJkIZ','1RgGBDP','Attempt\x20to\x20solve\x20a\x20puzzle.','execute','678988zMFCnz','1519728CoYCBm','inventory','234KhbhFv','success','53576TbYXdh','toLowerCase','279OpozHv','rewardItem','logger','puzzle','verb','constructor','write','addItem'];a41c=function(){return k;};return a41c();}const a41i=a41d;(function(a,b){const f=a41d,c=a();while(!![]){try{const d=-parseInt(f(0xf3))/0x1*(-parseInt(f(0xee))/0x2)+parseInt(f(0xef))/0x3+-parseInt(f(0xf6))/0x4+parseInt(f(0xf0))/0x5*(parseInt(f(0xf9))/0x6)+parseInt(f(0xf7))/0x7+-parseInt(f(0xfb))/0x8*(-parseInt(f(0xfd))/0x9)+parseInt(f(0xed))/0xa*(-parseInt(f(0xf2))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a41c,0x1eb3f));function a41d(a,b){const c=a41c();return a41d=function(d,e){d=d-0xe2;let f=c[d];return f;},a41d(a,b);}const a41b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a41d;if(c){const e=c[g(0xe5)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a41a=a41b(this,function(){const h=a41d;return a41a[h(0xe8)]()[h(0xe4)]('(((.+)+)+)+$')[h(0xe8)]()[h(0x102)](a41a)[h(0xe4)](h(0xea));});a41a();import{Command}from'./command.js';export class SolveCommand extends Command{static [a41i(0x101)]='solve';static ['description']=a41i(0xf4);[a41i(0xf5)](a){const j=a41i,b=a[j(0xec)]('\x20')[j(0xfc)](),c=this['actor']['currentLocation'];if(!c||!c['puzzle'])return this[j(0xff)][j(0xe2)](j(0xe6)),j(0xf1);const d=c[j(0x100)]['solve'](b,this[j(0xe7)][j(0xf8)]);return d[j(0xfa)]&&c[j(0x100)][j(0xfe)]&&this[j(0xe7)][j(0xf8)][j(0xe3)](c[j(0x100)]['rewardItem']),this[j(0xff)][j(0xe2)](j(0xeb)+d['message']),d[j(0xe9)];}}
@@ -1 +1 @@
1
- const a42i=a42d;function a42c(){const l=['\x22\x20in\x20this\x20room.','getItem','Pick\x20up\x20an\x20item.','search','7490094hppiaA','\x22\x20to\x20','addInventory','constructor','12567149BwkFTd','Error\x20during\x20\x27Take\x27\x20command:\x20','message','28cxucrC','Attempting\x20\x27Take\x27\x20command\x20with\x20item:\x20','toLowerCase','toString','824lgPgXJ','2865045VjGGVx','removeItem','There\x20is\x20no\x20item\x20\x22','\x27s\x20inventory\x20during\x20\x27Take\x27\x20command.','\x20room\x27s\x20inventory\x20during\x20\x27Take\x27\x20command.','name','\x22\x20not\x20found\x20in\x20','execute','Successfully\x20removed\x20\x22','write','You\x20have\x20taken\x20the\x20','logger','\x20during\x20\x27Take\x27\x20command.','Item\x20\x22','10pTanlk','actor','23286JcKmUJ','verb','\x22\x20not\x20retrieved\x20from\x20','\x22\x20from\x20','23968089rdwHsy','inventory','take','5982368fhyjYx','The\x20item\x20\x22','(((.+)+)+)+$','74669mIpgri','apply','description','join'];a42c=function(){return l;};return a42c();}(function(a,b){const f=a42d,c=a();while(!![]){try{const d=-parseInt(f(0x14c))/0x1*(-parseInt(f(0x15b))/0x2)+-parseInt(f(0x142))/0x3*(-parseInt(f(0x15f))/0x4)+-parseInt(f(0x160))/0x5+-parseInt(f(0x154))/0x6+-parseInt(f(0x158))/0x7+-parseInt(f(0x149))/0x8+parseInt(f(0x146))/0x9*(parseInt(f(0x140))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a42c,0xe6396));function a42d(a,b){const c=a42c();return a42d=function(d,e){d=d-0x138;let f=c[d];return f;},a42d(a,b);}const a42b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a42d;if(c){const e=c[g(0x14d)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a42a=a42b(this,function(){const h=a42d;return a42a['toString']()[h(0x153)]('(((.+)+)+)+$')[h(0x15e)]()[h(0x157)](a42a)[h(0x153)](h(0x14b));});a42a();import{Command}from'./command.js';export class TakeCommand extends Command{static [a42i(0x143)]=a42i(0x148);static [a42i(0x14e)]=a42i(0x152);[a42i(0x139)](a){const j=a42i;return this['logger'][j(0x13b)](j(0x15c)+a[j(0x14f)]('\x20')),this[j(0x148)](a);}[a42i(0x148)](a){const k=a42i,b=a['join']('\x20')[k(0x15d)](),c=this[k(0x141)]['currentLocation'];if(!c[k(0x147)]['hasItem'](b))return this[k(0x13d)][k(0x13b)](k(0x13f)+b+k(0x138)+c['name']+k(0x13e)),k(0x162)+b+k(0x150);const d=c[k(0x147)][k(0x151)](b);if(!d)return this['logger'][k(0x13b)](k(0x13f)+b+k(0x144)+c[k(0x165)]+'\x20room\x27s\x20inventory\x20during\x20\x27Take\x27\x20command.'),k(0x162)+b+'\x22\x20in\x20this\x20room.';try{return this[k(0x141)][k(0x156)](d),this[k(0x13d)][k(0x13b)]('Successfully\x20added\x20\x22'+b+k(0x155)+this[k(0x141)][k(0x165)]+k(0x163)),c[k(0x147)][k(0x161)](b),this['logger'][k(0x13b)](k(0x13a)+b+k(0x145)+c[k(0x165)]+k(0x164)),k(0x13c)+b+'.';}catch(e){return this[k(0x13d)][k(0x13b)](k(0x159)+e[k(0x15a)]),k(0x14a)+b+'\x22\x20is\x20too\x20heavy\x20to\x20carry.';}}}
1
+ function a42d(a,b){const c=a42c();return a42d=function(d,e){d=d-0xea;let f=c[d];return f;},a42d(a,b);}function a42c(){const k=['hasItem','toString','\x27s\x20inventory\x20during\x20\x27Take\x27\x20command.','inventory','296830cfnPgC','1802530UWJnbZ','addInventory','1434062FmRNKw','(((.+)+)+)+$','3126gKqjFe','481947QgqRDK','Pick\x20up\x20an\x20item.','8nQzEAV','\x22\x20not\x20retrieved\x20from\x20','1671540Mbjepg','join','\x22\x20in\x20this\x20room.','\x22\x20is\x20too\x20heavy\x20to\x20carry.','removeItem','message','Item\x20\x22','toLowerCase','search','description','take','Successfully\x20added\x20\x22','The\x20item\x20\x22','verb','998718bFqMFZ','\x20room\x27s\x20inventory\x20during\x20\x27Take\x27\x20command.','There\x20is\x20no\x20item\x20\x22','428quAxRr','actor','Attempting\x20\x27Take\x27\x20command\x20with\x20item:\x20','9UmfLEb','write','\x22\x20to\x20','logger','execute','name','getItem','Error\x20during\x20\x27Take\x27\x20command:\x20','currentLocation'];a42c=function(){return k;};return a42c();}const a42h=a42d;(function(a,b){const f=a42d,c=a();while(!![]){try{const d=parseInt(f(0x104))/0x1+-parseInt(f(0xeb))/0x2+-parseInt(f(0x103))/0x3*(-parseInt(f(0xee))/0x4)+-parseInt(f(0xfe))/0x5+parseInt(f(0x108))/0x6+-parseInt(f(0x101))/0x7*(parseInt(f(0x106))/0x8)+-parseInt(f(0xf1))/0x9*(-parseInt(f(0xff))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a42c,0x467b5));const a42b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a42a=a42b(this,function(){const g=a42d;return a42a[g(0xfb)]()[g(0x110)](g(0x102))[g(0xfb)]()['constructor'](a42a)[g(0x110)](g(0x102));});a42a();import{Command}from'./command.js';export class TakeCommand extends Command{static [a42h(0xea)]=a42h(0x112);static [a42h(0x111)]=a42h(0x105);[a42h(0xf5)](a){const i=a42h;return this[i(0xf4)]['write'](i(0xf0)+a[i(0x109)]('\x20')),this[i(0x112)](a);}[a42h(0x112)](a){const j=a42h,b=a[j(0x109)]('\x20')[j(0x10f)](),c=this[j(0xef)][j(0xf9)];if(!c[j(0xfd)][j(0xfa)](b))return this[j(0xf4)][j(0xf2)]('Item\x20\x22'+b+'\x22\x20not\x20found\x20in\x20'+c['name']+'\x20during\x20\x27Take\x27\x20command.'),j(0xed)+b+'\x22\x20in\x20this\x20room.';const d=c['inventory'][j(0xf7)](b);if(!d)return this['logger'][j(0xf2)](j(0x10e)+b+j(0x107)+c[j(0xf6)]+j(0xec)),'There\x20is\x20no\x20item\x20\x22'+b+j(0x10a);try{return this['actor'][j(0x100)](d),this[j(0xf4)][j(0xf2)](j(0x113)+b+j(0xf3)+this['actor'][j(0xf6)]+j(0xfc)),c[j(0xfd)][j(0x10c)](b),this[j(0xf4)][j(0xf2)]('Successfully\x20removed\x20\x22'+b+'\x22\x20from\x20'+c[j(0xf6)]+j(0xec)),'You\x20have\x20taken\x20the\x20'+b+'.';}catch(e){return this[j(0xf4)][j(0xf2)](j(0xf8)+e[j(0x10d)]),j(0x114)+b+j(0x10b);}}}
@@ -1 +1 @@
1
- const a43i=a43d;(function(a,b){const f=a43d,c=a();while(!![]){try{const d=parseInt(f(0xf9))/0x1+-parseInt(f(0xee))/0x2+parseInt(f(0xf4))/0x3+-parseInt(f(0xef))/0x4*(parseInt(f(0xff))/0x5)+parseInt(f(0xe9))/0x6*(parseInt(f(0xfc))/0x7)+parseInt(f(0xec))/0x8*(parseInt(f(0xf0))/0x9)+-parseInt(f(0xe6))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a43c,0x7052e));function a43c(){const k=['constructor','11169770rMQqFE','join','unequip','6TcNaxC','verb','unqeuip','519496hyjkZw','actor','398132jNpEbL','36BxpQIK','45mytowo','write','Unequip\x20an\x20item.','description','1156944NHDSTh','search','UnequipCommand:\x20','logger','(((.+)+)+)+$','862474ScBkCv','apply','name','4568095ylvTcR','toString','toLowerCase','249595kbaQRc'];a43c=function(){return k;};return a43c();}const a43b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a43d;if(c){const e=c[g(0xfa)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a43a=a43b(this,function(){const h=a43d;return a43a['toString']()[h(0xf5)](h(0xf8))[h(0xfd)]()[h(0xe5)](a43a)['search'](h(0xf8));});a43a();function a43d(a,b){const c=a43c();return a43d=function(d,e){d=d-0xe5;let f=c[d];return f;},a43d(a,b);}import{Command}from'./command.js';export class UnequipCommand extends Command{static [a43i(0xea)]=a43i(0xeb);static [a43i(0xf3)]=a43i(0xf2);['execute'](a){const j=a43i,b=a[j(0xe7)]('\x20')[j(0xfe)](),c=this[j(0xed)][j(0xe8)](b);return this[j(0xf7)][j(0xf1)](j(0xf6)+this[j(0xed)][j(0xfb)]+'\x20unqeuiped\x20'+c),c;}}
1
+ const a43i=a43d;(function(a,b){const f=a43d,c=a();while(!![]){try{const d=-parseInt(f(0x1eb))/0x1*(-parseInt(f(0x1f6))/0x2)+-parseInt(f(0x1e5))/0x3+parseInt(f(0x1e3))/0x4+-parseInt(f(0x1f1))/0x5+parseInt(f(0x1f4))/0x6+-parseInt(f(0x1ec))/0x7*(parseInt(f(0x1ed))/0x8)+parseInt(f(0x1de))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a43c,0x276d8));function a43d(a,b){const c=a43c();return a43d=function(d,e){d=d-0x1dd;let f=c[d];return f;},a43d(a,b);}const a43b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a43d;if(c){const e=c[g(0x1e7)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a43a=a43b(this,function(){const h=a43d;return a43a['toString']()['search']('(((.+)+)+)+$')[h(0x1e0)]()[h(0x1e8)](a43a)[h(0x1e9)](h(0x1e6));});a43a();function a43c(){const k=['84290DOwuej','\x20unqeuiped\x20','toLowerCase','1608702MFAslK','UnequipCommand:\x20','4JWKluG','Unequip\x20an\x20item.','2476917QwBCLQ','write','toString','description','actor','944996kehzNp','execute','957921VlSfBq','(((.+)+)+)+$','apply','constructor','search','verb','17889XszCSA','34748FBAPmA','512hARqCJ','logger','unequip','name'];a43c=function(){return k;};return a43c();}import{Command}from'./command.js';export class UnequipCommand extends Command{static [a43i(0x1ea)]='unqeuip';static [a43i(0x1e1)]=a43i(0x1dd);[a43i(0x1e4)](a){const j=a43i,b=a['join']('\x20')[j(0x1f3)](),c=this[j(0x1e2)][j(0x1ef)](b);return this[j(0x1ee)][j(0x1df)](j(0x1f5)+this[j(0x1e2)][j(0x1f0)]+j(0x1f2)+c),c;}}
@@ -1 +1 @@
1
- const a44k=a44d;(function(a,b){const h=a44d,c=a();while(!![]){try{const d=-parseInt(h(0xb3))/0x1+-parseInt(h(0xba))/0x2*(-parseInt(h(0xa7))/0x3)+parseInt(h(0xa9))/0x4+-parseInt(h(0xc5))/0x5+-parseInt(h(0xaf))/0x6+parseInt(h(0xcf))/0x7*(-parseInt(h(0xb8))/0x8)+parseInt(h(0xbf))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a44c,0x55c36));const a44b=(function(){let a=!![];return function(b,c){const d=a?function(){const i=a44d;if(c){const e=c[i(0xb1)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a44a=a44b(this,function(){const j=a44d;return a44a[j(0xc0)]()[j(0xcd)]('(((.+)+)+)+$')[j(0xc0)]()[j(0xcc)](a44a)[j(0xcd)](j(0xc6));});a44a();function a44d(a,b){const c=a44c();return a44d=function(d,e){d=d-0xa6;let f=c[d];return f;},a44d(a,b);}import{Door}from'../models/door.js';import{Command}from'./command.js';export class UnlockCommand extends Command{static [a44k(0xc9)]='unlock';static [a44k(0xb0)]=a44k(0xc7);['execute'](a){const l=a44k;return this[l(0xbc)](a);}[a44k(0xbc)](a){const m=a44k;if(a[m(0xb2)]===0x0)return this[m(0xbb)][m(0xae)](m(0xb4)),m(0xa8);const b=a[0x0]['toLowerCase'](),c=this['actor'][m(0xb5)];if(this[m(0xb7)](b)&&c[m(0xc3)][m(0xab)](b)){const d=c[m(0xc3)][m(0xb9)](b);if(d instanceof Door){const e=d[m(0xc1)]?.[m(0xc2)]();if(e&&this[m(0xcb)][m(0xbd)]['hasItem'](e)){const f=this[m(0xcb)][m(0xbd)][m(0xce)](e);if(f){const g=c['attemptUnlockExit'](b,f[m(0xac)]);return this['logger'][m(0xbe)]('UnlockCommand:\x20'+this['actor'][m(0xac)]+m(0xc8)+b+m(0xc4)+g),g;}}return this[m(0xbb)][m(0xbe)](m(0xaa)+this[m(0xcb)][m(0xac)]+m(0xa6)+b+'.'),m(0xb6);}else return this[m(0xbb)][m(0xbe)]('UnlockCommand:\x20'+b+m(0xd0)+c[m(0xac)]+'.'),m(0xad)+b+m(0xca);}else return this[m(0xbb)]['write'](m(0xaa)+b+m(0xd0)+c[m(0xac)]+'.'),m(0xad)+b+m(0xca);}}function a44c(){const n=['549806bIGnZF','UnlockCommand:\x20No\x20target\x20specified.','currentLocation','You\x20don\x27t\x20have\x20the\x20key\x20or\x20solution\x20to\x20unlock\x20this\x20door.','isValidDirection','3832eFKNny','get','5990Tticeg','logger','unlock','inventory','write','8878869aMycLA','toString','unlockItemOrSolution','toLowerCase','exits','.\x20Result:\x20','3185610oMlPCV','(((.+)+)+)+$','Unlock\x20a\x20door.','\x20is\x20attempted\x20to\x20unlock\x20','verb','\x22\x20here.','actor','constructor','search','getItem','4298qfiTGB','\x20is\x20not\x20a\x20valid\x20exit\x20in\x20','\x20does\x20not\x20have\x20the\x20necessary\x20key\x20for\x20','327FCcihP','Please\x20specify\x20which\x20door\x20you\x20want\x20to\x20unlock.','2234024DngEjL','UnlockCommand:\x20','has','name','There\x27s\x20no\x20door\x20named\x20\x22','error','235092XigOuE','description','apply','length'];a44c=function(){return n;};return a44c();}
1
+ const a44k=a44d;function a44d(a,b){const c=a44c();return a44d=function(d,e){d=d-0x7e;let f=c[d];return f;},a44d(a,b);}(function(a,b){const h=a44d,c=a();while(!![]){try{const d=-parseInt(h(0xa4))/0x1*(-parseInt(h(0x90))/0x2)+-parseInt(h(0x98))/0x3+parseInt(h(0x8b))/0x4+parseInt(h(0x9d))/0x5+-parseInt(h(0x7e))/0x6*(-parseInt(h(0x8a))/0x7)+-parseInt(h(0x89))/0x8*(parseInt(h(0xa3))/0x9)+-parseInt(h(0x91))/0xa*(-parseInt(h(0x96))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a44c,0x4de0f));const a44b=(function(){let a=!![];return function(b,c){const d=a?function(){const i=a44d;if(c){const e=c[i(0x93)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a44a=a44b(this,function(){const j=a44d;return a44a[j(0xa0)]()['search'](j(0x9e))['toString']()['constructor'](a44a)[j(0x86)]('(((.+)+)+)+$');});a44a();import{Door}from'../models/door.js';function a44c(){const n=['\x22\x20here.','logger','search','toLowerCase','description','224uSdbYe','3710623CSdKdH','175228pJkLqK','hasItem','\x20is\x20not\x20a\x20valid\x20exit\x20in\x20','inventory','error','2yAdDfb','19450ZxiVTt','currentLocation','apply','attemptUnlockExit','\x20is\x20attempted\x20to\x20unlock\x20','1067TkFghT','get','1069230AGOEVX','Please\x20specify\x20which\x20door\x20you\x20want\x20to\x20unlock.','actor','unlockItemOrSolution','isValidDirection','205035UOcKAQ','(((.+)+)+)+$','name','toString','verb','getItem','136449eXHpYE','296341wYeerR','There\x27s\x20no\x20door\x20named\x20\x22','UnlockCommand:\x20','6OkAgij','You\x20don\x27t\x20have\x20the\x20key\x20or\x20solution\x20to\x20unlock\x20this\x20door.','unlock','Unlock\x20a\x20door.','write','.\x20Result:\x20'];a44c=function(){return n;};return a44c();}import{Command}from'./command.js';export class UnlockCommand extends Command{static [a44k(0xa1)]=a44k(0x80);static [a44k(0x88)]=a44k(0x81);['execute'](a){const l=a44k;return this[l(0x80)](a);}[a44k(0x80)](a){const m=a44k;if(a['length']===0x0)return this[m(0x85)][m(0x8f)]('UnlockCommand:\x20No\x20target\x20specified.'),m(0x99);const b=a[0x0][m(0x87)](),c=this[m(0x9a)][m(0x92)];if(this[m(0x9c)](b)&&c['exits']['has'](b)){const d=c['exits'][m(0x97)](b);if(d instanceof Door){const e=d[m(0x9b)]?.[m(0x87)]();if(e&&this[m(0x9a)][m(0x8e)][m(0x8c)](e)){const f=this['actor'][m(0x8e)][m(0xa2)](e);if(f){const g=c[m(0x94)](b,f['name']);return this[m(0x85)][m(0x82)](m(0xa6)+this[m(0x9a)]['name']+m(0x95)+b+m(0x83)+g),g;}}return this[m(0x85)][m(0x82)](m(0xa6)+this[m(0x9a)][m(0x9f)]+'\x20does\x20not\x20have\x20the\x20necessary\x20key\x20for\x20'+b+'.'),m(0x7f);}else return this['logger'][m(0x82)](m(0xa6)+b+m(0x8d)+c[m(0x9f)]+'.'),m(0xa5)+b+m(0x84);}else return this['logger'][m(0x82)](m(0xa6)+b+m(0x8d)+c[m(0x9f)]+'.'),'There\x27s\x20no\x20door\x20named\x20\x22'+b+m(0x84);}}
@@ -1 +1 @@
1
- const a45i=a45d;(function(a,b){const f=a45d,c=a();while(!![]){try{const d=parseInt(f(0x15f))/0x1*(parseInt(f(0x15a))/0x2)+-parseInt(f(0x176))/0x3+-parseInt(f(0x173))/0x4*(-parseInt(f(0x15e))/0x5)+parseInt(f(0x178))/0x6+parseInt(f(0x169))/0x7*(parseInt(f(0x17c))/0x8)+parseInt(f(0x16a))/0x9*(parseInt(f(0x158))/0xa)+parseInt(f(0x16b))/0xb*(-parseInt(f(0x157))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a45c,0x87d72));function a45d(a,b){const c=a45c();return a45d=function(d,e){d=d-0x156;let f=c[d];return f;},a45d(a,b);}const a45b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a45d;if(c){const e=c[g(0x15d)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a45a=a45b(this,function(){const h=a45d;return a45a[h(0x16f)]()[h(0x16c)](h(0x159))[h(0x16f)]()[h(0x16e)](a45a)['search'](h(0x159));});a45a();function a45c(){const l=['use','inventory','18053FnIBak','2799ewXWoi','187asHShj','search',',\x20which\x20is\x20not\x20in\x20their\x20inventory.','constructor','toString','name','hasItem','write','10440JWcUdB','logger','actor','2976150NkKAxi','function','3991308zKCnoJ','\x27s\x20inventory.','toLowerCase','UseCommand:\x20','1784JGNXFk','Use\x20an\x20item.','\x20not\x20retrieved\x20from\x20','469188vjewxp','16030JOFtnJ','(((.+)+)+)+$','818034HcXTZw','\x20attempted\x20to\x20use\x20','description','apply','125WnPywO','1JFkfGu','execute','\x20used\x20','\x20in\x20this\x20way.','You\x20don\x27t\x20have\x20the\x20','verb','join','getItem'];a45c=function(){return l;};return a45c();}import{Command}from'./command.js';export class UseCommand extends Command{static [a45i(0x164)]=a45i(0x167);static [a45i(0x15c)]=a45i(0x17d);[a45i(0x160)](a){const j=a45i;return this[j(0x167)](a);}['use'](a){const k=a45i,b=a[k(0x165)]('\x20')[k(0x17a)]();if(!this[k(0x175)]['inventory'][k(0x171)](b))return this[k(0x174)]['write'](k(0x17b)+this[k(0x175)][k(0x170)]+k(0x15b)+b+k(0x16d)),'You\x20don\x27t\x20have\x20the\x20'+b+'\x20to\x20use.';const c=this[k(0x175)][k(0x168)][k(0x166)](b);if(!c)return this[k(0x174)][k(0x172)](k(0x17b)+b+k(0x156)+this[k(0x175)][k(0x170)]+k(0x179)),k(0x163)+b+'\x20to\x20use.';if(typeof c[k(0x167)]===k(0x177)){const d=c[k(0x167)]();return this['logger'][k(0x172)]('UseCommand:\x20'+this[k(0x175)][k(0x170)]+k(0x161)+b+'.'),d;}else return this[k(0x174)][k(0x172)](k(0x17b)+b+'\x20doesn\x27t\x20have\x20a\x20use\x20method.'),'You\x20can\x27t\x20use\x20the\x20'+b+k(0x162);}}
1
+ const a45h=a45d;(function(a,b){const f=a45d,c=a();while(!![]){try{const d=-parseInt(f(0x1e0))/0x1+parseInt(f(0x1d2))/0x2*(-parseInt(f(0x1dc))/0x3)+-parseInt(f(0x1d4))/0x4+-parseInt(f(0x1d7))/0x5*(-parseInt(f(0x1de))/0x6)+parseInt(f(0x1ce))/0x7*(parseInt(f(0x1d0))/0x8)+parseInt(f(0x1e7))/0x9+parseInt(f(0x1db))/0xa*(parseInt(f(0x1cd))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a45c,0x5bbda));function a45c(){const k=['hasItem','42GNWUJa','join','1813044JOfobI','\x20used\x20','UseCommand:\x20','5zxdpiV','\x20not\x20retrieved\x20from\x20','name','logger','4456630SnwHea','15303iqwTKn','use','3084306mNnldF','inventory','382040OsqLfN','\x20in\x20this\x20way.','toString','write','\x20attempted\x20to\x20use\x20','constructor','function','1118169tVlbDa','verb',',\x20which\x20is\x20not\x20in\x20their\x20inventory.','getItem','\x27s\x20inventory.','execute','\x20to\x20use.','Use\x20an\x20item.','toLowerCase','(((.+)+)+)+$','search','11TNmnBx','21lPzynm','actor','624632GXVwHz'];a45c=function(){return k;};return a45c();}const a45b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a45a=a45b(this,function(){const g=a45d;return a45a[g(0x1e2)]()['search'](g(0x1cb))['toString']()[g(0x1e5)](a45a)[g(0x1cc)](g(0x1cb));});a45a();function a45d(a,b){const c=a45c();return a45d=function(d,e){d=d-0x1cb;let f=c[d];return f;},a45d(a,b);}import{Command}from'./command.js';export class UseCommand extends Command{static [a45h(0x1e8)]=a45h(0x1dd);static ['description']=a45h(0x1ee);[a45h(0x1ec)](a){const i=a45h;return this[i(0x1dd)](a);}[a45h(0x1dd)](a){const j=a45h,b=a[j(0x1d3)]('\x20')[j(0x1ef)]();if(!this[j(0x1cf)][j(0x1df)][j(0x1d1)](b))return this[j(0x1da)][j(0x1e3)](j(0x1d6)+this[j(0x1cf)]['name']+j(0x1e4)+b+j(0x1e9)),'You\x20don\x27t\x20have\x20the\x20'+b+'\x20to\x20use.';const c=this[j(0x1cf)][j(0x1df)][j(0x1ea)](b);if(!c)return this[j(0x1da)][j(0x1e3)]('UseCommand:\x20'+b+j(0x1d8)+this[j(0x1cf)]['name']+j(0x1eb)),'You\x20don\x27t\x20have\x20the\x20'+b+j(0x1ed);if(typeof c[j(0x1dd)]===j(0x1e6)){const d=c[j(0x1dd)]();return this['logger'][j(0x1e3)](j(0x1d6)+this[j(0x1cf)][j(0x1d9)]+j(0x1d5)+b+'.'),d;}else return this[j(0x1da)][j(0x1e3)](j(0x1d6)+b+'\x20doesn\x27t\x20have\x20a\x20use\x20method.'),'You\x20can\x27t\x20use\x20the\x20'+b+j(0x1e1);}}
@@ -1 +1 @@
1
- const a46h=a46d;(function(a,b){const f=a46d,c=a();while(!![]){try{const d=parseInt(f(0x17c))/0x1*(-parseInt(f(0x183))/0x2)+-parseInt(f(0x189))/0x3*(parseInt(f(0x181))/0x4)+-parseInt(f(0x188))/0x5*(-parseInt(f(0x180))/0x6)+parseInt(f(0x184))/0x7+parseInt(f(0x186))/0x8+-parseInt(f(0x17d))/0x9+parseInt(f(0x187))/0xa*(parseInt(f(0x17a))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a46c,0xd9afe));function a46d(a,b){const c=a46c();return a46d=function(d,e){d=d-0x178;let f=c[d];return f;},a46d(a,b);}function a46c(){const l=['search','31746NDthMz','registerCommand','1483928fVXtmy','9956880QBblON','(((.+)+)+)+$','createCommand','12xWAsLD','4pQpRup','toString','2AiYtMI','4627959QqzmCE','commandMap','13362624JePzft','2330AqVYMi','4298705eeHMYm','3724473WKqIdl','getAllRegisteredCommands'];a46c=function(){return l;};return a46c();}const a46b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a46a=a46b(this,function(){const g=a46d;return a46a[g(0x182)]()[g(0x179)](g(0x17e))[g(0x182)]()['constructor'](a46a)['search']('(((.+)+)+)+$');});a46a();export class CommandFactory{static [a46h(0x185)]={};static[a46h(0x17b)](a,b){const i=a46h;this[i(0x185)][a]=b;}static[a46h(0x17f)](a,b){const j=a46h,c=this[j(0x185)][a];if(c)return new c(b);return null;}static[a46h(0x178)](){const k=a46h;return this[k(0x185)];}}
1
+ function a46d(a,b){const c=a46c();return a46d=function(d,e){d=d-0x7e;let f=c[d];return f;},a46d(a,b);}const a46h=a46d;function a46c(){const k=['3863192LmFggx','459549IlkLJp','131085nNtBot','(((.+)+)+)+$','search','createCommand','constructor','1913580AUgjUb','769833cMGvVU','2426277VvFgPS','commandMap','417345HmpPSi','4BVSEUM','toString','12xcVtvL','getAllRegisteredCommands'];a46c=function(){return k;};return a46c();}(function(a,b){const f=a46d,c=a();while(!![]){try{const d=parseInt(f(0x86))/0x1+-parseInt(f(0x80))/0x2*(-parseInt(f(0x85))/0x3)+parseInt(f(0x8b))/0x4+parseInt(f(0x7f))/0x5*(-parseInt(f(0x82))/0x6)+parseInt(f(0x8d))/0x7+-parseInt(f(0x84))/0x8+-parseInt(f(0x8c))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a46c,0x80aeb));const a46b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a46a=a46b(this,function(){const g=a46d;return a46a[g(0x81)]()[g(0x88)]('(((.+)+)+)+$')[g(0x81)]()[g(0x8a)](a46a)[g(0x88)](g(0x87));});a46a();export class CommandFactory{static [a46h(0x7e)]={};static['registerCommand'](a,b){const i=a46h;this[i(0x7e)][a]=b;}static[a46h(0x89)](a,b){const j=a46h,c=this[j(0x7e)][a];if(c)return new c(b);return null;}static[a46h(0x83)](){return this['commandMap'];}}
@@ -1 +1 @@
1
- const a47m=a47d;(function(a,b){const f=a47d,c=a();while(!![]){try{const d=parseInt(f(0x100))/0x1+parseInt(f(0xf1))/0x2+-parseInt(f(0xf7))/0x3+parseInt(f(0x109))/0x4+-parseInt(f(0xfc))/0x5+parseInt(f(0xfd))/0x6*(-parseInt(f(0xf2))/0x7)+parseInt(f(0x10f))/0x8*(parseInt(f(0xf8))/0x9);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a47c,0xd5c9c));const a47b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a47d;if(c){const e=c[g(0x110)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a47a=a47b(this,function(){const h=a47d;return a47a['toString']()['search'](h(0xef))[h(0x10b)]()[h(0x104)](a47a)[h(0xf5)](h(0xef));});a47a();function a47d(a,b){const c=a47c();return a47d=function(d,e){d=d-0xee;let f=c[d];return f;},a47d(a,b);}function a47c(){const o=['gauntlets','createItem','constructor','sword','createPuzzle','isStartRoom','bodyarmor','3497464NRRFwc','content','toString','puzzle','description','toUpperCase','18120LSMkhY','apply','roomType','convertToRoomConfig','(((.+)+)+)+$','legarmor','2904444TSvPLP','3954559RsOBfB','rifle','rewardItem','search','book','2893203YgvJmk','450fckuGm','gloves','items','forEach','744455AAqufP','12MCEfjU','INSIDE','helmet','679004jxhqzO','name'];a47c=function(){return o;};return a47c();}import{Room,Puzzle,Inventory}from'../models/_index.js';import{RoomType}from'../types/enums.js';import{Key,Book,BasicItem,Sword,Rifle,Helmet,BodyArmor,LegArmor,Boots,Gloves,Gauntlets}from'../scenes/items.js';export class RoomFactory{['createRoom'](a){const i=a47d,b=this['convertToRoomConfig'](a),c=new Room(b);if(a['items']){const d=new Inventory();a[i(0xfa)][i(0xfb)](e=>{const j=i;d['addItem'](this[j(0x103)](e));}),c['inventory']=d;}return a[i(0x10c)]&&c['setPuzzle'](this[i(0x106)](a['puzzle'])),c;}['createItem'](a){const k=a47d;switch(a['type']){case'key':return new Key(a['name'],a[k(0x10d)]);case k(0xf6):return new Book(a[k(0x101)],a[k(0x10d)],a[k(0x10a)]);case k(0x105):return new Sword(a[k(0x101)],a[k(0x10d)]);case k(0xf3):return new Rifle(a['name'],a['description']);case k(0xff):return new Helmet(a[k(0x101)],a[k(0x10d)]);case k(0x108):return new BodyArmor(a[k(0x101)],a[k(0x10d)]);case k(0xf0):return new LegArmor(a['name'],a[k(0x10d)]);case'boots':return new Boots(a['name'],a[k(0x10d)]);case k(0xf9):return new Gloves(a['name'],a[k(0x10d)]);case k(0x102):return new Gauntlets(a[k(0x101)],a[k(0x10d)]);default:return new BasicItem(a[k(0x101)],a[k(0x10d)]);}}['createPuzzle'](a){const l=a47d,b=this[l(0x103)](a[l(0xf4)]);return new Puzzle({...a,'rewardItem':b});}[a47m(0xee)](a){const n=a47m,b=a[n(0x111)]&&RoomType[a[n(0x111)][n(0x10e)]()]?RoomType[a['roomType'][n(0x10e)]()]:RoomType[n(0xfe)];return{'name':a[n(0x101)],'description':a[n(0x10d)],'isStartRoom':a[n(0x107)],'roomType':b};}}
1
+ const a47i=a47d;(function(a,b){const f=a47d,c=a();while(!![]){try{const d=parseInt(f(0x1d2))/0x1*(-parseInt(f(0x1cc))/0x2)+-parseInt(f(0x1ee))/0x3+parseInt(f(0x1ea))/0x4*(-parseInt(f(0x1ca))/0x5)+parseInt(f(0x1dc))/0x6*(-parseInt(f(0x1e5))/0x7)+-parseInt(f(0x1cd))/0x8+parseInt(f(0x1d7))/0x9*(-parseInt(f(0x1e8))/0xa)+-parseInt(f(0x1dd))/0xb*(-parseInt(f(0x1da))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a47c,0x1c38e));const a47b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a47d;if(c){const e=c[g(0x1e9)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a47a=a47b(this,function(){const h=a47d;return a47a[h(0x1cf)]()[h(0x1d9)](h(0x1e2))[h(0x1cf)]()[h(0x1d4)](a47a)[h(0x1d9)]('(((.+)+)+)+$');});a47a();import{Room,Puzzle,Inventory}from'../models/_index.js';import{RoomType}from'../types/enums.js';import{Key,Book,BasicItem,Sword,Rifle,Helmet,BodyArmor,LegArmor,Boots,Gloves,Gauntlets}from'../scenes/items.js';function a47d(a,b){const c=a47c();return a47d=function(d,e){d=d-0x1c9;let f=c[d];return f;},a47d(a,b);}function a47c(){const o=['createItem','426wohJZa','7901245FsAwJl','content','name','createRoom','legarmor','(((.+)+)+)+$','helmet','book','8470HwzuZp','forEach','roomType','10dJWQvX','apply','408ZwjtNw','rewardItem','rifle','boots','222282ejQRRc','description','items','1345mPXHTP','convertToRoomConfig','22DASwcl','1556744kDIjks','key','toString','createPuzzle','gloves','14347cIscPY','gauntlets','constructor','type','puzzle','565605LPJfIa','toUpperCase','search','12XFsDQR'];a47c=function(){return o;};return a47c();}export class RoomFactory{[a47i(0x1e0)](a){const j=a47i,b=this[j(0x1cb)](a),c=new Room(b);if(a[j(0x1c9)]){const d=new Inventory();a[j(0x1c9)][j(0x1e6)](e=>{const k=j;d['addItem'](this[k(0x1db)](e));}),c['inventory']=d;}return a[j(0x1d6)]&&c['setPuzzle'](this['createPuzzle'](a[j(0x1d6)])),c;}[a47i(0x1db)](a){const l=a47i;switch(a[l(0x1d5)]){case l(0x1ce):return new Key(a[l(0x1df)],a[l(0x1ef)]);case l(0x1e4):return new Book(a[l(0x1df)],a[l(0x1ef)],a[l(0x1de)]);case'sword':return new Sword(a[l(0x1df)],a[l(0x1ef)]);case l(0x1ec):return new Rifle(a['name'],a[l(0x1ef)]);case l(0x1e3):return new Helmet(a[l(0x1df)],a[l(0x1ef)]);case'bodyarmor':return new BodyArmor(a[l(0x1df)],a[l(0x1ef)]);case l(0x1e1):return new LegArmor(a[l(0x1df)],a[l(0x1ef)]);case l(0x1ed):return new Boots(a[l(0x1df)],a[l(0x1ef)]);case l(0x1d1):return new Gloves(a['name'],a[l(0x1ef)]);case l(0x1d3):return new Gauntlets(a['name'],a[l(0x1ef)]);default:return new BasicItem(a[l(0x1df)],a['description']);}}[a47i(0x1d0)](a){const m=a47i,b=this[m(0x1db)](a[m(0x1eb)]);return new Puzzle({...a,'rewardItem':b});}[a47i(0x1cb)](a){const n=a47i,b=a['roomType']&&RoomType[a[n(0x1e7)]['toUpperCase']()]?RoomType[a[n(0x1e7)][n(0x1d8)]()]:RoomType['INSIDE'];return{'name':a[n(0x1df)],'description':a[n(0x1ef)],'isStartRoom':a['isStartRoom'],'roomType':b};}}
@@ -1 +1 @@
1
- const a48k=a48d;(function(a,b){const h=a48d,c=a();while(!![]){try{const d=parseInt(h(0x11b))/0x1*(parseInt(h(0x125))/0x2)+-parseInt(h(0x10c))/0x3+-parseInt(h(0x12f))/0x4*(-parseInt(h(0x118))/0x5)+parseInt(h(0x114))/0x6+-parseInt(h(0x135))/0x7*(-parseInt(h(0x12e))/0x8)+-parseInt(h(0x11e))/0x9+-parseInt(h(0x12c))/0xa*(-parseInt(h(0x134))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a48c,0xcf414));const a48b=(function(){let a=!![];return function(b,c){const d=a?function(){const i=a48d;if(c){const e=c[i(0x122)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a48a=a48b(this,function(){const j=a48d;return a48a[j(0x115)]()[j(0x11d)]('(((.+)+)+)+$')[j(0x115)]()['constructor'](a48a)[j(0x11d)]('(((.+)+)+)+$');});a48a();import{Scene}from'./models/scene.js';function a48d(a,b){const c=a48c();return a48d=function(d,e){d=d-0x10c;let f=c[d];return f;},a48d(a,b);}import{LookCommand}from'./commands/look.js';import{TakeCommand}from'./commands/take.js';import{GoCommand}from'./commands/go.js';function a48c(){const s=['drop','301182tHqPFW','instance','solve','scene','getRooms','getAllRegisteredCommands','toLowerCase','rooms','1296408qnspsg','toString','trim','registerCommand','1892945jMKRiS','getDescription','slice','671464VmTGNS','clear','search','6986781bFJpxd','-\x20quit:\x20Exit\x20the\x20game.\x0a','initialize','lock','apply','maka','handleInput','2STyQgP','use','I\x20don\x27t\x20understand\x20the\x20command\x20\x22','currentRoom','Welcome,\x20','determineStartRoom','execute','177910LdhJSI','help','229032YDCSAv','4PXTJKt','look','You\x20are\x20still\x20in\x20the\x20game,\x20type\x20\x22quit\x22\x20to\x20exit','registerCommands','getHelpMessage','231jnrcZt','21adDZPI','name','unequip','player'];a48c=function(){return s;};return a48c();}import{UseCommand}from'./commands/use.js';import{EquipCommand}from'./commands/equip.js';import{UnequipCommand}from'./commands/unequip.js';import{SolveCommand}from'./commands/solve.js';import{DropCommand}from'./commands/drop.js';import{UnlockCommand}from'./commands/unlock.js';import{LockCommand}from'./commands/lock.js';import{SearchCommand}from'./commands/search.js';import{SayCommand}from'./commands/say.js';import{CommandFactory}from'./factories/commandF.js';export default class Game{static [a48k(0x10d)];[a48k(0x10f)];['player'];[a48k(0x128)];[a48k(0x113)];constructor(a,b){const l=a48k;this[l(0x138)]=a,this[l(0x10f)]=new Scene({'player':a,'roomConfiguration':b}),this[l(0x10f)][l(0x120)](),this[l(0x138)]['currentLocation']=this[l(0x12a)](),this[l(0x132)]();}[a48k(0x132)](){const m=a48k;CommandFactory[m(0x117)](m(0x130),LookCommand),CommandFactory[m(0x117)]('go',GoCommand),CommandFactory['registerCommand']('take',TakeCommand),CommandFactory[m(0x117)](m(0x126),UseCommand),CommandFactory[m(0x117)]('equip',EquipCommand),CommandFactory['registerCommand'](m(0x137),UnequipCommand),CommandFactory['registerCommand'](m(0x10e),SolveCommand),CommandFactory[m(0x117)](m(0x139),DropCommand),CommandFactory[m(0x117)]('unlock',UnlockCommand),CommandFactory[m(0x117)](m(0x121),LockCommand),CommandFactory[m(0x117)](m(0x11d),SearchCommand),CommandFactory[m(0x117)]('say',SayCommand);}[a48k(0x12a)](){const n=a48k;return this['scene'][n(0x12a)]();}['getWelcomeMessage'](){const o=a48k;return o(0x129)+this[o(0x138)][o(0x136)];}static['getInstance'](a,b){const p=a48k;return!Game['instance']&&(Game[p(0x10d)]=new Game(a,b)),Game[p(0x10d)];}[a48k(0x124)](a){const q=a48k,b=a[q(0x116)]()['split']('\x20'),c=b[0x0][q(0x112)](),d=b[q(0x11a)](0x1);if(c==='quit')return null;if(c===q(0x123))return q(0x131);if(c===q(0x12d))return this[q(0x133)]();if(c===q(0x11c))return'';const e={'actor':this['player'],'rooms':this[q(0x10f)][q(0x110)](),'scene':this[q(0x10f)]},f=CommandFactory['createCommand'](c,e);if(f){const g=f[q(0x12b)](d);return g;}return q(0x127)+c+'\x22.';}[a48k(0x133)](){const r=a48k,a=CommandFactory[r(0x111)]();let b='Available\x20Commands:\x0a';for(const c in a){if(a['hasOwnProperty'](c)){const d=a[c];b+='-\x20'+c+':\x20'+d[r(0x119)]()+'\x0a';}}return b+='-\x20clear:\x20Clear\x20the\x20screen.\x0a',b+=r(0x11f),b;}}
1
+ const a48j=a48d;(function(a,b){const h=a48d,c=a();while(!![]){try{const d=-parseInt(h(0xaa))/0x1+-parseInt(h(0xb3))/0x2+parseInt(h(0x83))/0x3*(parseInt(h(0x87))/0x4)+parseInt(h(0x93))/0x5+parseInt(h(0xae))/0x6*(-parseInt(h(0x8c))/0x7)+-parseInt(h(0xa1))/0x8+-parseInt(h(0x8d))/0x9*(-parseInt(h(0x85))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a48c,0xe1f68));const a48b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a48a=a48b(this,function(){const i=a48d;return a48a[i(0x89)]()[i(0x8e)](i(0x9b))[i(0x89)]()[i(0xb1)](a48a)[i(0x8e)](i(0x9b));});a48a();import{Scene}from'./models/scene.js';function a48d(a,b){const c=a48c();return a48d=function(d,e){d=d-0x82;let f=c[d];return f;},a48d(a,b);}import{LookCommand}from'./commands/look.js';import{TakeCommand}from'./commands/take.js';import{GoCommand}from'./commands/go.js';import{UseCommand}from'./commands/use.js';import{EquipCommand}from'./commands/equip.js';import{UnequipCommand}from'./commands/unequip.js';import{SolveCommand}from'./commands/solve.js';import{DropCommand}from'./commands/drop.js';import{UnlockCommand}from'./commands/unlock.js';import{LockCommand}from'./commands/lock.js';import{SearchCommand}from'./commands/search.js';function a48c(){const r=['maka','toString','handleInput','hasOwnProperty','3284533xRvLSa','315BYwWwD','search','registerCommands','unequip','quit','registerCommand','7897740ejkQkT','getAllRegisteredCommands','split','-\x20quit:\x20Exit\x20the\x20game.\x0a','toLowerCase','scene','getRooms','unlock','(((.+)+)+)+$','help','use','say','You\x20are\x20still\x20in\x20the\x20game,\x20type\x20\x22quit\x22\x20to\x20exit','name','12035232TvHDGZ','initialize','execute','instance','currentRoom','lock','player','clear','Welcome,\x20','1737650nKxTco','getDescription','slice','determineStartRoom','18CdoinS','look','createCommand','constructor','solve','1386180SvgXOV','equip','24YeQgrr','rooms','1134230zkRQQg','getWelcomeMessage','359496llbfRE'];a48c=function(){return r;};return a48c();}import{SayCommand}from'./commands/say.js';import{CommandFactory}from'./factories/commandF.js';export default class Game{static [a48j(0xa4)];[a48j(0x98)];[a48j(0xa7)];[a48j(0xa5)];[a48j(0x84)];constructor(a,b){const k=a48j;this[k(0xa7)]=a,this['scene']=new Scene({'player':a,'roomConfiguration':b}),this[k(0x98)][k(0xa2)](),this[k(0xa7)]['currentLocation']=this[k(0xad)](),this['registerCommands']();}[a48j(0x8f)](){const l=a48j;CommandFactory['registerCommand'](l(0xaf),LookCommand),CommandFactory[l(0x92)]('go',GoCommand),CommandFactory[l(0x92)]('take',TakeCommand),CommandFactory[l(0x92)](l(0x9d),UseCommand),CommandFactory['registerCommand'](l(0x82),EquipCommand),CommandFactory[l(0x92)](l(0x90),UnequipCommand),CommandFactory['registerCommand'](l(0xb2),SolveCommand),CommandFactory[l(0x92)]('drop',DropCommand),CommandFactory[l(0x92)](l(0x9a),UnlockCommand),CommandFactory[l(0x92)](l(0xa6),LockCommand),CommandFactory[l(0x92)](l(0x8e),SearchCommand),CommandFactory['registerCommand'](l(0x9e),SayCommand);}[a48j(0xad)](){const m=a48j;return this[m(0x98)][m(0xad)]();}[a48j(0x86)](){const n=a48j;return n(0xa9)+this[n(0xa7)][n(0xa0)];}static['getInstance'](a,b){const o=a48j;return!Game[o(0xa4)]&&(Game[o(0xa4)]=new Game(a,b)),Game[o(0xa4)];}[a48j(0x8a)](a){const p=a48j,b=a['trim']()[p(0x95)]('\x20'),c=b[0x0][p(0x97)](),d=b[p(0xac)](0x1);if(c===p(0x91))return null;if(c===p(0x88))return p(0x9f);if(c===p(0x9c))return this['getHelpMessage']();if(c===p(0xa8))return'';const e={'actor':this[p(0xa7)],'rooms':this[p(0x98)][p(0x99)](),'scene':this['scene']},f=CommandFactory[p(0xb0)](c,e);if(f){const g=f[p(0xa3)](d);return g;}return'I\x20don\x27t\x20understand\x20the\x20command\x20\x22'+c+'\x22.';}['getHelpMessage'](){const q=a48j,a=CommandFactory[q(0x94)]();let b='Available\x20Commands:\x0a';for(const c in a){if(a[q(0x8b)](c)){const d=a[c];b+='-\x20'+c+':\x20'+d[q(0xab)]()+'\x0a';}}return b+='-\x20clear:\x20Clear\x20the\x20screen.\x0a',b+=q(0x96),b;}}
@@ -1 +1 @@
1
- (function(a,b){var f=a49d,c=a();while(!![]){try{var d=-parseInt(f(0x18b))/0x1+-parseInt(f(0x18c))/0x2+-parseInt(f(0x184))/0x3*(-parseInt(f(0x180))/0x4)+-parseInt(f(0x183))/0x5+-parseInt(f(0x182))/0x6*(-parseInt(f(0x188))/0x7)+parseInt(f(0x18a))/0x8*(-parseInt(f(0x18d))/0x9)+parseInt(f(0x185))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a49c,0xcf6fd));var a49b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a49d;if(c){var e=c[g(0x189)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a49a=a49b(this,function(){var h=a49d;return a49a[h(0x187)]()['search']('(((.+)+)+)+$')['toString']()[h(0x181)](a49a)[h(0x186)]('(((.+)+)+)+$');});a49a();export*from'./door.js';function a49c(){var i=['4419nlvYsC','21006220KzkHCt','search','toString','1251901GyPKxj','apply','3215264txAfqL','443172MxdfmL','633132GKBxOY','36dWQEWv','2752tFwoEm','constructor','42hJBSaa','5744580fMxGiV'];a49c=function(){return i;};return a49c();}export*from'./inventory.js';export*from'./item.js';export*from'./npc.js';function a49d(a,b){var c=a49c();return a49d=function(d,e){d=d-0x180;var f=c[d];return f;},a49d(a,b);}export*from'./player.js';export*from'./puzzle.js';export*from'./room.js';export*from'./scene.js';
1
+ (function(a,b){var f=a49d,c=a();while(!![]){try{var d=parseInt(f(0x14b))/0x1*(-parseInt(f(0x142))/0x2)+-parseInt(f(0x141))/0x3+parseInt(f(0x14d))/0x4+parseInt(f(0x149))/0x5+parseInt(f(0x14a))/0x6*(-parseInt(f(0x148))/0x7)+parseInt(f(0x14e))/0x8*(parseInt(f(0x14c))/0x9)+-parseInt(f(0x143))/0xa*(-parseInt(f(0x14f))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a49c,0xe23e8));var a49b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a49d;if(c){var e=c[g(0x146)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a49a=a49b(this,function(){var h=a49d;return a49a[h(0x147)]()['search']('(((.+)+)+)+$')['toString']()['constructor'](a49a)[h(0x145)](h(0x144));});function a49d(a,b){var c=a49c();return a49d=function(d,e){d=d-0x141;var f=c[d];return f;},a49d(a,b);}a49a();export*from'./door.js';export*from'./inventory.js';export*from'./item.js';export*from'./npc.js';export*from'./player.js';function a49c(){var i=['apply','toString','51093PHrBOl','2881110JudqJu','132MkdzSE','8048bKQFQr','177435vwSeyJ','694536ASDEna','216xDVqKR','4279660tACggN','2678241vPfYWd','310GdKhAE','50hrNLcd','(((.+)+)+)+$','search'];a49c=function(){return i;};return a49c();}export*from'./puzzle.js';export*from'./room.js';export*from'./scene.js';
@@ -1 +1 @@
1
- var a50i=a50d;(function(a,b){var f=a50d,c=a();while(!![]){try{var d=-parseInt(f(0x118))/0x1*(-parseInt(f(0x128))/0x2)+-parseInt(f(0x116))/0x3+parseInt(f(0x12c))/0x4*(-parseInt(f(0x111))/0x5)+parseInt(f(0x120))/0x6*(parseInt(f(0x11f))/0x7)+parseInt(f(0x11b))/0x8*(parseInt(f(0x131))/0x9)+parseInt(f(0x126))/0xa*(parseInt(f(0x12e))/0xb)+-parseInt(f(0x125))/0xc;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a50c,0x838bd));function a50c(){var o=['isLockable','roomA','checkIfLockable','44VSKMeX','checkIfLocked','22OvoHYj','constructor','search','18QCgita','.\x20Is\x20Locked:\x20','43335bhtXAF','getOtherSide','Door\x20unlocked:\x20','(((.+)+)+)+$','unlockItemOrSolution','2859981ExpYfV','attemptUnlock','85865YOvErr','write','apply','1611008wcIeeF','name','getInstance','.\x20Used:\x20','7ohHvMu','3199920kjGsnk','logger','toString','Failed\x20to\x20unlock\x20door:\x20','roomB','13660476SOgBZr','3796990Siktrj','isLocked','24DPLNky'];a50c=function(){return o;};return a50c();}var a50b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a50d;if(c){var e=c[g(0x11a)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a50a=a50b(this,function(){var h=a50d;return a50a[h(0x122)]()['search']('(((.+)+)+)+$')['toString']()[h(0x12f)](a50a)[h(0x130)](h(0x114));});function a50d(a,b){var c=a50c();return a50d=function(d,e){d=d-0x111;var f=c[d];return f;},a50d(a,b);}a50a();import{Logger}from'../utilities/logger.js';import{capitalCase}from'change-case';import{AbstractDoor}from'../types/abstracts.js';export class Door extends AbstractDoor{[a50i(0x12a)];['roomB'];[a50i(0x127)];[a50i(0x115)];[a50i(0x11c)];[a50i(0x121)];[a50i(0x129)];constructor(a){var j=a50i;super(),this['roomA']=a[j(0x12a)],this[j(0x124)]=a[j(0x124)],this['isLocked']=a[j(0x127)]||![],this['unlockItemOrSolution']=a[j(0x115)],this[j(0x11c)]=a[j(0x11c)]?capitalCase(a[j(0x11c)]):'To\x20'+a[j(0x124)][j(0x11c)],this[j(0x121)]=Logger[j(0x11d)](),this['isLockable']=!!a[j(0x115)],this[j(0x121)][j(0x119)]('Door\x20created\x20between\x20'+this[j(0x12a)][j(0x11c)]+'\x20and\x20'+this['roomB'][j(0x11c)]+j(0x132)+this[j(0x127)]);}[a50i(0x112)](a){var k=a50i;return this[k(0x12a)]===a?this[k(0x124)]:this[k(0x12a)];}[a50i(0x117)](a){var l=a50i;if(this[l(0x127)]&&this[l(0x115)]&&this[l(0x115)]===a)return this['isLocked']=![],this[l(0x121)][l(0x119)](l(0x113)+this[l(0x11c)]+l(0x11e)+a),!![];return this[l(0x121)]['write'](l(0x123)+this[l(0x11c)]+l(0x11e)+a),![];}[a50i(0x12d)](){var m=a50i;return this[m(0x127)];}[a50i(0x12b)](){var n=a50i;return this[n(0x129)];}}
1
+ var a50i=a50d;(function(a,b){var f=a50d,c=a();while(!![]){try{var d=parseInt(f(0xd5))/0x1*(-parseInt(f(0xe8))/0x2)+parseInt(f(0xe5))/0x3*(-parseInt(f(0xd8))/0x4)+parseInt(f(0xf1))/0x5+-parseInt(f(0xe0))/0x6*(parseInt(f(0xf4))/0x7)+parseInt(f(0xdb))/0x8*(-parseInt(f(0xef))/0x9)+parseInt(f(0xda))/0xa*(parseInt(f(0xea))/0xb)+parseInt(f(0xe4))/0xc;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a50c,0xea009));var a50b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a50d;if(c){var e=c[g(0xf5)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a50a=a50b(this,function(){var h=a50d;return a50a[h(0xed)]()[h(0xdd)](h(0xe2))[h(0xed)]()[h(0xe6)](a50a)['search'](h(0xe2));});a50a();import{Logger}from'../utilities/logger.js';function a50c(){var n=['getOtherSide','651xPctZx','apply','checkIfLocked','4507KGQRhW','name','.\x20Is\x20Locked:\x20','3631828tzNXaL','.\x20Used:\x20','3750kztfqj','8ckamkm','isLocked','search','To\x20','roomA','40296dLgFbn','attemptUnlock','(((.+)+)+)+$','isLockable','49663464tJDiDb','6gFwici','constructor','Failed\x20to\x20unlock\x20door:\x20','818THwLwQ','unlockItemOrSolution','55649EhOGND','logger','getInstance','toString','checkIfLockable','9200817KZdbUH','roomB','1144520Unzjcu','write'];a50c=function(){return n;};return a50c();}function a50d(a,b){var c=a50c();return a50d=function(d,e){d=d-0xd5;var f=c[d];return f;},a50d(a,b);}import{capitalCase}from'change-case';import{AbstractDoor}from'../types/abstracts.js';export class Door extends AbstractDoor{[a50i(0xdf)];['roomB'];[a50i(0xdc)];[a50i(0xe9)];[a50i(0xd6)];[a50i(0xeb)];[a50i(0xe3)];constructor(a){var j=a50i;super(),this['roomA']=a[j(0xdf)],this['roomB']=a[j(0xf0)],this['isLocked']=a[j(0xdc)]||![],this[j(0xe9)]=a[j(0xe9)],this[j(0xd6)]=a[j(0xd6)]?capitalCase(a[j(0xd6)]):j(0xde)+a[j(0xf0)][j(0xd6)],this['logger']=Logger[j(0xec)](),this['isLockable']=!!a[j(0xe9)],this[j(0xeb)][j(0xf2)]('Door\x20created\x20between\x20'+this['roomA']['name']+'\x20and\x20'+this[j(0xf0)][j(0xd6)]+j(0xd7)+this[j(0xdc)]);}[a50i(0xf3)](a){var k=a50i;return this[k(0xdf)]===a?this[k(0xf0)]:this[k(0xdf)];}[a50i(0xe1)](a){var l=a50i;if(this[l(0xdc)]&&this[l(0xe9)]&&this[l(0xe9)]===a)return this['isLocked']=![],this[l(0xeb)]['write']('Door\x20unlocked:\x20'+this['name']+l(0xd9)+a),!![];return this[l(0xeb)][l(0xf2)](l(0xe7)+this['name']+'.\x20Used:\x20'+a),![];}[a50i(0xf6)](){return this['isLocked'];}[a50i(0xee)](){var m=a50i;return this[m(0xe3)];}}
@@ -1 +1 @@
1
- const a51h=a51d;function a51d(a,b){const c=a51c();return a51d=function(d,e){d=d-0x66;let f=c[d];return f;},a51d(a,b);}(function(a,b){const f=a51d,c=a();while(!![]){try{const d=parseInt(f(0x8d))/0x1+-parseInt(f(0x7e))/0x2+parseInt(f(0x71))/0x3*(-parseInt(f(0x77))/0x4)+parseInt(f(0x78))/0x5*(parseInt(f(0x7c))/0x6)+-parseInt(f(0x8b))/0x7*(parseInt(f(0x90))/0x8)+-parseInt(f(0x8a))/0x9*(-parseInt(f(0x86))/0xa)+-parseInt(f(0x88))/0xb;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a51c,0x98a45));const a51b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a51a=a51b(this,function(){const g=a51d;return a51a[g(0x72)]()['search'](g(0x76))['toString']()[g(0x81)](a51a)[g(0x91)](g(0x76));});a51a();import{capitalCase}from'change-case';import{Logger}from'../utilities/logger.js';import{AbstractInventory}from'../types/abstracts.js';export class Inventory extends AbstractInventory{['items'];[a51h(0x7f)];constructor(){const i=a51h;super(),this[i(0x8f)]=new Map(),this[i(0x7f)]=Logger[i(0x83)]();}[a51h(0x74)](a){const j=a51h;this['items'][j(0x73)](a[j(0x6e)]['toLowerCase'](),a),this[j(0x7f)][j(0x6d)](j(0x6c)+a[j(0x6e)]+j(0x89));}['removeItem'](a){const k=a51h,b=this['getItem'](a);if(b)return this[k(0x8f)][k(0x8e)](a[k(0x8c)]()),this['logger']['write'](k(0x68)+a+k(0x7b)),b;return this[k(0x7f)][k(0x6d)](k(0x87)+a+k(0x69)),null;}['hasItem'](a){const l=a51h,b=this['items'][l(0x75)](a[l(0x8c)]()),c=[...this[l(0x8f)][l(0x82)]()];return this[l(0x7f)][l(0x6d)](l(0x85)+a+l(0x6f)+c[l(0x66)](',\x20')+l(0x84)+b+'.'),b;}[a51h(0x6b)](a){const m=a51h,b=this[m(0x8f)][m(0x6a)](a[m(0x8c)]())||null;return b?this['logger'][m(0x6d)](m(0x7a)+a+'.'):this['logger'][m(0x6d)](m(0x79)+a+m(0x69)),b;}['listItems'](){const n=a51h,a=[...this[n(0x8f)][n(0x82)]()],b=a['map'](c=>capitalCase(c));return this[n(0x7f)][n(0x6d)](n(0x70)+b[n(0x66)](',\x20')+'.'),a;}[a51h(0x67)](){const o=a51h;let a=0x0;for(const b of this[o(0x8f)]['values']()){a+=b[o(0x80)];}return a;}['getAllItems'](){const p=a51h;return[...this[p(0x8f)][p(0x7d)]()];}}function a51c(){const q=['9oyxbcc','toString','set','addItem','has','(((.+)+)+)+$','434828vzbiGI','27030oMepeZ','Failed\x20to\x20retrieve\x20details\x20for\x20item:\x20','Retrieved\x20details\x20for\x20item:\x20','\x20from\x20inventory.','1278qhqXom','values','835858obFDWo','logger','weight','constructor','keys','getInstance','.\x20Exists:\x20','Checked\x20for\x20item:\x20','3430geWbNU','Failed\x20to\x20remove\x20item:\x20','10831887dPoOsG','\x20to\x20inventory.','10656fncGDy','1424255lwTvTT','toLowerCase','1203328nSxlJq','delete','items','16geruqk','search','join','getWeight','Removed\x20item:\x20','.\x20Item\x20not\x20found.','get','getItem','Added\x20item:\x20','write','name','\x20in\x20','Listed\x20items\x20in\x20inventory:\x20'];a51c=function(){return q;};return a51c();}
1
+ const a51i=a51d;function a51d(a,b){const c=a51c();return a51d=function(d,e){d=d-0x12e;let f=c[d];return f;},a51d(a,b);}(function(a,b){const f=a51d,c=a();while(!![]){try{const d=-parseInt(f(0x14a))/0x1*(parseInt(f(0x145))/0x2)+parseInt(f(0x142))/0x3*(-parseInt(f(0x14e))/0x4)+parseInt(f(0x12e))/0x5+parseInt(f(0x157))/0x6+parseInt(f(0x13a))/0x7+parseInt(f(0x14d))/0x8*(parseInt(f(0x150))/0x9)+parseInt(f(0x141))/0xa*(parseInt(f(0x143))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a51c,0x325f8));function a51c(){const r=['\x20from\x20inventory.','search','removeItem','set','items','606886qLrhft','write','\x20in\x20','Checked\x20for\x20item:\x20','logger','Retrieved\x20details\x20for\x20item:\x20','delete','80lYwQxl','336ZBrVWV','246301JPBHFM','name','155968qxowko','(((.+)+)+)+$','Failed\x20to\x20remove\x20item:\x20','weight','hasItem','5pPVaio','\x20to\x20inventory.','keys','256guJBdI','12416XKrEsi','map','79668xqWHSj','constructor','apply','addItem','getWeight','toLowerCase','Removed\x20item:\x20','1113816THkpIf','1045850CYpoGx','toString','getItem','join','.\x20Exists:\x20','Listed\x20items\x20in\x20inventory:\x20','values'];a51c=function(){return r;};return a51c();}const a51b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a51d;if(c){const e=c[g(0x152)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a51a=a51b(this,function(){const h=a51d;return a51a[h(0x12f)]()[h(0x136)](h(0x146))[h(0x12f)]()[h(0x151)](a51a)[h(0x136)](h(0x146));});a51a();import{capitalCase}from'change-case';import{Logger}from'../utilities/logger.js';import{AbstractInventory}from'../types/abstracts.js';export class Inventory extends AbstractInventory{[a51i(0x139)];[a51i(0x13e)];constructor(){const j=a51i;super(),this[j(0x139)]=new Map(),this[j(0x13e)]=Logger['getInstance']();}[a51i(0x153)](a){const k=a51i;this[k(0x139)][k(0x138)](a['name'][k(0x155)](),a),this[k(0x13e)][k(0x13b)]('Added\x20item:\x20'+a[k(0x144)]+k(0x14b));}[a51i(0x137)](a){const l=a51i,b=this[l(0x130)](a);if(b)return this[l(0x139)][l(0x140)](a[l(0x155)]()),this['logger'][l(0x13b)](l(0x156)+a+l(0x135)),b;return this[l(0x13e)][l(0x13b)](l(0x147)+a+'.\x20Item\x20not\x20found.'),null;}[a51i(0x149)](a){const m=a51i,b=this[m(0x139)]['has'](a[m(0x155)]()),c=[...this[m(0x139)][m(0x14c)]()];return this[m(0x13e)][m(0x13b)](m(0x13d)+a+m(0x13c)+c[m(0x131)](',\x20')+m(0x132)+b+'.'),b;}[a51i(0x130)](a){const n=a51i,b=this[n(0x139)]['get'](a[n(0x155)]())||null;return b?this[n(0x13e)][n(0x13b)](n(0x13f)+a+'.'):this[n(0x13e)]['write']('Failed\x20to\x20retrieve\x20details\x20for\x20item:\x20'+a+'.\x20Item\x20not\x20found.'),b;}['listItems'](){const o=a51i,a=[...this['items']['keys']()],b=a[o(0x14f)](c=>capitalCase(c));return this[o(0x13e)][o(0x13b)](o(0x133)+b['join'](',\x20')+'.'),a;}[a51i(0x154)](){const p=a51i;let a=0x0;for(const b of this[p(0x139)]['values']()){a+=b[p(0x148)];}return a;}['getAllItems'](){const q=a51i;return[...this[q(0x139)][q(0x134)]()];}}
@@ -1 +1 @@
1
- function a52d(a,b){var c=a52c();return a52d=function(d,e){d=d-0x174;var f=c[d];return f;},a52d(a,b);}var a52i=a52d;(function(a,b){var f=a52d,c=a();while(!![]){try{var d=parseInt(f(0x17b))/0x1+parseInt(f(0x184))/0x2*(-parseInt(f(0x179))/0x3)+-parseInt(f(0x180))/0x4+-parseInt(f(0x18f))/0x5+-parseInt(f(0x186))/0x6*(-parseInt(f(0x17a))/0x7)+-parseInt(f(0x17c))/0x8+-parseInt(f(0x177))/0x9*(-parseInt(f(0x17e))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a52c,0x7ae35));function a52c(){var l=['category','use','weight','color','(((.+)+)+)+$','rating','4602990AuWwZK','uuid','You\x20use\x20the\x20','name','201303uljmUi','constructor','1521HYeZnL','7329zHxHGI','733308fLBzJZ','6751352CVgPpg','apply','720SZAdRG','size','648284BkSkgy','toString','search','.\x20Nothing\x20special\x20happens.','106aYUEnt','shape','648wdAxUg','texture','description'];a52c=function(){return l;};return a52c();}var a52b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a52d;if(c){var e=c[g(0x17d)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a52a=a52b(this,function(){var h=a52d;return a52a[h(0x181)]()['search']('(((.+)+)+)+$')[h(0x181)]()[h(0x178)](a52a)[h(0x182)](h(0x18d));});a52a();import{v4 as a52e}from'uuid';import{AbstractItem}from'../types/abstracts.js';export class Item extends AbstractItem{[a52i(0x174)];['name'];[a52i(0x188)];['size'];[a52i(0x189)];[a52i(0x185)];[a52i(0x18c)];['texture'];['rating'];[a52i(0x18b)];constructor(a){var j=a52i;super(),this[j(0x176)]=a[j(0x176)],this['description']=a[j(0x188)],this[j(0x17f)]=a[j(0x17f)],this['category']=a[j(0x189)],this[j(0x185)]=a[j(0x185)],this['color']=a[j(0x18c)],this['texture']=a[j(0x187)],this[j(0x18e)]=a[j(0x18e)],this[j(0x18b)]=a['weight'],this[j(0x174)]=a52e();}[a52i(0x18a)](){var k=a52i;return k(0x175)+this[k(0x176)]+k(0x183);}}
1
+ var a52i=a52d;(function(a,b){var f=a52d,c=a();while(!![]){try{var d=-parseInt(f(0x20a))/0x1*(-parseInt(f(0x1fc))/0x2)+-parseInt(f(0x200))/0x3+parseInt(f(0x1f8))/0x4+parseInt(f(0x1f3))/0x5+-parseInt(f(0x204))/0x6*(parseInt(f(0x1ff))/0x7)+parseInt(f(0x1f4))/0x8*(-parseInt(f(0x208))/0x9)+-parseInt(f(0x1f6))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a52c,0x82ffe));var a52b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a52d;if(c){var e=c[g(0x206)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a52a=a52b(this,function(){var h=a52d;return a52a[h(0x202)]()[h(0x1fd)]('(((.+)+)+)+$')['toString']()['constructor'](a52a)[h(0x1fd)](h(0x1f9));});function a52c(){var l=['You\x20use\x20the\x20','15844ZOocUb','search','description','427cnJhir','498663tnpUjS','color','toString','use','30324rnSLUQ','shape','apply','weight','19683fkcXnB','category','55jOwbNJ','rating','size','name','755495wAqBeb','1912NJXfqT','texture','848460YdTMWB','.\x20Nothing\x20special\x20happens.','4127276APKBbM','(((.+)+)+)+$','uuid'];a52c=function(){return l;};return a52c();}function a52d(a,b){var c=a52c();return a52d=function(d,e){d=d-0x1f3;var f=c[d];return f;},a52d(a,b);}a52a();import{v4 as a52e}from'uuid';import{AbstractItem}from'../types/abstracts.js';export class Item extends AbstractItem{[a52i(0x1fa)];[a52i(0x20d)];[a52i(0x1fe)];[a52i(0x20c)];['category'];[a52i(0x205)];[a52i(0x201)];[a52i(0x1f5)];[a52i(0x20b)];[a52i(0x207)];constructor(a){var j=a52i;super(),this['name']=a[j(0x20d)],this[j(0x1fe)]=a[j(0x1fe)],this['size']=a[j(0x20c)],this[j(0x209)]=a[j(0x209)],this['shape']=a[j(0x205)],this[j(0x201)]=a[j(0x201)],this[j(0x1f5)]=a[j(0x1f5)],this['rating']=a[j(0x20b)],this['weight']=a[j(0x207)],this[j(0x1fa)]=a52e();}[a52i(0x203)](){var k=a52i;return k(0x1fb)+this[k(0x20d)]+k(0x1f7);}}
@@ -1 +1 @@
1
- const a53i=a53d;function a53c(){const o=['_dialogue','length','153820ynurfs','140407chmtqA','386820UOOgZz','2053044mnZEWj','_name','5jAMCfx','search','name','moveTo','84675FelJdT','floor','execute','153TQlyYC','(((.+)+)+)+$','4CImQHm','constructor','rooms','random','3460960KJFBGZ','scene','apply','toString','690964wtbdES'];a53c=function(){return o;};return a53c();}(function(a,b){const f=a53d,c=a();while(!![]){try{const d=-parseInt(f(0x1ba))/0x1*(-parseInt(f(0x1ae))/0x2)+parseInt(f(0x1a9))/0x3+-parseInt(f(0x1b6))/0x4*(parseInt(f(0x1be))/0x5)+parseInt(f(0x1bc))/0x6+-parseInt(f(0x1bb))/0x7+-parseInt(f(0x1b2))/0x8+-parseInt(f(0x1ac))/0x9*(-parseInt(f(0x1b9))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a53c,0x3d8b6));const a53b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a53d;if(c){const e=c[g(0x1b4)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a53a=a53b(this,function(){const h=a53d;return a53a[h(0x1b5)]()[h(0x1a6)]('(((.+)+)+)+$')[h(0x1b5)]()[h(0x1af)](a53a)[h(0x1a6)](h(0x1ad));});a53a();import{Player}from'./player.js';import{GoCommand}from'../commands/go.js';function a53d(a,b){const c=a53c();return a53d=function(d,e){d=d-0x1a6;let f=c[d];return f;},a53d(a,b);}export class NPC extends Player{[a53i(0x1bd)];[a53i(0x1b7)];['rooms'];[a53i(0x1b3)];constructor(a,b,c,d){const j=a53i;super(d),this[j(0x1bd)]=a,this[j(0x1b7)]=b,this[j(0x1b0)]=c;}get[a53i(0x1a7)](){const k=a53i;return this[k(0x1bd)];}['speak'](){const l=a53i;return this[l(0x1b7)][Math[l(0x1aa)](Math[l(0x1b1)]()*this[l(0x1b7)][l(0x1b8)])];}['autonomousMove'](a){const m=a53i,b=a[Math[m(0x1aa)](Math[m(0x1b1)]()*a[m(0x1b8)])];this[m(0x1a8)](b[m(0x1a7)]);}[a53i(0x1a8)](a){const n=a53i,b={'actor':this,'rooms':this['rooms'],'scene':this[n(0x1b3)]},c=new GoCommand(b);c[n(0x1ab)]([a]);}}
1
+ const a53i=a53d;(function(a,b){const f=a53d,c=a();while(!![]){try{const d=parseInt(f(0xd7))/0x1+parseInt(f(0xd8))/0x2+-parseInt(f(0xd9))/0x3*(parseInt(f(0xca))/0x4)+parseInt(f(0xcc))/0x5*(parseInt(f(0xcb))/0x6)+-parseInt(f(0xc8))/0x7*(-parseInt(f(0xce))/0x8)+parseInt(f(0xd6))/0x9*(-parseInt(f(0xcf))/0xa)+-parseInt(f(0xd4))/0xb;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a53c,0x7049d));const a53b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a53d;if(c){const e=c[g(0xdd)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a53a=a53b(this,function(){const h=a53d;return a53a['toString']()['search'](h(0xda))['toString']()['constructor'](a53a)['search'](h(0xda));});a53a();import{Player}from'./player.js';import{GoCommand}from'../commands/go.js';export class NPC extends Player{[a53i(0xd2)];['_dialogue'];['rooms'];[a53i(0xc9)];constructor(a,b,c,d){const j=a53i;super(d),this[j(0xd2)]=a,this[j(0xd3)]=b,this[j(0xcd)]=c;}get[a53i(0xd5)](){const k=a53i;return this[k(0xd2)];}[a53i(0xdb)](){const l=a53i;return this[l(0xd3)][Math[l(0xc7)](Math['random']()*this[l(0xd3)]['length'])];}[a53i(0xd0)](a){const m=a53i,b=a[Math[m(0xc7)](Math[m(0xd1)]()*a[m(0xdc)])];this[m(0xde)](b[m(0xd5)]);}[a53i(0xde)](a){const n=a53i,b={'actor':this,'rooms':this['rooms'],'scene':this[n(0xc9)]},c=new GoCommand(b);c['execute']([a]);}}function a53d(a,b){const c=a53c();return a53d=function(d,e){d=d-0xc7;let f=c[d];return f;},a53d(a,b);}function a53c(){const o=['moveTo','floor','62748bPbOHX','scene','3152308UJzDff','423672MKvgHW','60OQBltk','rooms','64TJhINB','10ZSPypG','autonomousMove','random','_name','_dialogue','1126686eeYFsE','name','2614554elLGTk','349574wqysYV','744624XONyLx','3QRlojn','(((.+)+)+)+$','speak','length','apply'];a53c=function(){return o;};return a53c();}
@@ -1 +1 @@
1
- const a54i=a54d;(function(a,b){const f=a54d,c=a();while(!![]){try{const d=-parseInt(f(0xca))/0x1+parseInt(f(0xe8))/0x2+parseInt(f(0x11d))/0x3*(-parseInt(f(0x100))/0x4)+-parseInt(f(0xd7))/0x5*(-parseInt(f(0x10f))/0x6)+-parseInt(f(0xf0))/0x7+parseInt(f(0xd0))/0x8+parseInt(f(0xdc))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a54c,0x9db95));const a54b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a54d;if(c){const e=c[g(0xf1)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a54a=a54b(this,function(){const h=a54d;return a54a[h(0xe4)]()['search'](h(0x102))['toString']()['constructor'](a54a)['search'](h(0x102));});a54a();import{camelCase}from'change-case';import{Category}from'../types/enums.js';import{Logger}from'../utilities/logger.js';import{Room}from'./room.js';import{Inventory}from'./inventory.js';import{AbstractPlayer}from'../types/abstracts.js';function a54d(a,b){const c=a54c();return a54d=function(d,e){d=d-0xca;let f=c[d];return f;},a54d(a,b);}function a54c(){const D=['values','_currentLocation','legarmor','_playerName','leaveRoom','756904XfMkqz','equipment','currentLocation','getInstance','logger','addItem','8019464tmfceM','removeInventory','Failed\x20to\x20add\x20item\x20to\x20inventory\x20due\x20to\x20weight\x20limits.','includes','bind','arm\x20armor','helmet','156605LJYoZh','weight','initialEquipment','canEquip','addInventory','20815677eIEoHa','category','A\x20featureless\x20room','name','determineEquipmentSlot','write','torso','Invalid\x20category\x20or\x20slot:\x20','toString','You\x20equipped\x20','_equipment','maxCarryingWeight','242804hoNOVX','.\x20You\x20must\x20unequip\x20it\x20first.','Max\x20carrying\x20weight\x20must\x20be\x20positive.','inventory','legs','enterRoom','ArmArmor','LegArmor','7222971ykjFpM','apply','leg\x20armor','The\x20item\x20is\x20too\x20heavy\x20to\x20add\x20to\x20your\x20inventory.','\x20is\x20no\x20longer\x20listeng\x20in\x20','gloves','getWeight','removeItem','\x20slot.','\x20from\x20player\x27s\x20inventory.','startLocation','Removed\x20','arms','_inventory','Nexus','log','4884564BlvMeW','Weapon','(((.+)+)+)+$','Helmet','leftHand','off','\x20says:\x20\x22','Shield','BodyArmor','body\x20armor','error','Hat','rightHand','hear','inventoryItems','42WmKmQj','Gloves','hasItem','You\x20don\x27t\x20have\x20','speak','unequip','armarmor','equip','feet','currentWeight','You\x20can\x27t\x20equip\x20','toLowerCase','You\x20are\x20already\x20wearing\x20something\x20on\x20your\x20','head','3TiexTM','Added\x20','unequipBySlot','_maxCarryingWeight','shield','hat','\x20in\x20your\x20inventory.','You\x20don\x27t\x20have\x20anything\x20equipped\x20in\x20the\x20','weapon'];a54c=function(){return D;};return a54c();}export class Player extends AbstractPlayer{['_playerName'];['_currentLocation'];[a54i(0xfd)];[a54i(0xe6)];[a54i(0x120)]=0x32;[a54i(0xce)];constructor(a){const j=a54i;super(),this['_playerName']=a['playerName'],this['_currentLocation']=a[j(0xfa)]||new Room({'name':j(0xfe),'description':j(0xde)}),this[j(0xfd)]=new Inventory(),this['logger']=Logger[j(0xcd)]();if(a?.['inventoryItems'])for(const b of a[j(0x10e)]){this[j(0xfd)][j(0xcf)](b);}this[j(0xe6)]=a?.[j(0xd9)]||{'head':null,'torso':null,'legs':null,'feet':null,'arms':null,'gloves':null,'leftHand':null,'rightHand':null};}get[a54i(0xdf)](){const k=a54i;return this[k(0x129)];}get[a54i(0xcc)](){const l=a54i;return this[l(0x127)];}set[a54i(0xcc)](a){const m=a54i;this[m(0x127)]!==a&&(this[m(0x12a)](),this[m(0xed)](a)),this['_currentLocation']=a;}get[a54i(0xeb)](){const n=a54i;return this[n(0xfd)];}get[a54i(0xcb)](){const o=a54i;return this[o(0xe6)];}set[a54i(0xcb)](a){const p=a54i;this[p(0xe6)]=a;}get['maxCarryingWeight'](){const q=a54i;return this[q(0x120)];}set['maxCarryingWeight'](a){const r=a54i;a>0x0?this[r(0x120)]=a:console[r(0x10a)](r(0xea));}get[a54i(0x118)](){const s=a54i;let a=this['_inventory'][s(0xf6)]();for(const b in this[s(0xe6)]){const c=this[s(0xe6)][b];c&&(a+=c[s(0xd8)]);}return a;}[a54i(0xdb)](a){const t=a54i;if(this[t(0x118)]+a[t(0xd8)]>this[t(0xe7)]){this['logger'][t(0xe1)](t(0xd2));throw new Error(t(0xf3));}this[t(0xfd)][t(0xcf)](a),this['logger'][t(0xe1)](t(0x11e)+a[t(0xdf)]+'\x20to\x20player\x27s\x20inventory.');}[a54i(0xd1)](a){const u=a54i;if(this[u(0xfd)][u(0xf7)](a[u(0xdf)]))return this['logger'][u(0xe1)](u(0xfb)+a[u(0xdf)]+'\x20from\x20player\x27s\x20inventory.'),!![];return this[u(0xce)]['write']('Failed\x20to\x20remove\x20'+a[u(0xdf)]+u(0xf9)),![];}[a54i(0x116)](a){const v=a54i;if(!this[v(0xfd)][v(0x111)](a[v(0xdf)]))return v(0x112)+a['name']+v(0x123);if(!this[v(0xda)](a))return v(0x119)+a['name']+'.';const b=this[v(0xe0)](a[v(0xdd)]);if(!b)return a[v(0xdf)]+'\x20doesn\x27t\x20fit\x20any\x20known\x20equipment\x20slot.';if(this[v(0xcb)][b])return v(0x11b)+b+v(0xe9);return this[v(0xcb)][b]=a,this[v(0xd1)](a),v(0xe5)+a[v(0xdf)]+'.';}[a54i(0x114)](a){const w=a54i;let b=a;if(!this['equipment'][camelCase(b)]){b=this[w(0xe0)](a);if(!b)return w(0xe3)+a+'.';}return this[w(0x11f)](b);}[a54i(0xe0)](a){const x=a54i;switch(a[x(0x11a)]()){case Category[x(0x101)][x(0x11a)]():return x(0x10c);case Category[x(0x107)][x(0x11a)]():return'leftHand';case Category[x(0x110)][x(0x11a)]():return'gloves';case Category[x(0x103)]['toLowerCase']():case Category[x(0x10b)][x(0x11a)]():return x(0x11c);case Category['Boots']['toLowerCase']():return x(0x117);case Category[x(0xef)]['toLowerCase']():return'legs';case Category[x(0xee)]['toLowerCase']():return x(0xfc);case Category[x(0x108)][x(0x11a)]():return x(0xe2);case x(0x125):return x(0x10c);case x(0x121):return x(0x104);case x(0xf5):return'gloves';case x(0xd6):case x(0x122):return x(0x11c);case'boots':return x(0x117);case x(0xf2):case x(0x128):return x(0xec);case x(0xd5):case x(0x115):return x(0xfc);case x(0x109):case'bodyarmor':case x(0xe2):return x(0xe2);default:return null;}}[a54i(0xda)](a){const y=a54i;return Object[y(0x126)](Category)[y(0xd3)](a['category']);}[a54i(0x11f)](a){const z=a54i,b=this['equipment'][a];if(!b)return z(0x124)+a+z(0xf8);return this[z(0xdb)](b),this['equipment'][a]=null,'You\x20unequipped\x20'+b['name']+'.';}[a54i(0x10d)](a,b){const A=a54i;a!==this&&this[A(0xce)][A(0xff)](a['name']+A(0x106)+b+'\x22');}[a54i(0xed)](a){const B=a54i;this[B(0x127)]=a,a['on'](B(0x113),this[B(0x10d)][B(0xd4)](this)),this[B(0xce)][B(0xe1)](this['name']+'\x20is\x20now\x20listening\x20in\x20room\x20'+a[B(0xdf)]);}[a54i(0x12a)](){const C=a54i;this['_currentLocation']&&(this[C(0x127)][C(0x105)](C(0x113),this[C(0x10d)][C(0xd4)](this)),this[C(0xce)]['write'](this[C(0xdf)]+C(0xf4)+this[C(0x127)][C(0xdf)]));}}
1
+ const a54i=a54d;(function(a,b){const f=a54d,c=a();while(!![]){try{const d=parseInt(f(0xba))/0x1+-parseInt(f(0xb9))/0x2+parseInt(f(0xdd))/0x3+parseInt(f(0xb1))/0x4*(parseInt(f(0xe0))/0x5)+-parseInt(f(0xf0))/0x6+parseInt(f(0xa8))/0x7+parseInt(f(0xee))/0x8;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a54c,0xbf4a2));const a54b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a54d;if(c){const e=c[g(0xc9)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a54a=a54b(this,function(){const h=a54d;return a54a['toString']()[h(0xeb)]('(((.+)+)+)+$')['toString']()['constructor'](a54a)['search'](h(0xbd));});a54a();import{camelCase}from'change-case';import{Category}from'../types/enums.js';function a54c(){const D=['Hat','canEquip','_playerName','head','You\x20are\x20already\x20wearing\x20something\x20on\x20your\x20','toLowerCase','enterRoom','apply','hasItem','rightHand','weight','You\x20don\x27t\x20have\x20','_maxCarryingWeight','arms','You\x20equipped\x20','_inventory','shield','torso','determineEquipmentSlot','Weapon','body\x20armor','feet','addItem','_currentLocation','boots','\x20to\x20player\x27s\x20inventory.','bodyarmor','2127081UiFILR','.\x20You\x20must\x20unequip\x20it\x20first.','helmet','5ppGkcG','maxCarryingWeight','hear','write','weapon','log','\x20says:\x20\x22','hat','equip','unequip','Invalid\x20category\x20or\x20slot:\x20','search','\x20is\x20now\x20listening\x20in\x20room\x20','Boots','8611016mIxnji','_equipment','7836258ConosI','off','You\x20can\x27t\x20equip\x20','Nexus','removeInventory','gloves','\x20in\x20your\x20inventory.','includes','inventoryItems','arm\x20armor','legs','bind','ArmArmor','currentLocation','\x20slot.','2195571pYRlGd','Gloves','addInventory','leftHand','BodyArmor','currentWeight','logger','leaveRoom','playerName','2811460Ycjduq','equipment','unequipBySlot','\x20is\x20no\x20longer\x20listeng\x20in\x20','The\x20item\x20is\x20too\x20heavy\x20to\x20add\x20to\x20your\x20inventory.','speak','A\x20featureless\x20room','name','1966130RAooqm','270708ssMKXj','error','getInstance','(((.+)+)+)+$','legarmor','startLocation','Shield','\x20from\x20player\x27s\x20inventory.'];a54c=function(){return D;};return a54c();}import{Logger}from'../utilities/logger.js';import{Room}from'./room.js';import{Inventory}from'./inventory.js';import{AbstractPlayer}from'../types/abstracts.js';function a54d(a,b){const c=a54c();return a54d=function(d,e){d=d-0xa7;let f=c[d];return f;},a54d(a,b);}export class Player extends AbstractPlayer{[a54i(0xc4)];['_currentLocation'];[a54i(0xd1)];['_equipment'];[a54i(0xce)]=0x32;[a54i(0xae)];constructor(a){const j=a54i;super(),this[j(0xc4)]=a[j(0xb0)],this['_currentLocation']=a[j(0xbf)]||new Room({'name':j(0xf3),'description':j(0xb7)}),this[j(0xd1)]=new Inventory(),this['logger']=Logger[j(0xbc)]();if(a?.[j(0xf8)])for(const b of a[j(0xf8)]){this[j(0xd1)]['addItem'](b);}this['_equipment']=a?.['initialEquipment']||{'head':null,'torso':null,'legs':null,'feet':null,'arms':null,'gloves':null,'leftHand':null,'rightHand':null};}get[a54i(0xb8)](){const k=a54i;return this[k(0xc4)];}get[a54i(0xfd)](){const l=a54i;return this[l(0xd9)];}set[a54i(0xfd)](a){const m=a54i;this[m(0xd9)]!==a&&(this['leaveRoom'](),this['enterRoom'](a)),this['_currentLocation']=a;}get['inventory'](){const n=a54i;return this[n(0xd1)];}get[a54i(0xb2)](){const o=a54i;return this[o(0xef)];}set[a54i(0xb2)](a){const p=a54i;this[p(0xef)]=a;}get[a54i(0xe1)](){const q=a54i;return this[q(0xce)];}set[a54i(0xe1)](a){const r=a54i;a>0x0?this[r(0xce)]=a:console[r(0xbb)]('Max\x20carrying\x20weight\x20must\x20be\x20positive.');}get[a54i(0xad)](){const s=a54i;let a=this['_inventory']['getWeight']();for(const b in this['_equipment']){const c=this[s(0xef)][b];c&&(a+=c[s(0xcc)]);}return a;}['addInventory'](a){const t=a54i;if(this[t(0xad)]+a[t(0xcc)]>this['maxCarryingWeight']){this[t(0xae)]['write']('Failed\x20to\x20add\x20item\x20to\x20inventory\x20due\x20to\x20weight\x20limits.');throw new Error(t(0xb5));}this['_inventory'][t(0xd8)](a),this['logger'][t(0xe3)]('Added\x20'+a[t(0xb8)]+t(0xdb));}[a54i(0xf4)](a){const u=a54i;if(this[u(0xd1)]['removeItem'](a['name']))return this[u(0xae)][u(0xe3)]('Removed\x20'+a[u(0xb8)]+u(0xc1)),!![];return this[u(0xae)][u(0xe3)]('Failed\x20to\x20remove\x20'+a['name']+u(0xc1)),![];}[a54i(0xe8)](a){const v=a54i;if(!this[v(0xd1)][v(0xca)](a['name']))return v(0xcd)+a[v(0xb8)]+v(0xf6);if(!this[v(0xc3)](a))return v(0xf2)+a[v(0xb8)]+'.';const b=this['determineEquipmentSlot'](a['category']);if(!b)return a[v(0xb8)]+'\x20doesn\x27t\x20fit\x20any\x20known\x20equipment\x20slot.';if(this['equipment'][b])return v(0xc6)+b+v(0xde);return this[v(0xb2)][b]=a,this[v(0xf4)](a),v(0xd0)+a[v(0xb8)]+'.';}[a54i(0xe9)](a){const w=a54i;let b=a;if(!this[w(0xb2)][camelCase(b)]){b=this[w(0xd4)](a);if(!b)return w(0xea)+a+'.';}return this[w(0xb3)](b);}[a54i(0xd4)](a){const x=a54i;switch(a[x(0xc7)]()){case Category[x(0xd5)][x(0xc7)]():return x(0xcb);case Category[x(0xc0)][x(0xc7)]():return'leftHand';case Category[x(0xa9)]['toLowerCase']():return x(0xf5);case Category['Helmet'][x(0xc7)]():case Category[x(0xc2)][x(0xc7)]():return'head';case Category[x(0xed)]['toLowerCase']():return x(0xd7);case Category['LegArmor']['toLowerCase']():return x(0xfa);case Category[x(0xfc)][x(0xc7)]():return x(0xcf);case Category[x(0xac)]['toLowerCase']():return x(0xd3);case x(0xe4):return'rightHand';case x(0xd2):return x(0xab);case x(0xf5):return'gloves';case x(0xdf):case x(0xe7):return x(0xc5);case x(0xda):return x(0xd7);case'leg\x20armor':case x(0xbe):return x(0xfa);case x(0xf9):case'armarmor':return'arms';case x(0xd6):case x(0xdc):case'torso':return x(0xd3);default:return null;}}[a54i(0xc3)](a){const y=a54i;return Object['values'](Category)[y(0xf7)](a['category']);}[a54i(0xb3)](a){const z=a54i,b=this[z(0xb2)][a];if(!b)return'You\x20don\x27t\x20have\x20anything\x20equipped\x20in\x20the\x20'+a+z(0xa7);return this[z(0xaa)](b),this[z(0xb2)][a]=null,'You\x20unequipped\x20'+b[z(0xb8)]+'.';}[a54i(0xe2)](a,b){const A=a54i;a!==this&&this[A(0xae)][A(0xe5)](a[A(0xb8)]+A(0xe6)+b+'\x22');}[a54i(0xc8)](a){const B=a54i;this[B(0xd9)]=a,a['on'](B(0xb6),this['hear']['bind'](this)),this[B(0xae)][B(0xe3)](this['name']+B(0xec)+a[B(0xb8)]);}[a54i(0xaf)](){const C=a54i;this[C(0xd9)]&&(this[C(0xd9)][C(0xf1)](C(0xb6),this[C(0xe2)][C(0xfb)](this)),this[C(0xae)][C(0xe3)](this[C(0xb8)]+C(0xb4)+this[C(0xd9)][C(0xb8)]));}}
@@ -1 +1 @@
1
- var a55i=a55d;(function(a,b){var f=a55d,c=a();while(!![]){try{var d=parseInt(f(0x207))/0x1+-parseInt(f(0x20d))/0x2*(parseInt(f(0x1ff))/0x3)+parseInt(f(0x205))/0x4*(-parseInt(f(0x1ef))/0x5)+parseInt(f(0x1f8))/0x6+parseInt(f(0x1f5))/0x7+-parseInt(f(0x1f4))/0x8*(parseInt(f(0x20c))/0x9)+parseInt(f(0x203))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a55c,0xc050a));function a55d(a,b){var c=a55c();return a55d=function(d,e){d=d-0x1ef;var f=c[d];return f;},a55d(a,b);}function a55c(){var n=['(((.+)+)+)+$','write','failureMessage','8589MjoWIo','requiredPhrase','apply','solved','5576450GRrtIq','logger','4HhmyWb','You\x20have\x20already\x20solved\x20this\x20puzzle.','709407luqOcA','successMessage','rewardItem','You\x20don\x27t\x20have\x20the\x20necessary\x20item\x20or\x20the\x20correct\x20phrase\x20to\x20solve\x20the\x20puzzle.','matchesRequiredPhrase','128304iwcBqw','796tneRom','1477995SZLjVa','hasRequiredItem','search','getInstance','riddle','88Ohokkz','4577972XhgmUb','requiredItem','Puzzle:\x20Necessary\x20item\x20or\x20correct\x20phrase\x20not\x20provided.','2751378vBvpyp','toString','You\x20solved\x20the\x20puzzle!','Puzzle:\x20Attempted\x20to\x20solve\x20an\x20already\x20solved\x20puzzle.'];a55c=function(){return n;};return a55c();}var a55b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a55d;if(c){var e=c[g(0x201)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a55a=a55b(this,function(){var h=a55d;return a55a[h(0x1f9)]()[h(0x1f1)](h(0x1fc))[h(0x1f9)]()['constructor'](a55a)[h(0x1f1)](h(0x1fc));});a55a();import{Logger}from'../utilities/logger.js';import{AbstractPuzzle}from'../types/abstracts.js';export class Puzzle extends AbstractPuzzle{[a55i(0x204)]=Logger[a55i(0x1f2)]();[a55i(0x202)]=![];['requiredItem'];['requiredPhrase'];['riddle'];[a55i(0x209)];[a55i(0x208)];[a55i(0x1fe)];constructor(a){var j=a55i;super(),this[j(0x1f6)]=a['requiredItem'],this['requiredPhrase']=a[j(0x200)],this[j(0x1f3)]=a[j(0x1f3)],this[j(0x209)]=a[j(0x209)],this[j(0x208)]=a[j(0x208)]||j(0x1fa),this[j(0x1fe)]=a[j(0x1fe)]||j(0x20a);}[a55i(0x1f0)](a){var k=a55i;if(this[k(0x1f6)])return a['hasItem'](this[k(0x1f6)]);return![];}[a55i(0x20b)](a){var l=a55i;return this[l(0x200)]===a;}['solve'](a,b){var m=a55i;if(this[m(0x202)])return this[m(0x204)]['write'](m(0x1fb)),{'success':![],'message':m(0x206)};return this[m(0x1f0)](b)||this[m(0x20b)](a)?(this['solved']=!![],this[m(0x204)][m(0x1fd)]('Puzzle:\x20Correct\x20solution\x20provided.'),{'success':!![],'message':this[m(0x208)]}):(this[m(0x204)][m(0x1fd)](m(0x1f7)),{'success':![],'message':this[m(0x1fe)]});}}
1
+ function a55d(a,b){var c=a55c();return a55d=function(d,e){d=d-0xf1;var f=c[d];return f;},a55d(a,b);}var a55i=a55d;(function(a,b){var f=a55d,c=a();while(!![]){try{var d=parseInt(f(0xf2))/0x1+parseInt(f(0xfe))/0x2*(parseInt(f(0xf7))/0x3)+parseInt(f(0xf1))/0x4+-parseInt(f(0xff))/0x5+parseInt(f(0x10c))/0x6+parseInt(f(0xf8))/0x7+-parseInt(f(0x100))/0x8;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a55c,0x88cb8));function a55c(){var n=['3051261cDQRtE','3670310MWucyl','Puzzle:\x20Correct\x20solution\x20provided.','(((.+)+)+)+$','hasItem','hasRequiredItem','apply','2EwkwHk','4814845ARzZjb','15583600yhkQrE','Puzzle:\x20Attempted\x20to\x20solve\x20an\x20already\x20solved\x20puzzle.','constructor','riddle','getInstance','logger','rewardItem','requiredItem','search','Puzzle:\x20Necessary\x20item\x20or\x20correct\x20phrase\x20not\x20provided.','You\x20don\x27t\x20have\x20the\x20necessary\x20item\x20or\x20the\x20correct\x20phrase\x20to\x20solve\x20the\x20puzzle.','requiredPhrase','984126BnEYfy','matchesRequiredPhrase','solved','2930468DnAsph','1033176iiLYoI','write','successMessage','failureMessage','You\x20solved\x20the\x20puzzle!'];a55c=function(){return n;};return a55c();}var a55b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a55d;if(c){var e=c[g(0xfd)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a55a=a55b(this,function(){var h=a55d;return a55a['toString']()[h(0x108)](h(0xfa))['toString']()[h(0x102)](a55a)[h(0x108)]('(((.+)+)+)+$');});a55a();import{Logger}from'../utilities/logger.js';import{AbstractPuzzle}from'../types/abstracts.js';export class Puzzle extends AbstractPuzzle{[a55i(0x105)]=Logger[a55i(0x104)]();[a55i(0x10e)]=![];[a55i(0x107)];[a55i(0x10b)];[a55i(0x103)];['rewardItem'];['successMessage'];[a55i(0xf5)];constructor(a){var j=a55i;super(),this['requiredItem']=a[j(0x107)],this[j(0x10b)]=a[j(0x10b)],this[j(0x103)]=a[j(0x103)],this[j(0x106)]=a[j(0x106)],this[j(0xf4)]=a['successMessage']||j(0xf6),this['failureMessage']=a[j(0xf5)]||j(0x10a);}['hasRequiredItem'](a){var k=a55i;if(this['requiredItem'])return a[k(0xfb)](this['requiredItem']);return![];}[a55i(0x10d)](a){var l=a55i;return this[l(0x10b)]===a;}['solve'](a,b){var m=a55i;if(this[m(0x10e)])return this[m(0x105)][m(0xf3)](m(0x101)),{'success':![],'message':'You\x20have\x20already\x20solved\x20this\x20puzzle.'};return this[m(0xfc)](b)||this[m(0x10d)](a)?(this[m(0x10e)]=!![],this[m(0x105)]['write'](m(0xf9)),{'success':!![],'message':this[m(0xf4)]}):(this[m(0x105)][m(0xf3)](m(0x109)),{'success':![],'message':this['failureMessage']});}}
@@ -1 +1 @@
1
- const a56i=a56d;(function(a,b){const f=a56d,c=a();while(!![]){try{const d=parseInt(f(0xc7))/0x1+parseInt(f(0xb6))/0x2*(-parseInt(f(0xbb))/0x3)+parseInt(f(0xa2))/0x4+-parseInt(f(0xbd))/0x5+-parseInt(f(0x93))/0x6+-parseInt(f(0xbc))/0x7*(-parseInt(f(0xa5))/0x8)+-parseInt(f(0xa9))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a56c,0x7201a));const a56b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a56d;if(c){const e=c[g(0x9d)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a56a=a56b(this,function(){const h=a56d;return a56a[h(0xb2)]()[h(0xb7)](h(0xae))[h(0xb2)]()[h(0x8e)](a56a)[h(0xb7)](h(0xae));});function a56d(a,b){const c=a56c();return a56d=function(d,e){d=d-0x8c;let f=c[d];return f;},a56d(a,b);}a56a();import{Logger}from'../utilities/logger.js';import{RoomType,Direction}from'../types/enums.js';import{Door}from'./door.js';function a56c(){const u=['There\x27s\x20no\x20locked\x20exit\x20in\x20that\x20direction.','north','set','isStartRoom','roomA','write','223774aSBTHq','logger','puzzle','constructor','Item\x20removed\x20from\x20room\x20','addItem','roomB','Fetching\x20exit\x20in\x20direction:\x20','928998sdTmAP','INSIDE','addExit','riddle','DOWN','hasItem','removeItem','down','.\x20Success:\x20','inventory','apply','Invalid\x20direction:\x20','getOppositeDirection','west','attemptUnlockExit','3233636QbafWr','The\x20','Item\x20added\x20to\x20room\x20','3636032bMPBtv','south','findExistingDoor','\x20unlocked!','2317284wjtSaA','roomType','say','description','get','(((.+)+)+)+$','isExitLocked','emit','east','toString','Attempted\x20to\x20unlock\x20exit\x20in\x20direction\x20','\x20remains\x20locked.','attemptUnlock','549242vHiQWD','search','\x20is\x20locked.\x20Result:\x20','setPuzzle','NORTH','3BDYAKv','7RtbSGB','1663935iedhFZ','SOUTH','name','exits'];a56c=function(){return u;};return a56c();}import{Inventory}from'./inventory.js';import{AbstractRoom}from'../types/abstracts.js';export class Room extends AbstractRoom{[a56i(0x8c)]=Logger['getInstance']();[a56i(0xbf)];[a56i(0xac)];[a56i(0xc0)]=new Map();['roomType'];['isStartRoom'];[a56i(0x9c)]=new Inventory();constructor(a){const j=a56i;super(),this['name']=a[j(0xbf)],this['description']=a[j(0xac)],this[j(0xaa)]=a[j(0xaa)]||RoomType[j(0x94)],a[j(0xc0)]&&(this[j(0xc0)]=a[j(0xc0)]||new Map()),a[j(0x9c)]&&(this['inventory']=a[j(0x9c)]),a['puzzle']&&(this[j(0x8d)]=a[j(0x8d)]),this['isStartRoom']=a[j(0xc4)]||![],this[j(0x8c)]['write']('Room\x20created:\x20'+this['name']);}[a56i(0xab)](a,b){const k=a56i;this[k(0xb0)]('speak',a,b);}[a56i(0x95)](a,b,c){const l=a56i;let d=this[l(0xa7)](b);!d&&(d=new Door({'roomA':this,'roomB':b,'isLocked':Boolean(c),'unlockItemOrSolution':c})),this[l(0xc0)][l(0xc3)](a,d),b[l(0xc0)][l(0xc3)](this['getOppositeDirection'](a),d);}[a56i(0xa1)](a,b){const m=a56i,c=this[m(0xc0)][m(0xad)](a);if(c instanceof Door){const d=c[m(0xb5)](b);return this[m(0x8c)][m(0xc6)](m(0xb3)+a+m(0x9b)+d),d?m(0xa3)+c[m(0xbf)]+m(0xa8):m(0xa3)+c[m(0xbf)]+m(0xb4);}return this[m(0x8c)][m(0xc6)]('No\x20locked\x20exit\x20found\x20in\x20direction\x20'+a),m(0xc1);}['getExit'](a){const n=a56i;return this[n(0x8c)][n(0xc6)](n(0x92)+a),this['exits'][n(0xad)](a);}[a56i(0xaf)](a){const o=a56i,b=this[o(0xc0)][o(0xad)](a),c=b instanceof Door&&b['checkIfLocked']();return this['logger'][o(0xc6)]('Checking\x20if\x20exit\x20in\x20direction\x20'+a+o(0xb8)+c),c;}[a56i(0x90)](a){const p=a56i;this[p(0x9c)][p(0x90)](a),this['logger']['write'](p(0xa4)+this[p(0xbf)]+':\x20'+a[p(0xbf)]);}[a56i(0x99)](a){const q=a56i;this[q(0x9c)][q(0x98)](a[q(0xbf)])?(this[q(0x9c)]['removeItem'](a[q(0xbf)]),this[q(0x8c)][q(0xc6)](q(0x8f)+this[q(0xbf)]+':\x20'+a['name'])):this['logger']['write']('Attempted\x20to\x20remove\x20item\x20that\x27s\x20not\x20in\x20room\x20'+this[q(0xbf)]+':\x20'+a['name']);}[a56i(0xb9)](a){const r=a56i;this[r(0x8d)]=a,this['logger']['write']('Puzzle\x20set\x20for\x20room\x20'+this[r(0xbf)]+':\x20'+a[r(0x96)]);}[a56i(0x9f)](a){const s=a56i;switch(a){case s(0xc2):return Direction[s(0xbe)];case s(0xa6):return Direction[s(0xba)];case s(0xb1):return Direction['WEST'];case s(0xa0):return Direction['EAST'];case'up':return Direction[s(0x97)];case s(0x9a):return Direction['UP'];default:throw new Error(s(0x9e)+a);}}[a56i(0xa7)](a){const t=a56i;for(const b of this[t(0xc0)]['values']()){if(b instanceof Door){if(b['roomA']===this&&b[t(0x91)]===a||b[t(0x91)]===this&&b[t(0xc5)]===a)return b;}}return undefined;}}
1
+ const a56h=a56d;(function(a,b){const f=a56d,c=a();while(!![]){try{const d=parseInt(f(0x12f))/0x1+parseInt(f(0x153))/0x2*(-parseInt(f(0x15d))/0x3)+parseInt(f(0x142))/0x4+-parseInt(f(0x13c))/0x5*(-parseInt(f(0x136))/0x6)+-parseInt(f(0x135))/0x7+-parseInt(f(0x164))/0x8+parseInt(f(0x14d))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a56c,0x87f99));const a56b=(function(){let a=!![];return function(b,c){const d=a?function(){if(c){const e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a56a=a56b(this,function(){const g=a56d;return a56a[g(0x168)]()['search']('(((.+)+)+)+$')[g(0x168)]()[g(0x15a)](a56a)['search'](g(0x157));});function a56c(){const t=['toString','getInstance','isExitLocked','737965xZWgmj','hasItem','north','Attempted\x20to\x20remove\x20item\x20that\x27s\x20not\x20in\x20room\x20','addExit','logger','5176066ufvUNI','8286mrEtxy','addItem','The\x20','removeItem','DOWN','description','155JQvHoU','isStartRoom','values','Item\x20removed\x20from\x20room\x20','Room\x20created:\x20','puzzle','2135080VJzsxg','WEST','emit','name','set','attemptUnlock','checkIfLocked','Checking\x20if\x20exit\x20in\x20direction\x20','say','roomB','roomType','7032825rWkmgU','exits','No\x20locked\x20exit\x20found\x20in\x20direction\x20','write','Fetching\x20exit\x20in\x20direction:\x20','findExistingDoor','3214scicqk','down','NORTH','getOppositeDirection','(((.+)+)+)+$','get','Puzzle\x20set\x20for\x20room\x20','constructor','Attempted\x20to\x20unlock\x20exit\x20in\x20direction\x20','Item\x20added\x20to\x20room\x20','273hOeoHz','roomA','west','\x20is\x20locked.\x20Result:\x20','inventory','There\x27s\x20no\x20locked\x20exit\x20in\x20that\x20direction.','INSIDE','5226744jemhOa','\x20unlocked!','SOUTH','east'];a56c=function(){return t;};return a56c();}a56a();import{Logger}from'../utilities/logger.js';import{RoomType,Direction}from'../types/enums.js';import{Door}from'./door.js';import{Inventory}from'./inventory.js';function a56d(a,b){const c=a56c();return a56d=function(d,e){d=d-0x12f;let f=c[d];return f;},a56d(a,b);}import{AbstractRoom}from'../types/abstracts.js';export class Room extends AbstractRoom{[a56h(0x134)]=Logger[a56h(0x169)]();[a56h(0x145)];['description'];[a56h(0x14e)]=new Map();[a56h(0x14c)];['isStartRoom'];[a56h(0x161)]=new Inventory();constructor(a){const i=a56h;super(),this[i(0x145)]=a[i(0x145)],this[i(0x13b)]=a[i(0x13b)],this[i(0x14c)]=a[i(0x14c)]||RoomType[i(0x163)],a[i(0x14e)]&&(this[i(0x14e)]=a[i(0x14e)]||new Map()),a[i(0x161)]&&(this[i(0x161)]=a[i(0x161)]),a[i(0x141)]&&(this[i(0x141)]=a[i(0x141)]),this['isStartRoom']=a[i(0x13d)]||![],this['logger']['write'](i(0x140)+this[i(0x145)]);}[a56h(0x14a)](a,b){const j=a56h;this[j(0x144)]('speak',a,b);}[a56h(0x133)](a,b,c){const k=a56h;let d=this[k(0x152)](b);!d&&(d=new Door({'roomA':this,'roomB':b,'isLocked':Boolean(c),'unlockItemOrSolution':c})),this[k(0x14e)][k(0x146)](a,d),b[k(0x14e)][k(0x146)](this[k(0x156)](a),d);}['attemptUnlockExit'](a,b){const l=a56h,c=this[l(0x14e)][l(0x158)](a);if(c instanceof Door){const d=c[l(0x147)](b);return this[l(0x134)][l(0x150)](l(0x15b)+a+'.\x20Success:\x20'+d),d?l(0x138)+c[l(0x145)]+l(0x165):l(0x138)+c[l(0x145)]+'\x20remains\x20locked.';}return this['logger'][l(0x150)](l(0x14f)+a),l(0x162);}['getExit'](a){const m=a56h;return this[m(0x134)][m(0x150)](m(0x151)+a),this['exits']['get'](a);}[a56h(0x16a)](a){const n=a56h,b=this['exits'][n(0x158)](a),c=b instanceof Door&&b[n(0x148)]();return this[n(0x134)][n(0x150)](n(0x149)+a+n(0x160)+c),c;}[a56h(0x137)](a){const o=a56h;this[o(0x161)]['addItem'](a),this[o(0x134)]['write'](o(0x15c)+this[o(0x145)]+':\x20'+a[o(0x145)]);}[a56h(0x139)](a){const p=a56h;this['inventory'][p(0x130)](a[p(0x145)])?(this[p(0x161)][p(0x139)](a[p(0x145)]),this['logger'][p(0x150)](p(0x13f)+this[p(0x145)]+':\x20'+a[p(0x145)])):this[p(0x134)][p(0x150)](p(0x132)+this['name']+':\x20'+a[p(0x145)]);}['setPuzzle'](a){const q=a56h;this['puzzle']=a,this[q(0x134)]['write'](q(0x159)+this[q(0x145)]+':\x20'+a['riddle']);}[a56h(0x156)](a){const r=a56h;switch(a){case r(0x131):return Direction[r(0x166)];case'south':return Direction[r(0x155)];case r(0x167):return Direction[r(0x143)];case r(0x15f):return Direction['EAST'];case'up':return Direction[r(0x13a)];case r(0x154):return Direction['UP'];default:throw new Error('Invalid\x20direction:\x20'+a);}}['findExistingDoor'](a){const s=a56h;for(const b of this[s(0x14e)][s(0x13e)]()){if(b instanceof Door){if(b[s(0x15e)]===this&&b['roomB']===a||b[s(0x14b)]===this&&b[s(0x15e)]===a)return b;}}return undefined;}}
@@ -1 +1 @@
1
- const a57l=a57d;function a57c(){const E=['\x20not\x20found\x20in\x20scene.','createExitsFromConfig','getPlayer','getRooms','removeRoom','warn','rooms','Added\x20item\x20','.\x20Room\x20','addRoom','Attempted\x20to\x20remove\x20a\x20non-existent\x20room\x20from\x20scene:\x20','player','No\x20actor\x20with\x20name\x20','apply','initialize','\x22\x20does\x20not\x20exist.','Scene\x20initialized\x20with\x20rooms:\x20','\x20to\x20room\x20','toString','\x20is\x20now\x20in\x20room\x20','join','4KnPOCa','No\x20rooms\x20have\x20been\x20defined\x20in\x20the\x20game.','Failed\x20to\x20set\x20','162603GgSwgC','actors','addActor','8pIbKJO','433870drziWR','search','26segDyo','getActor','getCharacterLocation','\x27s\x20location.\x20Room\x20','values','has','\x20found\x20in\x20the\x20scene.','Failed\x20to\x20add\x20puzzle.\x20Room\x20','129447JERMOC','characterLocations','name','allActors','402960ABYBfT','addItem','logger','currentLocation','length','roomConfiguration','write','\x20already\x20exists\x20in\x20the\x20scene.','exits','generateRoomsFromConfig','Removed\x20room\x20from\x20scene:\x20','roomFactory','Room\x20Factory\x20was\x20not\x20correctly\x20initialized','get','256984momXBR','setPuzzle','keys','addPuzzleToRoom','push','addExit','getInstance','Added\x20room\x20to\x20scene:\x20','464976hdCSPA','keyRequired','No\x20starting\x20room\x20designated.\x20Defaulting\x20to\x20the\x20first\x20room.','7964JIQUFp'];a57c=function(){return E;};return a57c();}(function(a,b){const i=a57d,c=a();while(!![]){try{const d=parseInt(i(0xe9))/0x1*(parseInt(i(0xc4))/0x2)+parseInt(i(0x102))/0x3*(-parseInt(i(0xff))/0x4)+-parseInt(i(0xc2))/0x5+parseInt(i(0xe6))/0x6+parseInt(i(0xde))/0x7+-parseInt(i(0xc1))/0x8*(parseInt(i(0xcc))/0x9)+parseInt(i(0xd0))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a57c,0x19116));const a57b=(function(){let a=!![];return function(b,c){const d=a?function(){const j=a57d;if(c){const e=c[j(0xf7)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a57a=a57b(this,function(){const k=a57d;return a57a[k(0xfc)]()[k(0xc3)]('(((.+)+)+)+$')['toString']()['constructor'](a57a)[k(0xc3)]('(((.+)+)+)+$');});a57a();function a57d(a,b){const c=a57c();return a57d=function(d,e){d=d-0xc0;let f=c[d];return f;},a57d(a,b);}import{Logger}from'../utilities/logger.js';import{Direction}from'../types/enums.js';import{AbstractScene}from'../types/abstracts.js';import{RoomFactory}from'../factories/roomsF.js';export class Scene extends AbstractScene{[a57l(0xf0)];[a57l(0xf5)];[a57l(0xd2)];[a57l(0x103)];[a57l(0xcd)]=new Map();[a57l(0xdb)];constructor(a){const m=a57l;super(),this[m(0xdb)]=new RoomFactory(),this[m(0xf5)]=a[m(0xf5)],this[m(0xf0)]=this['generateRoomsFromConfig'](a['roomConfiguration']),this[m(0xd2)]=Logger[m(0xe4)](),this[m(0x103)]=new Map(),this[m(0xeb)](a[m(0xd5)]),this[m(0xd2)][m(0xd6)](m(0xfa)+Object[m(0xe0)](this[m(0xf0)])[m(0xfe)](',\x20'));}[a57l(0xf8)](){const n=a57l;this[n(0xf5)][n(0xd3)]=this['determineStartRoom']();}[a57l(0xd9)](a){const o=a57l;if(!this[o(0xdb)])throw new Error(o(0xdc));const b={};for(const c of a){const d=this[o(0xdb)]['createRoom'](c);b[c[o(0xce)]]=d;}return b;}[a57l(0xeb)](a){const p=a57l;for(const b of a){const c=this[p(0xf0)][b['name']];if(b['exits'])for(const d of b[p(0xd8)]){const e=d['direction']['toUpperCase'](),f=d['targetRoom'],g=d[p(0xe7)],h=this[p(0xf0)][f];h&&c[p(0xe3)](Direction[e],h,g);}}}[a57l(0xc0)](a){const q=a57l;if(this[q(0x103)][q(0xc9)](a[q(0xce)]))throw new Error('Actor\x20with\x20name\x20'+a['name']+q(0xd7));this['actors']['set'](a['name'],a);}['removeActor'](a){const r=a57l;if(!this['actors'][r(0xc9)](a))throw new Error(r(0xf6)+a+r(0xca));this[r(0x103)]['delete'](a);}[a57l(0xc5)](a){const s=a57l;return this[s(0x103)][s(0xdd)](a);}get[a57l(0xcf)](){const t=a57l;return Array['from'](this[t(0x103)][t(0xc8)]());}[a57l(0xf3)](a){const u=a57l;this['rooms'][a[u(0xce)]]=a,this[u(0xd2)][u(0xd6)](u(0xe5)+a['name']);}[a57l(0xee)](a){const v=a57l;return this['rooms'][a]?(delete this[v(0xf0)][a],this[v(0xd2)]['write'](v(0xda)+a),!![]):(this[v(0xd2)][v(0xd6)](v(0xf4)+a),![]);}['addItemToRoom'](a,b){const w=a57l,c=this[w(0xf0)][b];c?(c[w(0xd1)](a),this['logger'][w(0xd6)](w(0xf1)+a['name']+w(0xfb)+c[w(0xce)])):this['logger'][w(0xd6)]('Failed\x20to\x20add\x20item\x20'+a[w(0xce)]+w(0xf2)+b+'\x20not\x20found\x20in\x20scene.');}[a57l(0xe1)](a,b){const x=a57l,c=this['rooms'][b];c?(c[x(0xdf)](a),this[x(0xd2)][x(0xd6)]('Added\x20puzzle\x20to\x20room\x20'+c[x(0xce)])):this[x(0xd2)][x(0xd6)](x(0xcb)+b+x(0xea));}['setCharacterLocation'](a,b){const y=a57l,c=this[y(0xf0)][b];c?(this[y(0xcd)]['set'](a[y(0xce)],c),this['logger'][y(0xd6)](a[y(0xce)]+y(0xfd)+c[y(0xce)])):this[y(0xd2)][y(0xd6)](y(0x101)+a['name']+y(0xc7)+b+y(0xea));}[a57l(0xc6)](a){const z=a57l;return this[z(0xcd)]['get'](a['name']);}['determineStartRoom'](){const A=a57l,a=[];for(const c in this['rooms']){if(this[A(0xf0)]['hasOwnProperty'](c)){const d=this[A(0xf0)][c];d['isStartRoom']&&a[A(0xe2)](d);}}if(a[A(0xd4)]>0x1)throw new Error('Multiple\x20starting\x20rooms\x20have\x20been\x20defined.\x20Please\x20ensure\x20there\x27s\x20only\x20one\x20starting\x20room.');if(a['length']===0x1)return a[0x0];const b=Object[A(0xe0)](this[A(0xf0)]);if(b['length']===0x0)throw new Error(A(0x100));return console[A(0xef)](A(0xe8)),this[A(0xf0)][b[0x0]];}[a57l(0xec)](){const B=a57l;return this[B(0xf5)];}[a57l(0xed)](){const C=a57l;return this[C(0xf0)];}['connectRooms'](a,b,c,d){const D=a57l,e=this['rooms'][a],f=this[D(0xf0)][c];if(!e)throw new Error('Room\x20\x22'+a+D(0xf9));if(!f)throw new Error('Room\x20\x22'+c+D(0xf9));e[D(0xe3)](b,f,d);}}
1
+ const a57l=a57d;function a57d(a,b){const c=a57c();return a57d=function(d,e){d=d-0x1e9;let f=c[d];return f;},a57d(a,b);}(function(a,b){const i=a57d,c=a();while(!![]){try{const d=-parseInt(i(0x227))/0x1*(parseInt(i(0x202))/0x2)+-parseInt(i(0x1f6))/0x3+-parseInt(i(0x216))/0x4*(parseInt(i(0x215))/0x5)+-parseInt(i(0x21b))/0x6+-parseInt(i(0x206))/0x7+-parseInt(i(0x1fb))/0x8*(-parseInt(i(0x1f0))/0x9)+parseInt(i(0x201))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a57c,0x2879f));const a57b=(function(){let a=!![];return function(b,c){const d=a?function(){const j=a57d;if(c){const e=c[j(0x20c)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a57a=a57b(this,function(){const k=a57d;return a57a['toString']()[k(0x1f7)](k(0x214))['toString']()[k(0x200)](a57a)['search'](k(0x214));});a57a();function a57c(){const E=['No\x20starting\x20room\x20designated.\x20Defaulting\x20to\x20the\x20first\x20room.','\x22\x20does\x20not\x20exist.','getRooms','Attempted\x20to\x20remove\x20a\x20non-existent\x20room\x20from\x20scene:\x20','removeActor','createRoom','addExit','currentLocation','exits','\x20found\x20in\x20the\x20scene.','\x20to\x20room\x20','addRoom','keyRequired','has','setPuzzle','characterLocations','9aawLmF','Room\x20\x22','player','keys','roomConfiguration','get','60924cQHRsx','search','connectRooms','push','name','1547496VFHckD','logger','.\x20Room\x20','addItemToRoom','determineStartRoom','constructor','3622070xSZyhu','2SnQPvQ','\x20not\x20found\x20in\x20scene.','warn','direction','691880EvRapR','length','Removed\x20room\x20from\x20scene:\x20','Failed\x20to\x20add\x20puzzle.\x20Room\x20','Failed\x20to\x20add\x20item\x20','Room\x20Factory\x20was\x20not\x20correctly\x20initialized','apply','getActor','isStartRoom','addPuzzleToRoom','Added\x20item\x20','generateRoomsFromConfig','roomFactory','write','(((.+)+)+)+$','595QFrRWA','5564bzlXlf','delete','allActors','createExitsFromConfig','addItem','135282uBgfYS','Scene\x20initialized\x20with\x20rooms:\x20','Added\x20puzzle\x20to\x20room\x20','set','rooms','\x27s\x20location.\x20Room\x20','\x20is\x20now\x20in\x20room\x20','addActor','join','Added\x20room\x20to\x20scene:\x20','hasOwnProperty','No\x20rooms\x20have\x20been\x20defined\x20in\x20the\x20game.','82629TehONM','actors','removeRoom'];a57c=function(){return E;};return a57c();}import{Logger}from'../utilities/logger.js';import{Direction}from'../types/enums.js';import{AbstractScene}from'../types/abstracts.js';import{RoomFactory}from'../factories/roomsF.js';export class Scene extends AbstractScene{[a57l(0x21f)];[a57l(0x1f2)];['logger'];[a57l(0x228)];[a57l(0x1ef)]=new Map();['roomFactory'];constructor(a){const m=a57l;super(),this[m(0x212)]=new RoomFactory(),this[m(0x1f2)]=a[m(0x1f2)],this[m(0x21f)]=this[m(0x211)](a[m(0x1f4)]),this[m(0x1fc)]=Logger['getInstance'](),this[m(0x228)]=new Map(),this[m(0x219)](a[m(0x1f4)]),this[m(0x1fc)][m(0x213)](m(0x21c)+Object[m(0x1f3)](this['rooms'])[m(0x223)](',\x20'));}['initialize'](){const n=a57l;this[n(0x1f2)][n(0x231)]=this[n(0x1ff)]();}['generateRoomsFromConfig'](a){const o=a57l;if(!this[o(0x212)])throw new Error(o(0x20b));const b={};for(const c of a){const d=this[o(0x212)][o(0x22f)](c);b[c[o(0x1fa)]]=d;}return b;}[a57l(0x219)](a){const p=a57l;for(const b of a){const c=this['rooms'][b[p(0x1fa)]];if(b['exits'])for(const d of b[p(0x232)]){const e=d[p(0x205)]['toUpperCase'](),f=d['targetRoom'],g=d[p(0x1ec)],h=this[p(0x21f)][f];h&&c[p(0x230)](Direction[e],h,g);}}}[a57l(0x222)](a){const q=a57l;if(this[q(0x228)][q(0x1ed)](a[q(0x1fa)]))throw new Error('Actor\x20with\x20name\x20'+a[q(0x1fa)]+'\x20already\x20exists\x20in\x20the\x20scene.');this[q(0x228)][q(0x21e)](a[q(0x1fa)],a);}[a57l(0x22e)](a){const r=a57l;if(!this[r(0x228)][r(0x1ed)](a))throw new Error('No\x20actor\x20with\x20name\x20'+a+r(0x1e9));this['actors'][r(0x217)](a);}[a57l(0x20d)](a){const s=a57l;return this[s(0x228)][s(0x1f5)](a);}get[a57l(0x218)](){const t=a57l;return Array['from'](this[t(0x228)]['values']());}[a57l(0x1eb)](a){const u=a57l;this[u(0x21f)][a[u(0x1fa)]]=a,this[u(0x1fc)][u(0x213)](u(0x224)+a[u(0x1fa)]);}[a57l(0x229)](a){const v=a57l;return this[v(0x21f)][a]?(delete this[v(0x21f)][a],this[v(0x1fc)][v(0x213)](v(0x208)+a),!![]):(this[v(0x1fc)]['write'](v(0x22d)+a),![]);}[a57l(0x1fe)](a,b){const w=a57l,c=this[w(0x21f)][b];c?(c[w(0x21a)](a),this['logger'][w(0x213)](w(0x210)+a[w(0x1fa)]+w(0x1ea)+c[w(0x1fa)])):this['logger'][w(0x213)](w(0x20a)+a[w(0x1fa)]+w(0x1fd)+b+w(0x203));}[a57l(0x20f)](a,b){const x=a57l,c=this[x(0x21f)][b];c?(c[x(0x1ee)](a),this[x(0x1fc)][x(0x213)](x(0x21d)+c[x(0x1fa)])):this[x(0x1fc)][x(0x213)](x(0x209)+b+'\x20not\x20found\x20in\x20scene.');}['setCharacterLocation'](a,b){const y=a57l,c=this[y(0x21f)][b];c?(this[y(0x1ef)][y(0x21e)](a[y(0x1fa)],c),this[y(0x1fc)]['write'](a['name']+y(0x221)+c['name'])):this['logger'][y(0x213)]('Failed\x20to\x20set\x20'+a[y(0x1fa)]+y(0x220)+b+'\x20not\x20found\x20in\x20scene.');}['getCharacterLocation'](a){const z=a57l;return this[z(0x1ef)][z(0x1f5)](a[z(0x1fa)]);}['determineStartRoom'](){const A=a57l,a=[];for(const c in this['rooms']){if(this['rooms'][A(0x225)](c)){const d=this['rooms'][c];d[A(0x20e)]&&a[A(0x1f9)](d);}}if(a[A(0x207)]>0x1)throw new Error('Multiple\x20starting\x20rooms\x20have\x20been\x20defined.\x20Please\x20ensure\x20there\x27s\x20only\x20one\x20starting\x20room.');if(a[A(0x207)]===0x1)return a[0x0];const b=Object[A(0x1f3)](this[A(0x21f)]);if(b[A(0x207)]===0x0)throw new Error(A(0x226));return console[A(0x204)](A(0x22a)),this['rooms'][b[0x0]];}['getPlayer'](){const B=a57l;return this[B(0x1f2)];}[a57l(0x22c)](){const C=a57l;return this[C(0x21f)];}[a57l(0x1f8)](a,b,c,d){const D=a57l,e=this[D(0x21f)][a],f=this[D(0x21f)][c];if(!e)throw new Error('Room\x20\x22'+a+D(0x22b));if(!f)throw new Error(D(0x1f1)+c+D(0x22b));e[D(0x230)](b,f,d);}}