mudlet-map-browser-script 0.1.0 → 0.1.1
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.
- package/dist/index.min.js +1 -1
- package/dist/index.min.js.map +1 -1
- package/package.json +1 -1
- package/dist/assets/index-DN84wJBG.js +0 -2
- package/dist/assets/index-DN84wJBG.js.map +0 -1
- package/dist/embedded.min.js +0 -2
- package/dist/embedded.min.js.map +0 -1
- package/dist/mobile.min.js +0 -2
- package/dist/mobile.min.js.map +0 -1
package/dist/embedded.min.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{m as t,f as e,p as s,z as o}from"./assets/index-DN84wJBG.js";const n={polnoc:"north",poludnie:"south",wschod:"east",zachod:"west","polnocny-wschod":"northeast","polnocny-zachod":"northwest","poludniowy-wschod":"southeast","poludniowy-zachod":"southwest",dol:"down",gora:"up",gore:"up"},r={north:"n",south:"s",east:"e",west:"w",northeast:"ne",northwest:"nw",southeast:"se",southwest:"sw",up:"u",down:"d"},a={e:"east",w:"west",n:"north",s:"south",sw:"southwest",se:"southeast",nw:"northwest",ne:"northeast",u:"up",d:"down"};function i(t){return n[t]??a[t]??t}window.embedded=new class{constructor(){this.map=document.querySelector("#map"),this.reader=new t(mapData,colors);const n=o();this.renderer=new e(this.map,this.reader,n),this.pathFinder=new s(this.reader),this.gmcpPosition={},this.event=new EventTarget,this.hashes={},this.reader.getRooms().forEach(t=>{t.hash&&(this.hashes[t.hash]=t)}),window.addEventListener("message",t=>{switch(t.data.type){case"mapPosition":this.gmcpPosition=t.data.data,this.event.dispatchEvent(new CustomEvent("mapPosition"));break;case"refreshPosition":this.setMapPosition(this.gmcpPosition);break;case"command":parent.postMessage({type:"command",payload:this.parseCommand(t.data.data)},"https://arkadia.rpg.pl")}})}renderRoomById(t){const e=this.reader.getRoom(t);e&&this.renderRoom(e)}renderRoom(t){this.renderer.drawArea(t.area,t.z),this.renderer.centerOn(t.id),this.renderer.setZoom(.35),this.currentRoom=t,this.renderer.clearPaths();const e=this.pathFinder.findPath(t.id,5168);e&&this.renderer.renderPath(e,"#FF0000")}parseCommand(t){let e=t;if("zerknij"!==t&&"spojrz"!==t&&"sp"!==t||this.event.addEventListener("mapPosition",()=>{this.setMapPosition(this.gmcpPosition)},{once:!0}),this.currentRoom){const o={...this.currentRoom.exits,...this.currentRoom.specialExits},n=i(t);if(!this.currentRoom.exits[n]){const n=Object.entries(o).filter(([,e])=>{const s=this.reader.getRoom(e);return s&&this.findRoomByExit(this.currentRoom,s,i(t))}).map(([t])=>t);n.length>0&&(s=n[0],e=r[s]??s)}const a=o[i(e)];a&&this.renderRoomById(a)}var s;return e??t}setMapPosition(t){if(t&&t.x&&t.y&&t.id&&t.name){const e=`${t.x}:${t.y-19}:0:${t.name}`,s=this.hashes[e];s&&this.renderRoom(s)}}findRoomByExit(t,e,s){const o=e.x,n=e.y,r=e.z,a=t.x,i=t.y,h=t.z;return"south"===s?o===a&&n>i&&r===h:"north"===s?o===a&&n<i&&r===h:"east"===s?o>a&&n===i&&r===h:"west"===s?o<a&&n===i&&r===h:"northwest"===s?o<a&&n>i&&r===h:"northeast"===s?o>a&&n>i&&r===h:"southwest"===s?o<a&&n<i&&r===h:"southeast"===s?o>a&&n<i&&r===h:"down"===s?o===a&&n===i&&r<h:"up"===s&&(o===a&&n===i&&r>h)}};const h=window.embedded;h.renderRoomById(3756),h.parseCommand("n");
|
|
2
|
-
//# sourceMappingURL=embedded.min.js.map
|
package/dist/embedded.min.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"embedded.min.js","sources":["../src/embedded.ts"],"sourcesContent":["import {MapReader, Renderer, createSettings, PathFinder} from \"mudlet-map-renderer\";\r\n\r\nconst polishToEnglish: Record<string, string> = {\r\n [\"polnoc\"]: \"north\",\r\n [\"poludnie\"]: \"south\",\r\n [\"wschod\"]: \"east\",\r\n [\"zachod\"]: \"west\",\r\n [\"polnocny-wschod\"]: \"northeast\",\r\n [\"polnocny-zachod\"]: \"northwest\",\r\n [\"poludniowy-wschod\"]: \"southeast\",\r\n [\"poludniowy-zachod\"]: \"southwest\",\r\n [\"dol\"]: \"down\",\r\n [\"gora\"]: \"up\",\r\n [\"gore\"]: \"up\",\r\n};\r\n\r\nconst longToShort: Record<string, string> = {\r\n north: \"n\",\r\n south: \"s\",\r\n east: \"e\",\r\n west: \"w\",\r\n northeast: \"ne\",\r\n northwest: \"nw\",\r\n southeast: \"se\",\r\n southwest: \"sw\",\r\n up: \"u\",\r\n down: \"d\",\r\n};\r\n\r\nconst exits: Record<string, string> = {\r\n e: \"east\",\r\n w: \"west\",\r\n n: \"north\",\r\n s: \"south\",\r\n sw: \"southwest\",\r\n se: \"southeast\",\r\n nw: \"northwest\",\r\n ne: \"northeast\",\r\n u: \"up\",\r\n d: \"down\",\r\n};\r\n\r\nfunction getLongDir(dir: string): string {\r\n return polishToEnglish[dir] ?? exits[dir] ?? dir;\r\n}\r\n\r\nfunction getShortDir(dir: string): string {\r\n return longToShort[dir] ?? dir;\r\n}\r\n\r\nclass EmbeddedMap {\r\n map: HTMLDivElement;\r\n reader: MapReader;\r\n renderer: Renderer;\r\n pathFinder: PathFinder;\r\n gmcpPosition: any;\r\n event: EventTarget;\r\n hashes: Record<string, MapData.Room>;\r\n currentRoom: MapData.Room | undefined;\r\n\r\n constructor() {\r\n this.map = document.querySelector(\"#map\") as HTMLDivElement;\r\n\r\n this.reader = new MapReader(mapData, colors);\r\n\r\n const settings = createSettings();\r\n this.renderer = new Renderer(this.map, this.reader, settings);\r\n this.pathFinder = new PathFinder(this.reader);\r\n this.gmcpPosition = {};\r\n this.event = new EventTarget();\r\n\r\n this.hashes = {};\r\n this.reader.getRooms().forEach(room => {\r\n if (room.hash) {\r\n this.hashes[room.hash] = room;\r\n }\r\n });\r\n\r\n window.addEventListener(\"message\", (e) => {\r\n switch (e.data.type) {\r\n case \"mapPosition\":\r\n this.gmcpPosition = e.data.data;\r\n this.event.dispatchEvent(new CustomEvent(\"mapPosition\"));\r\n break;\r\n case \"refreshPosition\":\r\n this.setMapPosition(this.gmcpPosition);\r\n break;\r\n case \"command\":\r\n parent.postMessage({\r\n type: \"command\",\r\n payload: this.parseCommand(e.data.data),\r\n }, \"https://arkadia.rpg.pl\");\r\n break;\r\n }\r\n });\r\n }\r\n\r\n renderRoomById(id: number) {\r\n const room = this.reader.getRoom(id);\r\n if (room) {\r\n this.renderRoom(room);\r\n }\r\n }\r\n\r\n renderRoom(room: MapData.Room) {\r\n this.renderer.drawArea(room.area, room.z);\r\n this.renderer.centerOn(room.id);\r\n this.renderer.setZoom(0.35);\r\n this.currentRoom = room;\r\n\r\n this.renderer.clearPaths();\r\n const pathLocations = this.pathFinder.findPath(room.id, 5168);\r\n if (pathLocations) {\r\n this.renderer.renderPath(pathLocations, \"#FF0000\");\r\n }\r\n }\r\n\r\n parseCommand(command: string): string {\r\n let commandToBeSent = command;\r\n if (command === \"zerknij\" || command === \"spojrz\" || command === \"sp\") {\r\n this.event.addEventListener(\"mapPosition\", () => {\r\n this.setMapPosition(this.gmcpPosition);\r\n }, {once: true});\r\n }\r\n if (this.currentRoom) {\r\n const allExits: Record<string, number> = {...this.currentRoom.exits, ...this.currentRoom.specialExits};\r\n const potentialExit = getLongDir(command);\r\n if (!this.currentRoom.exits[potentialExit as MapData.direction]) {\r\n const foundExits = Object.entries(allExits).filter(([, id]) => {\r\n const target = this.reader.getRoom(id);\r\n return target && this.findRoomByExit(this.currentRoom!, target, getLongDir(command));\r\n }).map(([exit]) => exit);\r\n if (foundExits.length > 0) {\r\n commandToBeSent = getShortDir(foundExits[0]);\r\n }\r\n }\r\n\r\n const targetId = allExits[getLongDir(commandToBeSent)];\r\n if (targetId) {\r\n this.renderRoomById(targetId);\r\n }\r\n }\r\n\r\n return commandToBeSent ?? command;\r\n }\r\n\r\n setMapPosition(data: any) {\r\n if (data && data.x && data.y && data.id && data.name) {\r\n const hash = `${data.x}:${data.y - 19}:0:${data.name}`;\r\n const room = this.hashes[hash];\r\n if (room) {\r\n this.renderRoom(room);\r\n }\r\n }\r\n }\r\n\r\n findRoomByExit(room: MapData.Room, targetRoom: MapData.Room, targetDir: string): boolean {\r\n const x = targetRoom.x;\r\n const y = targetRoom.y;\r\n const z = targetRoom.z;\r\n const c_x = room.x;\r\n const c_y = room.y;\r\n const c_z = room.z;\r\n\r\n if (targetDir === \"south\") return x === c_x && y > c_y && z === c_z;\r\n if (targetDir === \"north\") return x === c_x && y < c_y && z === c_z;\r\n if (targetDir === \"east\") return x > c_x && y === c_y && z === c_z;\r\n if (targetDir === \"west\") return x < c_x && y === c_y && z === c_z;\r\n if (targetDir === \"northwest\") return x < c_x && y > c_y && z === c_z;\r\n if (targetDir === \"northeast\") return x > c_x && y > c_y && z === c_z;\r\n if (targetDir === \"southwest\") return x < c_x && y < c_y && z === c_z;\r\n if (targetDir === \"southeast\") return x > c_x && y < c_y && z === c_z;\r\n if (targetDir === \"down\") return x === c_x && y === c_y && z < c_z;\r\n if (targetDir === \"up\") return x === c_x && y === c_y && z > c_z;\r\n return false;\r\n }\r\n}\r\n\r\n(window as any).embedded = new EmbeddedMap();\r\nconst embedded = (window as any).embedded as EmbeddedMap;\r\nembedded.renderRoomById(3756);\r\nembedded.parseCommand(\"n\");\r\n"],"names":["polishToEnglish","polnoc","poludnie","wschod","zachod","dol","gora","gore","longToShort","north","south","east","west","northeast","northwest","southeast","southwest","up","down","exits","e","w","n","s","sw","se","nw","ne","u","d","getLongDir","dir","window","embedded","constructor","this","map","document","querySelector","reader","MapReader","mapData","colors","settings","createSettings","renderer","Renderer","pathFinder","PathFinder","gmcpPosition","event","EventTarget","hashes","getRooms","forEach","room","hash","addEventListener","data","type","dispatchEvent","CustomEvent","setMapPosition","parent","postMessage","payload","parseCommand","renderRoomById","id","getRoom","renderRoom","drawArea","area","z","centerOn","setZoom","currentRoom","clearPaths","pathLocations","findPath","renderPath","command","commandToBeSent","once","allExits","specialExits","potentialExit","foundExits","Object","entries","filter","target","findRoomByExit","exit","length","targetId","x","y","name","targetRoom","targetDir","c_x","c_y","c_z"],"mappings":"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"}
|
package/dist/mobile.min.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{m as o,f as e,z as a}from"./assets/index-DN84wJBG.js";const s=new o(mapData,colors),t=a();t.areaName=!1;const n=new e(document.getElementById("map"),s,t);window.MapControls={findRoom(o,e){const a=s.getRoom(o);a&&(n.drawArea(a.area,a.z),n.setPosition(o),n.setZoom(e),n.centerOn(o))}};
|
|
2
|
-
//# sourceMappingURL=mobile.min.js.map
|
package/dist/mobile.min.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mobile.min.js","sources":["../src/mobile.ts"],"sourcesContent":["import {Renderer, createSettings, MapReader} from \"mudlet-map-renderer\";\r\n\r\nconst reader = new MapReader(mapData, colors);\r\nconst settings = createSettings();\r\nsettings.areaName = false;\r\n\r\nconst renderer = new Renderer(\r\n document.getElementById(\"map\") as HTMLDivElement,\r\n reader,\r\n settings,\r\n);\r\n\r\n(window as any).MapControls = {\r\n findRoom(roomId: number, zoom: number) {\r\n const room = reader.getRoom(roomId);\r\n if (!room) return;\r\n renderer.drawArea(room.area, room.z);\r\n renderer.setPosition(roomId);\r\n renderer.setZoom(zoom);\r\n renderer.centerOn(roomId);\r\n },\r\n};\r\n"],"names":["reader","MapReader","mapData","colors","settings","createSettings","areaName","renderer","Renderer","document","getElementById","window","MapControls","findRoom","roomId","zoom","room","getRoom","drawArea","area","z","setPosition","setZoom","centerOn"],"mappings":"6DAEA,MAAMA,EAAS,IAAIC,EAAUC,QAASC,QAChCC,EAAWC,IACjBD,EAASE,UAAW,EAEpB,MAAMC,EAAW,IAAIC,EACjBC,SAASC,eAAe,OACxBV,EACAI,GAGHO,OAAeC,YAAc,CAC1B,QAAAC,CAASC,EAAgBC,GACrB,MAAMC,EAAOhB,EAAOiB,QAAQH,GACvBE,IACLT,EAASW,SAASF,EAAKG,KAAMH,EAAKI,GAClCb,EAASc,YAAYP,GACrBP,EAASe,QAAQP,GACjBR,EAASgB,SAAST,GACtB"}
|