@maka/maka-cli 4.5.24 → 4.5.25

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 (130) hide show
  1. package/bundle/obf/package.json +1 -1
  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/aws/_index.js +1 -1
  5. package/bundle/obf/src/commands/aws/aws.command.js +1 -1
  6. package/bundle/obf/src/commands/aws/ci.sub.cmd.js +1 -1
  7. package/bundle/obf/src/commands/aws/ckp.sub.cmd.js +1 -1
  8. package/bundle/obf/src/commands/aws/csg.sub.cmd.js +1 -1
  9. package/bundle/obf/src/commands/aws/di.sub.cmd.js +1 -1
  10. package/bundle/obf/src/commands/aws/dkp.sub.cmd.js +1 -1
  11. package/bundle/obf/src/commands/aws/dsg.sub.cmd.js +1 -1
  12. package/bundle/obf/src/commands/aws/rbi.sub.cmd.js +1 -1
  13. package/bundle/obf/src/commands/aws/rkp.sub.cmd.js +1 -1
  14. package/bundle/obf/src/commands/aws/sth.sub.cmd.js +1 -1
  15. package/bundle/obf/src/commands/aws/ti.sub.cmd.js +1 -1
  16. package/bundle/obf/src/commands/build/_index.js +1 -1
  17. package/bundle/obf/src/commands/build/build.js +1 -1
  18. package/bundle/obf/src/commands/build/docker.sub.cmd.js +1 -1
  19. package/bundle/obf/src/commands/create.js +1 -1
  20. package/bundle/obf/src/commands/debug.js +1 -1
  21. package/bundle/obf/src/commands/deploy.js +1 -1
  22. package/bundle/obf/src/commands/game/_index.js +1 -1
  23. package/bundle/obf/src/commands/game/battleship.sub.cmd.js +1 -1
  24. package/bundle/obf/src/commands/game/play.command.js +1 -1
  25. package/bundle/obf/src/commands/game/pong.sub.cmd.js +1 -1
  26. package/bundle/obf/src/commands/game/sideQuest/commands/command.js +1 -1
  27. package/bundle/obf/src/commands/game/sideQuest/commands/drop.js +1 -1
  28. package/bundle/obf/src/commands/game/sideQuest/commands/equip.js +1 -1
  29. package/bundle/obf/src/commands/game/sideQuest/commands/go.js +1 -1
  30. package/bundle/obf/src/commands/game/sideQuest/commands/lock.js +1 -1
  31. package/bundle/obf/src/commands/game/sideQuest/commands/look.js +1 -1
  32. package/bundle/obf/src/commands/game/sideQuest/commands/say.js +1 -1
  33. package/bundle/obf/src/commands/game/sideQuest/commands/search.js +1 -1
  34. package/bundle/obf/src/commands/game/sideQuest/commands/solve.js +1 -1
  35. package/bundle/obf/src/commands/game/sideQuest/commands/take.js +1 -1
  36. package/bundle/obf/src/commands/game/sideQuest/commands/unequip.js +1 -1
  37. package/bundle/obf/src/commands/game/sideQuest/commands/unlock.js +1 -1
  38. package/bundle/obf/src/commands/game/sideQuest/commands/use.js +1 -1
  39. package/bundle/obf/src/commands/game/sideQuest/factories/commandF.js +1 -1
  40. package/bundle/obf/src/commands/game/sideQuest/factories/roomsF.js +1 -1
  41. package/bundle/obf/src/commands/game/sideQuest/game.js +1 -1
  42. package/bundle/obf/src/commands/game/sideQuest/models/_index.js +1 -1
  43. package/bundle/obf/src/commands/game/sideQuest/models/door.js +1 -1
  44. package/bundle/obf/src/commands/game/sideQuest/models/inventory.js +1 -1
  45. package/bundle/obf/src/commands/game/sideQuest/models/item.js +1 -1
  46. package/bundle/obf/src/commands/game/sideQuest/models/npc.js +1 -1
  47. package/bundle/obf/src/commands/game/sideQuest/models/player.js +1 -1
  48. package/bundle/obf/src/commands/game/sideQuest/models/puzzle.js +1 -1
  49. package/bundle/obf/src/commands/game/sideQuest/models/room.js +1 -1
  50. package/bundle/obf/src/commands/game/sideQuest/models/scene.js +1 -1
  51. package/bundle/obf/src/commands/game/sideQuest/scenes/items.js +1 -1
  52. package/bundle/obf/src/commands/game/sideQuest/scenes/rooms.js +1 -1
  53. package/bundle/obf/src/commands/game/sideQuest/types/abstracts.js +1 -1
  54. package/bundle/obf/src/commands/game/sideQuest/types/enums.js +1 -1
  55. package/bundle/obf/src/commands/game/sideQuest/types/interfaces.js +1 -1
  56. package/bundle/obf/src/commands/game/sideQuest/types/types.js +1 -1
  57. package/bundle/obf/src/commands/game/sideQuest/ui.js +1 -1
  58. package/bundle/obf/src/commands/game/sideQuest/utilities/logger.js +1 -1
  59. package/bundle/obf/src/commands/game/sideQuest.sub.cmd.js +1 -1
  60. package/bundle/obf/src/commands/game/snake.sub.cmd.js +1 -1
  61. package/bundle/obf/src/commands/game/tetris.sub.cmd.js +1 -1
  62. package/bundle/obf/src/commands/generate.js +1 -1
  63. package/bundle/obf/src/commands/get/_index.js +1 -1
  64. package/bundle/obf/src/commands/get/get.command.js +1 -1
  65. package/bundle/obf/src/commands/get/global.sub.cmd.js +1 -1
  66. package/bundle/obf/src/commands/get/local.sub.cmd.js +1 -1
  67. package/bundle/obf/src/commands/get/whoami.sub.cmd.js +1 -1
  68. package/bundle/obf/src/commands/help.js +1 -1
  69. package/bundle/obf/src/commands/jsdoc.js +1 -1
  70. package/bundle/obf/src/commands/lint.js +1 -1
  71. package/bundle/obf/src/commands/login.js +1 -1
  72. package/bundle/obf/src/commands/logout.js +1 -1
  73. package/bundle/obf/src/commands/logs.js +1 -1
  74. package/bundle/obf/src/commands/maka.cmd.js +1 -1
  75. package/bundle/obf/src/commands/murder.js +1 -1
  76. package/bundle/obf/src/commands/proxy.js +1 -1
  77. package/bundle/obf/src/commands/reconfig.js +1 -1
  78. package/bundle/obf/src/commands/run/_index.js +1 -1
  79. package/bundle/obf/src/commands/run/docker.sub.cmd.js +1 -1
  80. package/bundle/obf/src/commands/run/run.command.js +1 -1
  81. package/bundle/obf/src/commands/set/_index.js +1 -1
  82. package/bundle/obf/src/commands/set/global.sub.cmd.js +1 -1
  83. package/bundle/obf/src/commands/set/local.sub.cmd.js +1 -1
  84. package/bundle/obf/src/commands/set/set.command.js +1 -1
  85. package/bundle/obf/src/commands/ssh.js +1 -1
  86. package/bundle/obf/src/commands/ssl.js +1 -1
  87. package/bundle/obf/src/commands/test.js +1 -1
  88. package/bundle/obf/src/commands/version.js +1 -1
  89. package/bundle/obf/src/error.js +1 -1
  90. package/bundle/obf/src/exec.js +1 -1
  91. package/bundle/obf/src/generator.js +1 -1
  92. package/bundle/obf/src/generators/_index.js +1 -1
  93. package/bundle/obf/src/generators/api.js +1 -1
  94. package/bundle/obf/src/generators/collection.js +1 -1
  95. package/bundle/obf/src/generators/component.js +1 -1
  96. package/bundle/obf/src/generators/config.js +1 -1
  97. package/bundle/obf/src/generators/dbc.js +1 -1
  98. package/bundle/obf/src/generators/dockerfile.js +1 -1
  99. package/bundle/obf/src/generators/hook.js +1 -1
  100. package/bundle/obf/src/generators/kit.js +1 -1
  101. package/bundle/obf/src/generators/layout.js +1 -1
  102. package/bundle/obf/src/generators/maka.gen.js +1 -1
  103. package/bundle/obf/src/generators/methods.js +1 -1
  104. package/bundle/obf/src/generators/package.js +1 -1
  105. package/bundle/obf/src/generators/page.js +1 -1
  106. package/bundle/obf/src/generators/publish.js +1 -1
  107. package/bundle/obf/src/generators/route.js +1 -1
  108. package/bundle/obf/src/generators/service.js +1 -1
  109. package/bundle/obf/src/generators/services/_index.js +1 -1
  110. package/bundle/obf/src/generators/services/openssl.js +1 -1
  111. package/bundle/obf/src/generators/services/translation.js +1 -1
  112. package/bundle/obf/src/maka.js +1 -1
  113. package/bundle/obf/src/tool.js +1 -1
  114. package/bundle/obf/src/tools/actions/actions.class.js +1 -1
  115. package/bundle/obf/src/tools/aws/aws.class.js +1 -1
  116. package/bundle/obf/src/tools/aws/aws.interfaces.js +1 -1
  117. package/bundle/obf/src/tools/docker/docker.class.js +1 -1
  118. package/bundle/obf/src/tools/docker/docker.interfaces.js +1 -1
  119. package/bundle/obf/src/tools/fsi/fsi.class.js +1 -1
  120. package/bundle/obf/src/tools/fsi/fsi.interfaces.js +1 -1
  121. package/bundle/obf/src/tools/https/https.class.js +1 -1
  122. package/bundle/obf/src/tools/https/https.interface.js +1 -1
  123. package/bundle/obf/src/tools/log/log.class.js +1 -1
  124. package/bundle/obf/src/tools/log/log.interfaces.js +1 -1
  125. package/bundle/obf/src/tools/spawn-async/spawn-async.class.js +1 -1
  126. package/bundle/obf/src/tools/spawn-async/spawn-async.interfaces.js +1 -1
  127. package/bundle/obf/src/tools/ssh/ssh.class.js +1 -1
  128. package/bundle/obf/src/tools/ssh/ssh.interfaces.js +1 -1
  129. package/bundle/obf/src/tools/ssl/ssl.class.js +1 -1
  130. package/package.json +1 -1
@@ -1 +1 @@
1
- const a34i=a34d;function a34d(a,b){const c=a34c();return a34d=function(d,e){d=d-0x79;let f=c[d];return f;},a34d(a,b);}(function(a,b){const f=a34d,c=a();while(!![]){try{const d=parseInt(f(0x94))/0x1+-parseInt(f(0x87))/0x2*(parseInt(f(0x8d))/0x3)+parseInt(f(0x91))/0x4+-parseInt(f(0x8a))/0x5*(-parseInt(f(0x92))/0x6)+parseInt(f(0x82))/0x7*(parseInt(f(0x81))/0x8)+parseInt(f(0x89))/0x9*(parseInt(f(0x7f))/0xa)+parseInt(f(0x79))/0xb*(-parseInt(f(0x85))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a34c,0x661b3));const a34b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a34d;if(c){const e=c[g(0x8c)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a34a=a34b(this,function(){const h=a34d;return a34a[h(0x88)]()[h(0x83)](h(0x84))[h(0x88)]()[h(0x8b)](a34a)[h(0x83)](h(0x84));});a34a();import{Command}from'./command.js';class UnequipCommand extends Command{static [a34i(0x7d)]=a34i(0x7a);static [a34i(0x8f)]=a34i(0x80);['execute'](a){const j=a34i,b=a['join']('\x20')[j(0x8e)](),c=this[j(0x93)][j(0x7b)](b);return this[j(0x90)][j(0x86)](j(0x7e)+this[j(0x93)]['name']+j(0x7c)+c),c;}}export{UnequipCommand};function a34c(){const k=['5AOOJfx','constructor','apply','1868604qDWArt','toLowerCase','description','logger','2573528WayLuH','2780142hZxbYc','actor','219559egDxAp','2805aTZUyP','unqeuip','unequip','\x20unqeuiped\x20','verb','UnequipCommand:\x20','7474840wtdArO','Unequip\x20an\x20item.','24lvKoOT','1488242zBzQoA','search','(((.+)+)+)+$','78612oaUzab','write','2JBvebd','toString','9FkafWz'];a34c=function(){return k;};return a34c();}
1
+ const a34h=a34d;(function(a,b){const f=a34d,c=a();while(!![]){try{const d=parseInt(f(0xb6))/0x1+-parseInt(f(0xcf))/0x2+-parseInt(f(0xb9))/0x3*(-parseInt(f(0xc8))/0x4)+parseInt(f(0xcb))/0x5*(-parseInt(f(0xbc))/0x6)+parseInt(f(0xc7))/0x7+parseInt(f(0xbf))/0x8*(parseInt(f(0xc4))/0x9)+parseInt(f(0xc2))/0xa*(-parseInt(f(0xcd))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a34c,0xcd636));const a34b=(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;};}()),a34a=a34b(this,function(){const g=a34d;return a34a[g(0xc1)]()[g(0xb7)](g(0xb8))[g(0xc1)]()[g(0xc6)](a34a)[g(0xb7)](g(0xb8));});function a34c(){const j=['verb','name','65HMxxNu','\x20unqeuiped\x20','57123zaGaVX','Unequip\x20an\x20item.','2341428JdeJlp','UnequipCommand:\x20','443234drubmg','search','(((.+)+)+)+$','161127ibAVmM','join','toLowerCase','409638jxBxTg','description','actor','9680384lcNaht','write','toString','650snxLkd','execute','9NRdztD','unequip','constructor','6950979nCnuwh','44yCSTFj'];a34c=function(){return j;};return a34c();}a34a();import{Command}from'./command.js';function a34d(a,b){const c=a34c();return a34d=function(d,e){d=d-0xb6;let f=c[d];return f;},a34d(a,b);}class UnequipCommand extends Command{static [a34h(0xc9)]='unqeuip';static [a34h(0xbd)]=a34h(0xce);[a34h(0xc3)](a){const i=a34h,b=a[i(0xba)]('\x20')[i(0xbb)](),c=this[i(0xbe)][i(0xc5)](b);return this['logger'][i(0xc0)](i(0xd0)+this['actor'][i(0xca)]+i(0xcc)+c),c;}}export{UnequipCommand};
@@ -1 +1 @@
1
- const a35k=a35d;(function(a,b){const h=a35d,c=a();while(!![]){try{const d=-parseInt(h(0x13f))/0x1*(parseInt(h(0x14f))/0x2)+parseInt(h(0x158))/0x3*(-parseInt(h(0x130))/0x4)+-parseInt(h(0x138))/0x5+parseInt(h(0x141))/0x6*(-parseInt(h(0x14c))/0x7)+-parseInt(h(0x14e))/0x8*(-parseInt(h(0x143))/0x9)+parseInt(h(0x133))/0xa+parseInt(h(0x149))/0xb;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a35c,0xc5901));function a35d(a,b){const c=a35c();return a35d=function(d,e){d=d-0x130;let f=c[d];return f;},a35d(a,b);}function a35c(){const n=['hasItem','toLowerCase','actor','execute','3eyBLRM','exits','910132KmEZzs','name','currentLocation','15328680WSSHWJ','Please\x20specify\x20which\x20door\x20you\x20want\x20to\x20unlock.','logger','apply','verb','4669030stFBif','You\x20don\x27t\x20have\x20the\x20key\x20or\x20solution\x20to\x20unlock\x20this\x20door.','unlock','\x22\x20here.','search','description','\x20is\x20attempted\x20to\x20unlock\x20','317179WABLYP','getItem','1896wVBCMp','constructor','81WiKXdp','length','inventory','There\x27s\x20no\x20door\x20named\x20\x22','\x20does\x20not\x20have\x20the\x20necessary\x20key\x20for\x20','Unlock\x20a\x20door.','29265610heMvnh','UnlockCommand:\x20','toString','25179NAhRcH','attemptUnlockExit','444200cPgPFM','10NbeRoM','(((.+)+)+)+$','get','has','write'];a35c=function(){return n;};return a35c();}const a35b=(function(){let a=!![];return function(b,c){const d=a?function(){const i=a35d;if(c){const e=c[i(0x136)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a35a=a35b(this,function(){const j=a35d;return a35a[j(0x14b)]()[j(0x13c)](j(0x150))[j(0x14b)]()[j(0x142)](a35a)['search'](j(0x150));});a35a();import{Door}from'../models/door.js';import{Command}from'./command.js';class UnlockCommand extends Command{static [a35k(0x137)]=a35k(0x13a);static [a35k(0x13d)]=a35k(0x148);[a35k(0x157)](a){const l=a35k;return this[l(0x13a)](a);}['unlock'](a){const m=a35k;if(a[m(0x144)]===0x0)return this[m(0x135)]['error']('UnlockCommand:\x20No\x20target\x20specified.'),m(0x134);const b=a[0x0][m(0x155)](),c=this[m(0x156)][m(0x132)];if(this['isValidDirection'](b)&&c['exits'][m(0x152)](b)){const d=c[m(0x159)][m(0x151)](b);if(d instanceof Door){const e=d['unlockItemOrSolution']?.[m(0x155)]();if(e&&this[m(0x156)][m(0x145)][m(0x154)](e)){const f=this['actor'][m(0x145)][m(0x140)](e);if(f){const g=c[m(0x14d)](b,f[m(0x131)]);return this[m(0x135)][m(0x153)](m(0x14a)+this[m(0x156)][m(0x131)]+m(0x13e)+b+'.\x20Result:\x20'+g),g;}}return this[m(0x135)][m(0x153)](m(0x14a)+this['actor'][m(0x131)]+m(0x147)+b+'.'),m(0x139);}else return this[m(0x135)][m(0x153)](m(0x14a)+b+'\x20is\x20not\x20a\x20valid\x20exit\x20in\x20'+c['name']+'.'),m(0x146)+b+m(0x13b);}else return this[m(0x135)]['write'](m(0x14a)+b+'\x20is\x20not\x20a\x20valid\x20exit\x20in\x20'+c['name']+'.'),m(0x146)+b+m(0x13b);}}export{UnlockCommand};
1
+ const a35k=a35d;(function(a,b){const h=a35d,c=a();while(!![]){try{const d=parseInt(h(0x119))/0x1*(-parseInt(h(0x127))/0x2)+parseInt(h(0x124))/0x3+parseInt(h(0x12c))/0x4+parseInt(h(0x11a))/0x5+-parseInt(h(0x126))/0x6+parseInt(h(0x11f))/0x7*(parseInt(h(0x110))/0x8)+-parseInt(h(0x11c))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a35c,0x4a954));const a35b=(function(){let a=!![];return function(b,c){const d=a?function(){const i=a35d;if(c){const e=c[i(0x10f)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a35a=a35b(this,function(){const j=a35d;return a35a[j(0x12b)]()[j(0x123)](j(0x122))[j(0x12b)]()[j(0x10c)](a35a)['search'](j(0x122));});a35a();import{Door}from'../models/door.js';import{Command}from'./command.js';class UnlockCommand extends Command{static [a35k(0x109)]=a35k(0x10b);static ['description']=a35k(0x10e);[a35k(0x117)](a){return this['unlock'](a);}['unlock'](a){const l=a35k;if(a[l(0x125)]===0x0)return this[l(0x116)]['error'](l(0x11d)),l(0x114);const b=a[0x0]['toLowerCase'](),c=this[l(0x128)][l(0x11e)];if(this[l(0x120)](b)&&c['exits']['has'](b)){const d=c['exits'][l(0x12a)](b);if(d instanceof Door){const e=d[l(0x10d)]?.[l(0x112)]();if(e&&this[l(0x128)][l(0x115)][l(0x11b)](e)){const f=this[l(0x128)][l(0x115)]['getItem'](e);if(f){const g=c[l(0x111)](b,f[l(0x129)]);return this[l(0x116)][l(0x12e)]('UnlockCommand:\x20'+this['actor'][l(0x129)]+'\x20is\x20attempted\x20to\x20unlock\x20'+b+l(0x113)+g),g;}}return this[l(0x116)][l(0x12e)]('UnlockCommand:\x20'+this[l(0x128)][l(0x129)]+l(0x10a)+b+'.'),'You\x20don\x27t\x20have\x20the\x20key\x20or\x20solution\x20to\x20unlock\x20this\x20door.';}else return this[l(0x116)][l(0x12e)]('UnlockCommand:\x20'+b+l(0x121)+c[l(0x129)]+'.'),l(0x12d)+b+l(0x108);}else return this['logger'][l(0x12e)](l(0x118)+b+l(0x121)+c[l(0x129)]+'.'),l(0x12d)+b+l(0x108);}}export{UnlockCommand};function a35d(a,b){const c=a35c();return a35d=function(d,e){d=d-0x108;let f=c[d];return f;},a35d(a,b);}function a35c(){const m=['.\x20Result:\x20','Please\x20specify\x20which\x20door\x20you\x20want\x20to\x20unlock.','inventory','logger','execute','UnlockCommand:\x20','1434ZFYnuE','2879115DMbRUY','hasItem','2934099mlCcDh','UnlockCommand:\x20No\x20target\x20specified.','currentLocation','622706qhRHGZ','isValidDirection','\x20is\x20not\x20a\x20valid\x20exit\x20in\x20','(((.+)+)+)+$','search','295242xRDBqL','length','283326WsaEBj','698mwUzxi','actor','name','get','toString','240652RAgAMr','There\x27s\x20no\x20door\x20named\x20\x22','write','\x22\x20here.','verb','\x20does\x20not\x20have\x20the\x20necessary\x20key\x20for\x20','unlock','constructor','unlockItemOrSolution','Unlock\x20a\x20door.','apply','40wSoVPX','attemptUnlockExit','toLowerCase'];a35c=function(){return m;};return a35c();}
@@ -1 +1 @@
1
- const a36i=a36d;(function(a,b){const f=a36d,c=a();while(!![]){try{const d=-parseInt(f(0x9f))/0x1*(-parseInt(f(0x84))/0x2)+parseInt(f(0x91))/0x3+-parseInt(f(0x8a))/0x4*(-parseInt(f(0x99))/0x5)+parseInt(f(0x86))/0x6+parseInt(f(0x82))/0x7+-parseInt(f(0x90))/0x8*(parseInt(f(0x97))/0x9)+-parseInt(f(0x98))/0xa*(parseInt(f(0x9e))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a36c,0x5da0b));const a36b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a36d;if(c){const e=c[g(0xa3)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a36a=a36b(this,function(){const h=a36d;return a36a['toString']()[h(0xa2)](h(0xa0))[h(0x8c)]()[h(0xa4)](a36a)[h(0xa2)](h(0xa0));});function a36d(a,b){const c=a36c();return a36d=function(d,e){d=d-0x82;let f=c[d];return f;},a36d(a,b);}a36a();import{Command}from'./command.js';class UseCommand extends Command{static ['verb']=a36i(0x9c);static [a36i(0x92)]=a36i(0x96);['execute'](a){const j=a36i;return this[j(0x9c)](a);}[a36i(0x9c)](a){const k=a36i,b=a[k(0x89)]('\x20')[k(0x8b)]();if(!this[k(0x93)][k(0x88)][k(0x9b)](b))return this[k(0x9a)]['write']('UseCommand:\x20'+this['actor']['name']+'\x20attempted\x20to\x20use\x20'+b+',\x20which\x20is\x20not\x20in\x20their\x20inventory.'),k(0x83)+b+k(0x85);const c=this[k(0x93)][k(0x88)]['getItem'](b);if(!c)return this[k(0x9a)]['write'](k(0x8d)+b+k(0x8f)+this['actor']['name']+k(0x87)),k(0x83)+b+k(0x85);if(typeof c['use']===k(0xa1)){const d=c[k(0x9c)]();return this[k(0x9a)][k(0x9d)](k(0x8d)+this['actor']['name']+'\x20used\x20'+b+'.'),d;}else return this[k(0x9a)][k(0x9d)](k(0x8d)+b+k(0x8e)),k(0x95)+b+k(0x94);}}function a36c(){const l=['join','4276IsVjsa','toLowerCase','toString','UseCommand:\x20','\x20doesn\x27t\x20have\x20a\x20use\x20method.','\x20not\x20retrieved\x20from\x20','4299344JqIvSm','884136YpYmnQ','description','actor','\x20in\x20this\x20way.','You\x20can\x27t\x20use\x20the\x20','Use\x20an\x20item.','9agatIS','3256550MdHDLi','705LkPvBP','logger','hasItem','use','write','22byOoYa','2PRarGF','(((.+)+)+)+$','function','search','apply','constructor','2003484JQQeAM','You\x20don\x27t\x20have\x20the\x20','366518huDTzZ','\x20to\x20use.','2844336TBQndg','\x27s\x20inventory.','inventory'];a36c=function(){return l;};return a36c();}export{UseCommand};
1
+ const a36i=a36d;(function(a,b){const f=a36d,c=a();while(!![]){try{const d=-parseInt(f(0x8c))/0x1+-parseInt(f(0x93))/0x2+parseInt(f(0x8b))/0x3*(-parseInt(f(0x8e))/0x4)+parseInt(f(0x89))/0x5*(-parseInt(f(0x94))/0x6)+parseInt(f(0x90))/0x7+-parseInt(f(0x82))/0x8+parseInt(f(0x76))/0x9*(parseInt(f(0x91))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a36c,0x6c39f));const a36b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a36d;if(c){const e=c[g(0x88)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a36a=a36b(this,function(){const h=a36d;return a36a[h(0x97)]()[h(0x95)](h(0x87))[h(0x97)]()[h(0x7b)](a36a)[h(0x95)](h(0x87));});a36a();function a36d(a,b){const c=a36c();return a36d=function(d,e){d=d-0x76;let f=c[d];return f;},a36d(a,b);}function a36c(){const l=['hasItem','constructor','actor','getItem','\x20to\x20use.','You\x20don\x27t\x20have\x20the\x20','\x20in\x20this\x20way.','name','2957744dROdPU','\x20used\x20','verb','Use\x20an\x20item.','inventory','(((.+)+)+)+$','apply','457295GSdIuu','join','1686105bGAfot','772790XstzPY','UseCommand:\x20','4eeFiat','\x20doesn\x27t\x20have\x20a\x20use\x20method.','2427866gQxZRR','10GkCgCi','write','1224Svomgj','18NJKRwk','search','toLowerCase','toString','18683901hsrCDS','logger','use',',\x20which\x20is\x20not\x20in\x20their\x20inventory.'];a36c=function(){return l;};return a36c();}import{Command}from'./command.js';class UseCommand extends Command{static [a36i(0x84)]='use';static ['description']=a36i(0x85);['execute'](a){const j=a36i;return this[j(0x78)](a);}[a36i(0x78)](a){const k=a36i,b=a[k(0x8a)]('\x20')[k(0x96)]();if(!this[k(0x7c)][k(0x86)][k(0x7a)](b))return this['logger']['write'](k(0x8d)+this[k(0x7c)]['name']+'\x20attempted\x20to\x20use\x20'+b+k(0x79)),k(0x7f)+b+'\x20to\x20use.';const c=this[k(0x7c)][k(0x86)][k(0x7d)](b);if(!c)return this[k(0x77)][k(0x92)](k(0x8d)+b+'\x20not\x20retrieved\x20from\x20'+this['actor']['name']+'\x27s\x20inventory.'),'You\x20don\x27t\x20have\x20the\x20'+b+k(0x7e);if(typeof c['use']==='function'){const d=c[k(0x78)]();return this['logger'][k(0x92)](k(0x8d)+this[k(0x7c)][k(0x81)]+k(0x83)+b+'.'),d;}else return this[k(0x77)][k(0x92)](k(0x8d)+b+k(0x8f)),'You\x20can\x27t\x20use\x20the\x20'+b+k(0x80);}}export{UseCommand};
@@ -1 +1 @@
1
- const a37i=a37d;(function(a,b){const f=a37d,c=a();while(!![]){try{const d=-parseInt(f(0xba))/0x1+-parseInt(f(0xb4))/0x2+parseInt(f(0xb3))/0x3*(-parseInt(f(0xad))/0x4)+parseInt(f(0xbc))/0x5+parseInt(f(0xaf))/0x6*(-parseInt(f(0xb6))/0x7)+parseInt(f(0xb9))/0x8+-parseInt(f(0xbb))/0x9*(-parseInt(f(0xb7))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a37c,0xcd6d7));const a37b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a37d;if(c){const e=c[g(0xb0)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a37a=a37b(this,function(){const h=a37d;return a37a[h(0xb5)]()['search'](h(0xab))[h(0xb5)]()[h(0xaa)](a37a)[h(0xb8)](h(0xab));});function a37d(a,b){const c=a37c();return a37d=function(d,e){d=d-0xaa;let f=c[d];return f;},a37d(a,b);}a37a();class CommandFactory{static [a37i(0xb1)]={};static[a37i(0xae)](a,b){const j=a37i;this[j(0xb1)][a]=b;}static[a37i(0xb2)](a,b){const k=a37i,c=this[k(0xb1)][a];if(c)return new c(b);return null;}static[a37i(0xac)](){return this['commandMap'];}}export{CommandFactory};function a37c(){const l=['toString','7YwYzlu','6011270xiyPiB','search','361696hqUJKy','410404mUzVsD','54rGVwnt','2373670iXlCtz','constructor','(((.+)+)+)+$','getAllRegisteredCommands','44Hutevu','registerCommand','8163624gtXRlb','apply','commandMap','createCommand','98733jzmDAc','2304496lDMtIC'];a37c=function(){return l;};return a37c();}
1
+ const a37i=a37d;(function(a,b){const f=a37d,c=a();while(!![]){try{const d=-parseInt(f(0x1f6))/0x1+parseInt(f(0x203))/0x2*(parseInt(f(0x1ff))/0x3)+-parseInt(f(0x1fa))/0x4+parseInt(f(0x1f5))/0x5+-parseInt(f(0x200))/0x6*(-parseInt(f(0x1fb))/0x7)+parseInt(f(0x204))/0x8*(parseInt(f(0x1fc))/0x9)+parseInt(f(0x205))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a37c,0x264aa));function a37c(){const m=['createCommand','getAllRegisteredCommands','807sTwkJr','6bdEZjW','constructor','registerCommand','302MQZSyd','37360DSHFPF','1530440qeqJHb','(((.+)+)+)+$','toString','213655OLYjNn','203517PWzhPT','commandMap','search','apply','412828yapEBv','936404TIhbbJ','180nhTEmj'];a37c=function(){return m;};return a37c();}const a37b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a37d;if(c){const e=c[g(0x1f9)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a37a=a37b(this,function(){const h=a37d;return a37a[h(0x1f4)]()[h(0x1f8)](h(0x206))[h(0x1f4)]()[h(0x201)](a37a)[h(0x1f8)]('(((.+)+)+)+$');});function a37d(a,b){const c=a37c();return a37d=function(d,e){d=d-0x1f4;let f=c[d];return f;},a37d(a,b);}a37a();class CommandFactory{static [a37i(0x1f7)]={};static[a37i(0x202)](a,b){const j=a37i;this[j(0x1f7)][a]=b;}static[a37i(0x1fd)](a,b){const k=a37i,c=this[k(0x1f7)][a];if(c)return new c(b);return null;}static[a37i(0x1fe)](){const l=a37i;return this[l(0x1f7)];}}export{CommandFactory};
@@ -1 +1 @@
1
- function a38d(a,b){const c=a38c();return a38d=function(d,e){d=d-0xe6;let f=c[d];return f;},a38d(a,b);}const a38h=a38d;(function(a,b){const f=a38d,c=a();while(!![]){try{const d=-parseInt(f(0xf3))/0x1*(-parseInt(f(0xed))/0x2)+-parseInt(f(0x104))/0x3*(-parseInt(f(0xf4))/0x4)+-parseInt(f(0xec))/0x5+parseInt(f(0x103))/0x6*(parseInt(f(0xee))/0x7)+parseInt(f(0xf0))/0x8+-parseInt(f(0x100))/0x9+-parseInt(f(0xf2))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a38c,0xf1d10));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[g(0xf7)]()['search'](g(0xe8))[g(0xf7)]()[g(0xe9)](a38a)['search']('(((.+)+)+)+$');});function a38c(){const n=['147725fcXwWd','500nGPpFI','1106aaMbBL','rewardItem','9078504zVIXxz','setPuzzle','31653770oJaThb','6722nBNXmU','225172wSdZNC','rifle','name','toString','legarmor','gauntlets','roomType','createItem','addItem','toUpperCase','forEach','sword','12408516pmuDKo','INSIDE','convertToRoomConfig','55218nqdRAL','69MPreLU','key','createRoom','type','createPuzzle','boots','isStartRoom','description','gloves','puzzle','items','(((.+)+)+)+$','constructor','bodyarmor','inventory'];a38c=function(){return n;};return a38c();}a38a();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{[a38h(0x106)](a){const i=a38h,b=this[i(0x102)](a),c=new Room(b);if(a['items']){const d=new Inventory();a[i(0xe7)][i(0xfe)](e=>{const j=i;d[j(0xfc)](this['createItem'](e));}),c[i(0xeb)]=d;}return a[i(0xe6)]&&c[i(0xf1)](this[i(0x108)](a[i(0xe6)])),c;}['createItem'](a){const k=a38h;switch(a[k(0x107)]){case k(0x105):return new Key(a[k(0xf6)],a[k(0x10b)]);case'book':return new Book(a[k(0xf6)],a[k(0x10b)],a['content']);case k(0xff):return new Sword(a[k(0xf6)],a[k(0x10b)]);case k(0xf5):return new Rifle(a[k(0xf6)],a[k(0x10b)]);case'helmet':return new Helmet(a[k(0xf6)],a['description']);case k(0xea):return new BodyArmor(a[k(0xf6)],a[k(0x10b)]);case k(0xf8):return new LegArmor(a['name'],a[k(0x10b)]);case k(0x109):return new Boots(a[k(0xf6)],a[k(0x10b)]);case k(0x10c):return new Gloves(a[k(0xf6)],a[k(0x10b)]);case k(0xf9):return new Gauntlets(a[k(0xf6)],a[k(0x10b)]);default:return new BasicItem(a['name'],a[k(0x10b)]);}}[a38h(0x108)](a){const l=a38h,b=this[l(0xfb)](a[l(0xef)]);return new Puzzle({...a,'rewardItem':b});}[a38h(0x102)](a){const m=a38h,b=a[m(0xfa)]&&RoomType[a['roomType'][m(0xfd)]()]?RoomType[a[m(0xfa)][m(0xfd)]()]:RoomType[m(0x101)];return{'name':a[m(0xf6)],'description':a[m(0x10b)],'isStartRoom':a[m(0x10a)],'roomType':b};}}
1
+ const a38i=a38d;(function(a,b){const f=a38d,c=a();while(!![]){try{const d=parseInt(f(0x1d1))/0x1*(parseInt(f(0x1c3))/0x2)+-parseInt(f(0x1cc))/0x3*(-parseInt(f(0x1e0))/0x4)+-parseInt(f(0x1dc))/0x5*(parseInt(f(0x1db))/0x6)+-parseInt(f(0x1e9))/0x7*(parseInt(f(0x1e6))/0x8)+-parseInt(f(0x1e1))/0x9*(parseInt(f(0x1d6))/0xa)+parseInt(f(0x1e2))/0xb+-parseInt(f(0x1cb))/0xc*(-parseInt(f(0x1c0))/0xd);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a38c,0x5c202));const a38b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a38d;if(c){const e=c[g(0x1e4)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a38a=a38b(this,function(){const h=a38d;return a38a['toString']()['search'](h(0x1e8))[h(0x1d9)]()[h(0x1c5)](a38a)[h(0x1d0)](h(0x1e8));});a38a();function a38d(a,b){const c=a38c();return a38d=function(d,e){d=d-0x1c0;let f=c[d];return f;},a38d(a,b);}function a38c(){const o=['26OZuCXP','description','constructor','createItem','bodyarmor','gauntlets','createPuzzle','inventory','48oRdZPH','12haRbYn','addItem','rewardItem','toUpperCase','search','54113dNWjxm','key','convertToRoomConfig','content','rifle','1260OCYFui','book','createRoom','toString','setPuzzle','72642rGkoRq','205WPkbvL','gloves','isStartRoom','forEach','557500mrntcp','48249RxQWaS','6083946zOGcQE','name','apply','puzzle','64jRMzKK','INSIDE','(((.+)+)+)+$','527016ohbThu','boots','1096771ddjSKr','roomType','items'];a38c=function(){return o;};return a38c();}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{[a38i(0x1d8)](a){const j=a38i,b=this[j(0x1d3)](a),c=new Room(b);if(a[j(0x1c2)]){const d=new Inventory();a[j(0x1c2)][j(0x1df)](e=>{const k=j;d[k(0x1cd)](this[k(0x1c6)](e));}),c[j(0x1ca)]=d;}return a[j(0x1e5)]&&c[j(0x1da)](this['createPuzzle'](a[j(0x1e5)])),c;}[a38i(0x1c6)](a){const l=a38i;switch(a['type']){case l(0x1d2):return new Key(a[l(0x1e3)],a[l(0x1c4)]);case l(0x1d7):return new Book(a[l(0x1e3)],a[l(0x1c4)],a[l(0x1d4)]);case'sword':return new Sword(a['name'],a[l(0x1c4)]);case l(0x1d5):return new Rifle(a[l(0x1e3)],a[l(0x1c4)]);case'helmet':return new Helmet(a[l(0x1e3)],a[l(0x1c4)]);case l(0x1c7):return new BodyArmor(a['name'],a[l(0x1c4)]);case'legarmor':return new LegArmor(a[l(0x1e3)],a[l(0x1c4)]);case l(0x1ea):return new Boots(a['name'],a['description']);case l(0x1dd):return new Gloves(a[l(0x1e3)],a[l(0x1c4)]);case l(0x1c8):return new Gauntlets(a['name'],a[l(0x1c4)]);default:return new BasicItem(a[l(0x1e3)],a[l(0x1c4)]);}}[a38i(0x1c9)](a){const m=a38i,b=this[m(0x1c6)](a[m(0x1ce)]);return new Puzzle({...a,'rewardItem':b});}[a38i(0x1d3)](a){const n=a38i,b=a[n(0x1c1)]&&RoomType[a['roomType'][n(0x1cf)]()]?RoomType[a['roomType']['toUpperCase']()]:RoomType[n(0x1e7)];return{'name':a[n(0x1e3)],'description':a[n(0x1c4)],'isStartRoom':a[n(0x1de)],'roomType':b};}}
@@ -1 +1 @@
1
- const a39k=a39d;(function(a,b){const h=a39d,c=a();while(!![]){try{const d=-parseInt(h(0x1ba))/0x1+parseInt(h(0x1c2))/0x2*(parseInt(h(0x1cd))/0x3)+parseInt(h(0x1c7))/0x4+-parseInt(h(0x1d1))/0x5*(-parseInt(h(0x1c3))/0x6)+parseInt(h(0x1d0))/0x7*(-parseInt(h(0x1b6))/0x8)+-parseInt(h(0x1cb))/0x9+-parseInt(h(0x1b1))/0xa*(-parseInt(h(0x1bf))/0xb);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a39c,0x4c5f7));const a39b=(function(){let a=!![];return function(b,c){const d=a?function(){const i=a39d;if(c){const e=c[i(0x1c8)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a39a=a39b(this,function(){const j=a39d;return a39a[j(0x1cf)]()[j(0x1c6)](j(0x1c4))[j(0x1cf)]()[j(0x1aa)](a39a)['search'](j(0x1c4));});a39a();import{Scene}from'./models/scene.js';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';function a39c(){const r=['search','1050792cjuLGX','apply','getDescription','-\x20clear:\x20Clear\x20the\x20screen.\x0a','1959669ibkPSf','drop','1437uhcyLV','getAllRegisteredCommands','toString','7LdSxkC','5VjrKDk','player','I\x20don\x27t\x20understand\x20the\x20command\x20\x22','maka','lock','equip','getHelpMessage','constructor','You\x20are\x20still\x20in\x20the\x20game,\x20type\x20\x22quit\x22\x20to\x20exit','registerCommands','rooms','toLowerCase','solve','Available\x20Commands:\x0a','10eAWINy','unlock','trim','say','getWelcomeMessage','2425168MOeKlb','help','determineStartRoom','instance','343138Afdwrv','registerCommand','use','currentRoom','take','2964797IZmJUt','initialize','unequip','148fLPdur','3655062anzERr','(((.+)+)+)+$','scene'];a39c=function(){return r;};return a39c();}import{SearchCommand}from'./commands/search.js';import{SayCommand}from'./commands/say.js';function a39d(a,b){const c=a39c();return a39d=function(d,e){d=d-0x1a7;let f=c[d];return f;},a39d(a,b);}import{CommandFactory}from'./factories/commandF.js';export default class Game{static [a39k(0x1b9)];['scene'];['player'];[a39k(0x1bd)];[a39k(0x1ad)];constructor(a,b){const l=a39k;this[l(0x1d2)]=a,this['scene']=new Scene({'player':a,'roomConfiguration':b}),this[l(0x1c5)][l(0x1c0)](),this[l(0x1d2)]['currentLocation']=this[l(0x1b8)](),this[l(0x1ac)]();}['registerCommands'](){const m=a39k;CommandFactory['registerCommand']('look',LookCommand),CommandFactory['registerCommand']('go',GoCommand),CommandFactory[m(0x1bb)](m(0x1be),TakeCommand),CommandFactory[m(0x1bb)](m(0x1bc),UseCommand),CommandFactory[m(0x1bb)](m(0x1a8),EquipCommand),CommandFactory[m(0x1bb)](m(0x1c1),UnequipCommand),CommandFactory['registerCommand'](m(0x1af),SolveCommand),CommandFactory['registerCommand'](m(0x1cc),DropCommand),CommandFactory[m(0x1bb)](m(0x1b2),UnlockCommand),CommandFactory[m(0x1bb)](m(0x1a7),LockCommand),CommandFactory[m(0x1bb)](m(0x1c6),SearchCommand),CommandFactory[m(0x1bb)](m(0x1b4),SayCommand);}[a39k(0x1b8)](){return this['scene']['determineStartRoom']();}[a39k(0x1b5)](){const n=a39k;return'Welcome,\x20'+this[n(0x1d2)]['name'];}static['getInstance'](a,b){const o=a39k;return!Game[o(0x1b9)]&&(Game[o(0x1b9)]=new Game(a,b)),Game[o(0x1b9)];}['handleInput'](a){const p=a39k,b=a[p(0x1b3)]()['split']('\x20'),c=b[0x0][p(0x1ae)](),d=b['slice'](0x1);if(c==='quit')return null;if(c===p(0x1d4))return p(0x1ab);if(c===p(0x1b7))return this[p(0x1a9)]();if(c==='clear')return'';const e={'actor':this[p(0x1d2)],'rooms':this[p(0x1c5)]['getRooms'](),'scene':this[p(0x1c5)]},f=CommandFactory['createCommand'](c,e);if(f){const g=f['execute'](d);return g;}return p(0x1d3)+c+'\x22.';}[a39k(0x1a9)](){const q=a39k,a=CommandFactory[q(0x1ce)]();let b=q(0x1b0);for(const c in a){if(a['hasOwnProperty'](c)){const d=a[c];b+='-\x20'+c+':\x20'+d[q(0x1c9)]()+'\x0a';}}return b+=q(0x1ca),b+='-\x20quit:\x20Exit\x20the\x20game.\x0a',b;}}
1
+ const a39j=a39d;(function(a,b){const h=a39d,c=a();while(!![]){try{const d=-parseInt(h(0x1bc))/0x1*(-parseInt(h(0x199))/0x2)+-parseInt(h(0x19c))/0x3+parseInt(h(0x1a9))/0x4+parseInt(h(0x1a5))/0x5+parseInt(h(0x19e))/0x6*(-parseInt(h(0x1a7))/0x7)+parseInt(h(0x1b1))/0x8+-parseInt(h(0x19d))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a39c,0x60385));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 i=a39d;return a39a[i(0x1af)]()[i(0x1ca)](i(0x1a4))['toString']()[i(0x1c5)](a39a)[i(0x1ca)]('(((.+)+)+)+$');});function a39d(a,b){const c=a39c();return a39d=function(d,e){d=d-0x199;let f=c[d];return f;},a39d(a,b);}a39a();import{Scene}from'./models/scene.js';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';import{SayCommand}from'./commands/say.js';import{CommandFactory}from'./factories/commandF.js';function a39c(){const r=['-\x20quit:\x20Exit\x20the\x20game.\x0a','lock','Available\x20Commands:\x0a','drop','2841HIIjXV','getWelcomeMessage','getHelpMessage','help','handleInput','instance','trim','toLowerCase','createCommand','constructor','say','unequip','Welcome,\x20','maka','search','42BHqaWR','execute','solve','230823JLOjtz','5846355oFEVSl','9948PWkXwE','unlock','take','determineStartRoom','look','scene','(((.+)+)+)+$','1906295Jplbml','getAllRegisteredCommands','1204UBwTvh','currentLocation','2749852laVsIp','I\x20don\x27t\x20understand\x20the\x20command\x20\x22','-\x20clear:\x20Clear\x20the\x20screen.\x0a','equip','player','registerCommands','toString','getDescription','2219568HcgJpm','hasOwnProperty','slice','split','getRooms','rooms','registerCommand'];a39c=function(){return r;};return a39c();}export default class Game{static [a39j(0x1c1)];[a39j(0x1a3)];[a39j(0x1ad)];['currentRoom'];[a39j(0x1b6)];constructor(a,b){const k=a39j;this['player']=a,this[k(0x1a3)]=new Scene({'player':a,'roomConfiguration':b}),this[k(0x1a3)]['initialize'](),this[k(0x1ad)][k(0x1a8)]=this[k(0x1a1)](),this[k(0x1ae)]();}['registerCommands'](){const l=a39j;CommandFactory[l(0x1b7)](l(0x1a2),LookCommand),CommandFactory['registerCommand']('go',GoCommand),CommandFactory[l(0x1b7)](l(0x1a0),TakeCommand),CommandFactory[l(0x1b7)]('use',UseCommand),CommandFactory[l(0x1b7)](l(0x1ac),EquipCommand),CommandFactory[l(0x1b7)](l(0x1c7),UnequipCommand),CommandFactory[l(0x1b7)](l(0x19b),SolveCommand),CommandFactory[l(0x1b7)](l(0x1bb),DropCommand),CommandFactory['registerCommand'](l(0x19f),UnlockCommand),CommandFactory[l(0x1b7)](l(0x1b9),LockCommand),CommandFactory[l(0x1b7)](l(0x1ca),SearchCommand),CommandFactory[l(0x1b7)](l(0x1c6),SayCommand);}[a39j(0x1a1)](){const m=a39j;return this[m(0x1a3)][m(0x1a1)]();}[a39j(0x1bd)](){const n=a39j;return n(0x1c8)+this['player']['name'];}static['getInstance'](a,b){const o=a39j;return!Game['instance']&&(Game[o(0x1c1)]=new Game(a,b)),Game['instance'];}[a39j(0x1c0)](a){const p=a39j,b=a[p(0x1c2)]()[p(0x1b4)]('\x20'),c=b[0x0][p(0x1c3)](),d=b[p(0x1b3)](0x1);if(c==='quit')return null;if(c===p(0x1c9))return'You\x20are\x20still\x20in\x20the\x20game,\x20type\x20\x22quit\x22\x20to\x20exit';if(c===p(0x1bf))return this['getHelpMessage']();if(c==='clear')return'';const e={'actor':this[p(0x1ad)],'rooms':this[p(0x1a3)][p(0x1b5)](),'scene':this[p(0x1a3)]},f=CommandFactory[p(0x1c4)](c,e);if(f){const g=f[p(0x19a)](d);return g;}return p(0x1aa)+c+'\x22.';}[a39j(0x1be)](){const q=a39j,a=CommandFactory[q(0x1a6)]();let b=q(0x1ba);for(const c in a){if(a[q(0x1b2)](c)){const d=a[c];b+='-\x20'+c+':\x20'+d[q(0x1b0)]()+'\x0a';}}return b+=q(0x1ab),b+=q(0x1b8),b;}}
@@ -1 +1 @@
1
- (function(a,b){var f=a40d,c=a();while(!![]){try{var d=-parseInt(f(0x10a))/0x1*(-parseInt(f(0x109))/0x2)+-parseInt(f(0x100))/0x3*(parseInt(f(0x107))/0x4)+parseInt(f(0x101))/0x5*(-parseInt(f(0x104))/0x6)+-parseInt(f(0x105))/0x7+parseInt(f(0x106))/0x8*(parseInt(f(0x10e))/0x9)+-parseInt(f(0x10b))/0xa*(-parseInt(f(0x102))/0xb)+-parseInt(f(0xfe))/0xc;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a40c,0x8c11d));var a40b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a40d;if(c){var e=c[g(0xff)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a40a=a40b(this,function(){var h=a40d;return a40a['toString']()[h(0x103)](h(0x10c))[h(0x10d)]()[h(0x108)](a40a)['search'](h(0x10c));});function a40d(a,b){var c=a40c();return a40d=function(d,e){d=d-0xfe;var f=c[d];return f;},a40d(a,b);}a40a();export*from'./door.js';export*from'./inventory.js';export*from'./item.js';export*from'./npc.js';export*from'./player.js';export*from'./puzzle.js';function a40c(){var i=['32tLaZNo','1144612UhWBFR','constructor','22KjQUDR','97463ZZZfpL','110fCUTXf','(((.+)+)+)+$','toString','188712wbWSXE','5119476JtLjaS','apply','3leKHvS','5EGHhXW','1045462updGox','search','3445896cZNlMs','2384270UGhCVB'];a40c=function(){return i;};return a40c();}export*from'./room.js';export*from'./scene.js';
1
+ (function(a,b){var f=a40d,c=a();while(!![]){try{var d=-parseInt(f(0x1b6))/0x1*(-parseInt(f(0x1b7))/0x2)+-parseInt(f(0x1ad))/0x3+-parseInt(f(0x1b4))/0x4+parseInt(f(0x1b2))/0x5+-parseInt(f(0x1b3))/0x6+parseInt(f(0x1b0))/0x7+parseInt(f(0x1b5))/0x8*(parseInt(f(0x1ac))/0x9);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a40c,0x4424e));var a40b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a40d;if(c){var e=c[g(0x1af)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a40a=a40b(this,function(){var h=a40d;return a40a['toString']()[h(0x1ae)](h(0x1b1))['toString']()['constructor'](a40a)[h(0x1ae)](h(0x1b1));});a40a();export*from'./door.js';export*from'./inventory.js';function a40c(){var i=['apply','1366435GPZAIX','(((.+)+)+)+$','286545tqWCmI','1441176OGKpQZ','490536jFMnFO','62376eckjiY','7031bArznY','142yFbsnO','45eZlcgs','446256NCNSww','search'];a40c=function(){return i;};return a40c();}function a40d(a,b){var c=a40c();return a40d=function(d,e){d=d-0x1ac;var f=c[d];return f;},a40d(a,b);}export*from'./item.js';export*from'./npc.js';export*from'./player.js';export*from'./puzzle.js';export*from'./room.js';export*from'./scene.js';
@@ -1 +1 @@
1
- var a41i=a41d;(function(a,b){var f=a41d,c=a();while(!![]){try{var d=-parseInt(f(0x175))/0x1*(parseInt(f(0x176))/0x2)+-parseInt(f(0x18f))/0x3+-parseInt(f(0x190))/0x4+parseInt(f(0x178))/0x5+parseInt(f(0x186))/0x6*(-parseInt(f(0x170))/0x7)+-parseInt(f(0x184))/0x8*(parseInt(f(0x188))/0x9)+parseInt(f(0x18a))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a41c,0x83ea8));var a41b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a41d;if(c){var e=c[g(0x187)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a41a=a41b(this,function(){var h=a41d;return a41a[h(0x179)]()['search']('(((.+)+)+)+$')[h(0x179)]()[h(0x17e)](a41a)[h(0x173)](h(0x17c));});a41a();function a41c(){var n=['logger','roomB','checkIfLocked','getInstance','.\x20Is\x20Locked:\x20','48MsNqCt','To\x20','108YhlhDE','apply','320967vlHAzL','unlockItemOrSolution','24221010RYvTxk','Door\x20created\x20between\x20','name','roomA','attemptUnlock','96411ViZvHR','2067884RaWZbV','272237JSKftc','getOtherSide','Failed\x20to\x20unlock\x20door:\x20','search','write','43488MaLYUW','32BrHSnr','Door\x20unlocked:\x20','1385795CLkEKe','toString','isLockable','.\x20Used:\x20','(((.+)+)+)+$','isLocked','constructor'];a41c=function(){return n;};return a41c();}import{Logger}from'../utilities/logger.js';import{capitalCase}from'change-case';function a41d(a,b){var c=a41c();return a41d=function(d,e){d=d-0x170;var f=c[d];return f;},a41d(a,b);}import{AbstractDoor}from'../types/abstracts.js';export class Door extends AbstractDoor{[a41i(0x18d)];[a41i(0x180)];['isLocked'];[a41i(0x189)];[a41i(0x18c)];[a41i(0x17f)];[a41i(0x17a)];constructor(a){var j=a41i;super(),this[j(0x18d)]=a[j(0x18d)],this[j(0x180)]=a[j(0x180)],this[j(0x17d)]=a[j(0x17d)]||![],this[j(0x189)]=a[j(0x189)],this['name']=a['name']?capitalCase(a[j(0x18c)]):j(0x185)+a[j(0x180)][j(0x18c)],this['logger']=Logger[j(0x182)](),this[j(0x17a)]=!!a['unlockItemOrSolution'],this[j(0x17f)][j(0x174)](j(0x18b)+this[j(0x18d)][j(0x18c)]+'\x20and\x20'+this[j(0x180)][j(0x18c)]+j(0x183)+this['isLocked']);}[a41i(0x171)](a){return this['roomA']===a?this['roomB']:this['roomA'];}[a41i(0x18e)](a){var k=a41i;if(this[k(0x17d)]&&this[k(0x189)]&&this[k(0x189)]===a)return this['isLocked']=![],this[k(0x17f)]['write'](k(0x177)+this[k(0x18c)]+k(0x17b)+a),!![];return this[k(0x17f)][k(0x174)](k(0x172)+this[k(0x18c)]+k(0x17b)+a),![];}[a41i(0x181)](){var l=a41i;return this[l(0x17d)];}['checkIfLockable'](){var m=a41i;return this[m(0x17a)];}}
1
+ var a41i=a41d;(function(a,b){var f=a41d,c=a();while(!![]){try{var d=-parseInt(f(0x1b6))/0x1*(-parseInt(f(0x1a5))/0x2)+parseInt(f(0x1c0))/0x3*(parseInt(f(0x1a8))/0x4)+-parseInt(f(0x1ad))/0x5+parseInt(f(0x1bf))/0x6+parseInt(f(0x1ac))/0x7+-parseInt(f(0x1bc))/0x8+parseInt(f(0x1b9))/0x9*(-parseInt(f(0x1b8))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a41c,0x48f74));var a41b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a41d;if(c){var e=c[g(0x1c1)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a41a=a41b(this,function(){var h=a41d;return a41a[h(0x1b7)]()[h(0x1ba)]('(((.+)+)+)+$')[h(0x1b7)]()[h(0x1b0)](a41a)[h(0x1ba)](h(0x1b3));});function a41d(a,b){var c=a41c();return a41d=function(d,e){d=d-0x1a5;var f=c[d];return f;},a41d(a,b);}a41a();import{Logger}from'../utilities/logger.js';import{capitalCase}from'change-case';import{AbstractDoor}from'../types/abstracts.js';function a41c(){var o=['10564tBMeCr','unlockItemOrSolution','roomA','211988vwhQqm','isLocked','checkIfLockable','\x20and\x20','3115952nAMGMz','364155zsPvOh','isLockable','attemptUnlock','constructor','logger','roomB','(((.+)+)+)+$','getOtherSide','checkIfLocked','37YcOFFS','toString','6652810xzZNcm','9kuKOzT','search','.\x20Used:\x20','71448dVtgCO','write','name','842136ETjhCJ','15RTpxRl','apply'];a41c=function(){return o;};return a41c();}export class Door extends AbstractDoor{['roomA'];[a41i(0x1b2)];['isLocked'];[a41i(0x1a6)];[a41i(0x1be)];[a41i(0x1b1)];[a41i(0x1ae)];constructor(a){var j=a41i;super(),this[j(0x1a7)]=a['roomA'],this['roomB']=a[j(0x1b2)],this['isLocked']=a[j(0x1a9)]||![],this[j(0x1a6)]=a[j(0x1a6)],this[j(0x1be)]=a[j(0x1be)]?capitalCase(a[j(0x1be)]):'To\x20'+a[j(0x1b2)][j(0x1be)],this[j(0x1b1)]=Logger['getInstance'](),this[j(0x1ae)]=!!a[j(0x1a6)],this[j(0x1b1)][j(0x1bd)]('Door\x20created\x20between\x20'+this[j(0x1a7)][j(0x1be)]+j(0x1ab)+this[j(0x1b2)][j(0x1be)]+'.\x20Is\x20Locked:\x20'+this[j(0x1a9)]);}[a41i(0x1b4)](a){var k=a41i;return this[k(0x1a7)]===a?this[k(0x1b2)]:this['roomA'];}[a41i(0x1af)](a){var l=a41i;if(this[l(0x1a9)]&&this['unlockItemOrSolution']&&this[l(0x1a6)]===a)return this['isLocked']=![],this[l(0x1b1)][l(0x1bd)]('Door\x20unlocked:\x20'+this['name']+'.\x20Used:\x20'+a),!![];return this['logger']['write']('Failed\x20to\x20unlock\x20door:\x20'+this[l(0x1be)]+l(0x1bb)+a),![];}[a41i(0x1b5)](){var m=a41i;return this[m(0x1a9)];}[a41i(0x1aa)](){var n=a41i;return this[n(0x1ae)];}}
@@ -1 +1 @@
1
- const a42h=a42d;(function(a,b){const f=a42d,c=a();while(!![]){try{const d=-parseInt(f(0x1b0))/0x1+-parseInt(f(0x1a0))/0x2+-parseInt(f(0x1c5))/0x3*(parseInt(f(0x1a4))/0x4)+-parseInt(f(0x19f))/0x5*(parseInt(f(0x1ac))/0x6)+parseInt(f(0x1be))/0x7+parseInt(f(0x1a3))/0x8*(-parseInt(f(0x1bc))/0x9)+parseInt(f(0x1c2))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a42c,0xef62b));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(0x19c)]()[g(0x1a9)](g(0x1b6))[g(0x19c)]()['constructor'](a42a)[g(0x1a9)](g(0x1b6));});function a42c(){const q=['Failed\x20to\x20retrieve\x20details\x20for\x20item:\x20','search','listItems','name','2634zyCNyj','Listed\x20items\x20in\x20inventory:\x20','getAllItems','values','9648vgMkIm','items','.\x20Item\x20not\x20found.','addItem','Added\x20item:\x20','.\x20Exists:\x20','(((.+)+)+)+$','delete','Removed\x20item:\x20','\x20to\x20inventory.','has','logger','27uqodin','join','9660007EaCSjk','map','write','getWeight','48953860yIzAUu','\x20from\x20inventory.','getInstance','183yNAzDJ','\x20in\x20','toString','set','getItem','20910nqPymd','560244VdHuqt','toLowerCase','Retrieved\x20details\x20for\x20item:\x20','4089608yOOsUd','107252JzmTIK','hasItem','keys','Checked\x20for\x20item:\x20'];a42c=function(){return q;};return a42c();}a42a();function a42d(a,b){const c=a42c();return a42d=function(d,e){d=d-0x19b;let f=c[d];return f;},a42d(a,b);}import{capitalCase}from'change-case';import{Logger}from'../utilities/logger.js';import{AbstractInventory}from'../types/abstracts.js';export class Inventory extends AbstractInventory{[a42h(0x1b1)];['logger'];constructor(){const i=a42h;super(),this[i(0x1b1)]=new Map(),this['logger']=Logger[i(0x1c4)]();}[a42h(0x1b3)](a){const j=a42h;this[j(0x1b1)][j(0x19d)](a[j(0x1ab)][j(0x1a1)](),a),this[j(0x1bb)][j(0x1c0)](j(0x1b4)+a[j(0x1ab)]+j(0x1b9));}['removeItem'](a){const k=a42h,b=this[k(0x19e)](a);if(b)return this[k(0x1b1)][k(0x1b7)](a[k(0x1a1)]()),this[k(0x1bb)][k(0x1c0)](k(0x1b8)+a+k(0x1c3)),b;return this['logger']['write']('Failed\x20to\x20remove\x20item:\x20'+a+'.\x20Item\x20not\x20found.'),null;}[a42h(0x1a5)](a){const l=a42h,b=this[l(0x1b1)][l(0x1ba)](a[l(0x1a1)]()),c=[...this[l(0x1b1)][l(0x1a6)]()];return this['logger'][l(0x1c0)](l(0x1a7)+a+l(0x19b)+c[l(0x1bd)](',\x20')+l(0x1b5)+b+'.'),b;}[a42h(0x19e)](a){const m=a42h,b=this[m(0x1b1)]['get'](a[m(0x1a1)]())||null;return b?this['logger'][m(0x1c0)](m(0x1a2)+a+'.'):this['logger'][m(0x1c0)](m(0x1a8)+a+m(0x1b2)),b;}[a42h(0x1aa)](){const n=a42h,a=[...this[n(0x1b1)][n(0x1a6)]()],b=a[n(0x1bf)](c=>capitalCase(c));return this[n(0x1bb)][n(0x1c0)](n(0x1ad)+b[n(0x1bd)](',\x20')+'.'),a;}[a42h(0x1c1)](){const o=a42h;let a=0x0;for(const b of this[o(0x1b1)][o(0x1af)]()){a+=b['weight'];}return a;}[a42h(0x1ae)](){const p=a42h;return[...this['items'][p(0x1af)]()];}}
1
+ const a42i=a42d;(function(a,b){const f=a42d,c=a();while(!![]){try{const d=-parseInt(f(0x17c))/0x1+-parseInt(f(0x168))/0x2+-parseInt(f(0x17e))/0x3+parseInt(f(0x16a))/0x4+-parseInt(f(0x189))/0x5*(parseInt(f(0x175))/0x6)+parseInt(f(0x187))/0x7*(-parseInt(f(0x174))/0x8)+-parseInt(f(0x173))/0x9*(-parseInt(f(0x18e))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a42c,0x725d9));const a42b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a42d;if(c){const e=c[g(0x165)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a42a=a42b(this,function(){const h=a42d;return a42a['toString']()[h(0x188)]('(((.+)+)+)+$')[h(0x183)]()[h(0x186)](a42a)['search'](h(0x182));});a42a();import{capitalCase}from'change-case';import{Logger}from'../utilities/logger.js';import{AbstractInventory}from'../types/abstracts.js';export class Inventory extends AbstractInventory{[a42i(0x16e)];[a42i(0x184)];constructor(){const j=a42i;super(),this[j(0x16e)]=new Map(),this['logger']=Logger[j(0x18a)]();}['addItem'](a){const k=a42i;this[k(0x16e)][k(0x176)](a[k(0x17a)][k(0x17d)](),a),this[k(0x184)][k(0x16c)](k(0x190)+a[k(0x17a)]+k(0x167));}[a42i(0x17b)](a){const l=a42i,b=this['getItem'](a);if(b)return this[l(0x16e)][l(0x18c)](a[l(0x17d)]()),this[l(0x184)][l(0x16c)](l(0x16f)+a+l(0x171)),b;return this['logger'][l(0x16c)]('Failed\x20to\x20remove\x20item:\x20'+a+'.\x20Item\x20not\x20found.'),null;}['hasItem'](a){const m=a42i,b=this['items'][m(0x169)](a['toLowerCase']()),c=[...this['items'][m(0x18f)]()];return this[m(0x184)]['write'](m(0x166)+a+m(0x16b)+c[m(0x181)](',\x20')+m(0x170)+b+'.'),b;}[a42i(0x17f)](a){const n=a42i,b=this[n(0x16e)][n(0x18d)](a['toLowerCase']())||null;return b?this['logger']['write'](n(0x178)+a+'.'):this[n(0x184)][n(0x16c)](n(0x185)+a+'.\x20Item\x20not\x20found.'),b;}[a42i(0x172)](){const o=a42i,a=[...this[o(0x16e)][o(0x18f)]()],b=a['map'](c=>capitalCase(c));return this[o(0x184)][o(0x16c)](o(0x177)+b['join'](',\x20')+'.'),a;}[a42i(0x18b)](){const p=a42i;let a=0x0;for(const b of this[p(0x16e)][p(0x180)]()){a+=b[p(0x179)];}return a;}[a42i(0x16d)](){const q=a42i;return[...this['items'][q(0x180)]()];}}function a42d(a,b){const c=a42c();return a42d=function(d,e){d=d-0x165;let f=c[d];return f;},a42d(a,b);}function a42c(){const r=['constructor','13853HXtFjW','search','11535rWbyAu','getInstance','getWeight','delete','get','17970770AnkwnW','keys','Added\x20item:\x20','apply','Checked\x20for\x20item:\x20','\x20to\x20inventory.','1792458zgRfBs','has','2243852xDpYMg','\x20in\x20','write','getAllItems','items','Removed\x20item:\x20','.\x20Exists:\x20','\x20from\x20inventory.','listItems','9WrHsRV','56BCzRuz','612ptUPTQ','set','Listed\x20items\x20in\x20inventory:\x20','Retrieved\x20details\x20for\x20item:\x20','weight','name','removeItem','519748ozBNYU','toLowerCase','673365PWeBNS','getItem','values','join','(((.+)+)+)+$','toString','logger','Failed\x20to\x20retrieve\x20details\x20for\x20item:\x20'];a42c=function(){return r;};return a42c();}
@@ -1 +1 @@
1
- function a43c(){var l=['3982195EvNaey','93108ZcTAoW','213HyoQlR','name','category','constructor','1971027inoGEt','size','description','9784gcpYjO','search','weight','color','585680ywmMLE','uuid','use','texture','1855560kZUnEv','(((.+)+)+)+$','2737705XdxqRK','shape','You\x20use\x20the\x20','6clASbV','apply','rating'];a43c=function(){return l;};return a43c();}var a43i=a43d;(function(a,b){var f=a43d,c=a();while(!![]){try{var d=parseInt(f(0x117))/0x1*(parseInt(f(0x113))/0x2)+parseInt(f(0x118))/0x3*(parseInt(f(0x106))/0x4)+-parseInt(f(0x110))/0x5+-parseInt(f(0x10e))/0x6+parseInt(f(0x116))/0x7+-parseInt(f(0x10a))/0x8+parseInt(f(0x103))/0x9;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a43c,0x4be53));var a43b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a43d;if(c){var e=c[g(0x114)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a43a=a43b(this,function(){var h=a43d;return a43a['toString']()[h(0x107)](h(0x10f))['toString']()[h(0x102)](a43a)[h(0x107)]('(((.+)+)+)+$');});a43a();import{v4 as a43e}from'uuid';import{AbstractItem}from'../types/abstracts.js';function a43d(a,b){var c=a43c();return a43d=function(d,e){d=d-0x102;var f=c[d];return f;},a43d(a,b);}export class Item extends AbstractItem{[a43i(0x10b)];['name'];[a43i(0x105)];[a43i(0x104)];[a43i(0x11a)];[a43i(0x111)];[a43i(0x109)];[a43i(0x10d)];['rating'];['weight'];constructor(a){var j=a43i;super(),this[j(0x119)]=a[j(0x119)],this['description']=a[j(0x105)],this[j(0x104)]=a[j(0x104)],this[j(0x11a)]=a[j(0x11a)],this['shape']=a[j(0x111)],this[j(0x109)]=a[j(0x109)],this[j(0x10d)]=a[j(0x10d)],this[j(0x115)]=a['rating'],this[j(0x108)]=a[j(0x108)],this[j(0x10b)]=a43e();}[a43i(0x10c)](){var k=a43i;return k(0x112)+this[k(0x119)]+'.\x20Nothing\x20special\x20happens.';}}
1
+ var a43h=a43d;function a43d(a,b){var c=a43c();return a43d=function(d,e){d=d-0x11b;var f=c[d];return f;},a43d(a,b);}(function(a,b){var f=a43d,c=a();while(!![]){try{var d=-parseInt(f(0x124))/0x1*(-parseInt(f(0x121))/0x2)+parseInt(f(0x11d))/0x3+parseInt(f(0x12a))/0x4*(parseInt(f(0x122))/0x5)+parseInt(f(0x135))/0x6*(-parseInt(f(0x11f))/0x7)+parseInt(f(0x12b))/0x8+-parseInt(f(0x11b))/0x9*(-parseInt(f(0x123))/0xa)+-parseInt(f(0x130))/0xb;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a43c,0xb0528));var a43b=(function(){var a=!![];return function(b,c){var d=a?function(){if(c){var e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a43a=a43b(this,function(){var g=a43d;return a43a[g(0x132)]()[g(0x129)](g(0x133))['toString']()[g(0x125)](a43a)['search'](g(0x133));});a43a();import{v4 as a43e}from'uuid';import{AbstractItem}from'../types/abstracts.js';function a43c(){var k=['28VEjPBs','description','2UdpCgi','162535xRYmzt','170GpgPtM','1046713QeYmdh','constructor','texture','shape','You\x20use\x20the\x20','search','104bTzvdy','8848632SMMora','size','name','category','weight','30867408TZVtCw','rating','toString','(((.+)+)+)+$','use','1492926nSvCvi','321309VhQViX','uuid','2756211fRlKjU','color'];a43c=function(){return k;};return a43c();}export class Item extends AbstractItem{[a43h(0x11c)];['name'];[a43h(0x120)];['size'];['category'];['shape'];['color'];[a43h(0x126)];[a43h(0x131)];[a43h(0x12f)];constructor(a){var i=a43h;super(),this[i(0x12d)]=a[i(0x12d)],this[i(0x120)]=a[i(0x120)],this['size']=a[i(0x12c)],this[i(0x12e)]=a[i(0x12e)],this[i(0x127)]=a[i(0x127)],this[i(0x11e)]=a[i(0x11e)],this['texture']=a['texture'],this[i(0x131)]=a[i(0x131)],this[i(0x12f)]=a[i(0x12f)],this['uuid']=a43e();}[a43h(0x134)](){var j=a43h;return j(0x128)+this['name']+'.\x20Nothing\x20special\x20happens.';}}
@@ -1 +1 @@
1
- const a44i=a44d;(function(a,b){const f=a44d,c=a();while(!![]){try{const d=parseInt(f(0x183))/0x1+parseInt(f(0x17d))/0x2*(parseInt(f(0x18b))/0x3)+-parseInt(f(0x173))/0x4*(parseInt(f(0x17a))/0x5)+-parseInt(f(0x175))/0x6*(parseInt(f(0x177))/0x7)+-parseInt(f(0x179))/0x8*(parseInt(f(0x174))/0x9)+-parseInt(f(0x186))/0xa*(-parseInt(f(0x181))/0xb)+-parseInt(f(0x17f))/0xc*(-parseInt(f(0x180))/0xd);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a44c,0x35e12));function a44c(){const n=['name','202334AeMYGh','toString','constructor','1262090JVPHJs','moveTo','_dialogue','speak','length','3bzFYMb','_name','rooms','(((.+)+)+)+$','search','968dkahcr','3711438arepgH','1374wUcnUU','floor','3885fNYOox','execute','8iyBDnz','7850TXrRhm','random','scene','621366KVNwrg','apply','12KATenL','6511453BXONLE','11MRptQS'];a44c=function(){return n;};return a44c();}const a44b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a44d;if(c){const e=c[g(0x17e)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a44a=a44b(this,function(){const h=a44d;return a44a[h(0x184)]()[h(0x172)](h(0x171))['toString']()[h(0x185)](a44a)[h(0x172)](h(0x171));});function a44d(a,b){const c=a44c();return a44d=function(d,e){d=d-0x16f;let f=c[d];return f;},a44d(a,b);}a44a();import{Player}from'./player.js';import{GoCommand}from'../commands/go.js';export class NPC extends Player{[a44i(0x16f)];[a44i(0x188)];[a44i(0x170)];[a44i(0x17c)];constructor(a,b,c,d){const j=a44i;super(d),this[j(0x16f)]=a,this[j(0x188)]=b,this[j(0x170)]=c;}get[a44i(0x182)](){return this['_name'];}[a44i(0x189)](){const k=a44i;return this['_dialogue'][Math[k(0x176)](Math[k(0x17b)]()*this[k(0x188)]['length'])];}['autonomousMove'](a){const l=a44i,b=a[Math['floor'](Math[l(0x17b)]()*a[l(0x18a)])];this['moveTo'](b[l(0x182)]);}[a44i(0x187)](a){const m=a44i,b={'actor':this,'rooms':this[m(0x170)],'scene':this[m(0x17c)]},c=new GoCommand(b);c[m(0x178)]([a]);}}
1
+ const a44h=a44d;(function(a,b){const f=a44d,c=a();while(!![]){try{const d=-parseInt(f(0x7a))/0x1+-parseInt(f(0x85))/0x2+-parseInt(f(0x8c))/0x3+-parseInt(f(0x8d))/0x4+-parseInt(f(0x7c))/0x5+-parseInt(f(0x82))/0x6+parseInt(f(0x81))/0x7;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a44c,0xb3c69));const a44b=(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;};}()),a44a=a44b(this,function(){const g=a44d;return a44a[g(0x8a)]()[g(0x84)](g(0x78))['toString']()[g(0x7e)](a44a)[g(0x84)](g(0x78));});a44a();import{Player}from'./player.js';function a44d(a,b){const c=a44c();return a44d=function(d,e){d=d-0x78;let f=c[d];return f;},a44d(a,b);}import{GoCommand}from'../commands/go.js';function a44c(){const n=['3837681uGlgtD','1670560OVXHbl','(((.+)+)+)+$','length','755436yXrsuh','rooms','1522125mykizn','random','constructor','moveTo','speak','38075149lBBtZy','5872620mwCjSc','scene','search','1934896pPkyxp','_name','autonomousMove','floor','_dialogue','toString','name'];a44c=function(){return n;};return a44c();}export class NPC extends Player{['_name'];[a44h(0x89)];[a44h(0x7b)];[a44h(0x83)];constructor(a,b,c,d){const i=a44h;super(d),this['_name']=a,this[i(0x89)]=b,this[i(0x7b)]=c;}get[a44h(0x8b)](){const j=a44h;return this[j(0x86)];}[a44h(0x80)](){const k=a44h;return this['_dialogue'][Math[k(0x88)](Math[k(0x7d)]()*this[k(0x89)][k(0x79)])];}[a44h(0x87)](a){const l=a44h,b=a[Math[l(0x88)](Math[l(0x7d)]()*a['length'])];this[l(0x7f)](b['name']);}['moveTo'](a){const m=a44h,b={'actor':this,'rooms':this[m(0x7b)],'scene':this[m(0x83)]},c=new GoCommand(b);c['execute']([a]);}}
@@ -1 +1 @@
1
- const a45i=a45d;(function(a,b){const f=a45d,c=a();while(!![]){try{const d=-parseInt(f(0x150))/0x1+-parseInt(f(0x172))/0x2+-parseInt(f(0x13f))/0x3*(-parseInt(f(0x147))/0x4)+parseInt(f(0x137))/0x5*(parseInt(f(0x12c))/0x6)+parseInt(f(0x12f))/0x7*(-parseInt(f(0x15b))/0x8)+-parseInt(f(0x138))/0x9+parseInt(f(0x151))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a45c,0x4d3ec));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(0x162)]()[h(0x13b)](h(0x132))['toString']()['constructor'](a45a)[h(0x13b)](h(0x132));});a45a();function a45c(){const C=['category','logger','Failed\x20to\x20remove\x20','canEquip','\x20slot.','enterRoom','leaveRoom','initialEquipment','You\x20don\x27t\x20have\x20anything\x20equipped\x20in\x20the\x20','bind','equip','_inventory','arm\x20armor','_maxCarryingWeight','1830DWXlVC','error','speak','1466822ckwXLE','\x20from\x20player\x27s\x20inventory.','write','(((.+)+)+)+$','rightHand','torso','Helmet','\x20to\x20player\x27s\x20inventory.','1285YKgwQi','1901727GITewi','armarmor','bodyarmor','search','inventoryItems','maxCarryingWeight','Added\x20','30681gUgPAk','playerName','shield','You\x20can\x27t\x20equip\x20','body\x20armor','addInventory','includes','currentWeight','48MJkjeP','Removed\x20','equipment','A\x20featureless\x20room','name','head','boots','Weapon','addItem','521254xAPhTR','11059200XAAwYc','toLowerCase','_equipment','hasItem','Boots','hat','values','weight','_currentLocation','BodyArmor','8GyzUsQ','removeInventory','apply','Failed\x20to\x20add\x20item\x20to\x20inventory\x20due\x20to\x20weight\x20limits.','determineEquipmentSlot','hear','Shield','toString','gloves','Nexus','You\x20equipped\x20','feet','weapon','\x20is\x20now\x20listening\x20in\x20room\x20','\x20is\x20no\x20longer\x20listeng\x20in\x20','arms','off','ArmArmor','unequip','Max\x20carrying\x20weight\x20must\x20be\x20positive.','startLocation','Gloves','inventory','97060AnOGIy','removeItem','.\x20You\x20must\x20unequip\x20it\x20first.','unequipBySlot','Hat','\x20doesn\x27t\x20fit\x20any\x20known\x20equipment\x20slot.','legs','Invalid\x20category\x20or\x20slot:\x20','_playerName','getWeight'];a45c=function(){return C;};return a45c();}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';function a45d(a,b){const c=a45c();return a45d=function(d,e){d=d-0x128;let f=c[d];return f;},a45d(a,b);}import{AbstractPlayer}from'../types/abstracts.js';export class Player extends AbstractPlayer{['_playerName'];[a45i(0x159)];[a45i(0x129)];[a45i(0x153)];[a45i(0x12b)]=0x32;[a45i(0x17d)];constructor(a){const j=a45i;super(),this[j(0x17a)]=a[j(0x140)],this[j(0x159)]=a[j(0x16f)]||new Room({'name':j(0x164),'description':j(0x14a)}),this['_inventory']=new Inventory(),this[j(0x17d)]=Logger['getInstance']();if(a?.[j(0x13c)])for(const b of a[j(0x13c)]){this[j(0x129)][j(0x14f)](b);}this[j(0x153)]=a?.[j(0x183)]||{'head':null,'torso':null,'legs':null,'feet':null,'arms':null,'gloves':null,'leftHand':null,'rightHand':null};}get['name'](){const k=a45i;return this[k(0x17a)];}get['currentLocation'](){const l=a45i;return this[l(0x159)];}set['currentLocation'](a){const m=a45i;this[m(0x159)]!==a&&(this['leaveRoom'](),this[m(0x181)](a)),this[m(0x159)]=a;}get[a45i(0x171)](){const n=a45i;return this[n(0x129)];}get[a45i(0x149)](){return this['_equipment'];}set[a45i(0x149)](a){const o=a45i;this[o(0x153)]=a;}get[a45i(0x13d)](){const p=a45i;return this[p(0x12b)];}set[a45i(0x13d)](a){const q=a45i;a>0x0?this[q(0x12b)]=a:console[q(0x12d)](q(0x16e));}get[a45i(0x146)](){const r=a45i;let a=this[r(0x129)][r(0x17b)]();for(const b in this[r(0x153)]){const c=this[r(0x153)][b];c&&(a+=c[r(0x158)]);}return a;}[a45i(0x144)](a){const s=a45i;if(this['currentWeight']+a['weight']>this['maxCarryingWeight']){this['logger'][s(0x131)](s(0x15e));throw new Error('The\x20item\x20is\x20too\x20heavy\x20to\x20add\x20to\x20your\x20inventory.');}this['_inventory'][s(0x14f)](a),this[s(0x17d)][s(0x131)](s(0x13e)+a[s(0x14b)]+s(0x136));}['removeInventory'](a){const t=a45i;if(this[t(0x129)][t(0x173)](a[t(0x14b)]))return this[t(0x17d)][t(0x131)](t(0x148)+a[t(0x14b)]+t(0x130)),!![];return this[t(0x17d)][t(0x131)](t(0x17e)+a[t(0x14b)]+t(0x130)),![];}[a45i(0x128)](a){const u=a45i;if(!this[u(0x129)][u(0x154)](a['name']))return'You\x20don\x27t\x20have\x20'+a['name']+'\x20in\x20your\x20inventory.';if(!this['canEquip'](a))return u(0x142)+a[u(0x14b)]+'.';const b=this[u(0x15f)](a[u(0x17c)]);if(!b)return a[u(0x14b)]+u(0x177);if(this[u(0x149)][b])return'You\x20are\x20already\x20wearing\x20something\x20on\x20your\x20'+b+u(0x174);return this['equipment'][b]=a,this[u(0x15c)](a),u(0x165)+a[u(0x14b)]+'.';}[a45i(0x16d)](a){const v=a45i;let b=a;if(!this[v(0x149)][camelCase(b)]){b=this[v(0x15f)](a);if(!b)return v(0x179)+a+'.';}return this[v(0x175)](b);}[a45i(0x15f)](a){const w=a45i;switch(a['toLowerCase']()){case Category[w(0x14e)]['toLowerCase']():return w(0x133);case Category[w(0x161)]['toLowerCase']():return'leftHand';case Category[w(0x170)][w(0x152)]():return w(0x163);case Category[w(0x135)][w(0x152)]():case Category[w(0x176)][w(0x152)]():return w(0x14c);case Category[w(0x155)][w(0x152)]():return w(0x166);case Category['LegArmor'][w(0x152)]():return w(0x178);case Category[w(0x16c)][w(0x152)]():return w(0x16a);case Category[w(0x15a)]['toLowerCase']():return'torso';case w(0x167):return w(0x133);case w(0x141):return'leftHand';case w(0x163):return w(0x163);case'helmet':case w(0x156):return w(0x14c);case w(0x14d):return w(0x166);case'leg\x20armor':case'legarmor':return'legs';case w(0x12a):case w(0x139):return w(0x16a);case w(0x143):case w(0x13a):case w(0x134):return w(0x134);default:return null;}}[a45i(0x17f)](a){const x=a45i;return Object[x(0x157)](Category)[x(0x145)](a['category']);}[a45i(0x175)](a){const y=a45i,b=this[y(0x149)][a];if(!b)return y(0x184)+a+y(0x180);return this['addInventory'](b),this[y(0x149)][a]=null,'You\x20unequipped\x20'+b['name']+'.';}[a45i(0x160)](a,b){const z=a45i;a!==this&&this[z(0x17d)]['log'](a[z(0x14b)]+'\x20says:\x20\x22'+b+'\x22');}['enterRoom'](a){const A=a45i;this[A(0x159)]=a,a['on'](A(0x12e),this['hear']['bind'](this)),this[A(0x17d)][A(0x131)](this[A(0x14b)]+A(0x168)+a[A(0x14b)]);}[a45i(0x182)](){const B=a45i;this[B(0x159)]&&(this['_currentLocation'][B(0x16b)]('speak',this[B(0x160)][B(0x185)](this)),this[B(0x17d)][B(0x131)](this[B(0x14b)]+B(0x169)+this[B(0x159)][B(0x14b)]));}}
1
+ function a45d(a,b){const c=a45c();return a45d=function(d,e){d=d-0xac;let f=c[d];return f;},a45d(a,b);}const a45i=a45d;(function(a,b){const f=a45d,c=a();while(!![]){try{const d=-parseInt(f(0xb7))/0x1*(-parseInt(f(0xf6))/0x2)+parseInt(f(0xf0))/0x3+parseInt(f(0xac))/0x4+parseInt(f(0xe8))/0x5+parseInt(f(0xb0))/0x6*(parseInt(f(0xda))/0x7)+parseInt(f(0x104))/0x8*(parseInt(f(0xcc))/0x9)+-parseInt(f(0x100))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a45c,0xccccf));const a45b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a45d;if(c){const e=c[g(0xdd)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a45a=a45b(this,function(){const h=a45d;return a45a['toString']()[h(0xec)](h(0xae))['toString']()[h(0xd9)](a45a)[h(0xec)](h(0xae));});a45a();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 a45c(){const C=['includes','78VmiqUs','inventory','rightHand','You\x20don\x27t\x20have\x20','name','BodyArmor','feet','1826JYzgBa','You\x20are\x20already\x20wearing\x20something\x20on\x20your\x20','playerName','Helmet','ArmArmor','Removed\x20','hear','unequipBySlot','determineEquipmentSlot','You\x20can\x27t\x20equip\x20','Weapon','_maxCarryingWeight','getWeight','You\x20equipped\x20','leftHand','speak','The\x20item\x20is\x20too\x20heavy\x20to\x20add\x20to\x20your\x20inventory.','initialEquipment','A\x20featureless\x20room','canEquip','hat','7175475kpKLcq','Boots','log','\x20says:\x20\x22','legs','boots','enterRoom','\x20is\x20no\x20longer\x20listeng\x20in\x20','write','Gloves','\x20from\x20player\x27s\x20inventory.','LegArmor','values','constructor','687316wAHnQF','error','category','apply','_equipment','bodyarmor','torso','leaveRoom','getInstance','arm\x20armor','logger','equipment','legarmor','currentLocation','1518465WPNpDr','removeInventory','Nexus','removeItem','search','\x20slot.','startLocation','inventoryItems','3575295zvZAYn','unequip','\x20to\x20player\x27s\x20inventory.','body\x20armor','Max\x20carrying\x20weight\x20must\x20be\x20positive.','Hat','1644yxQsNR','arms','bind','addInventory','Failed\x20to\x20add\x20item\x20to\x20inventory\x20due\x20to\x20weight\x20limits.','equip','weight','off','toLowerCase','helmet','46988400oJTWRj','Shield','head','.\x20You\x20must\x20unequip\x20it\x20first.','8XBmuZy','maxCarryingWeight','_currentLocation','gloves','_inventory','addItem','weapon','1870216MThemE','_playerName','(((.+)+)+)+$'];a45c=function(){return C;};return a45c();}export class Player extends AbstractPlayer{[a45i(0xad)];[a45i(0x106)];['_inventory'];[a45i(0xde)];[a45i(0xc2)]=0x32;[a45i(0xe4)];constructor(a){const j=a45i;super(),this[j(0xad)]=a[j(0xb9)],this['_currentLocation']=a[j(0xee)]||new Room({'name':j(0xea),'description':j(0xc9)}),this[j(0x108)]=new Inventory(),this['logger']=Logger[j(0xe2)]();if(a?.[j(0xef)])for(const b of a[j(0xef)]){this[j(0x108)]['addItem'](b);}this[j(0xde)]=a?.[j(0xc8)]||{'head':null,'torso':null,'legs':null,'feet':null,'arms':null,'gloves':null,'leftHand':null,'rightHand':null};}get[a45i(0xb4)](){return this['_playerName'];}get['currentLocation'](){const k=a45i;return this[k(0x106)];}set[a45i(0xe7)](a){const l=a45i;this[l(0x106)]!==a&&(this[l(0xe1)](),this[l(0xd2)](a)),this[l(0x106)]=a;}get[a45i(0xb1)](){const m=a45i;return this[m(0x108)];}get[a45i(0xe5)](){const n=a45i;return this[n(0xde)];}set['equipment'](a){const o=a45i;this[o(0xde)]=a;}get[a45i(0x105)](){const p=a45i;return this[p(0xc2)];}set[a45i(0x105)](a){const q=a45i;a>0x0?this[q(0xc2)]=a:console[q(0xdb)](q(0xf4));}get['currentWeight'](){const r=a45i;let a=this['_inventory'][r(0xc3)]();for(const b in this[r(0xde)]){const c=this[r(0xde)][b];c&&(a+=c[r(0xfc)]);}return a;}['addInventory'](a){const s=a45i;if(this['currentWeight']+a['weight']>this[s(0x105)]){this[s(0xe4)][s(0xd4)](s(0xfa));throw new Error(s(0xc7));}this['_inventory'][s(0x109)](a),this['logger'][s(0xd4)]('Added\x20'+a[s(0xb4)]+s(0xf2));}[a45i(0xe9)](a){const t=a45i;if(this[t(0x108)][t(0xeb)](a[t(0xb4)]))return this[t(0xe4)][t(0xd4)](t(0xbc)+a['name']+t(0xd6)),!![];return this[t(0xe4)]['write']('Failed\x20to\x20remove\x20'+a[t(0xb4)]+'\x20from\x20player\x27s\x20inventory.'),![];}[a45i(0xfb)](a){const u=a45i;if(!this['_inventory']['hasItem'](a[u(0xb4)]))return u(0xb3)+a[u(0xb4)]+'\x20in\x20your\x20inventory.';if(!this[u(0xca)](a))return u(0xc0)+a[u(0xb4)]+'.';const b=this[u(0xbf)](a['category']);if(!b)return a['name']+'\x20doesn\x27t\x20fit\x20any\x20known\x20equipment\x20slot.';if(this[u(0xe5)][b])return u(0xb8)+b+u(0x103);return this[u(0xe5)][b]=a,this['removeInventory'](a),u(0xc4)+a[u(0xb4)]+'.';}[a45i(0xf1)](a){const v=a45i;let b=a;if(!this[v(0xe5)][camelCase(b)]){b=this['determineEquipmentSlot'](a);if(!b)return'Invalid\x20category\x20or\x20slot:\x20'+a+'.';}return this[v(0xbe)](b);}[a45i(0xbf)](a){const w=a45i;switch(a[w(0xfe)]()){case Category[w(0xc1)][w(0xfe)]():return w(0xb2);case Category[w(0x101)]['toLowerCase']():return w(0xc5);case Category[w(0xd5)][w(0xfe)]():return'gloves';case Category[w(0xba)][w(0xfe)]():case Category[w(0xf5)]['toLowerCase']():return w(0x102);case Category[w(0xcd)]['toLowerCase']():return w(0xb6);case Category[w(0xd7)][w(0xfe)]():return'legs';case Category[w(0xbb)]['toLowerCase']():return w(0xf7);case Category[w(0xb5)][w(0xfe)]():return w(0xe0);case w(0x10a):return w(0xb2);case'shield':return'leftHand';case'gloves':return w(0x107);case w(0xff):case w(0xcb):return'head';case w(0xd1):return w(0xb6);case'leg\x20armor':case w(0xe6):return w(0xd0);case w(0xe3):case'armarmor':return w(0xf7);case w(0xf3):case w(0xdf):case w(0xe0):return w(0xe0);default:return null;}}['canEquip'](a){const x=a45i;return Object[x(0xd8)](Category)[x(0xaf)](a[x(0xdc)]);}[a45i(0xbe)](a){const y=a45i,b=this['equipment'][a];if(!b)return'You\x20don\x27t\x20have\x20anything\x20equipped\x20in\x20the\x20'+a+y(0xed);return this[y(0xf9)](b),this['equipment'][a]=null,'You\x20unequipped\x20'+b[y(0xb4)]+'.';}['hear'](a,b){const z=a45i;a!==this&&this[z(0xe4)][z(0xce)](a[z(0xb4)]+z(0xcf)+b+'\x22');}['enterRoom'](a){const A=a45i;this[A(0x106)]=a,a['on']('speak',this['hear'][A(0xf8)](this)),this[A(0xe4)][A(0xd4)](this['name']+'\x20is\x20now\x20listening\x20in\x20room\x20'+a[A(0xb4)]);}[a45i(0xe1)](){const B=a45i;this['_currentLocation']&&(this[B(0x106)][B(0xfd)](B(0xc6),this[B(0xbd)]['bind'](this)),this[B(0xe4)][B(0xd4)](this[B(0xb4)]+B(0xd3)+this[B(0x106)]['name']));}}
@@ -1 +1 @@
1
- var a46i=a46d;(function(a,b){var f=a46d,c=a();while(!![]){try{var d=-parseInt(f(0xc1))/0x1+-parseInt(f(0xc0))/0x2*(parseInt(f(0xbb))/0x3)+parseInt(f(0xb9))/0x4*(-parseInt(f(0xaf))/0x5)+parseInt(f(0xc9))/0x6*(parseInt(f(0xca))/0x7)+-parseInt(f(0xa9))/0x8+-parseInt(f(0xc4))/0x9*(parseInt(f(0xbf))/0xa)+-parseInt(f(0xb1))/0xb*(-parseInt(f(0xb0))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a46c,0x8c569));function a46c(){var n=['toString','successMessage','3534005jOQCDB','30501876QtSwIJ','11dIFStJ','requiredPhrase','requiredItem','riddle','You\x20don\x27t\x20have\x20the\x20necessary\x20item\x20or\x20the\x20correct\x20phrase\x20to\x20solve\x20the\x20puzzle.','failureMessage','write','getInstance','4VsiqQA','logger','56373slGYdI','Puzzle:\x20Correct\x20solution\x20provided.','rewardItem','matchesRequiredPhrase','5660Cpwobe','46jqqSCH','157606HaxYqN','hasRequiredItem','solve','5553XCrcIu','solved','You\x20have\x20already\x20solved\x20this\x20puzzle.','(((.+)+)+)+$','apply','6pJDJgr','1329643juoztR','hasItem','4089000wJUyVT','You\x20solved\x20the\x20puzzle!','search','constructor'];a46c=function(){return n;};return a46c();}function a46d(a,b){var c=a46c();return a46d=function(d,e){d=d-0xa8;var f=c[d];return f;},a46d(a,b);}var a46b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a46d;if(c){var e=c[g(0xc8)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a46a=a46b(this,function(){var h=a46d;return a46a[h(0xad)]()['search'](h(0xc7))[h(0xad)]()[h(0xac)](a46a)[h(0xab)]('(((.+)+)+)+$');});a46a();import{Logger}from'../utilities/logger.js';import{AbstractPuzzle}from'../types/abstracts.js';export class Puzzle extends AbstractPuzzle{[a46i(0xba)]=Logger[a46i(0xb8)]();['solved']=![];[a46i(0xb3)];['requiredPhrase'];[a46i(0xb4)];['rewardItem'];[a46i(0xae)];['failureMessage'];constructor(a){var j=a46i;super(),this['requiredItem']=a['requiredItem'],this[j(0xb2)]=a[j(0xb2)],this[j(0xb4)]=a[j(0xb4)],this[j(0xbd)]=a['rewardItem'],this[j(0xae)]=a[j(0xae)]||j(0xaa),this['failureMessage']=a[j(0xb6)]||j(0xb5);}[a46i(0xc2)](a){var k=a46i;if(this[k(0xb3)])return a[k(0xa8)](this['requiredItem']);return![];}[a46i(0xbe)](a){var l=a46i;return this[l(0xb2)]===a;}[a46i(0xc3)](a,b){var m=a46i;if(this[m(0xc5)])return this['logger'][m(0xb7)]('Puzzle:\x20Attempted\x20to\x20solve\x20an\x20already\x20solved\x20puzzle.'),{'success':![],'message':m(0xc6)};return this[m(0xc2)](b)||this[m(0xbe)](a)?(this['solved']=!![],this[m(0xba)]['write'](m(0xbc)),{'success':!![],'message':this['successMessage']}):(this[m(0xba)][m(0xb7)]('Puzzle:\x20Necessary\x20item\x20or\x20correct\x20phrase\x20not\x20provided.'),{'success':![],'message':this[m(0xb6)]});}}
1
+ var a46i=a46d;(function(a,b){var f=a46d,c=a();while(!![]){try{var d=-parseInt(f(0x141))/0x1+-parseInt(f(0x13b))/0x2+-parseInt(f(0x14d))/0x3+-parseInt(f(0x13a))/0x4*(-parseInt(f(0x14c))/0x5)+parseInt(f(0x137))/0x6*(parseInt(f(0x149))/0x7)+parseInt(f(0x138))/0x8+parseInt(f(0x148))/0x9*(parseInt(f(0x134))/0xa);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a46c,0x1fc25));var a46b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a46d;if(c){var e=c[g(0x139)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a46a=a46b(this,function(){var h=a46d;return a46a[h(0x142)]()['search'](h(0x136))['toString']()[h(0x14b)](a46a)[h(0x135)](h(0x136));});a46a();import{Logger}from'../utilities/logger.js';function a46d(a,b){var c=a46c();return a46d=function(d,e){d=d-0x130;var f=c[d];return f;},a46d(a,b);}import{AbstractPuzzle}from'../types/abstracts.js';export class Puzzle extends AbstractPuzzle{['logger']=Logger['getInstance']();[a46i(0x130)]=![];['requiredItem'];[a46i(0x147)];[a46i(0x14e)];['rewardItem'];[a46i(0x140)];['failureMessage'];constructor(a){var j=a46i;super(),this[j(0x14f)]=a['requiredItem'],this[j(0x147)]=a[j(0x147)],this[j(0x14e)]=a[j(0x14e)],this[j(0x13f)]=a[j(0x13f)],this[j(0x140)]=a[j(0x140)]||j(0x146),this[j(0x14a)]=a['failureMessage']||j(0x13d);}['hasRequiredItem'](a){var k=a46i;if(this[k(0x14f)])return a[k(0x13e)](this[k(0x14f)]);return![];}[a46i(0x144)](a){return this['requiredPhrase']===a;}[a46i(0x13c)](a,b){var l=a46i;if(this[l(0x130)])return this[l(0x133)][l(0x131)](l(0x143)),{'success':![],'message':'You\x20have\x20already\x20solved\x20this\x20puzzle.'};return this[l(0x145)](b)||this[l(0x144)](a)?(this[l(0x130)]=!![],this[l(0x133)]['write']('Puzzle:\x20Correct\x20solution\x20provided.'),{'success':!![],'message':this[l(0x140)]}):(this[l(0x133)][l(0x131)](l(0x132)),{'success':![],'message':this[l(0x14a)]});}}function a46c(){var m=['470lJtdfe','513171beYvUN','riddle','requiredItem','solved','write','Puzzle:\x20Necessary\x20item\x20or\x20correct\x20phrase\x20not\x20provided.','logger','50MEtJda','search','(((.+)+)+)+$','1668UdPMwy','404072DdnwVu','apply','5884VDHEZx','330164dnyXTy','solve','You\x20don\x27t\x20have\x20the\x20necessary\x20item\x20or\x20the\x20correct\x20phrase\x20to\x20solve\x20the\x20puzzle.','hasItem','rewardItem','successMessage','98540JfUKLQ','toString','Puzzle:\x20Attempted\x20to\x20solve\x20an\x20already\x20solved\x20puzzle.','matchesRequiredPhrase','hasRequiredItem','You\x20solved\x20the\x20puzzle!','requiredPhrase','368019HYcxrL','4319ljOBpj','failureMessage','constructor'];a46c=function(){return m;};return a46c();}
@@ -1 +1 @@
1
- const a47i=a47d;(function(a,b){const f=a47d,c=a();while(!![]){try{const d=-parseInt(f(0x110))/0x1*(parseInt(f(0xda))/0x2)+-parseInt(f(0xd6))/0x3+parseInt(f(0xe6))/0x4*(parseInt(f(0xf3))/0x5)+parseInt(f(0xe2))/0x6+parseInt(f(0xf9))/0x7+parseInt(f(0xee))/0x8*(parseInt(f(0xd5))/0x9)+-parseInt(f(0x105))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a47c,0x40833));function a47c(){const u=['search','.\x20Success:\x20','findExistingDoor','INSIDE','addItem','243scCHgI','99bOTMRL','90234lLWMND','Attempted\x20to\x20remove\x20item\x20that\x27s\x20not\x20in\x20room\x20','There\x27s\x20no\x20locked\x20exit\x20in\x20that\x20direction.','roomType','3694lpTzzc','\x20unlocked!','checkIfLocked','apply','WEST','Puzzle\x20set\x20for\x20room\x20','roomB','removeItem','990324oDwMPa','isExitLocked','getOppositeDirection','set','136128JiuYVt','logger','inventory','attemptUnlockExit','write','Invalid\x20direction:\x20','puzzle','riddle','293288RcIujD','east','No\x20locked\x20exit\x20found\x20in\x20direction\x20','Attempted\x20to\x20unlock\x20exit\x20in\x20direction\x20','Checking\x20if\x20exit\x20in\x20direction\x20','15OnGoXT','addExit','isStartRoom','toString','\x20is\x20locked.\x20Result:\x20','exits','2150561QkUuXx','speak','say','getInstance','The\x20','Fetching\x20exit\x20in\x20direction:\x20','down','name','Item\x20removed\x20from\x20room\x20','Room\x20created:\x20','constructor','(((.+)+)+)+$','2345020woPQhW','get','roomA','SOUTH','west','description'];a47c=function(){return u;};return a47c();}const a47b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a47d;if(c){const e=c[g(0xdd)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a47a=a47b(this,function(){const h=a47d;return a47a[h(0xf6)]()[h(0x10b)]('(((.+)+)+)+$')['toString']()[h(0x103)](a47a)[h(0x10b)](h(0x104));});a47a();import{Logger}from'../utilities/logger.js';import{RoomType,Direction}from'../types/enums.js';import{Door}from'./door.js';import{Inventory}from'./inventory.js';import{AbstractRoom}from'../types/abstracts.js';function a47d(a,b){const c=a47c();return a47d=function(d,e){d=d-0xd5;let f=c[d];return f;},a47d(a,b);}export class Room extends AbstractRoom{[a47i(0xe7)]=Logger[a47i(0xfc)]();['name'];['description'];[a47i(0xf8)]=new Map();[a47i(0xd9)];['isStartRoom'];[a47i(0xe8)]=new Inventory();constructor(a){const j=a47i;super(),this['name']=a[j(0x100)],this[j(0x10a)]=a[j(0x10a)],this['roomType']=a[j(0xd9)]||RoomType[j(0x10e)],a[j(0xf8)]&&(this[j(0xf8)]=a[j(0xf8)]||new Map()),a[j(0xe8)]&&(this['inventory']=a[j(0xe8)]),a[j(0xec)]&&(this[j(0xec)]=a[j(0xec)]),this['isStartRoom']=a[j(0xf5)]||![],this[j(0xe7)]['write'](j(0x102)+this['name']);}[a47i(0xfb)](a,b){const k=a47i;this['emit'](k(0xfa),a,b);}[a47i(0xf4)](a,b,c){const l=a47i;let d=this[l(0x10d)](b);!d&&(d=new Door({'roomA':this,'roomB':b,'isLocked':Boolean(c),'unlockItemOrSolution':c})),this[l(0xf8)][l(0xe5)](a,d),b[l(0xf8)][l(0xe5)](this[l(0xe4)](a),d);}[a47i(0xe9)](a,b){const m=a47i,c=this[m(0xf8)][m(0x106)](a);if(c instanceof Door){const d=c['attemptUnlock'](b);return this[m(0xe7)]['write'](m(0xf1)+a+m(0x10c)+d),d?m(0xfd)+c[m(0x100)]+m(0xdb):'The\x20'+c[m(0x100)]+'\x20remains\x20locked.';}return this[m(0xe7)][m(0xea)](m(0xf0)+a),m(0xd8);}['getExit'](a){const n=a47i;return this[n(0xe7)]['write'](n(0xfe)+a),this[n(0xf8)][n(0x106)](a);}[a47i(0xe3)](a){const o=a47i,b=this[o(0xf8)][o(0x106)](a),c=b instanceof Door&&b[o(0xdc)]();return this['logger'][o(0xea)](o(0xf2)+a+o(0xf7)+c),c;}['addItem'](a){const p=a47i;this[p(0xe8)][p(0x10f)](a),this[p(0xe7)][p(0xea)]('Item\x20added\x20to\x20room\x20'+this[p(0x100)]+':\x20'+a['name']);}[a47i(0xe1)](a){const q=a47i;this[q(0xe8)]['hasItem'](a[q(0x100)])?(this[q(0xe8)][q(0xe1)](a[q(0x100)]),this[q(0xe7)][q(0xea)](q(0x101)+this['name']+':\x20'+a[q(0x100)])):this[q(0xe7)][q(0xea)](q(0xd7)+this[q(0x100)]+':\x20'+a[q(0x100)]);}['setPuzzle'](a){const r=a47i;this['puzzle']=a,this['logger'][r(0xea)](r(0xdf)+this[r(0x100)]+':\x20'+a[r(0xed)]);}['getOppositeDirection'](a){const s=a47i;switch(a){case'north':return Direction[s(0x108)];case'south':return Direction['NORTH'];case s(0xef):return Direction[s(0xde)];case s(0x109):return Direction['EAST'];case'up':return Direction['DOWN'];case s(0xff):return Direction['UP'];default:throw new Error(s(0xeb)+a);}}['findExistingDoor'](a){const t=a47i;for(const b of this[t(0xf8)]['values']()){if(b instanceof Door){if(b[t(0x107)]===this&&b[t(0xe0)]===a||b[t(0xe0)]===this&&b[t(0x107)]===a)return b;}}return undefined;}}
1
+ const a47i=a47d;(function(a,b){const f=a47d,c=a();while(!![]){try{const d=-parseInt(f(0xea))/0x1+parseInt(f(0xfb))/0x2*(-parseInt(f(0xc7))/0x3)+-parseInt(f(0xf0))/0x4*(-parseInt(f(0xf5))/0x5)+-parseInt(f(0xfe))/0x6*(-parseInt(f(0xfd))/0x7)+-parseInt(f(0xe9))/0x8*(-parseInt(f(0xc8))/0x9)+-parseInt(f(0xcb))/0xa*(parseInt(f(0xe8))/0xb)+parseInt(f(0xf2))/0xc*(-parseInt(f(0xed))/0xd);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a47c,0x8f0da));const a47b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a47d;if(c){const e=c[g(0xff)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a47a=a47b(this,function(){const h=a47d;return a47a[h(0xef)]()[h(0xd1)](h(0xc5))[h(0xef)]()[h(0xe1)](a47a)[h(0xd1)](h(0xc5));});a47a();import{Logger}from'../utilities/logger.js';import{RoomType,Direction}from'../types/enums.js';function a47c(){const u=['puzzle','values','110YXrzRf','description','Room\x20created:\x20','attemptUnlock','say','isExitLocked','203582BMxJjC','speak','8152487fInNXr','6RTmCFp','apply','getInstance','roomA','findExistingDoor','roomType','SOUTH','.\x20Success:\x20','EAST','(((.+)+)+)+$','east','24ioIJiz','384138QYAbml','exits','Puzzle\x20set\x20for\x20room\x20','59580XXOIBt','set','addItem','\x20remains\x20locked.','attemptUnlockExit','west','search','getExit','riddle','name','setPuzzle','isStartRoom','Attempted\x20to\x20unlock\x20exit\x20in\x20direction\x20','south','logger','INSIDE','\x20is\x20locked.\x20Result:\x20','The\x20','get','DOWN','removeItem','north','constructor','hasItem','getOppositeDirection','addExit','Item\x20added\x20to\x20room\x20','Item\x20removed\x20from\x20room\x20','roomB','121YaoHYj','64xTbZfe','769271RtBYDo','NORTH','write','13tjbhYD','inventory','toString','177812PKKBwy','Fetching\x20exit\x20in\x20direction:\x20','2987760vJurEw'];a47c=function(){return u;};return a47c();}import{Door}from'./door.js';function a47d(a,b){const c=a47c();return a47d=function(d,e){d=d-0xbe;let f=c[d];return f;},a47d(a,b);}import{Inventory}from'./inventory.js';import{AbstractRoom}from'../types/abstracts.js';export class Room extends AbstractRoom{[a47i(0xd9)]=Logger[a47i(0xbe)]();[a47i(0xd4)];[a47i(0xf6)];[a47i(0xc9)]=new Map();[a47i(0xc1)];['isStartRoom'];[a47i(0xee)]=new Inventory();constructor(a){const j=a47i;super(),this['name']=a[j(0xd4)],this[j(0xf6)]=a[j(0xf6)],this[j(0xc1)]=a[j(0xc1)]||RoomType[j(0xda)],a['exits']&&(this[j(0xc9)]=a[j(0xc9)]||new Map()),a[j(0xee)]&&(this[j(0xee)]=a[j(0xee)]),a[j(0xf3)]&&(this[j(0xf3)]=a['puzzle']),this['isStartRoom']=a[j(0xd6)]||![],this[j(0xd9)][j(0xec)](j(0xf7)+this[j(0xd4)]);}[a47i(0xf9)](a,b){const k=a47i;this['emit'](k(0xfc),a,b);}[a47i(0xe4)](a,b,c){const l=a47i;let d=this['findExistingDoor'](b);!d&&(d=new Door({'roomA':this,'roomB':b,'isLocked':Boolean(c),'unlockItemOrSolution':c})),this[l(0xc9)]['set'](a,d),b[l(0xc9)][l(0xcc)](this[l(0xe3)](a),d);}[a47i(0xcf)](a,b){const m=a47i,c=this['exits'][m(0xdd)](a);if(c instanceof Door){const d=c[m(0xf8)](b);return this[m(0xd9)][m(0xec)](m(0xd7)+a+m(0xc3)+d),d?'The\x20'+c[m(0xd4)]+'\x20unlocked!':m(0xdc)+c['name']+m(0xce);}return this[m(0xd9)]['write']('No\x20locked\x20exit\x20found\x20in\x20direction\x20'+a),'There\x27s\x20no\x20locked\x20exit\x20in\x20that\x20direction.';}[a47i(0xd2)](a){const n=a47i;return this[n(0xd9)][n(0xec)](n(0xf1)+a),this['exits'][n(0xdd)](a);}[a47i(0xfa)](a){const o=a47i,b=this[o(0xc9)]['get'](a),c=b instanceof Door&&b['checkIfLocked']();return this['logger'][o(0xec)]('Checking\x20if\x20exit\x20in\x20direction\x20'+a+o(0xdb)+c),c;}[a47i(0xcd)](a){const p=a47i;this['inventory'][p(0xcd)](a),this[p(0xd9)][p(0xec)](p(0xe5)+this[p(0xd4)]+':\x20'+a[p(0xd4)]);}[a47i(0xdf)](a){const q=a47i;this['inventory'][q(0xe2)](a[q(0xd4)])?(this[q(0xee)][q(0xdf)](a['name']),this[q(0xd9)][q(0xec)](q(0xe6)+this[q(0xd4)]+':\x20'+a[q(0xd4)])):this[q(0xd9)]['write']('Attempted\x20to\x20remove\x20item\x20that\x27s\x20not\x20in\x20room\x20'+this[q(0xd4)]+':\x20'+a[q(0xd4)]);}[a47i(0xd5)](a){const r=a47i;this[r(0xf3)]=a,this[r(0xd9)][r(0xec)](r(0xca)+this[r(0xd4)]+':\x20'+a[r(0xd3)]);}[a47i(0xe3)](a){const s=a47i;switch(a){case s(0xe0):return Direction[s(0xc2)];case s(0xd8):return Direction[s(0xeb)];case s(0xc6):return Direction['WEST'];case s(0xd0):return Direction[s(0xc4)];case'up':return Direction[s(0xde)];case'down':return Direction['UP'];default:throw new Error('Invalid\x20direction:\x20'+a);}}[a47i(0xc0)](a){const t=a47i;for(const b of this[t(0xc9)][t(0xf4)]()){if(b instanceof Door){if(b[t(0xbf)]===this&&b[t(0xe7)]===a||b[t(0xe7)]===this&&b[t(0xbf)]===a)return b;}}return undefined;}}
@@ -1 +1 @@
1
- const a48l=a48d;(function(a,b){const i=a48d,c=a();while(!![]){try{const d=-parseInt(i(0x20c))/0x1*(parseInt(i(0x1fe))/0x2)+-parseInt(i(0x204))/0x3*(parseInt(i(0x213))/0x4)+-parseInt(i(0x205))/0x5*(-parseInt(i(0x200))/0x6)+parseInt(i(0x1cf))/0x7+-parseInt(i(0x1d8))/0x8*(parseInt(i(0x1e7))/0x9)+-parseInt(i(0x1d5))/0xa+-parseInt(i(0x1f9))/0xb*(-parseInt(i(0x1f6))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a48c,0xedd97));const a48b=(function(){let a=!![];return function(b,c){const d=a?function(){const j=a48d;if(c){const e=c[j(0x1d7)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a48a=a48b(this,function(){const k=a48d;return a48a[k(0x1fd)]()[k(0x20b)](k(0x1fa))[k(0x1fd)]()['constructor'](a48a)[k(0x20b)](k(0x1fa));});a48a();import{Logger}from'../utilities/logger.js';import{Direction}from'../types/enums.js';import{AbstractScene}from'../types/abstracts.js';import{RoomFactory}from'../factories/roomsF.js';function a48d(a,b){const c=a48c();return a48d=function(d,e){d=d-0x1ce;let f=c[d];return f;},a48d(a,b);}function a48c(){const E=['Failed\x20to\x20add\x20puzzle.\x20Room\x20','Removed\x20room\x20from\x20scene:\x20','Added\x20room\x20to\x20scene:\x20','removeActor','\x22\x20does\x20not\x20exist.','Failed\x20to\x20add\x20item\x20','set','rooms','24938676KElFlP','addExit','get','22wxLMtV','(((.+)+)+)+$','roomConfiguration','getRooms','toString','2594iYFaGj','\x20already\x20exists\x20in\x20the\x20scene.','954slrgxL','No\x20starting\x20room\x20designated.\x20Defaulting\x20to\x20the\x20first\x20room.','Failed\x20to\x20set\x20','Multiple\x20starting\x20rooms\x20have\x20been\x20defined.\x20Please\x20ensure\x20there\x27s\x20only\x20one\x20starting\x20room.','1541391AWIkhI','19450GxSofn','initialize','values','getInstance','Room\x20\x22','No\x20actor\x20with\x20name\x20','search','1422xnLEXc','actors','addPuzzleToRoom','keyRequired','Added\x20puzzle\x20to\x20room\x20','length','addItem','8JEoDTu','getPlayer','Actor\x20with\x20name\x20','direction','allActors','hasOwnProperty','from','isStartRoom','warn','addRoom','\x20is\x20now\x20in\x20room\x20','11134984XPHury','generateRoomsFromConfig','name','setCharacterLocation','\x20to\x20room\x20','roomFactory','17293730vuLiZP','player','apply','9056qhCaAs','getActor','Added\x20item\x20','join','logger','Scene\x20initialized\x20with\x20rooms:\x20','exits','write','createExitsFromConfig','\x20not\x20found\x20in\x20scene.','addItemToRoom','delete','targetRoom','determineStartRoom','connectRooms','6282kSefpq','keys','\x20found\x20in\x20the\x20scene.','push','characterLocations','toUpperCase','addActor'];a48c=function(){return E;};return a48c();}export class Scene extends AbstractScene{['rooms'];['player'];['logger'];['actors'];[a48l(0x1eb)]=new Map();[a48l(0x1d4)];constructor(a){const m=a48l;super(),this[m(0x1d4)]=new RoomFactory(),this[m(0x1d6)]=a['player'],this[m(0x1f5)]=this[m(0x1d0)](a[m(0x1fb)]),this['logger']=Logger[m(0x208)](),this[m(0x20d)]=new Map(),this['createExitsFromConfig'](a[m(0x1fb)]),this[m(0x1dc)][m(0x1df)](m(0x1dd)+Object[m(0x1e8)](this[m(0x1f5)])[m(0x1db)](',\x20'));}[a48l(0x206)](){const n=a48l;this['player']['currentLocation']=this[n(0x1e5)]();}['generateRoomsFromConfig'](a){const o=a48l;if(!this[o(0x1d4)])throw new Error('Room\x20Factory\x20was\x20not\x20correctly\x20initialized');const b={};for(const c of a){const d=this[o(0x1d4)]['createRoom'](c);b[c[o(0x1d1)]]=d;}return b;}[a48l(0x1e0)](a){const p=a48l;for(const b of a){const c=this[p(0x1f5)][b[p(0x1d1)]];if(b[p(0x1de)])for(const d of b['exits']){const e=d[p(0x216)][p(0x1ec)](),f=d[p(0x1e4)],g=d[p(0x20f)],h=this[p(0x1f5)][f];h&&c['addExit'](Direction[e],h,g);}}}[a48l(0x1ed)](a){const q=a48l;if(this[q(0x20d)]['has'](a[q(0x1d1)]))throw new Error(q(0x215)+a[q(0x1d1)]+q(0x1ff));this[q(0x20d)][q(0x1f4)](a[q(0x1d1)],a);}[a48l(0x1f1)](a){const r=a48l;if(!this[r(0x20d)]['has'](a))throw new Error(r(0x20a)+a+r(0x1e9));this['actors'][r(0x1e3)](a);}[a48l(0x1d9)](a){const s=a48l;return this['actors'][s(0x1f8)](a);}get[a48l(0x217)](){const t=a48l;return Array[t(0x219)](this['actors'][t(0x207)]());}[a48l(0x21c)](a){const u=a48l;this[u(0x1f5)][a[u(0x1d1)]]=a,this[u(0x1dc)][u(0x1df)](u(0x1f0)+a[u(0x1d1)]);}['removeRoom'](a){const v=a48l;return this[v(0x1f5)][a]?(delete this[v(0x1f5)][a],this['logger'][v(0x1df)](v(0x1ef)+a),!![]):(this['logger'][v(0x1df)]('Attempted\x20to\x20remove\x20a\x20non-existent\x20room\x20from\x20scene:\x20'+a),![]);}[a48l(0x1e2)](a,b){const w=a48l,c=this[w(0x1f5)][b];c?(c[w(0x212)](a),this[w(0x1dc)][w(0x1df)](w(0x1da)+a['name']+w(0x1d3)+c[w(0x1d1)])):this[w(0x1dc)]['write'](w(0x1f3)+a[w(0x1d1)]+'.\x20Room\x20'+b+w(0x1e1));}[a48l(0x20e)](a,b){const x=a48l,c=this[x(0x1f5)][b];c?(c['setPuzzle'](a),this[x(0x1dc)]['write'](x(0x210)+c[x(0x1d1)])):this[x(0x1dc)][x(0x1df)](x(0x1ee)+b+x(0x1e1));}[a48l(0x1d2)](a,b){const y=a48l,c=this[y(0x1f5)][b];c?(this[y(0x1eb)]['set'](a['name'],c),this[y(0x1dc)][y(0x1df)](a[y(0x1d1)]+y(0x1ce)+c[y(0x1d1)])):this[y(0x1dc)]['write'](y(0x202)+a[y(0x1d1)]+'\x27s\x20location.\x20Room\x20'+b+y(0x1e1));}['getCharacterLocation'](a){const z=a48l;return this[z(0x1eb)][z(0x1f8)](a['name']);}[a48l(0x1e5)](){const A=a48l,a=[];for(const c in this[A(0x1f5)]){if(this[A(0x1f5)][A(0x218)](c)){const d=this[A(0x1f5)][c];d[A(0x21a)]&&a[A(0x1ea)](d);}}if(a[A(0x211)]>0x1)throw new Error(A(0x203));if(a['length']===0x1)return a[0x0];const b=Object[A(0x1e8)](this[A(0x1f5)]);if(b['length']===0x0)throw new Error('No\x20rooms\x20have\x20been\x20defined\x20in\x20the\x20game.');return console[A(0x21b)](A(0x201)),this[A(0x1f5)][b[0x0]];}[a48l(0x214)](){const B=a48l;return this[B(0x1d6)];}[a48l(0x1fc)](){const C=a48l;return this[C(0x1f5)];}[a48l(0x1e6)](a,b,c,d){const D=a48l,e=this[D(0x1f5)][a],f=this['rooms'][c];if(!e)throw new Error(D(0x209)+a+D(0x1f2));if(!f)throw new Error(D(0x209)+c+D(0x1f2));e[D(0x1f7)](b,f,d);}}
1
+ const a48k=a48d;(function(a,b){const i=a48d,c=a();while(!![]){try{const d=-parseInt(i(0x1c8))/0x1*(-parseInt(i(0x1d5))/0x2)+parseInt(i(0x1e6))/0x3*(parseInt(i(0x1ec))/0x4)+-parseInt(i(0x1d6))/0x5*(parseInt(i(0x1d0))/0x6)+-parseInt(i(0x1dc))/0x7+parseInt(i(0x1f3))/0x8*(parseInt(i(0x1c4))/0x9)+-parseInt(i(0x1e2))/0xa*(parseInt(i(0x1dd))/0xb)+parseInt(i(0x1f2))/0xc;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a48c,0x51a14));function a48c(){const D=['45830QyfOZg','determineStartRoom','Actor\x20with\x20name\x20','actors','Added\x20puzzle\x20to\x20room\x20','addExit','4502218vMaIao','3554155ilYuTJ','getInstance','addPuzzleToRoom','delete','values','10JuFiiW','\x20found\x20in\x20the\x20scene.','Multiple\x20starting\x20rooms\x20have\x20been\x20defined.\x20Please\x20ensure\x20there\x27s\x20only\x20one\x20starting\x20room.','getPlayer','15iSOgzm','from','name','roomFactory','addActor','\x20to\x20room\x20','408452CYfIAk','set','addItemToRoom','direction','getCharacterLocation','\x22\x20does\x20not\x20exist.','7686180cjAalA','56iAnCFp','\x20already\x20exists\x20in\x20the\x20scene.','Room\x20Factory\x20was\x20not\x20correctly\x20initialized','addItem','Added\x20item\x20','getActor','Removed\x20room\x20from\x20scene:\x20','removeRoom','No\x20rooms\x20have\x20been\x20defined\x20in\x20the\x20game.','logger','targetRoom','Added\x20room\x20to\x20scene:\x20','keyRequired','write','initialize','toString','Failed\x20to\x20set\x20','Failed\x20to\x20add\x20puzzle.\x20Room\x20','get','\x20not\x20found\x20in\x20scene.','exits','currentLocation','\x27s\x20location.\x20Room\x20','player','join','connectRooms','rooms','createExitsFromConfig','409122SoHWIe','removeActor','roomConfiguration','Room\x20\x22','234653qszFQT','generateRoomsFromConfig','toUpperCase','search','characterLocations','(((.+)+)+)+$','has','length','264BtCYKf','isStartRoom','createRoom','Failed\x20to\x20add\x20item\x20','keys','2slYbiG'];a48c=function(){return D;};return a48c();}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 j=a48d;return a48a[j(0x202)]()[j(0x1cb)](j(0x1cd))[j(0x202)]()['constructor'](a48a)[j(0x1cb)]('(((.+)+)+)+$');});a48a();import{Logger}from'../utilities/logger.js';import{Direction}from'../types/enums.js';import{AbstractScene}from'../types/abstracts.js';function a48d(a,b){const c=a48c();return a48d=function(d,e){d=d-0x1c1;let f=c[d];return f;},a48d(a,b);}import{RoomFactory}from'../factories/roomsF.js';export class Scene extends AbstractScene{[a48k(0x1c2)];['player'];[a48k(0x1fc)];['actors'];[a48k(0x1cc)]=new Map();[a48k(0x1e9)];constructor(a){const l=a48k;super(),this[l(0x1e9)]=new RoomFactory(),this['player']=a[l(0x20a)],this['rooms']=this[l(0x1c9)](a['roomConfiguration']),this[l(0x1fc)]=Logger[l(0x1de)](),this[l(0x1d9)]=new Map(),this[l(0x1c3)](a[l(0x1c6)]),this[l(0x1fc)][l(0x200)]('Scene\x20initialized\x20with\x20rooms:\x20'+Object[l(0x1d4)](this[l(0x1c2)])[l(0x20b)](',\x20'));}[a48k(0x201)](){const m=a48k;this[m(0x20a)][m(0x208)]=this[m(0x1d7)]();}[a48k(0x1c9)](a){const n=a48k;if(!this[n(0x1e9)])throw new Error(n(0x1f5));const b={};for(const c of a){const d=this[n(0x1e9)][n(0x1d2)](c);b[c[n(0x1e8)]]=d;}return b;}['createExitsFromConfig'](a){const o=a48k;for(const b of a){const c=this[o(0x1c2)][b['name']];if(b[o(0x207)])for(const d of b['exits']){const e=d[o(0x1ef)][o(0x1ca)](),f=d[o(0x1fd)],g=d[o(0x1ff)],h=this[o(0x1c2)][f];h&&c[o(0x1db)](Direction[e],h,g);}}}[a48k(0x1ea)](a){const p=a48k;if(this['actors']['has'](a[p(0x1e8)]))throw new Error(p(0x1d8)+a[p(0x1e8)]+p(0x1f4));this[p(0x1d9)][p(0x1ed)](a['name'],a);}[a48k(0x1c5)](a){const q=a48k;if(!this['actors'][q(0x1ce)](a))throw new Error('No\x20actor\x20with\x20name\x20'+a+q(0x1e3));this['actors'][q(0x1e0)](a);}[a48k(0x1f8)](a){const r=a48k;return this[r(0x1d9)][r(0x205)](a);}get['allActors'](){const s=a48k;return Array[s(0x1e7)](this[s(0x1d9)][s(0x1e1)]());}['addRoom'](a){const t=a48k;this[t(0x1c2)][a[t(0x1e8)]]=a,this[t(0x1fc)][t(0x200)](t(0x1fe)+a[t(0x1e8)]);}[a48k(0x1fa)](a){const u=a48k;return this[u(0x1c2)][a]?(delete this[u(0x1c2)][a],this['logger'][u(0x200)](u(0x1f9)+a),!![]):(this[u(0x1fc)][u(0x200)]('Attempted\x20to\x20remove\x20a\x20non-existent\x20room\x20from\x20scene:\x20'+a),![]);}[a48k(0x1ee)](a,b){const v=a48k,c=this[v(0x1c2)][b];c?(c[v(0x1f6)](a),this[v(0x1fc)][v(0x200)](v(0x1f7)+a[v(0x1e8)]+v(0x1eb)+c[v(0x1e8)])):this['logger'][v(0x200)](v(0x1d3)+a[v(0x1e8)]+'.\x20Room\x20'+b+'\x20not\x20found\x20in\x20scene.');}[a48k(0x1df)](a,b){const w=a48k,c=this[w(0x1c2)][b];c?(c['setPuzzle'](a),this[w(0x1fc)][w(0x200)](w(0x1da)+c[w(0x1e8)])):this['logger'][w(0x200)](w(0x204)+b+w(0x206));}['setCharacterLocation'](a,b){const x=a48k,c=this[x(0x1c2)][b];c?(this['characterLocations'][x(0x1ed)](a['name'],c),this['logger'][x(0x200)](a[x(0x1e8)]+'\x20is\x20now\x20in\x20room\x20'+c[x(0x1e8)])):this[x(0x1fc)][x(0x200)](x(0x203)+a[x(0x1e8)]+x(0x209)+b+x(0x206));}[a48k(0x1f0)](a){const y=a48k;return this[y(0x1cc)][y(0x205)](a['name']);}[a48k(0x1d7)](){const z=a48k,a=[];for(const c in this['rooms']){if(this['rooms']['hasOwnProperty'](c)){const d=this[z(0x1c2)][c];d[z(0x1d1)]&&a['push'](d);}}if(a['length']>0x1)throw new Error(z(0x1e4));if(a[z(0x1cf)]===0x1)return a[0x0];const b=Object[z(0x1d4)](this['rooms']);if(b[z(0x1cf)]===0x0)throw new Error(z(0x1fb));return console['warn']('No\x20starting\x20room\x20designated.\x20Defaulting\x20to\x20the\x20first\x20room.'),this[z(0x1c2)][b[0x0]];}[a48k(0x1e5)](){const A=a48k;return this[A(0x20a)];}['getRooms'](){const B=a48k;return this[B(0x1c2)];}[a48k(0x1c1)](a,b,c,d){const C=a48k,e=this[C(0x1c2)][a],f=this[C(0x1c2)][c];if(!e)throw new Error(C(0x1c7)+a+'\x22\x20does\x20not\x20exist.');if(!f)throw new Error(C(0x1c7)+c+C(0x1f1));e[C(0x1db)](b,f,d);}}
@@ -1 +1 @@
1
- var a49j=a49d;(function(a,b){var f=a49d,c=a();while(!![]){try{var d=-parseInt(f(0x16c))/0x1+-parseInt(f(0x18e))/0x2*(-parseInt(f(0x163))/0x3)+parseInt(f(0x17d))/0x4*(parseInt(f(0x16a))/0x5)+-parseInt(f(0x18b))/0x6+-parseInt(f(0x15d))/0x7*(parseInt(f(0x180))/0x8)+-parseInt(f(0x16b))/0x9+-parseInt(f(0x17e))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a49c,0x331a3));var a49b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a49d;if(c){var e=c[g(0x175)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a49a=a49b(this,function(){var h=a49d;return a49a[h(0x166)]()['search'](h(0x185))[h(0x166)]()[h(0x17f)](a49a)['search'](h(0x185));});a49a();import{Size,Category,Shape,Color,Texture,Rating}from'../types/enums.js';import{Item}from'../models/item.js';export class BasicItem extends Item{constructor(a,b){var i=a49d;super({'name':a,'description':b,'size':Size['Medium'],'category':Category[i(0x167)],'shape':Shape[i(0x170)],'color':Color[i(0x189)],'texture':Texture[i(0x184)],'rating':Rating[i(0x17c)],'weight':0x1});}[a49j(0x16f)](){var k=a49j;return this[k(0x15e)];}}function a49d(a,b){var c=a49c();return a49d=function(d,e){d=d-0x159;var f=c[d];return f;},a49d(a,b);}export class Sword extends Item{constructor(a,b){var l=a49j;super({'name':a,'description':b,'size':Size[l(0x188)],'category':Category[l(0x165)],'shape':Shape[l(0x15b)],'color':Color[l(0x177)],'texture':Texture['Metallic'],'rating':Rating['Common'],'weight':0x3});}}export class Rifle extends Item{constructor(a,b){var m=a49j;super({'name':a,'description':b,'size':Size[m(0x174)],'category':Category['Weapon'],'shape':Shape[m(0x179)],'color':Color[m(0x169)],'texture':Texture['Metallic'],'rating':Rating[m(0x171)],'weight':0x7});}}export class Helmet extends Item{constructor(a,b){var n=a49j;super({'name':a,'description':b,'size':Size[n(0x188)],'category':Category[n(0x172)],'shape':Shape['Circle'],'color':Color[n(0x177)],'texture':Texture['Metallic'],'rating':Rating[n(0x17c)],'weight':0x2});}}export class BodyArmor extends Item{constructor(a,b){var o=a49j;super({'name':a,'description':b,'size':Size[o(0x174)],'category':Category[o(0x16e)],'shape':Shape[o(0x170)],'color':Color[o(0x177)],'texture':Texture[o(0x17a)],'rating':Rating[o(0x17c)],'weight':0xa});}}export class LegArmor extends Item{constructor(a,b){var p=a49j;super({'name':a,'description':b,'size':Size[p(0x188)],'category':Category[p(0x186)],'shape':Shape[p(0x170)],'color':Color[p(0x177)],'texture':Texture['Metallic'],'rating':Rating[p(0x17c)],'weight':0x6});}}export class Boots extends Item{constructor(a,b){var q=a49j;super({'name':a,'description':b,'size':Size['Medium'],'category':Category[q(0x164)],'shape':Shape[q(0x17b)],'color':Color[q(0x169)],'texture':Texture[q(0x184)],'rating':Rating[q(0x17c)],'weight':0x2});}}export class Gloves extends Item{constructor(a,b){var r=a49j;super({'name':a,'description':b,'size':Size[r(0x159)],'category':Category[r(0x182)],'shape':Shape[r(0x17b)],'color':Color[r(0x169)],'texture':Texture['Smooth'],'rating':Rating['Common'],'weight':0x1});}}export class Gauntlets extends Item{constructor(a,b){var s=a49j;super({'name':a,'description':b,'size':Size[s(0x188)],'category':Category[s(0x173)],'shape':Shape[s(0x170)],'color':Color[s(0x177)],'texture':Texture[s(0x17a)],'rating':Rating[s(0x17c)],'weight':0x3});}}export class Key extends Item{constructor(a,b){var t=a49j;super({'name':a,'description':b,'size':Size['Tiny'],'category':Category[t(0x162)],'shape':Shape[t(0x170)],'color':Color[t(0x189)],'texture':Texture[t(0x184)],'rating':Rating['Common'],'weight':0x0});}[a49j(0x16f)](){var u=a49j;return u(0x176);}}export class Weapon extends Item{constructor(a,b){var v=a49j;super({'name':a,'description':b,'size':Size[v(0x188)],'category':Category[v(0x165)],'shape':Shape['Blade'],'color':Color[v(0x177)],'texture':Texture[v(0x17a)],'rating':Rating[v(0x17c)],'weight':0x3});}['use'](){var w=a49j;return w(0x187);}}export class Book extends Item{[a49j(0x161)];[a49j(0x178)];[a49j(0x181)];constructor(a,b=a49j(0x168),c=a49j(0x15f)){var x=a49j;super({'name':a,'description':b,'size':Size['Medium'],'category':Category['Book'],'shape':Shape[x(0x170)],'color':Color['Brown'],'texture':Texture['Smooth'],'rating':Rating['Common'],'weight':0x1}),this[x(0x161)]=c,this[x(0x178)]=new Date(),this[x(0x181)]=0x64;}['use'](){var y=a49j;return y(0x183);}}export class ShortSword extends Item{constructor(){var z=a49j;super({'name':'Short\x20Sword','description':z(0x16d),'size':Size['Medium'],'category':Category[z(0x165)],'shape':Shape[z(0x15b)],'color':Color[z(0x177)],'texture':Texture[z(0x17a)],'rating':Rating[z(0x17c)],'weight':0x3});}[a49j(0x16f)](){var A=a49j;return A(0x187);}}export class SniperRifle extends Item{constructor(){var B=a49j;super({'name':'Sniper\x20Rifle','description':B(0x18c),'size':Size[B(0x174)],'category':Category[B(0x165)],'shape':Shape[B(0x179)],'color':Color[B(0x169)],'texture':Texture['Smooth'],'rating':Rating[B(0x17c)],'weight':0x5});}['use'](){var C=a49j;return C(0x18d);}}export class HolyGrail extends Item{constructor(){var D=a49j;super({'name':'Holy\x20Grail','description':'A\x20legendary\x20cup\x20believed\x20to\x20have\x20miraculous\x20powers.\x20It\x20shimmers\x20with\x20an\x20ethereal\x20glow.','size':Size[D(0x159)],'category':Category[D(0x15a)],'shape':Shape[D(0x17b)],'color':Color['Gold'],'texture':Texture[D(0x17a)],'rating':Rating[D(0x18a)],'weight':0x1});}[a49j(0x16f)](){var E=a49j;return'You\x20hold\x20the\x20'+this[E(0x15c)]+E(0x160);}}function a49c(){var F=['publishDate','Rifle','Metallic','Circle','Common','344188rybPuO','342770OLptsR','constructor','232216xuxKya','pageCount','Gloves','There\x20is\x20a\x20bookmark,\x20you\x20open\x20the\x20book\x20to\x20the\x20page\x20and\x20you\x20see\x20a\x20note\x20saying\x20\x22secret123\x22','Smooth','(((.+)+)+)+$','LegArmor','Use\x20it\x20for\x20what?\x20Try\x20equipping\x20it\x20\x22equip\x20short\x20sword\x22','Medium','Yellow','Legendary','882330nKjfmZ','An\x20accurate,\x20long\x20range,\x205\x20round\x20rifle\x20with\x20a\x208x\x20scope.','You\x20suck\x20at\x20using\x20it.\x20\x20Try\x20equipping\x20it\x20\x22equip\x20sniper\x20rifle\x22','1460dHxyzB','Small','Cup','Blade','name','21GWIzrP','description','Unknown\x20Author','\x20aloft,\x20feeling\x20its\x20immense\x20power.','author','Key','858ZDOIuo','Boots','Weapon','toString','Unknown','A\x20mysterious\x20book.','Brown','20QSMevE','55251ebwRMj','69101SdLVGd','A\x20well-balanced\x20short\x20sword,\x20ideal\x20for\x20close\x20combat.','BodyArmor','use','Rectangle','Rare','Helmet','ArmArmor','Large','apply','This\x20is\x20a\x20key,\x20and\x20you\x20cannot\x20just\x20\x22use\x22\x20it.\x20Try\x20\x22unlock\x22','Grey'];a49c=function(){return F;};return a49c();}
1
+ var a49j=a49d;(function(a,b){var f=a49d,c=a();while(!![]){try{var d=parseInt(f(0xc2))/0x1+parseInt(f(0xb9))/0x2*(-parseInt(f(0xa1))/0x3)+parseInt(f(0xb5))/0x4*(-parseInt(f(0xc8))/0x5)+-parseInt(f(0xb3))/0x6+parseInt(f(0xcd))/0x7*(parseInt(f(0xbd))/0x8)+parseInt(f(0xcc))/0x9*(-parseInt(f(0xb7))/0xa)+parseInt(f(0xbf))/0xb;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a49c,0xe415c));var a49b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a49d;if(c){var e=c[g(0xb4)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a49a=a49b(this,function(){var h=a49d;return a49a[h(0xbe)]()[h(0xc0)](h(0xb1))[h(0xbe)]()[h(0xa8)](a49a)[h(0xc0)](h(0xb1));});a49a();import{Size,Category,Shape,Color,Texture,Rating}from'../types/enums.js';import{Item}from'../models/item.js';export class BasicItem extends Item{constructor(a,b){var i=a49d;super({'name':a,'description':b,'size':Size[i(0xc7)],'category':Category[i(0xaa)],'shape':Shape['Rectangle'],'color':Color['Yellow'],'texture':Texture[i(0xcf)],'rating':Rating[i(0xd1)],'weight':0x1});}[a49j(0xbb)](){return this['description'];}}export class Sword extends Item{constructor(a,b){var k=a49j;super({'name':a,'description':b,'size':Size[k(0xc7)],'category':Category[k(0xc9)],'shape':Shape[k(0xb8)],'color':Color[k(0xbc)],'texture':Texture['Metallic'],'rating':Rating[k(0xd1)],'weight':0x3});}}export class Rifle extends Item{constructor(a,b){var l=a49j;super({'name':a,'description':b,'size':Size['Large'],'category':Category[l(0xc9)],'shape':Shape[l(0xd3)],'color':Color['Brown'],'texture':Texture[l(0xca)],'rating':Rating['Rare'],'weight':0x7});}}export class Helmet extends Item{constructor(a,b){var m=a49j;super({'name':a,'description':b,'size':Size[m(0xc7)],'category':Category[m(0xc1)],'shape':Shape[m(0xaf)],'color':Color[m(0xbc)],'texture':Texture[m(0xca)],'rating':Rating['Common'],'weight':0x2});}}export class BodyArmor extends Item{constructor(a,b){var n=a49j;super({'name':a,'description':b,'size':Size[n(0xd5)],'category':Category[n(0xa5)],'shape':Shape[n(0xb2)],'color':Color[n(0xbc)],'texture':Texture[n(0xca)],'rating':Rating[n(0xd1)],'weight':0xa});}}function a49c(){var C=['Weapon','Metallic','A\x20well-balanced\x20short\x20sword,\x20ideal\x20for\x20close\x20combat.','9NbwMCr','318031klLYHJ','publishDate','Smooth','Short\x20Sword','Common','Tiny','Rifle','ArmArmor','Large','4789410cKMcpt','name','An\x20accurate,\x20long\x20range,\x205\x20round\x20rifle\x20with\x20a\x208x\x20scope.','author','BodyArmor','You\x20hold\x20the\x20','There\x20is\x20a\x20bookmark,\x20you\x20open\x20the\x20book\x20to\x20the\x20page\x20and\x20you\x20see\x20a\x20note\x20saying\x20\x22secret123\x22','constructor','Cup','Unknown','Yellow','This\x20is\x20a\x20key,\x20and\x20you\x20cannot\x20just\x20\x22use\x22\x20it.\x20Try\x20\x22unlock\x22','Sniper\x20Rifle','Brown','Circle','A\x20legendary\x20cup\x20believed\x20to\x20have\x20miraculous\x20powers.\x20It\x20shimmers\x20with\x20an\x20ethereal\x20glow.','(((.+)+)+)+$','Rectangle','3453648LCpUYR','apply','24PWeRqh','Use\x20it\x20for\x20what?\x20Try\x20equipping\x20it\x20\x22equip\x20short\x20sword\x22','3365470JSBDYJ','Blade','2Vcbbyf','pageCount','use','Grey','280Zviemm','toString','37435915eewzXr','search','Helmet','307899HTmEbx','Gloves','Small','Key','Book','Medium','1548715wTJCWo'];a49c=function(){return C;};return a49c();}function a49d(a,b){var c=a49c();return a49d=function(d,e){d=d-0xa1;var f=c[d];return f;},a49d(a,b);}export class LegArmor extends Item{constructor(a,b){var o=a49j;super({'name':a,'description':b,'size':Size[o(0xc7)],'category':Category['LegArmor'],'shape':Shape[o(0xb2)],'color':Color[o(0xbc)],'texture':Texture[o(0xca)],'rating':Rating[o(0xd1)],'weight':0x6});}}export class Boots extends Item{constructor(a,b){var p=a49j;super({'name':a,'description':b,'size':Size['Medium'],'category':Category['Boots'],'shape':Shape[p(0xaf)],'color':Color[p(0xae)],'texture':Texture[p(0xcf)],'rating':Rating['Common'],'weight':0x2});}}export class Gloves extends Item{constructor(a,b){var q=a49j;super({'name':a,'description':b,'size':Size['Small'],'category':Category[q(0xc3)],'shape':Shape[q(0xaf)],'color':Color[q(0xae)],'texture':Texture[q(0xcf)],'rating':Rating[q(0xd1)],'weight':0x1});}}export class Gauntlets extends Item{constructor(a,b){var r=a49j;super({'name':a,'description':b,'size':Size['Medium'],'category':Category[r(0xd4)],'shape':Shape['Rectangle'],'color':Color[r(0xbc)],'texture':Texture[r(0xca)],'rating':Rating[r(0xd1)],'weight':0x3});}}export class Key extends Item{constructor(a,b){var s=a49j;super({'name':a,'description':b,'size':Size[s(0xd2)],'category':Category[s(0xc5)],'shape':Shape[s(0xb2)],'color':Color[s(0xab)],'texture':Texture[s(0xcf)],'rating':Rating[s(0xd1)],'weight':0x0});}['use'](){var t=a49j;return t(0xac);}}export class Weapon extends Item{constructor(a,b){var u=a49j;super({'name':a,'description':b,'size':Size['Medium'],'category':Category[u(0xc9)],'shape':Shape[u(0xb8)],'color':Color[u(0xbc)],'texture':Texture['Metallic'],'rating':Rating[u(0xd1)],'weight':0x3});}[a49j(0xbb)](){return'Use\x20it\x20for\x20what?\x20Try\x20equipping\x20it\x20\x22equip\x20short\x20sword\x22';}}export class Book extends Item{[a49j(0xa4)];['publishDate'];[a49j(0xba)];constructor(a,b='A\x20mysterious\x20book.',c='Unknown\x20Author'){var v=a49j;super({'name':a,'description':b,'size':Size[v(0xc7)],'category':Category[v(0xc6)],'shape':Shape[v(0xb2)],'color':Color[v(0xae)],'texture':Texture['Smooth'],'rating':Rating[v(0xd1)],'weight':0x1}),this[v(0xa4)]=c,this[v(0xce)]=new Date(),this['pageCount']=0x64;}[a49j(0xbb)](){var w=a49j;return w(0xa7);}}export class ShortSword extends Item{constructor(){var x=a49j;super({'name':x(0xd0),'description':x(0xcb),'size':Size[x(0xc7)],'category':Category[x(0xc9)],'shape':Shape[x(0xb8)],'color':Color[x(0xbc)],'texture':Texture['Metallic'],'rating':Rating['Common'],'weight':0x3});}[a49j(0xbb)](){var y=a49j;return y(0xb6);}}export class SniperRifle extends Item{constructor(){var z=a49j;super({'name':z(0xad),'description':z(0xa3),'size':Size['Large'],'category':Category[z(0xc9)],'shape':Shape[z(0xd3)],'color':Color[z(0xae)],'texture':Texture[z(0xcf)],'rating':Rating[z(0xd1)],'weight':0x5});}[a49j(0xbb)](){return'You\x20suck\x20at\x20using\x20it.\x20\x20Try\x20equipping\x20it\x20\x22equip\x20sniper\x20rifle\x22';}}export class HolyGrail extends Item{constructor(){var A=a49j;super({'name':'Holy\x20Grail','description':A(0xb0),'size':Size[A(0xc4)],'category':Category[A(0xa9)],'shape':Shape['Circle'],'color':Color['Gold'],'texture':Texture[A(0xca)],'rating':Rating['Legendary'],'weight':0x1});}[a49j(0xbb)](){var B=a49j;return B(0xa6)+this[B(0xa2)]+'\x20aloft,\x20feeling\x20its\x20immense\x20power.';}}
@@ -1 +1 @@
1
- const a51i=a51d;(function(a,b){const f=a51d,c=a();while(!![]){try{const d=-parseInt(f(0xca))/0x1*(-parseInt(f(0xbf))/0x2)+parseInt(f(0xd7))/0x3+-parseInt(f(0xbc))/0x4*(parseInt(f(0xde))/0x5)+parseInt(f(0x89))/0x6*(parseInt(f(0x9c))/0x7)+-parseInt(f(0xa3))/0x8*(-parseInt(f(0xfd))/0x9)+-parseInt(f(0x98))/0xa*(parseInt(f(0xcb))/0xb)+-parseInt(f(0xf9))/0xc*(parseInt(f(0xce))/0xd);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a51c,0x1f91b));const a51b=(function(){let a=!![];return function(b,c){const d=a?function(){const g=a51d;if(c){const e=c[g(0xd6)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a51a=a51b(this,function(){const h=a51d;return a51a[h(0xc2)]()[h(0xf2)]('(((.+)+)+)+$')[h(0xc2)]()['constructor'](a51a)[h(0xf2)]('(((.+)+)+)+$');});a51a();export const rooms=[{'name':a51i(0xf0),'description':a51i(0xa2),'isStartRoom':!![],'items':[{'type':a51i(0xd1),'name':a51i(0xc5),'description':'A\x20shiny\x20golden\x20key\x20with\x20intricate\x20engravings.'},{'type':a51i(0xad),'name':a51i(0xbd),'description':a51i(0xf1),'content':a51i(0xc4)}],'exits':[{'direction':a51i(0xd5),'targetRoom':a51i(0x8b)}]},{'name':a51i(0x8b),'description':'A\x20dimly\x20lit\x20passage\x20with\x20walls\x20made\x20of\x20stone.','exits':[{'direction':a51i(0xc8),'targetRoom':a51i(0xb3),'keyRequired':a51i(0xc5)},{'direction':a51i(0xae),'targetRoom':a51i(0x87)}]},{'name':a51i(0xb3),'description':a51i(0xe1),'items':[{'type':a51i(0xe2),'name':a51i(0xf5),'description':a51i(0xec)}]},{'name':'Courtyard','description':a51i(0xb0),'roomType':'OUTSIDE','exits':[{'direction':'UP','targetRoom':a51i(0xaf)}]},{'name':a51i(0xaf),'description':a51i(0xa0),'roomType':a51i(0x92),'puzzle':{'requiredPhrase':a51i(0xb6),'riddle':a51i(0xbe),'rewardItem':{'type':a51i(0xd8),'name':a51i(0x8c),'description':a51i(0xac)},'successMessage':a51i(0xe6),'failureMessage':a51i(0xdb)}}];function a51c(){const j=['Golden\x20Key','cup','Gang\x20Insignia','NORTH','Barrens\x20Entrance','86jIqfuL','222739fPLgkg','Central\x20Chamber','MCT\x20Fly-Spy','169bURwzt','When\x20is\x20a\x20door\x20not\x20a\x20door?\x20When\x20it\x27s\x20ajar!','Torture\x20Chamber','key','The\x20gang\x20members\x20block\x20your\x20way,\x20suspicious\x20of\x20your\x20motives.','west','A\x20digital\x20realm\x20with\x20information\x20streams\x20flowing\x20like\x20rivers.','EAST','apply','399000CRZQGZ','rifle','The\x20magic\x20in\x20the\x20room\x20grows\x20more\x20oppressive,\x20resisting\x20your\x20efforts.','A\x20hidden\x20alley\x20in\x20the\x20Barrens\x20where\x20shadowrunners\x20meet\x20up\x20for\x20covert\x20jobs.','That\x20passcode\x20is\x20incorrect','A\x20creditstick\x20loaded\x20with\x20nuyen.','Rusted\x20Sword','3295zPInXq','Unlock\x20the\x20encrypted\x20data\x20to\x20receive\x20your\x20next\x20mission.','Study','A\x20room\x20glittering\x20with\x20gold\x20and\x20jewels.','holyGrail','north','Blood-stained\x20Key','east','You\x20pull\x20the\x20sniper\x20rifle\x20from\x20the\x20gun\x20cabinet.\x20\x20Just\x20as\x20you\x20do,\x20you\x20hear\x20a\x20guy\x20from\x20the\x20Courtyard\x20yell\x20\x22HEY!\x20WHAT\x27S\x20YA\x20NAME?!\x22','Jackpoint\x20Login','Downtown\x20Seattle','Alchemy\x20Lab','The\x20high-security\x20corporate\x20zone,\x20complete\x20with\x20looming\x20skyscrapers\x20and\x20security\x20checkpoints.','Central\x20Chamber\x20Key','The\x20legendary\x20Holy\x20Grail.','Nothing\x20happens.','A\x20grand\x20entrance\x20with\x20huge\x20wooden\x20doors\x20behind\x20and\x20a\x20dimly\x20lit\x20corridor\x20ahead.','Emblem\x20Shield','Library','A\x20thin\x20log\x20book','search','amulet','Dark,\x20grim\x20with\x20chains\x20on\x20walls\x20and\x20an\x20eerie\x20silence.','Holy\x20Grail','To\x20enter\x20deeper\x20into\x20the\x20Barrens,\x20you\x20must\x20show\x20allegiance\x20to\x20one\x20of\x20the\x20gangs.','Speak\x20the\x20word\x20to\x20free\x20the\x20ghost.','Detailed\x20security\x20plans\x20for\x20a\x20corporate\x20building.','62772CqUDcs','Mage\x27s\x20Lair','The\x20rain-soaked\x20streets\x20of\x20Seattle\x20with\x20neon\x20lights\x20reflecting\x20off\x20wet\x20pavement.\x20The\x20distant\x20sound\x20of\x20corporate\x20security\x20drones\x20can\x20be\x20heard.','Speak\x20the\x20ancient\x20phrase\x20to\x20unlock\x20the\x20Central\x20Chamber.','80901GGaWUg','inside','The\x20ward\x20shatters,\x20revealing\x20the\x20amulet.','A\x20key\x20with\x20an\x20emblem\x20of\x20the\x20dungeon.','The\x20chest\x20unlocks\x20revealing\x20the\x20chalice.','Courtyard','A\x20popular\x20heavy\x20pistol\x20among\x20shadowrunners.','42cCPxKe','A\x20key\x20made\x20of\x20pure\x20digital\x20energy.','Secret\x20Passage','Sniper\x20Rifle','open\x20sesame','The\x20outskirts\x20of\x20the\x20lawless\x20Redmond\x20Barrens.\x20Gang\x20graffiti\x20is\x20everywhere.','Entrance\x20Hall','CorpSec\x20Plans','down','OUTSIDE','Amulet\x20of\x20Awakening','The\x20chains\x20rattle\x20ominously,\x20but\x20nothing\x20else\x20happens.','Golden\x20Chalice','A\x20badge\x20proving\x20your\x20loyalty\x20to\x20one\x20of\x20the\x20Barrens\x27\x20gangs.','The\x20chest\x20remains\x20firmly\x20shut.','70oKYwNU','document','A\x20clear\x20glass\x20vial.','Rows\x20of\x20ancient\x20weapons\x20and\x20armors.','222138tABVhP','south','Rigger\x27s\x20Workshop','Matrix\x20Data\x20Haven','A\x20towering\x20structure\x20giving\x20a\x20bird’s-eye\x20view\x20of\x20the\x20surroundings.','The\x20ghost\x20thanks\x20you\x20and\x20disappears,\x20leaving\x20behind\x20the\x20gem.','A\x20vast\x20library\x20filled\x20with\x20ancient\x20books.\x20[START]','16CETWow','Barrens\x20Hideout','weapon','outside','A\x20virtual\x20portal\x20in\x20the\x20Matrix.\x20Glowing\x20neon\x20lights\x20everywhere,\x20with\x20digital\x20sprites\x20zipping\x20by.','show\x20loyalty','creditstick','A\x20shield\x20with\x20the\x20emblem\x20of\x20the\x20dungeon.','gem','A\x20long-range\x20weapon.','book','SOUTH','Watch\x20Tower','A\x20serene\x20courtyard\x20with\x20a\x20gentle\x20fountain.\x20There\x20are\x20birds\x20bathing.','Corp\x20Enclave','A\x20hideout\x20filled\x20with\x20magical\x20artifacts,\x20wards,\x20and\x20a\x20few\x20summoned\x20spirits\x20guarding\x20the\x20place.','Treasure\x20Room','An\x20old\x20and\x20rusted\x20sword.','A\x20quiet\x20room\x20filled\x20with\x20bookshelves,\x20a\x20large\x20desk,\x20and\x20scattered\x20papers.','secret123','Armory','A\x20book\x20containing\x20a\x20mysterious\x20riddle.','release','A\x20key\x20stained\x20with\x20old\x20blood.','drone','604kpKzUI','Guard\x27s\x20Log\x20Book','A\x20locked\x20glass\x20gun\x20cabinet\x20stands\x20here,\x20with\x20a\x20keypad\x20awaiting\x20a\x20password.','1522uiCRbq','Drones\x20and\x20vehicles\x20being\x20modified,\x20tools\x20everywhere,\x20and\x20a\x20rigger\x20jacked\x20in\x20to\x20a\x20command\x20console.','Ancient\x20Gem','toString','Encrypted\x20Data\x20Key','Chad\x20the\x20stupid\x20guard'];a51c=function(){return j;};return a51c();}export const dungeonConfig=[{'name':'Entrance\x20Hall','description':a51i(0xee),'isStartRoom':!![],'roomType':a51i(0xfe),'puzzle':{'requiredPhrase':a51i(0x8d),'riddle':a51i(0xfc),'rewardItem':{'type':a51i(0xd1),'name':a51i(0xeb),'description':a51i(0x100)},'successMessage':'The\x20gate\x20slowly\x20opens\x20revealing\x20the\x20path\x20to\x20the\x20Central\x20Chamber.','failureMessage':a51i(0xed)},'exits':[{'direction':a51i(0xe3),'targetRoom':a51i(0xe0)},{'direction':'east','targetRoom':a51i(0xcc),'keyRequired':'Central\x20Chamber\x20Key'}]},{'name':'Study','description':a51i(0xb5),'roomType':a51i(0xfe),'items':[{'type':a51i(0xad),'name':'Riddle\x20Book','description':a51i(0xb8),'content':a51i(0xcf)},{'type':'key','name':a51i(0xeb),'description':a51i(0x100)}],'exits':[{'direction':a51i(0x9d),'targetRoom':a51i(0x8f)},{'direction':a51i(0xe5),'targetRoom':a51i(0xe9)}]},{'name':'Alchemy\x20Lab','description':'A\x20room\x20filled\x20with\x20potions,\x20beakers,\x20and\x20an\x20enchantment\x20circle.','roomType':a51i(0xfe),'items':[{'type':'basic','name':'Empty\x20vial','description':a51i(0x9a)}],'exits':[{'direction':a51i(0xd3),'targetRoom':'Study'},{'direction':a51i(0xe3),'targetRoom':a51i(0xb7)}]},{'name':a51i(0xb7),'description':a51i(0x9b),'roomType':a51i(0xfe),'items':[{'type':'shield','name':a51i(0xef),'description':a51i(0xaa)},{'type':'sword','name':a51i(0xdd),'description':a51i(0xb4)}],'exits':[{'direction':a51i(0x9d),'targetRoom':a51i(0xe9)},{'direction':a51i(0xe5),'targetRoom':a51i(0xcc)}]},{'name':'Central\x20Chamber','description':'A\x20large\x20circular\x20room\x20with\x20four\x20doors.','roomType':a51i(0xfe),'exits':[{'direction':a51i(0xd3),'targetRoom':'Armory'},{'direction':a51i(0x9d),'targetRoom':a51i(0x8f)},{'direction':a51i(0xe3),'targetRoom':a51i(0xd0)},{'direction':a51i(0xe5),'targetRoom':a51i(0xb3)}]},{'name':a51i(0xd0),'description':a51i(0xf4),'roomType':a51i(0xfe),'items':[{'type':'key','name':a51i(0xe4),'description':a51i(0xba)}],'puzzle':{'requiredPhrase':a51i(0xb9),'riddle':a51i(0xf7),'rewardItem':{'type':a51i(0xab),'name':a51i(0xc1),'description':'A\x20gem\x20radiating\x20a\x20mysterious\x20aura.'},'successMessage':a51i(0xa1),'failureMessage':a51i(0x94)},'exits':[{'direction':a51i(0x9d),'targetRoom':'Central\x20Chamber'}]},{'name':a51i(0xb3),'description':'Glittering\x20treasures\x20from\x20floor\x20to\x20ceiling.','roomType':'inside','puzzle':{'requiredPhrase':'insert\x20gem','riddle':'The\x20chest\x20has\x20a\x20gem-shaped\x20socket.','rewardItem':{'type':a51i(0xc6),'name':a51i(0x95),'description':'A\x20chalice\x20made\x20of\x20pure\x20gold.'},'successMessage':a51i(0x86),'failureMessage':a51i(0x97)},'exits':[{'direction':a51i(0xd3),'targetRoom':a51i(0xcc)}]}];function a51d(a,b){const c=a51c();return a51d=function(d,e){d=d-0x86;let f=c[d];return f;},a51d(a,b);}export const shadowrunConfig=[{'name':a51i(0xe7),'description':a51i(0xa7),'isStartRoom':!![],'roomType':a51i(0xfe),'exits':[{'direction':a51i(0xe3),'targetRoom':a51i(0xe8)},{'direction':'up','targetRoom':a51i(0x9f)}]},{'name':a51i(0x9f),'description':a51i(0xd4),'roomType':a51i(0xfe),'puzzle':{'requiredPhrase':'decrypt','riddle':a51i(0xdf),'rewardItem':{'type':a51i(0xd1),'name':a51i(0xc3),'description':a51i(0x8a)},'successMessage':'The\x20data\x20stream\x20reveals\x20a\x20location:\x20Downtown\x20Seattle.','failureMessage':'The\x20data\x20remains\x20encrypted.'},'exits':[{'direction':a51i(0x91),'targetRoom':a51i(0xe7)}]},{'name':a51i(0xe8),'description':a51i(0xfb),'roomType':'outside','exits':[{'direction':a51i(0x9d),'targetRoom':'Jackpoint\x20Login'},{'direction':a51i(0xe5),'targetRoom':a51i(0xc9)},{'direction':a51i(0xd3),'targetRoom':a51i(0xb1)}]},{'name':'Barrens\x20Entrance','description':a51i(0x8e),'roomType':a51i(0xa6),'puzzle':{'requiredPhrase':a51i(0xa8),'riddle':a51i(0xf6),'rewardItem':{'type':a51i(0xd1),'name':a51i(0xc7),'description':a51i(0x96)},'successMessage':'The\x20gang\x20members\x20nod\x20and\x20let\x20you\x20pass\x20deeper\x20into\x20the\x20Barrens.','failureMessage':a51i(0xd2)},'exits':[{'direction':a51i(0xd3),'targetRoom':a51i(0xe8)},{'direction':a51i(0xe3),'targetRoom':a51i(0xa4)}]},{'name':a51i(0xb1),'description':a51i(0xea),'roomType':a51i(0xfe),'items':[{'type':a51i(0xa9),'name':'Corporate\x20Creditstick','description':a51i(0xdc)},{'type':a51i(0x99),'name':a51i(0x90),'description':a51i(0xf8)}],'exits':[{'direction':a51i(0xe5),'targetRoom':a51i(0xe8)}]},{'name':'Barrens\x20Hideout','description':a51i(0xda),'roomType':'outside','items':[{'type':a51i(0xa5),'name':'Ares\x20Predator','description':a51i(0x88)}],'exits':[{'direction':a51i(0x9d),'targetRoom':a51i(0xc9)},{'direction':a51i(0xe3),'targetRoom':a51i(0xfa)},{'direction':a51i(0xe5),'targetRoom':a51i(0x9e)}]},{'name':a51i(0xfa),'description':a51i(0xb2),'roomType':'inside','puzzle':{'requiredPhrase':'disenchant','riddle':'Break\x20the\x20ward\x20to\x20reveal\x20the\x20hidden\x20magical\x20artifact.','rewardItem':{'type':a51i(0xf3),'name':a51i(0x93),'description':'A\x20powerful\x20amulet\x20said\x20to\x20wake\x20spirits\x20from\x20slumber.'},'successMessage':a51i(0xff),'failureMessage':a51i(0xd9)},'exits':[{'direction':a51i(0x9d),'targetRoom':a51i(0xa4)}]},{'name':'Rigger\x27s\x20Workshop','description':a51i(0xc0),'roomType':a51i(0xfe),'items':[{'type':a51i(0xbb),'name':a51i(0xcd),'description':'A\x20small\x20surveillance\x20drone.'}],'exits':[{'direction':a51i(0xd3),'targetRoom':a51i(0xa4)}]}];
1
+ const a51h=a51d;function a51c(){const i=['document','4RXskYT','EAST','toString','Speak\x20the\x20ancient\x20phrase\x20to\x20unlock\x20the\x20Central\x20Chamber.','book','Armory','insert\x20gem','1533296qgJqAY','cup','A\x20badge\x20proving\x20your\x20loyalty\x20to\x20one\x20of\x20the\x20Barrens\x27\x20gangs.','Watch\x20Tower','The\x20gang\x20members\x20block\x20your\x20way,\x20suspicious\x20of\x20your\x20motives.','The\x20chains\x20rattle\x20ominously,\x20but\x20nothing\x20else\x20happens.','A\x20locked\x20glass\x20gun\x20cabinet\x20stands\x20here,\x20with\x20a\x20keypad\x20awaiting\x20a\x20password.','2526940zIqJSu','When\x20is\x20a\x20door\x20not\x20a\x20door?\x20When\x20it\x27s\x20ajar!','Central\x20Chamber\x20Key','disenchant','shield','Rusted\x20Sword','The\x20gang\x20members\x20nod\x20and\x20let\x20you\x20pass\x20deeper\x20into\x20the\x20Barrens.','Golden\x20Key','Entrance\x20Hall','constructor','A\x20grand\x20entrance\x20with\x20huge\x20wooden\x20doors\x20behind\x20and\x20a\x20dimly\x20lit\x20corridor\x20ahead.','A\x20dimly\x20lit\x20passage\x20with\x20walls\x20made\x20of\x20stone.','Barrens\x20Hideout','7oDSSXB','A\x20serene\x20courtyard\x20with\x20a\x20gentle\x20fountain.\x20There\x20are\x20birds\x20bathing.','sword','The\x20magic\x20in\x20the\x20room\x20grows\x20more\x20oppressive,\x20resisting\x20your\x20efforts.','Treasure\x20Room','A\x20digital\x20realm\x20with\x20information\x20streams\x20flowing\x20like\x20rivers.','holyGrail','Unlock\x20the\x20encrypted\x20data\x20to\x20receive\x20your\x20next\x20mission.','Rows\x20of\x20ancient\x20weapons\x20and\x20armors.','Study','Nothing\x20happens.','outside','Drones\x20and\x20vehicles\x20being\x20modified,\x20tools\x20everywhere,\x20and\x20a\x20rigger\x20jacked\x20in\x20to\x20a\x20command\x20console.','Holy\x20Grail','Encrypted\x20Data\x20Key','decrypt','A\x20clear\x20glass\x20vial.','Amulet\x20of\x20Awakening','Jackpoint\x20Login','Rigger\x27s\x20Workshop','A\x20book\x20containing\x20a\x20mysterious\x20riddle.','Detailed\x20security\x20plans\x20for\x20a\x20corporate\x20building.','secret123','A\x20key\x20stained\x20with\x20old\x20blood.','8187702xhabeK','Golden\x20Chalice','Chad\x20the\x20stupid\x20guard','Alchemy\x20Lab','Guard\x27s\x20Log\x20Book','A\x20room\x20glittering\x20with\x20gold\x20and\x20jewels.','9QMuDDo','rifle','MCT\x20Fly-Spy','search','basic','The\x20ghost\x20thanks\x20you\x20and\x20disappears,\x20leaving\x20behind\x20the\x20gem.','1105791DkUNDO','Torture\x20Chamber','Downtown\x20Seattle','Corp\x20Enclave','(((.+)+)+)+$','The\x20data\x20remains\x20encrypted.','Blood-stained\x20Key','Secret\x20Passage','Emblem\x20Shield','A\x20key\x20with\x20an\x20emblem\x20of\x20the\x20dungeon.','4DVVAMa','16071096XmCdKW','The\x20chest\x20remains\x20firmly\x20shut.','A\x20long-range\x20weapon.','A\x20shiny\x20golden\x20key\x20with\x20intricate\x20engravings.','Corporate\x20Creditstick','west','key','A\x20large\x20circular\x20room\x20with\x20four\x20doors.','open\x20sesame','You\x20pull\x20the\x20sniper\x20rifle\x20from\x20the\x20gun\x20cabinet.\x20\x20Just\x20as\x20you\x20do,\x20you\x20hear\x20a\x20guy\x20from\x20the\x20Courtyard\x20yell\x20\x22HEY!\x20WHAT\x27S\x20YA\x20NAME?!\x22','OUTSIDE','A\x20key\x20made\x20of\x20pure\x20digital\x20energy.','The\x20data\x20stream\x20reveals\x20a\x20location:\x20Downtown\x20Seattle.','Mage\x27s\x20Lair','A\x20creditstick\x20loaded\x20with\x20nuyen.','A\x20hidden\x20alley\x20in\x20the\x20Barrens\x20where\x20shadowrunners\x20meet\x20up\x20for\x20covert\x20jobs.','north','Courtyard','The\x20legendary\x20Holy\x20Grail.','A\x20quiet\x20room\x20filled\x20with\x20bookshelves,\x20a\x20large\x20desk,\x20and\x20scattered\x20papers.','Central\x20Chamber','Speak\x20the\x20word\x20to\x20free\x20the\x20ghost.','The\x20outskirts\x20of\x20the\x20lawless\x20Redmond\x20Barrens.\x20Gang\x20graffiti\x20is\x20everywhere.','release','4509735CqTWBF','To\x20enter\x20deeper\x20into\x20the\x20Barrens,\x20you\x20must\x20show\x20allegiance\x20to\x20one\x20of\x20the\x20gangs.','The\x20gate\x20slowly\x20opens\x20revealing\x20the\x20path\x20to\x20the\x20Central\x20Chamber.','11gloohf','gem','A\x20vast\x20library\x20filled\x20with\x20ancient\x20books.\x20[START]','1348934lDybcD','weapon','east','Empty\x20vial','inside','A\x20popular\x20heavy\x20pistol\x20among\x20shadowrunners.','A\x20room\x20filled\x20with\x20potions,\x20beakers,\x20and\x20an\x20enchantment\x20circle.','south','amulet','Sniper\x20Rifle','Barrens\x20Entrance','The\x20ward\x20shatters,\x20revealing\x20the\x20amulet.','Matrix\x20Data\x20Haven'];a51c=function(){return i;};return a51c();}(function(a,b){const f=a51d,c=a();while(!![]){try{const d=-parseInt(f(0x214))/0x1+-parseInt(f(0x222))/0x2*(-parseInt(f(0x1eb))/0x3)+parseInt(f(0x1f5))/0x4*(parseInt(f(0x20e))/0x5)+parseInt(f(0x1df))/0x6+parseInt(f(0x1c7))/0x7*(parseInt(f(0x229))/0x8)+-parseInt(f(0x1e5))/0x9*(-parseInt(f(0x230))/0xa)+-parseInt(f(0x211))/0xb*(parseInt(f(0x1f6))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a51c,0xb9872));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(0x224)]()[g(0x1e8)](g(0x1ef))[g(0x224)]()[g(0x1c3)](a51a)[g(0x1e8)](g(0x1ef));});a51a();function a51d(a,b){const c=a51c();return a51d=function(d,e){d=d-0x1c0;let f=c[d];return f;},a51d(a,b);}export const rooms=[{'name':'Library','description':a51h(0x213),'isStartRoom':!![],'items':[{'type':a51h(0x1fc),'name':a51h(0x1c1),'description':a51h(0x1f9)},{'type':a51h(0x226),'name':a51h(0x1e3),'description':'A\x20thin\x20log\x20book','content':a51h(0x1e1)}],'exits':[{'direction':a51h(0x223),'targetRoom':'Secret\x20Passage'}]},{'name':a51h(0x1f2),'description':a51h(0x1c5),'exits':[{'direction':'NORTH','targetRoom':a51h(0x1cb),'keyRequired':a51h(0x1c1)},{'direction':'SOUTH','targetRoom':a51h(0x207)}]},{'name':a51h(0x1cb),'description':a51h(0x1e4),'items':[{'type':a51h(0x1cd),'name':a51h(0x1d4),'description':a51h(0x208)}]},{'name':a51h(0x207),'description':a51h(0x1c8),'roomType':'OUTSIDE','exits':[{'direction':'UP','targetRoom':a51h(0x22c)}]},{'name':a51h(0x22c),'description':'A\x20towering\x20structure\x20giving\x20a\x20bird’s-eye\x20view\x20of\x20the\x20surroundings.','roomType':a51h(0x200),'puzzle':{'requiredPhrase':a51h(0x1dd),'riddle':a51h(0x22f),'rewardItem':{'type':a51h(0x1e6),'name':a51h(0x21d),'description':a51h(0x1f8)},'successMessage':a51h(0x1ff),'failureMessage':'That\x20passcode\x20is\x20incorrect'}}];export const dungeonConfig=[{'name':'Entrance\x20Hall','description':a51h(0x1c4),'isStartRoom':!![],'roomType':a51h(0x218),'puzzle':{'requiredPhrase':a51h(0x1fe),'riddle':a51h(0x225),'rewardItem':{'type':a51h(0x1fc),'name':a51h(0x232),'description':a51h(0x1f4)},'successMessage':a51h(0x210),'failureMessage':a51h(0x1d1)},'exits':[{'direction':'north','targetRoom':a51h(0x1d0)},{'direction':a51h(0x216),'targetRoom':a51h(0x20a),'keyRequired':a51h(0x232)}]},{'name':a51h(0x1d0),'description':a51h(0x209),'roomType':a51h(0x218),'items':[{'type':a51h(0x226),'name':'Riddle\x20Book','description':a51h(0x1db),'content':a51h(0x231)},{'type':a51h(0x1fc),'name':a51h(0x232),'description':a51h(0x1f4)}],'exits':[{'direction':a51h(0x21b),'targetRoom':'Entrance\x20Hall'},{'direction':a51h(0x216),'targetRoom':a51h(0x1e2)}]},{'name':a51h(0x1e2),'description':a51h(0x21a),'roomType':'inside','items':[{'type':a51h(0x1e9),'name':a51h(0x217),'description':a51h(0x1d7)}],'exits':[{'direction':'west','targetRoom':a51h(0x1d0)},{'direction':'north','targetRoom':'Armory'}]},{'name':a51h(0x227),'description':a51h(0x1cf),'roomType':a51h(0x218),'items':[{'type':a51h(0x234),'name':a51h(0x1f3),'description':'A\x20shield\x20with\x20the\x20emblem\x20of\x20the\x20dungeon.'},{'type':a51h(0x1c9),'name':a51h(0x235),'description':'An\x20old\x20and\x20rusted\x20sword.'}],'exits':[{'direction':a51h(0x21b),'targetRoom':a51h(0x1e2)},{'direction':'east','targetRoom':a51h(0x20a)}]},{'name':a51h(0x20a),'description':a51h(0x1fd),'roomType':a51h(0x218),'exits':[{'direction':a51h(0x1fb),'targetRoom':'Armory'},{'direction':'south','targetRoom':a51h(0x1c2)},{'direction':a51h(0x206),'targetRoom':a51h(0x1ec)},{'direction':a51h(0x216),'targetRoom':a51h(0x1cb)}]},{'name':a51h(0x1ec),'description':'Dark,\x20grim\x20with\x20chains\x20on\x20walls\x20and\x20an\x20eerie\x20silence.','roomType':a51h(0x218),'items':[{'type':a51h(0x1fc),'name':a51h(0x1f1),'description':a51h(0x1de)}],'puzzle':{'requiredPhrase':a51h(0x20d),'riddle':a51h(0x20b),'rewardItem':{'type':a51h(0x212),'name':'Ancient\x20Gem','description':'A\x20gem\x20radiating\x20a\x20mysterious\x20aura.'},'successMessage':a51h(0x1ea),'failureMessage':a51h(0x22e)},'exits':[{'direction':'south','targetRoom':a51h(0x20a)}]},{'name':'Treasure\x20Room','description':'Glittering\x20treasures\x20from\x20floor\x20to\x20ceiling.','roomType':a51h(0x218),'puzzle':{'requiredPhrase':a51h(0x228),'riddle':'The\x20chest\x20has\x20a\x20gem-shaped\x20socket.','rewardItem':{'type':a51h(0x22a),'name':a51h(0x1e0),'description':'A\x20chalice\x20made\x20of\x20pure\x20gold.'},'successMessage':'The\x20chest\x20unlocks\x20revealing\x20the\x20chalice.','failureMessage':a51h(0x1f7)},'exits':[{'direction':a51h(0x1fb),'targetRoom':a51h(0x20a)}]}];export const shadowrunConfig=[{'name':'Jackpoint\x20Login','description':'A\x20virtual\x20portal\x20in\x20the\x20Matrix.\x20Glowing\x20neon\x20lights\x20everywhere,\x20with\x20digital\x20sprites\x20zipping\x20by.','isStartRoom':!![],'roomType':a51h(0x218),'exits':[{'direction':a51h(0x206),'targetRoom':a51h(0x1ed)},{'direction':'up','targetRoom':a51h(0x220)}]},{'name':a51h(0x220),'description':a51h(0x1cc),'roomType':'inside','puzzle':{'requiredPhrase':a51h(0x1d6),'riddle':a51h(0x1ce),'rewardItem':{'type':a51h(0x1fc),'name':a51h(0x1d5),'description':a51h(0x201)},'successMessage':a51h(0x202),'failureMessage':a51h(0x1f0)},'exits':[{'direction':'down','targetRoom':a51h(0x1d9)}]},{'name':'Downtown\x20Seattle','description':'The\x20rain-soaked\x20streets\x20of\x20Seattle\x20with\x20neon\x20lights\x20reflecting\x20off\x20wet\x20pavement.\x20The\x20distant\x20sound\x20of\x20corporate\x20security\x20drones\x20can\x20be\x20heard.','roomType':a51h(0x1d2),'exits':[{'direction':a51h(0x21b),'targetRoom':a51h(0x1d9)},{'direction':'east','targetRoom':a51h(0x21e)},{'direction':a51h(0x1fb),'targetRoom':'Corp\x20Enclave'}]},{'name':a51h(0x21e),'description':a51h(0x20c),'roomType':a51h(0x1d2),'puzzle':{'requiredPhrase':'show\x20loyalty','riddle':a51h(0x20f),'rewardItem':{'type':'key','name':'Gang\x20Insignia','description':a51h(0x22b)},'successMessage':a51h(0x1c0),'failureMessage':a51h(0x22d)},'exits':[{'direction':a51h(0x1fb),'targetRoom':a51h(0x1ed)},{'direction':a51h(0x206),'targetRoom':a51h(0x1c6)}]},{'name':a51h(0x1ee),'description':'The\x20high-security\x20corporate\x20zone,\x20complete\x20with\x20looming\x20skyscrapers\x20and\x20security\x20checkpoints.','roomType':a51h(0x218),'items':[{'type':'creditstick','name':a51h(0x1fa),'description':a51h(0x204)},{'type':a51h(0x221),'name':'CorpSec\x20Plans','description':a51h(0x1dc)}],'exits':[{'direction':a51h(0x216),'targetRoom':a51h(0x1ed)}]},{'name':a51h(0x1c6),'description':a51h(0x205),'roomType':'outside','items':[{'type':a51h(0x215),'name':'Ares\x20Predator','description':a51h(0x219)}],'exits':[{'direction':a51h(0x21b),'targetRoom':a51h(0x21e)},{'direction':a51h(0x206),'targetRoom':a51h(0x203)},{'direction':a51h(0x216),'targetRoom':a51h(0x1da)}]},{'name':'Mage\x27s\x20Lair','description':'A\x20hideout\x20filled\x20with\x20magical\x20artifacts,\x20wards,\x20and\x20a\x20few\x20summoned\x20spirits\x20guarding\x20the\x20place.','roomType':'inside','puzzle':{'requiredPhrase':a51h(0x233),'riddle':'Break\x20the\x20ward\x20to\x20reveal\x20the\x20hidden\x20magical\x20artifact.','rewardItem':{'type':a51h(0x21c),'name':a51h(0x1d8),'description':'A\x20powerful\x20amulet\x20said\x20to\x20wake\x20spirits\x20from\x20slumber.'},'successMessage':a51h(0x21f),'failureMessage':a51h(0x1ca)},'exits':[{'direction':a51h(0x21b),'targetRoom':a51h(0x1c6)}]},{'name':'Rigger\x27s\x20Workshop','description':a51h(0x1d3),'roomType':a51h(0x218),'items':[{'type':'drone','name':a51h(0x1e7),'description':'A\x20small\x20surveillance\x20drone.'}],'exits':[{'direction':a51h(0x1fb),'targetRoom':'Barrens\x20Hideout'}]}];
@@ -1 +1 @@
1
- var a52h=a52d;(function(a,b){var f=a52d,c=a();while(!![]){try{var d=parseInt(f(0x1a8))/0x1*(-parseInt(f(0x1ac))/0x2)+-parseInt(f(0x1b5))/0x3*(-parseInt(f(0x1ad))/0x4)+-parseInt(f(0x1c4))/0x5+parseInt(f(0x1b3))/0x6*(parseInt(f(0x1b8))/0x7)+-parseInt(f(0x1ae))/0x8+-parseInt(f(0x1aa))/0x9*(-parseInt(f(0x1a7))/0xa)+parseInt(f(0x1af))/0xb*(-parseInt(f(0x1cc))/0xc);if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a52c,0x67e1f));function a52c(){var i=['shape','924543ZoEBht','player','38370xqMqEs','398896iDbAuj','2010896rDvkOC','11NiKkDr','name','constructor','toString','13278VHSkhr','uuid','18HCuwoW','isLockable','_playerName','1610ONYRrz','exits','puzzle','isStartRoom','_logger','(((.+)+)+)+$','search','weight','rooms','items','_currentLocation','category','3940155KmJwOV','_equipment','inventory','rating','roomB','isLocked','logger','color','1412436oBQvuq','description','texture','size','roomA','50GNPFlE','2gvQfkF'];a52c=function(){return i;};return a52c();}var a52b=(function(){var a=!![];return function(b,c){var d=a?function(){if(c){var e=c['apply'](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a52a=a52b(this,function(){var g=a52d;return a52a[g(0x1b2)]()[g(0x1be)]('(((.+)+)+)+$')[g(0x1b2)]()[g(0x1b1)](a52a)[g(0x1be)](g(0x1bd));});a52a();import{EventEmitter}from'events';export class AbstractScene{[a52h(0x1c0)];[a52h(0x1ab)];[a52h(0x1ca)];['characterLocations'];}export class AbstractRoom extends EventEmitter{[a52h(0x1b0)];[a52h(0x1cd)];[a52h(0x1b9)];[a52h(0x1c6)];[a52h(0x1ba)];['roomType'];[a52h(0x1bb)];}export class AbstractDoor{[a52h(0x1a6)];[a52h(0x1c8)];[a52h(0x1c9)];['unlockItemOrSolution'];['name'];[a52h(0x1ca)];[a52h(0x1b6)];}export class AbstractInventory{[a52h(0x1c1)];['logger'];}export class AbstractItem{[a52h(0x1b4)];[a52h(0x1b0)];['description'];[a52h(0x1cf)];[a52h(0x1c3)];[a52h(0x1a9)];[a52h(0x1cb)];[a52h(0x1ce)];[a52h(0x1c7)];[a52h(0x1bf)];}export class AbstractPlayer{[a52h(0x1b7)];[a52h(0x1c2)];['_inventory'];[a52h(0x1c5)];['_maxCarryingWeight'];[a52h(0x1bc)];}function a52d(a,b){var c=a52c();return a52d=function(d,e){d=d-0x1a6;var f=c[d];return f;},a52d(a,b);}export class AbstractPuzzle{[a52h(0x1ca)];['solved'];}
1
+ function a52c(){var j=['logger','isStartRoom','characterLocations','unlockItemOrSolution','inventory','texture','243788VaxjHh','color','49516ktrnZe','player','shape','947781mYElvv','_logger','_playerName','search','roomType','name','category','_equipment','1935168HAqzly','_maxCarryingWeight','weight','apply','description','20IJMZPU','roomA','274300IACVzf','rating','(((.+)+)+)+$','puzzle','items','isLockable','73288DOYZsR','rooms','2499460CjbRul','21Klzlmc','isLocked','size','112hwSoPf'];a52c=function(){return j;};return a52c();}function a52d(a,b){var c=a52c();return a52d=function(d,e){d=d-0x15a;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(0x160))/0x1+-parseInt(f(0x175))/0x2*(parseInt(f(0x169))/0x3)+parseInt(f(0x173))/0x4*(-parseInt(f(0x15e))/0x5)+parseInt(f(0x180))/0x6+-parseInt(f(0x16c))/0x7*(-parseInt(f(0x166))/0x8)+parseInt(f(0x178))/0x9+-parseInt(f(0x168))/0xa;if(d===b)break;else c['push'](c['shift']());}catch(e){c['push'](c['shift']());}}}(a52c,0x2c5a9));var a52b=(function(){var a=!![];return function(b,c){var d=a?function(){var g=a52d;if(c){var e=c[g(0x15c)](b,arguments);return c=null,e;}}:function(){};return a=![],d;};}()),a52a=a52b(this,function(){var h=a52d;return a52a['toString']()['search'](h(0x162))['toString']()['constructor'](a52a)[h(0x17b)](h(0x162));});a52a();import{EventEmitter}from'events';export class AbstractScene{[a52i(0x167)];[a52i(0x176)];[a52i(0x16d)];[a52i(0x16f)];}export class AbstractRoom extends EventEmitter{[a52i(0x17d)];[a52i(0x15d)];['exits'];[a52i(0x171)];[a52i(0x163)];[a52i(0x17c)];[a52i(0x16e)];}export class AbstractDoor{[a52i(0x15f)];['roomB'];[a52i(0x16a)];[a52i(0x170)];[a52i(0x17d)];['logger'];[a52i(0x165)];}export class AbstractInventory{[a52i(0x164)];['logger'];}export class AbstractItem{['uuid'];['name'];[a52i(0x15d)];[a52i(0x16b)];[a52i(0x17e)];[a52i(0x177)];[a52i(0x174)];[a52i(0x172)];[a52i(0x161)];[a52i(0x15b)];}export class AbstractPlayer{[a52i(0x17a)];['_currentLocation'];['_inventory'];[a52i(0x17f)];[a52i(0x15a)];[a52i(0x179)];}export class AbstractPuzzle{['logger'];['solved'];}