HumanBreak/assets/index-628481a2.js
2023-06-04 15:09:26 +00:00

2 lines
201 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

var $e=Object.defineProperty;var be=(e,t,o)=>t in e?$e(e,t,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[t]=o;var ae=(e,t,o)=>(be(e,typeof t!="symbol"?t+"":t,o),o);import{m as message,r as ref,d as defineComponent,o as onMounted,a as onUpdated,c as createElementBlock,u as unref,b as onUnmounted,e as openBlock,f as createBaseVNode,t as toDisplayString,g as createVNode,F as Fragment,h as renderList,n as normalizeStyle,i as createTextVNode,_ as __unplugin_components_0,j as renderSlot,w as withCtx,k as createBlock,l as resolveDynamicComponent,p as pushScopeId,q as popScopeId,s as computed,v as debounce,x as watch,y as __unplugin_components_0$1,z as reactive,A as withModifiers,T as Transition,B as createCommentVNode,L as LeftOutlined,R as RightOutlined,C as cloneDeep,D as __unplugin_components_1,S as SortAscendingOutlined,E as SortDescendingOutlined,G as SelectOption,H as __unplugin_components_0$2,I as DoubleLeftOutlined,J as DoubleRightOutlined,K as __unplugin_components_0$3,M as shallowReactive,N as markRaw,O as DragOutlined,P as normalizeClass,Q as SoundOutlined,U as FullscreenOutlined,V as FullscreenExitOutlined,W as TransitionGroup,X as nextTick,Y as createApp}from"./antdv-d609d1cf.js";import{i as isNil,a as axios,l as lzStringExports,Y,R,C as Chart,r as registerables,G,I,O,q,j,H,b as C}from"./common-c65e5ee3.js";function __vite_legacy_guard(){import.meta.url,import("_").catch(()=>1);async function*e(){}}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))n(s);new MutationObserver(s=>{for(const a of s)if(a.type==="childList")for(const r of a.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&n(r)}).observe(document,{childList:!0,subtree:!0});function o(s){const a={};return s.integrity&&(a.integrity=s.integrity),s.referrerPolicy&&(a.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?a.credentials="include":s.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(s){if(s.ep)return;s.ep=!0;const a=o(s);fetch(s.href,a)}})();const _default="",index$6="";var KeyCode=(e=>(e[e.DependsOnKbLayout=-1]="DependsOnKbLayout",e[e.Unknown=0]="Unknown",e[e.Backspace=1]="Backspace",e[e.Tab=2]="Tab",e[e.Enter=3]="Enter",e[e.Shift=4]="Shift",e[e.Ctrl=5]="Ctrl",e[e.Alt=6]="Alt",e[e.PauseBreak=7]="PauseBreak",e[e.CapsLock=8]="CapsLock",e[e.Escape=9]="Escape",e[e.Space=10]="Space",e[e.PageUp=11]="PageUp",e[e.PageDown=12]="PageDown",e[e.End=13]="End",e[e.Home=14]="Home",e[e.LeftArrow=15]="LeftArrow",e[e.UpArrow=16]="UpArrow",e[e.RightArrow=17]="RightArrow",e[e.DownArrow=18]="DownArrow",e[e.Insert=19]="Insert",e[e.Delete=20]="Delete",e[e.Digit0=21]="Digit0",e[e.Digit1=22]="Digit1",e[e.Digit2=23]="Digit2",e[e.Digit3=24]="Digit3",e[e.Digit4=25]="Digit4",e[e.Digit5=26]="Digit5",e[e.Digit6=27]="Digit6",e[e.Digit7=28]="Digit7",e[e.Digit8=29]="Digit8",e[e.Digit9=30]="Digit9",e[e.KeyA=31]="KeyA",e[e.KeyB=32]="KeyB",e[e.KeyC=33]="KeyC",e[e.KeyD=34]="KeyD",e[e.KeyE=35]="KeyE",e[e.KeyF=36]="KeyF",e[e.KeyG=37]="KeyG",e[e.KeyH=38]="KeyH",e[e.KeyI=39]="KeyI",e[e.KeyJ=40]="KeyJ",e[e.KeyK=41]="KeyK",e[e.KeyL=42]="KeyL",e[e.KeyM=43]="KeyM",e[e.KeyN=44]="KeyN",e[e.KeyO=45]="KeyO",e[e.KeyP=46]="KeyP",e[e.KeyQ=47]="KeyQ",e[e.KeyR=48]="KeyR",e[e.KeyS=49]="KeyS",e[e.KeyT=50]="KeyT",e[e.KeyU=51]="KeyU",e[e.KeyV=52]="KeyV",e[e.KeyW=53]="KeyW",e[e.KeyX=54]="KeyX",e[e.KeyY=55]="KeyY",e[e.KeyZ=56]="KeyZ",e[e.Meta=57]="Meta",e[e.ContextMenu=58]="ContextMenu",e[e.F1=59]="F1",e[e.F2=60]="F2",e[e.F3=61]="F3",e[e.F4=62]="F4",e[e.F5=63]="F5",e[e.F6=64]="F6",e[e.F7=65]="F7",e[e.F8=66]="F8",e[e.F9=67]="F9",e[e.F10=68]="F10",e[e.F11=69]="F11",e[e.F12=70]="F12",e[e.F13=71]="F13",e[e.F14=72]="F14",e[e.F15=73]="F15",e[e.F16=74]="F16",e[e.F17=75]="F17",e[e.F18=76]="F18",e[e.F19=77]="F19",e[e.NumLock=78]="NumLock",e[e.ScrollLock=79]="ScrollLock",e[e.Semicolon=80]="Semicolon",e[e.Equal=81]="Equal",e[e.Comma=82]="Comma",e[e.Minus=83]="Minus",e[e.Period=84]="Period",e[e.Slash=85]="Slash",e[e.Backquote=86]="Backquote",e[e.BracketLeft=87]="BracketLeft",e[e.Backslash=88]="Backslash",e[e.BracketRight=89]="BracketRight",e[e.Quote=90]="Quote",e[e.OEM_8=91]="OEM_8",e[e.IntlBackslash=92]="IntlBackslash",e[e.Numpad0=93]="Numpad0",e[e.Numpad1=94]="Numpad1",e[e.Numpad2=95]="Numpad2",e[e.Numpad3=96]="Numpad3",e[e.Numpad4=97]="Numpad4",e[e.Numpad5=98]="Numpad5",e[e.Numpad6=99]="Numpad6",e[e.Numpad7=100]="Numpad7",e[e.Numpad8=101]="Numpad8",e[e.Numpad9=102]="Numpad9",e[e.NumpadMultiply=103]="NumpadMultiply",e[e.NumpadAdd=104]="NumpadAdd",e[e.NUMPAD_SEPARATOR=105]="NUMPAD_SEPARATOR",e[e.NumpadSubtract=106]="NumpadSubtract",e[e.NumpadDecimal=107]="NumpadDecimal",e[e.NumpadDivide=108]="NumpadDivide",e[e.KEY_IN_COMPOSITION=109]="KEY_IN_COMPOSITION",e[e.ABNT_C1=110]="ABNT_C1",e[e.ABNT_C2=111]="ABNT_C2",e[e.AudioVolumeMute=112]="AudioVolumeMute",e[e.AudioVolumeUp=113]="AudioVolumeUp",e[e.AudioVolumeDown=114]="AudioVolumeDown",e[e.BrowserSearch=115]="BrowserSearch",e[e.BrowserHome=116]="BrowserHome",e[e.BrowserBack=117]="BrowserBack",e[e.BrowserForward=118]="BrowserForward",e[e.MediaTrackNext=119]="MediaTrackNext",e[e.MediaTrackPrevious=120]="MediaTrackPrevious",e[e.MediaStop=121]="MediaStop",e[e.MediaPlayPause=122]="MediaPlayPause",e[e.LaunchMediaPlayer=123]="LaunchMediaPlayer",e[e.LaunchMail=124]="LaunchMail",e[e.LaunchApp2=125]="LaunchApp2",e[e.Clear=126]="Clear",e[e.MAX_VALUE=127]="MAX_VALUE",e))(KeyCode||{});class KeyCodeStrMap{constructor(){ae(this,"_keyCodeToStr");ae(this,"_strToKeyCode");this._keyCodeToStr=[],this._strToKeyCode=Object.create(null)}define(t,o){this._keyCodeToStr[t]=o,this._strToKeyCode[o.toLowerCase()]=t}keyCodeToStr(t){return this._keyCodeToStr[t]}strToKeyCode(t){return this._strToKeyCode[t.toLowerCase()]||0}}const uiMap=new KeyCodeStrMap,userSettingsUSMap=new KeyCodeStrMap,userSettingsGeneralMap=new KeyCodeStrMap,EVENT_KEY_CODE_MAP=new Array(230),scanCodeStrToInt=Object.create(null),scanCodeLowerCaseStrToInt=Object.create(null);(function(){const e="",t=[[0,1,0,"None",0,"unknown",0,"VK_UNKNOWN",e,e],[0,1,1,"Hyper",0,e,0,e,e,e],[0,1,2,"Super",0,e,0,e,e,e],[0,1,3,"Fn",0,e,0,e,e,e],[0,1,4,"FnLock",0,e,0,e,e,e],[0,1,5,"Suspend",0,e,0,e,e,e],[0,1,6,"Resume",0,e,0,e,e,e],[0,1,7,"Turbo",0,e,0,e,e,e],[0,1,8,"Sleep",0,e,0,"VK_SLEEP",e,e],[0,1,9,"WakeUp",0,e,0,e,e,e],[31,0,10,"KeyA",31,"A",65,"VK_A",e,e],[32,0,11,"KeyB",32,"B",66,"VK_B",e,e],[33,0,12,"KeyC",33,"C",67,"VK_C",e,e],[34,0,13,"KeyD",34,"D",68,"VK_D",e,e],[35,0,14,"KeyE",35,"E",69,"VK_E",e,e],[36,0,15,"KeyF",36,"F",70,"VK_F",e,e],[37,0,16,"KeyG",37,"G",71,"VK_G",e,e],[38,0,17,"KeyH",38,"H",72,"VK_H",e,e],[39,0,18,"KeyI",39,"I",73,"VK_I",e,e],[40,0,19,"KeyJ",40,"J",74,"VK_J",e,e],[41,0,20,"KeyK",41,"K",75,"VK_K",e,e],[42,0,21,"KeyL",42,"L",76,"VK_L",e,e],[43,0,22,"KeyM",43,"M",77,"VK_M",e,e],[44,0,23,"KeyN",44,"N",78,"VK_N",e,e],[45,0,24,"KeyO",45,"O",79,"VK_O",e,e],[46,0,25,"KeyP",46,"P",80,"VK_P",e,e],[47,0,26,"KeyQ",47,"Q",81,"VK_Q",e,e],[48,0,27,"KeyR",48,"R",82,"VK_R",e,e],[49,0,28,"KeyS",49,"S",83,"VK_S",e,e],[50,0,29,"KeyT",50,"T",84,"VK_T",e,e],[51,0,30,"KeyU",51,"U",85,"VK_U",e,e],[52,0,31,"KeyV",52,"V",86,"VK_V",e,e],[53,0,32,"KeyW",53,"W",87,"VK_W",e,e],[54,0,33,"KeyX",54,"X",88,"VK_X",e,e],[55,0,34,"KeyY",55,"Y",89,"VK_Y",e,e],[56,0,35,"KeyZ",56,"Z",90,"VK_Z",e,e],[22,0,36,"Digit1",22,"1",49,"VK_1",e,e],[23,0,37,"Digit2",23,"2",50,"VK_2",e,e],[24,0,38,"Digit3",24,"3",51,"VK_3",e,e],[25,0,39,"Digit4",25,"4",52,"VK_4",e,e],[26,0,40,"Digit5",26,"5",53,"VK_5",e,e],[27,0,41,"Digit6",27,"6",54,"VK_6",e,e],[28,0,42,"Digit7",28,"7",55,"VK_7",e,e],[29,0,43,"Digit8",29,"8",56,"VK_8",e,e],[30,0,44,"Digit9",30,"9",57,"VK_9",e,e],[21,0,45,"Digit0",21,"0",48,"VK_0",e,e],[3,1,46,"Enter",3,"Enter",13,"VK_RETURN",e,e],[9,1,47,"Escape",9,"Escape",27,"VK_ESCAPE",e,e],[1,1,48,"Backspace",1,"Backspace",8,"VK_BACK",e,e],[2,1,49,"Tab",2,"Tab",9,"VK_TAB",e,e],[10,1,50,"Space",10,"Space",32,"VK_SPACE",e,e],[83,0,51,"Minus",83,"-",189,"VK_OEM_MINUS","-","OEM_MINUS"],[81,0,52,"Equal",81,"=",187,"VK_OEM_PLUS","=","OEM_PLUS"],[87,0,53,"BracketLeft",87,"[",219,"VK_OEM_4","[","OEM_4"],[89,0,54,"BracketRight",89,"]",221,"VK_OEM_6","]","OEM_6"],[88,0,55,"Backslash",88,"\\",220,"VK_OEM_5","\\","OEM_5"],[0,0,56,"IntlHash",0,e,0,e,e,e],[80,0,57,"Semicolon",80,";",186,"VK_OEM_1",";","OEM_1"],[90,0,58,"Quote",90,"'",222,"VK_OEM_7","'","OEM_7"],[86,0,59,"Backquote",86,"`",192,"VK_OEM_3","`","OEM_3"],[82,0,60,"Comma",82,",",188,"VK_OEM_COMMA",",","OEM_COMMA"],[84,0,61,"Period",84,".",190,"VK_OEM_PERIOD",".","OEM_PERIOD"],[85,0,62,"Slash",85,"/",191,"VK_OEM_2","/","OEM_2"],[8,1,63,"CapsLock",8,"CapsLock",20,"VK_CAPITAL",e,e],[59,1,64,"F1",59,"F1",112,"VK_F1",e,e],[60,1,65,"F2",60,"F2",113,"VK_F2",e,e],[61,1,66,"F3",61,"F3",114,"VK_F3",e,e],[62,1,67,"F4",62,"F4",115,"VK_F4",e,e],[63,1,68,"F5",63,"F5",116,"VK_F5",e,e],[64,1,69,"F6",64,"F6",117,"VK_F6",e,e],[65,1,70,"F7",65,"F7",118,"VK_F7",e,e],[66,1,71,"F8",66,"F8",119,"VK_F8",e,e],[67,1,72,"F9",67,"F9",120,"VK_F9",e,e],[68,1,73,"F10",68,"F10",121,"VK_F10",e,e],[69,1,74,"F11",69,"F11",122,"VK_F11",e,e],[70,1,75,"F12",70,"F12",123,"VK_F12",e,e],[0,1,76,"PrintScreen",0,e,0,e,e,e],[79,1,77,"ScrollLock",79,"ScrollLock",145,"VK_SCROLL",e,e],[7,1,78,"Pause",7,"PauseBreak",19,"VK_PAUSE",e,e],[19,1,79,"Insert",19,"Insert",45,"VK_INSERT",e,e],[14,1,80,"Home",14,"Home",36,"VK_HOME",e,e],[11,1,81,"PageUp",11,"PageUp",33,"VK_PRIOR",e,e],[20,1,82,"Delete",20,"Delete",46,"VK_DELETE",e,e],[13,1,83,"End",13,"End",35,"VK_END",e,e],[12,1,84,"PageDown",12,"PageDown",34,"VK_NEXT",e,e],[17,1,85,"ArrowRight",17,"RightArrow",39,"VK_RIGHT","Right",e],[15,1,86,"ArrowLeft",15,"LeftArrow",37,"VK_LEFT","Left",e],[18,1,87,"ArrowDown",18,"DownArrow",40,"VK_DOWN","Down",e],[16,1,88,"ArrowUp",16,"UpArrow",38,"VK_UP","Up",e],[78,1,89,"NumLock",78,"NumLock",144,"VK_NUMLOCK",e,e],[108,1,90,"NumpadDivide",108,"NumPad_Divide",111,"VK_DIVIDE",e,e],[103,1,91,"NumpadMultiply",103,"NumPad_Multiply",106,"VK_MULTIPLY",e,e],[106,1,92,"NumpadSubtract",106,"NumPad_Subtract",109,"VK_SUBTRACT",e,e],[104,1,93,"NumpadAdd",104,"NumPad_Add",107,"VK_ADD",e,e],[3,1,94,"NumpadEnter",3,e,0,e,e,e],[94,1,95,"Numpad1",94,"NumPad1",97,"VK_NUMPAD1",e,e],[95,1,96,"Numpad2",95,"NumPad2",98,"VK_NUMPAD2",e,e],[96,1,97,"Numpad3",96,"NumPad3",99,"VK_NUMPAD3",e,e],[97,1,98,"Numpad4",97,"NumPad4",100,"VK_NUMPAD4",e,e],[98,1,99,"Numpad5",98,"NumPad5",101,"VK_NUMPAD5",e,e],[99,1,100,"Numpad6",99,"NumPad6",102,"VK_NUMPAD6",e,e],[100,1,101,"Numpad7",100,"NumPad7",103,"VK_NUMPAD7",e,e],[101,1,102,"Numpad8",101,"NumPad8",104,"VK_NUMPAD8",e,e],[102,1,103,"Numpad9",102,"NumPad9",105,"VK_NUMPAD9",e,e],[93,1,104,"Numpad0",93,"NumPad0",96,"VK_NUMPAD0",e,e],[107,1,105,"NumpadDecimal",107,"NumPad_Decimal",110,"VK_DECIMAL",e,e],[92,0,106,"IntlBackslash",92,"OEM_102",226,"VK_OEM_102",e,e],[58,1,107,"ContextMenu",58,"ContextMenu",93,e,e,e],[0,1,108,"Power",0,e,0,e,e,e],[0,1,109,"NumpadEqual",0,e,0,e,e,e],[71,1,110,"F13",71,"F13",124,"VK_F13",e,e],[72,1,111,"F14",72,"F14",125,"VK_F14",e,e],[73,1,112,"F15",73,"F15",126,"VK_F15",e,e],[74,1,113,"F16",74,"F16",127,"VK_F16",e,e],[75,1,114,"F17",75,"F17",128,"VK_F17",e,e],[76,1,115,"F18",76,"F18",129,"VK_F18",e,e],[77,1,116,"F19",77,"F19",130,"VK_F19",e,e],[0,1,117,"F20",0,e,0,"VK_F20",e,e],[0,1,118,"F21",0,e,0,"VK_F21",e,e],[0,1,119,"F22",0,e,0,"VK_F22",e,e],[0,1,120,"F23",0,e,0,"VK_F23",e,e],[0,1,121,"F24",0,e,0,"VK_F24",e,e],[0,1,122,"Open",0,e,0,e,e,e],[0,1,123,"Help",0,e,0,e,e,e],[0,1,124,"Select",0,e,0,e,e,e],[0,1,125,"Again",0,e,0,e,e,e],[0,1,126,"Undo",0,e,0,e,e,e],[0,1,127,"Cut",0,e,0,e,e,e],[0,1,128,"Copy",0,e,0,e,e,e],[0,1,129,"Paste",0,e,0,e,e,e],[0,1,130,"Find",0,e,0,e,e,e],[0,1,131,"AudioVolumeMute",112,"AudioVolumeMute",173,"VK_VOLUME_MUTE",e,e],[0,1,132,"AudioVolumeUp",113,"AudioVolumeUp",175,"VK_VOLUME_UP",e,e],[0,1,133,"AudioVolumeDown",114,"AudioVolumeDown",174,"VK_VOLUME_DOWN",e,e],[105,1,134,"NumpadComma",105,"NumPad_Separator",108,"VK_SEPARATOR",e,e],[110,0,135,"IntlRo",110,"ABNT_C1",193,"VK_ABNT_C1",e,e],[0,1,136,"KanaMode",0,e,0,e,e,e],[0,0,137,"IntlYen",0,e,0,e,e,e],[0,1,138,"Convert",0,e,0,e,e,e],[0,1,139,"NonConvert",0,e,0,e,e,e],[0,1,140,"Lang1",0,e,0,e,e,e],[0,1,141,"Lang2",0,e,0,e,e,e],[0,1,142,"Lang3",0,e,0,e,e,e],[0,1,143,"Lang4",0,e,0,e,e,e],[0,1,144,"Lang5",0,e,0,e,e,e],[0,1,145,"Abort",0,e,0,e,e,e],[0,1,146,"Props",0,e,0,e,e,e],[0,1,147,"NumpadParenLeft",0,e,0,e,e,e],[0,1,148,"NumpadParenRight",0,e,0,e,e,e],[0,1,149,"NumpadBackspace",0,e,0,e,e,e],[0,1,150,"NumpadMemoryStore",0,e,0,e,e,e],[0,1,151,"NumpadMemoryRecall",0,e,0,e,e,e],[0,1,152,"NumpadMemoryClear",0,e,0,e,e,e],[0,1,153,"NumpadMemoryAdd",0,e,0,e,e,e],[0,1,154,"NumpadMemorySubtract",0,e,0,e,e,e],[0,1,155,"NumpadClear",126,"Clear",12,"VK_CLEAR",e,e],[0,1,156,"NumpadClearEntry",0,e,0,e,e,e],[5,1,0,e,5,"Ctrl",17,"VK_CONTROL",e,e],[4,1,0,e,4,"Shift",16,"VK_SHIFT",e,e],[6,1,0,e,6,"Alt",18,"VK_MENU",e,e],[57,1,0,e,57,"Meta",0,"VK_COMMAND",e,e],[5,1,157,"ControlLeft",5,e,0,"VK_LCONTROL",e,e],[4,1,158,"ShiftLeft",4,e,0,"VK_LSHIFT",e,e],[6,1,159,"AltLeft",6,e,0,"VK_LMENU",e,e],[57,1,160,"MetaLeft",57,e,0,"VK_LWIN",e,e],[5,1,161,"ControlRight",5,e,0,"VK_RCONTROL",e,e],[4,1,162,"ShiftRight",4,e,0,"VK_RSHIFT",e,e],[6,1,163,"AltRight",6,e,0,"VK_RMENU",e,e],[57,1,164,"MetaRight",57,e,0,"VK_RWIN",e,e],[0,1,165,"BrightnessUp",0,e,0,e,e,e],[0,1,166,"BrightnessDown",0,e,0,e,e,e],[0,1,167,"MediaPlay",0,e,0,e,e,e],[0,1,168,"MediaRecord",0,e,0,e,e,e],[0,1,169,"MediaFastForward",0,e,0,e,e,e],[0,1,170,"MediaRewind",0,e,0,e,e,e],[114,1,171,"MediaTrackNext",119,"MediaTrackNext",176,"VK_MEDIA_NEXT_TRACK",e,e],[115,1,172,"MediaTrackPrevious",120,"MediaTrackPrevious",177,"VK_MEDIA_PREV_TRACK",e,e],[116,1,173,"MediaStop",121,"MediaStop",178,"VK_MEDIA_STOP",e,e],[0,1,174,"Eject",0,e,0,e,e,e],[117,1,175,"MediaPlayPause",122,"MediaPlayPause",179,"VK_MEDIA_PLAY_PAUSE",e,e],[0,1,176,"MediaSelect",123,"LaunchMediaPlayer",181,"VK_MEDIA_LAUNCH_MEDIA_SELECT",e,e],[0,1,177,"LaunchMail",124,"LaunchMail",180,"VK_MEDIA_LAUNCH_MAIL",e,e],[0,1,178,"LaunchApp2",125,"LaunchApp2",183,"VK_MEDIA_LAUNCH_APP2",e,e],[0,1,179,"LaunchApp1",0,e,0,"VK_MEDIA_LAUNCH_APP1",e,e],[0,1,180,"SelectTask",0,e,0,e,e,e],[0,1,181,"LaunchScreenSaver",0,e,0,e,e,e],[0,1,182,"BrowserSearch",115,"BrowserSearch",170,"VK_BROWSER_SEARCH",e,e],[0,1,183,"BrowserHome",116,"BrowserHome",172,"VK_BROWSER_HOME",e,e],[112,1,184,"BrowserBack",117,"BrowserBack",166,"VK_BROWSER_BACK",e,e],[113,1,185,"BrowserForward",118,"BrowserForward",167,"VK_BROWSER_FORWARD",e,e],[0,1,186,"BrowserStop",0,e,0,"VK_BROWSER_STOP",e,e],[0,1,187,"BrowserRefresh",0,e,0,"VK_BROWSER_REFRESH",e,e],[0,1,188,"BrowserFavorites",0,e,0,"VK_BROWSER_FAVORITES",e,e],[0,1,189,"ZoomToggle",0,e,0,e,e,e],[0,1,190,"MailReply",0,e,0,e,e,e],[0,1,191,"MailForward",0,e,0,e,e,e],[0,1,192,"MailSend",0,e,0,e,e,e],[109,1,0,e,109,"KeyInComposition",229,e,e,e],[111,1,0,e,111,"ABNT_C2",194,"VK_ABNT_C2",e,e],[91,1,0,e,91,"OEM_8",223,"VK_OEM_8",e,e],[0,1,0,e,0,e,0,"VK_KANA",e,e],[0,1,0,e,0,e,0,"VK_HANGUL",e,e],[0,1,0,e,0,e,0,"VK_JUNJA",e,e],[0,1,0,e,0,e,0,"VK_FINAL",e,e],[0,1,0,e,0,e,0,"VK_HANJA",e,e],[0,1,0,e,0,e,0,"VK_KANJI",e,e],[0,1,0,e,0,e,0,"VK_CONVERT",e,e],[0,1,0,e,0,e,0,"VK_NONCONVERT",e,e],[0,1,0,e,0,e,0,"VK_ACCEPT",e,e],[0,1,0,e,0,e,0,"VK_MODECHANGE",e,e],[0,1,0,e,0,e,0,"VK_SELECT",e,e],[0,1,0,e,0,e,0,"VK_PRINT",e,e],[0,1,0,e,0,e,0,"VK_EXECUTE",e,e],[0,1,0,e,0,e,0,"VK_SNAPSHOT",e,e],[0,1,0,e,0,e,0,"VK_HELP",e,e],[0,1,0,e,0,e,0,"VK_APPS",e,e],[0,1,0,e,0,e,0,"VK_PROCESSKEY",e,e],[0,1,0,e,0,e,0,"VK_PACKET",e,e],[0,1,0,e,0,e,0,"VK_DBE_SBCSCHAR",e,e],[0,1,0,e,0,e,0,"VK_DBE_DBCSCHAR",e,e],[0,1,0,e,0,e,0,"VK_ATTN",e,e],[0,1,0,e,0,e,0,"VK_CRSEL",e,e],[0,1,0,e,0,e,0,"VK_EXSEL",e,e],[0,1,0,e,0,e,0,"VK_EREOF",e,e],[0,1,0,e,0,e,0,"VK_PLAY",e,e],[0,1,0,e,0,e,0,"VK_ZOOM",e,e],[0,1,0,e,0,e,0,"VK_NONAME",e,e],[0,1,0,e,0,e,0,"VK_PA1",e,e],[0,1,0,e,0,e,0,"VK_OEM_CLEAR",e,e]],o=[],n=[];for(const s of t){const[a,r,l,h,d,_,u,c,f,m]=s;if(n[l]||(n[l]=!0,scanCodeStrToInt[h]=l,scanCodeLowerCaseStrToInt[h.toLowerCase()]=l),!o[d]){if(o[d]=!0,!_)throw new Error(`String representation missing for key code ${d} around scan code ${h}`);uiMap.define(d,_),userSettingsUSMap.define(d,f||_),userSettingsGeneralMap.define(d,m||f||_)}u&&(EVENT_KEY_CODE_MAP[u]=d)}})();var KeyCodeUtils;(e=>{function t(l){return uiMap.keyCodeToStr(l)}e.toString=t;function o(l){return uiMap.strToKeyCode(l)}e.fromString=o;function n(l){return userSettingsUSMap.keyCodeToStr(l)}e.toUserSettingsUS=n;function s(l){return userSettingsGeneralMap.keyCodeToStr(l)}e.toUserSettingsGeneral=s;function a(l){return userSettingsUSMap.strToKeyCode(l)||userSettingsGeneralMap.strToKeyCode(l)}e.fromUserSettings=a;function r(l){if(l>=93&&l<=108)return null;switch(l){case 16:return"Up";case 18:return"Down";case 15:return"Left";case 17:return"Right"}return uiMap.keyCodeToStr(l)}e.toElectronAccelerator=r})(KeyCodeUtils||(KeyCodeUtils={}));function init$j(){return{has,getDamageColor,parseCss,tip:tip$1,changeLocalStorage,swapChapter}}function has(e){return!isNil(e)}function getDamageColor(e){return typeof e!="number"?"#f00":e===0?"#2f2":e<0?"#7f7":e<core.status.hero.hp/3?"#fff":e<core.status.hero.hp*2/3?"#ff4":e<core.status.hero.hp?"#f93":"#f22"}function setCanvasSize(e,t,o){e.width=t,e.height=o,e.style.width=`${t}px`,e.style.height=`${o}px`}function keycode(e){return EVENT_KEY_CODE_MAP[e]}function parseCss(e){const o=e.replace(/[\n\s\t]*/g,"").replace(/;*/g,";").split(";"),n={};for(const s of o){const[a,r]=s.split(":"),l=a.replace(/\-([a-z])/g,(h,d)=>d.toUpperCase());n[l]=r}return n}function type(str,time=1e3,timing=e=>e,avr=!1){const toShow=eval("`"+str+"`");if(typeof toShow!="string")throw new TypeError("Error str type in typing!");if(toShow.startsWith("!!html"))return ref(toShow);avr&&(time*=toShow.length);const ani=new Y,content=ref(""),all=toShow.length,fn=e=>{if(!has(e))return;const t=ani.x;content.value=toShow.slice(0,Math.floor(t)),Math.floor(t)===all&&(ani.ticker.destroy(),content.value=toShow)};return ani.ticker.add(fn),ani.mode(timing).time(time).move(all,0),setTimeout(()=>ani.ticker.destroy(),time+100),content}function tip$1(e,t){message[e]({content:t,class:"antdv-message"})}function splitText(e){return e.map((t,o,n)=>/^\d+\./.test(t)?`${"&nbsp;".repeat(12)}${t}`:has(n[o-1])&&t!=="<br>"&&n[o-1]==="<br>"||o===0?`${"&nbsp;".repeat(8)}${t}`:t).join("")}function downloadCanvasImage(e,t){const o=e.toDataURL("image/png");download(o,t)}function download(e,t){const o=document.createElement("a");o.download=`${t}.png`,o.href=e,document.body.appendChild(o),o.click(),document.body.removeChild(o)}async function doByInterval(e,t,o=!1){for await(const n of e)o&&await R(t),n(),o||await R(t)}function changeLocalStorage(e,t,o){const n=core.getLocalStorage(e,o),s=t(n);core.setLocalStorage(e,s)}async function swapChapter(e,t){const o=t===2?"hard":"easy",n=await axios.get(`/HumanBreak/swap/${e}.${o}.h5save`,{responseType:"text",responseEncoding:"utf-8"}),s=JSON.parse(lzStringExports.decompressFromBase64(n.data));core.loadData(s.data,()=>{core.removeFlag("__fromLoad__"),core.drawTip("读档成功")})}const animation=[];let animateTime=0;function init$i(){return core.registerAnimationFrame("animateController",!0,e=>{if(!(e-animateTime<=core.values.animateSpeed)){for(const t of animation)t(e);animateTime=core.animateFrame.animateTime}}),{addAnimate,removeAnimate}}function addAnimate(e){animation.push(e)}function removeAnimate(e){const t=animation.findIndex(o=>o===e);t!==-1&&animation.splice(t,1)}const _hoisted_1$t=["width","height","id"],_sfc_main$t=defineComponent({__name:"boxAnimate",props:{id:{},noborder:{type:Boolean},width:{},height:{}},setup(e){const t=e,o=(Math.random()*1e8).toFixed(0);let n,s,a;function r(){var c,f;if(o==="none")return;has(a)&&removeAnimate(a);const l=core.getClsFromId(t.id),h=core.getAnimateFrames(l),d=(c=t.width)!=null?c:32,_=(f=t.height)!=null?f:32;t.noborder||(n.style.border="1.5px solid #ddd",n.style.backgroundColor="#222");const u=window.devicePixelRatio;if(n.style.width=`${d}px`,n.style.height=`${_}px`,n.width=u*d,n.height=u*_,s.scale(u,u),t.id!=="none")if(t.id==="hero"){const m=core.material.images.hero;s.drawImage(m,0,0,m.width/4,m.height/4,0,0,d,_)}else h===1?core.drawIcon(s,t.id,0,0,t.width,t.height):(a=()=>{core.clearMap(s);const m=core.status.globalAnimateStatus%h;core.drawIcon(s,t.id,0,0,d,_,m)},a(),addAnimate(a),onUnmounted(()=>{removeAnimate(a)}))}return onMounted(()=>{n=document.getElementById(`box-animate-${o}`),s=n.getContext("2d"),r()}),onUpdated(()=>{r()}),(l,h)=>{var d,_;return openBlock(),createElementBlock("canvas",{width:(d=l.width)!=null?d:32,height:(_=l.height)!=null?_:32,id:`box-animate-${unref(o)}`},null,8,_hoisted_1$t)}}});function init$h(){return{useDrag,useWheel,useUp,isMobile}}const dragFnMap=new Map,isMobile=matchMedia("(max-width: 600px)").matches;function useDrag(e,t,o,n,s=!1){const a=c=>{const f=s?document:c.target;f&&f.removeEventListener("touchmove",a),t(c.touches[0].clientX,c.touches[0].clientY,c)},r=c=>{const f=s?document:c.target;f&&f.removeEventListener("mousemove",_),n&&n(c)},l=c=>{const f=s?document:c.target;f&&f.addEventListener("mousemove",_),o&&o(c.clientX,c.clientY,c)},h=c=>{const f=s?document:c.target;f&&f.addEventListener("touchmove",a),o&&o(c.touches[0].clientX,c.touches[0].clientY,c)};e instanceof Array?e.forEach(c=>{c.addEventListener("mousedown",l),c.addEventListener("touchstart",h)}):(e.addEventListener("mousedown",l),e.addEventListener("touchstart",h));const d=s?document:e,_=c=>{t(c.clientX,c.clientY,c)},u=c=>{n&&n(c)};d instanceof Array?d.forEach(c=>{c.addEventListener("mouseup",r),c.addEventListener("touchend",u)}):(d.addEventListener("mouseup",r),d.addEventListener("touchend",u)),dragFnMap.set(t,[r,u])}function cancelGlobalDrag(e){const t=dragFnMap.get(e);dragFnMap.delete(e),t&&(document.removeEventListener("mouseup",t[0]),document.removeEventListener("touchend",t[1]))}function useWheel(e,t){e.addEventListener("wheel",o=>{t(o.deltaX,o.deltaY,o.deltaZ,o)})}function useUp(e,t){e.addEventListener("mouseup",o=>{t(o.clientX,o.clientY,o)}),e.addEventListener("touchend",o=>{t(o.touches[0].clientX,o.touches[0].clientY,o)})}const _hoisted_1$s=["selected"],_hoisted_2$p={class:"info"},_hoisted_3$o={class:"leftbar"},_hoisted_4$l={class:"name"},_hoisted_5$i={key:0,class:"special-text"},_hoisted_6$g={key:1,class:"special-text"},_hoisted_7$d={class:"rightbar"},_hoisted_8$c={class:"detail"},_hoisted_9$c={class:"detail-info"},_hoisted_10$a={style:{color:"lightgreen"}},_hoisted_11$9={class:"detail-info"},_hoisted_12$7={style:{color:"lightcoral"}},_hoisted_13$7={class:"detail-info"},_hoisted_14$7={style:{color:"lightblue"}},_hoisted_15$6={class:"detail-info"},_hoisted_16$6={style:{color:"lightyellow"}},_hoisted_17$5={class:"detail-info"},_hoisted_18$5={style:{color:"lawngreen"}},_hoisted_19$5={class:"detail-info"},_hoisted_20$4={class:"detail-info"},_hoisted_21$4={style:{color:"lightsalmon"}},_hoisted_22$3={class:"detail-info"},_hoisted_23$3={style:{color:"lightpink"}},_hoisted_24$3={style:{"font-family":"'Fira Code'"}},_hoisted_25$2={class:"detail-info"},_hoisted_26$2={style:{color:"cyan"}},_sfc_main$s=defineComponent({__name:"enemyOne",props:{enemy:{},selected:{type:Boolean}},emits:["select","hover"],setup(e,{emit:t}){const o=window.core,n=window.innerWidth*.032;function s(r){t("select")}function a(){t("hover")}return(r,l)=>{const h=__unplugin_components_0;return openBlock(),createElementBlock("div",{class:"enemy-container",onClick:s,onMousemove:a,selected:r.selected},[createBaseVNode("div",_hoisted_2$p,[createBaseVNode("div",_hoisted_3$o,[createBaseVNode("span",_hoisted_4$l,toDisplayString(r.enemy.name),1),createVNode(_sfc_main$t,{id:r.enemy.id,width:unref(isMobile)?32:n,height:unref(isMobile)?32:n,style:{margin:"5%"}},null,8,["id","width","height"]),unref(has)(r.enemy.special)&&r.enemy.special.length>0?(openBlock(),createElementBlock("div",_hoisted_5$i,[(openBlock(!0),createElementBlock(Fragment,null,renderList(r.enemy.toShowSpecial,(d,_)=>(openBlock(),createElementBlock("span",{style:normalizeStyle({color:r.enemy.toShowColor[_]})}," "+toDisplayString(d)+" ",5))),256))])):(openBlock(),createElementBlock("div",_hoisted_6$g,"无属性"))]),createVNode(h,{type:"vertical",dashed:"",style:{height:"100%",margin:"0 3% 0 1%","border-color":"#ddd4"}}),createBaseVNode("div",_hoisted_7$d,[createBaseVNode("div",_hoisted_8$c,[createBaseVNode("div",_hoisted_9$c,[createBaseVNode("span",_hoisted_10$a,"生命    "+toDisplayString(unref(o).formatBigNumber(r.enemy.hp)),1)]),createBaseVNode("div",_hoisted_11$9,[createBaseVNode("span",_hoisted_12$7,"攻击    "+toDisplayString(unref(o).formatBigNumber(r.enemy.atk)),1)]),createBaseVNode("div",_hoisted_13$7,[createBaseVNode("span",_hoisted_14$7,"防御    "+toDisplayString(unref(o).formatBigNumber(r.enemy.def)),1)]),createBaseVNode("div",_hoisted_15$6,[createBaseVNode("span",_hoisted_16$6,"金币    "+toDisplayString(unref(o).formatBigNumber(r.enemy.money)),1)]),createBaseVNode("div",_hoisted_17$5,[createBaseVNode("span",_hoisted_18$5,"经验    "+toDisplayString(unref(o).formatBigNumber(r.enemy.exp)),1)]),createBaseVNode("div",_hoisted_19$5,[createBaseVNode("span",{style:normalizeStyle({color:r.enemy.damageColor})},"伤害    "+toDisplayString(unref(o).formatBigNumber(r.enemy.damage)),5)]),createBaseVNode("div",_hoisted_20$4,[createBaseVNode("span",_hoisted_21$4,"临界    "+toDisplayString(unref(o).formatBigNumber(r.enemy.critical)),1)]),createBaseVNode("div",_hoisted_22$3,[createBaseVNode("span",_hoisted_23$3,[createTextVNode("减伤    "),createBaseVNode("span",{style:normalizeStyle({color:r.enemy.criticalDamage<0&&!unref(has)(r.enemy.damage)?"gold":"lightpink"})},[createBaseVNode("span",_hoisted_24$3,toDisplayString(r.enemy.criticalDamage<0&&!unref(has)(r.enemy.damage)?unref(isMobile)?"-":"=>":""),1),createTextVNode(toDisplayString(unref(o).formatBigNumber(r.enemy.criticalDamage<0?-r.enemy.criticalDamage:r.enemy.criticalDamage)),1)],4)])]),createBaseVNode("div",_hoisted_25$2,[createBaseVNode("span",_hoisted_26$2,toDisplayString(unref(o).formatBigNumber(unref(o).status.thisMap.ratio))+"防    "+toDisplayString(unref(o).formatBigNumber(r.enemy.defDamage)),1)])])])])],40,_hoisted_1$s)}}}),enemyOne_vue_vue_type_style_index_0_scoped_ca8bc229_lang="",_export_sfc=(e,t)=>{const o=e.__vccOpts||e;for(const[n,s]of t)o[n]=s;return o},EnemyOne=_export_sfc(_sfc_main$s,[["__scopeId","data-v-ca8bc229"]]),_hoisted_1$r=["id"],_hoisted_2$o={class:"main-div"},_hoisted_3$n=["id"],_hoisted_4$k=["id"],_sfc_main$r=defineComponent({__name:"scroll",props:{now:{},type:{},drag:{type:Boolean},width:{},update:{type:Boolean},noScroll:{type:Boolean}},emits:["update:now","update:drag","update:update"],setup(e,{emit:t}){var D;const o=e;let n,s=0,a=0;const r=(1e8*Math.random()).toFixed(0),l=window.devicePixelRatio,h=(D=o.width)!=null?D:20,d=o.type==="horizontal"?"left":"top",_=o.type==="horizontal"?"width":"height";let u,c,f=!1;const m=async()=>{await g(),w()};function w(){if(a===0||(a<u.canvas[_]/l?s=0:s>a-u.canvas[_]/l?s=a-u.canvas[_]/l:s<0&&(s=0),o.noScroll))return;const b=u.canvas.width,S=u.canvas.height;t("update:now",s);const L=Math.min(u.canvas[_]/a/l,1)*u.canvas[_],F=s/a*u.canvas[_];u.clearRect(0,0,u.canvas.width,u.canvas.height),u.beginPath(),o.type==="horizontal"?(u.moveTo(Math.max(F+5,5),S/2),u.lineTo(Math.min(F+L-5,u.canvas.width-5),S/2)):(u.moveTo(b/2,Math.max(F+5,5)),u.lineTo(b/2,Math.min(F+L-5,u.canvas.height-5))),u.lineCap="round",u.lineWidth=6,u.strokeStyle="#fff",u.stroke()}async function g(){await R(20);const b=u.canvas,S=getComputedStyle(b);b.style.width=`${h}px`,b.width=h*l,b.height=parseFloat(S.height)*l,o.noScroll&&(b.style.width="0px"),o.type==="horizontal"&&(n.style.flexDirection="column",b.style.height=`${h}px`,b.style.width="98%",b.style.margin="0 1% 0 1%",b.width=parseFloat(S.width)*l,b.height=h*l,o.noScroll&&(b.style.height="0px")),await new Promise(L=>{requestAnimationFrame(()=>{const F=getComputedStyle(c);a=parseFloat(F[_]),L("")})})}function y(){w(),c.style[d]=`${-s}px`}onUpdated(async()=>{var b;f||(s=(b=o.now)!=null?b:s,c.style.transition=`${d} 0.2s ease-out`,await g(),y())});let k,$;function U(b,S){t("update:drag",!0);const L=o.type==="horizontal"?b:S,F=L-k;k=L,u.canvas[_]<a*l&&(s+=F*a/u.canvas[_]*l),y()}function N(b,S){t("update:drag",!0);const L=o.type==="horizontal"?b:S,F=L-$;$=L,u.canvas[_]<a*l&&(s-=F),y()}return onMounted(async()=>{n=document.getElementById(`scroll-div-${r}`),c=document.getElementById(`content-${r}`);const S=document.getElementById(`scroll-${r}`);u=S.getContext("2d"),o.noScroll||useDrag(S,U,(L,F)=>{f=!0,k=o.type==="horizontal"?L:F,c.style.transition=""},()=>{setTimeout(()=>t("update:drag",!1)),f=!1},!0),useDrag(c,N,(L,F)=>{f=!0,$=o.type==="horizontal"?L:F,c.style.transition=""},()=>{setTimeout(()=>t("update:drag",!1)),f=!1},!0),useWheel(c,(L,F)=>{f=!0;const E=L!==0?L:F;Math.abs(E)>30?c.style.transition=`${d} 0.2s ease-out`:c.style.transition="",s+=E,y(),f=!1}),window.addEventListener("resize",m),await g(),w()}),onUnmounted(()=>{window.removeEventListener("resize",m),cancelGlobalDrag(U),cancelGlobalDrag(N)}),(b,S)=>(openBlock(),createElementBlock("div",{id:`scroll-div-${unref(r)}`,class:"scroll-main"},[createBaseVNode("div",_hoisted_2$o,[createBaseVNode("div",{id:`content-${unref(r)}`,class:"content"},[renderSlot(b.$slots,"default",{},void 0,!0)],8,_hoisted_3$n)]),createBaseVNode("canvas",{id:`scroll-${unref(r)}`,class:"scroll"},null,8,_hoisted_4$k)],8,_hoisted_1$r))}}),scroll_vue_vue_type_style_index_0_scoped_1626479d_lang="",Scroll=_export_sfc(_sfc_main$r,[["__scopeId","data-v-1626479d"]]);function getSpecialHint(e){const t=core.getSpecials().filter(s=>e.special.includes(s[0])).sort((s,a)=>s[0]-a[0]),o=t.map(s=>{const a=s[2];return a instanceof Function?a(e):a}),n=t.map(s=>{const a=s[1];return a instanceof Function?a(e):a});return createVNode("div",null,[t.map((s,a)=>createVNode("div",{class:"special"},[createVNode("span",{style:{color:core.arrayToRGBA(s[3])}},[createTextVNode("    "),n[a],createTextVNode("")]),createVNode("span",{innerHTML:o[a]},null)]))])}function getDefDamage(e,t=0,o=0,n,s,a){var _;const r=core.status.thisMap.ratio,l=[];let h;const d=100-Math.floor(t/r);for(let u=0;u<=d;u++){const c=core.getDamageInfo(e.id,{def:core.getStatus("def")+r*u+t,atk:core.getStatus("atk")+o},n,s,a);if(l.length===0){h=c==null?void 0:c.damage,has(h)&&l.push([t+u*r,h]);continue}has(c)&&c.damage!==((_=l.at(-1))==null?void 0:_[1])&&(c.damage,l.push([r*u+t,c.damage]))}return l}function getCriticalDamage(e,t=0,o=0,n,s,a){var _;const r=core.status.thisMap.ratio,l=[];let h;const d=100-Math.floor(t/r);for(let u=0;u<=d;u++){const c=core.getDamageInfo(e.id,{atk:core.getStatus("atk")+r*u+t,def:core.getStatus("def")+o},n,s,a);if(l.length===0){h=c==null?void 0:c.damage,has(h)&&l.push([t+u*r,h]);continue}has(c)&&c.damage!==((_=l.at(-1))==null?void 0:_[1])&&(c.damage,l.push([r*u+t,c.damage]))}return l}const _withScopeId$b=e=>(pushScopeId("data-v-2d8e08e2"),e=e(),popScopeId(),e),_hoisted_1$q={id:"special-main"},_hoisted_2$n={id:"special"},_hoisted_3$m={id:"critical"},_hoisted_4$j=_withScopeId$b(()=>createBaseVNode("div",{style:{"font-size":"2.5vh",width:"100%","text-align":"center"}}," 临界表 ",-1)),_hoisted_5$h={id:"critical-main"},_hoisted_6$f=_withScopeId$b(()=>createBaseVNode("div",{id:"critical-des"},[createBaseVNode("span",null,"加攻"),createBaseVNode("span",null,"减伤")],-1)),_hoisted_7$c={class:"critical"},_hoisted_8$b={class:"critical-atk"},_hoisted_9$b={style:{"font-family":"'Fira Code'"}},_sfc_main$q=defineComponent({__name:"enemySpecial",props:{fromBook:{type:Boolean}},setup(e){const t=e,[o,n]=t.fromBook?[void 0,void 0]:flags.mouseLoc,s=has(o)?Math.round(o+core.bigmap.offsetX/32):void 0,a=has(n)?Math.round(n+core.bigmap.offsetY/32):void 0,r=core.plugin.bookDetailEnemy,l=getSpecialHint(r),h=core.nextCriticals(r,isMobile?4:8,s,a),d=core.formatBigNumber;return(_,u)=>{const c=Scroll,f=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$q,[createVNode(c,{id:"special-scroll"},{default:withCtx(()=>[createBaseVNode("div",_hoisted_2$n,[(openBlock(),createBlock(resolveDynamicComponent(unref(l))))])]),_:1}),createVNode(f,{dashed:"",style:{margin:"2vh 0 2vh 0","border-color":"#ddd4"}}),createBaseVNode("div",_hoisted_3$m,[_hoisted_4$j,createBaseVNode("div",_hoisted_5$h,[_hoisted_6$f,(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(h),([m,w])=>(openBlock(),createElementBlock("div",_hoisted_7$c,[createBaseVNode("span",_hoisted_8$b,toDisplayString(unref(d)(m)),1),createBaseVNode("span",null,[createBaseVNode("span",_hoisted_9$b,toDisplayString(w<0?"=>":""),1),createTextVNode(toDisplayString(w<0?`${unref(d)(-w)}`:unref(d)(w)),1)])]))),256))])])])}}}),enemySpecial_vue_vue_type_style_index_0_scoped_2d8e08e2_lang="",EnemySpecial=_export_sfc(_sfc_main$q,[["__scopeId","data-v-2d8e08e2"]]),index$5="",index$4="";Chart.register(...registerables);const _withScopeId$a=e=>(pushScopeId("data-v-abc9838d"),e=e(),popScopeId(),e),_hoisted_1$p={id:"critical-main"},_hoisted_2$m={id:"critical"},_hoisted_3$l=_withScopeId$a(()=>createBaseVNode("div",{class:"des"},"加攻伤害",-1)),_hoisted_4$i={class:"slider-div"},_hoisted_5$g={id:"def"},_hoisted_6$e=_withScopeId$a(()=>createBaseVNode("div",{class:"des"},"加防伤害",-1)),_hoisted_7$b={class:"slider-div"},_hoisted_8$a={id:"now-damage"},_hoisted_9$a={style:{"font-family":"'Fira Code'"}},_sfc_main$p=defineComponent({__name:"enemyCritical",props:{fromBook:{type:Boolean}},setup(e){const t=e,o=ref(),n=ref(),s=core.plugin.bookDetailEnemy,a=Math.ceil,r=ref(t.fromBook?void 0:flags.mouseLoc[0]),l=ref(t.fromBook?void 0:flags.mouseLoc[1]);r.value=has(r.value)?Math.round(r.value+core.bigmap.offsetX/32):void 0,l.value=has(l.value)?Math.round(l.value+core.bigmap.offsetY/32):void 0;let h=getCriticalDamage(s,0,0,r.value,l.value),d=getDefDamage(s,0,0,r.value,l.value);const _=ref(h),u=ref(d),c=ref(0),f=ref(0),m=core.getDamageInfo(s.id,void 0,r.value,l.value),w=core.formatBigNumber,g=core.status.thisMap.ratio,y=computed(()=>{const N=core.getDamageInfo(s.id,{atk:core.getStatus("atk")+c.value*g,def:core.getStatus("def")+f.value*g},r.value,l.value);return has(N)?has(m)?[m.damage-N.damage,N.damage]:[-N.damage,N.damage]:["???","???"]});function k(N,D){Chart.defaults.color="#aaa";const b={type:"line",data:$(D),options:{elements:{point:{radius:5,hoverRadius:7},line:{borderJoinStyle:"round"}},scales:{y:{grid:{color:"#ddd3"}}},plugins:{legend:{display:!1}}}};return new Chart(N,b)}function $(N){return{datasets:[{data:N.map(D=>D[1]),label:"怪物伤害"}],labels:N.map(D=>Math.round(D[0]/g))}}const U=debounce((N,D)=>{_.value=getCriticalDamage(s,c.value*g,f.value*g,r.value,l.value),u.value=getDefDamage(s,f.value*g,c.value*g,r.value,l.value),_.value.length>h.length&&(h=_.value),u.value.length>d.length&&(d=u.value),N.data=$(_.value),D.data=$(u.value),N.update("resize"),D.update("resize")},200);return onMounted(()=>{const N=document.getElementById("critical-main"),D=getComputedStyle(N),b=parseFloat(D.width),S=window.innerHeight/5,L=o.value,F=n.value;setCanvasSize(L,b,S),setCanvasSize(F,b,S);const E=k(L,_.value),z=k(F,u.value);watch(c,ee=>{U(E,z)}),watch(f,ee=>{U(E,z)})}),(N,D)=>{var L,F,E,z,ee,ne,M,Z;const b=__unplugin_components_0$1,S=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$p,[createBaseVNode("div",_hoisted_2$m,[_hoisted_3$l,createBaseVNode("canvas",{ref_key:"critical",ref:o,class:"chart"},null,512),createBaseVNode("div",_hoisted_4$i,[createBaseVNode("span",null,"加攻次数    "+toDisplayString(c.value),1),createVNode(b,{class:"slider",value:c.value,"onUpdate:value":D[0]||(D[0]=W=>c.value=W),max:unref(a)(((F=(L=unref(h).at(-1))==null?void 0:L[0])!=null?F:2)/unref(g))-1},null,8,["value","max"]),createBaseVNode("span",null,"最大值    "+toDisplayString(unref(a)(((z=(E=unref(h).at(-1))==null?void 0:E[0])!=null?z:2)/unref(g))-1),1)])]),createVNode(S,{dashed:"",style:{width:"100%","border-color":"#ddd4",margin:"1vh 0 1vh 0"}}),createBaseVNode("div",_hoisted_5$g,[_hoisted_6$e,createBaseVNode("canvas",{ref_key:"def",ref:n,class:"chart"},null,512),createBaseVNode("div",_hoisted_7$b,[createBaseVNode("span",null,"加防次数    "+toDisplayString(f.value),1),createVNode(b,{class:"slider",value:f.value,"onUpdate:value":D[1]||(D[1]=W=>f.value=W),max:unref(a)(((ne=(ee=unref(d).at(-1))==null?void 0:ee[0])!=null?ne:2)/unref(g))-1},null,8,["value","max"]),createBaseVNode("span",null,"最大值    "+toDisplayString(unref(a)(((Z=(M=unref(d).at(-1))==null?void 0:M[0])!=null?Z:2)/unref(g))-1),1)])]),createBaseVNode("div",_hoisted_8$a,[createBaseVNode("div",null,[createBaseVNode("span",null,"当前加攻"+toDisplayString(unref(isMobile)?"":"    "),1),createBaseVNode("span",null,toDisplayString(unref(w)(c.value*unref(g))),1)]),createBaseVNode("div",null,[createBaseVNode("span",null,"当前加防"+toDisplayString(unref(isMobile)?"":"    "),1),createBaseVNode("span",null,toDisplayString(unref(w)(f.value*unref(g))),1)]),createBaseVNode("div",null,[createBaseVNode("span",null,"当前减伤"+toDisplayString(unref(isMobile)?"":"    "),1),createBaseVNode("span",null,[createBaseVNode("span",_hoisted_9$a,toDisplayString(y.value[0]<0&&!unref(has)(unref(s).damage)?"=>":""),1),createTextVNode(toDisplayString(y.value[0]<0&&!unref(has)(unref(s).damage)?unref(w)(-y.value[0]):unref(w)(y.value[0])),1)])]),createBaseVNode("div",null,[createBaseVNode("span",null,"当前伤害"+toDisplayString(unref(isMobile)?"":"    "),1),createBaseVNode("span",null,toDisplayString(unref(w)(y.value[1])),1)])])])}}}),enemyCritical_vue_vue_type_style_index_0_scoped_abc9838d_lang="",EnemyCritical=_export_sfc(_sfc_main$p,[["__scopeId","data-v-abc9838d"]]),showMarkedEnemy=ref(!1),markedEnemy=reactive([]),markInfo={},criticalReached={},enemyDamageInfo={};function markEnemy$1(e){var t,o;hasMarkedEnemy(e)||(markedEnemy.push(e),markInfo[e]={nextCritical:(o=(t=core.nextCriticals(e,1)[0])==null?void 0:t[0])!=null?o:0+core.status.hero.atk},criticalReached[e]={0:!0},enemyDamageInfo[e]={1:!1,2:!1,3:!1},getMarkInfo(e,!0),checkMarkedEnemy(!0))}function hasMarkedEnemy(e){return markedEnemy.includes(e)}function unmarkEnemy(e){const t=markedEnemy.indexOf(e);t!==-1&&(markedEnemy.splice(t,1),checkMarkedEnemy())}function unmarkAll(){markedEnemy.splice(0),checkMarkedEnemy()}function getMarkedEnemy(){return markedEnemy}function getMarkInfo(e,t=!1){var s;const o=criticalReached[e],n=markInfo[e];if(core.status.hero.atk>=n.nextCritical){!o[n.nextCritical]&&!t&&tip$1("success",`踩到了${core.material.enemys[e].name}的临界!`),o[n.nextCritical]=!0;const a=(s=core.nextCriticals(e,1,void 0,void 0,"empty")[0])==null?void 0:s[0],r=(a!=null?a:0)+core.status.hero.atk;n.nextCritical=r}}function checkMarkedEnemy(e=!1){checkMarkedStatus.value=!checkMarkedStatus.value;const t=core.status.hero.hp;getMarkedEnemy().forEach(o=>{var l,h;getMarkInfo(o);const n=(h=(l=core.getDamageInfo(o,void 0,void 0,void 0,"empty"))==null?void 0:l.damage)!=null?h:-1;if(n===-1)return;const s=enemyDamageInfo[o],a=core.material.enemys[o].name;let r=0;n<=0?e||tip$1("success",`${a}已经零伤了!`):n<t/3?(!s[3]&&!e&&tip$1("success",`${a}的伤害已降至勇士生命值的1/3`),r=7):n<t/3*2?(!s[2]&&!e&&tip$1("success",`${a}的伤害已降至勇士生命值的2/3`),r=6):n<t&&(!s[1]&&!e&&tip$1("success",`你已经能打过${a}了!`),r=4),s[1]=s[2]=s[3]=!1,r&4&&(s[1]=!0),r&2&&(s[2]=!0),r&1&&(s[3]=!0)})}const checkMarkedStatus=ref(!1);function init$g(){return core.registerAction("onmove","mark",(e,t)=>(core.isPlaying()&&(flags.mouseLoc=[e,t]),!1),150),{checkMarkedEnemy,checkStatus:checkMarkedStatus,markEnemy:markEnemy$1,hasMarkedEnemy,unmarkEnemy,showMarkedEnemy,unmarkAll}}const _withScopeId$9=e=>(pushScopeId("data-v-c9501a8f"),e=e(),popScopeId(),e),_hoisted_1$o={id:"enemy-target"},_hoisted_2$l={id:"enemy-desc"},_hoisted_3$k=_withScopeId$9(()=>createBaseVNode("span",null,"怪物描述",-1)),_hoisted_4$h={id:"mark-target"},_hoisted_5$f=["onClick"],_sfc_main$o=defineComponent({__name:"enemyTarget",setup(e){const t=core.plugin.bookDetailEnemy,o=ref(hasMarkedEnemy(t.id));function n(){o.value&&unmarkEnemy(t.id),o.value||markEnemy$1(t.id),o.value=hasMarkedEnemy(t.id)}return(s,a)=>{const r=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$o,[createBaseVNode("div",_hoisted_2$l,[_hoisted_3$k,createVNode(Scroll,{id:"enemy-desc-scroll"},{default:withCtx(()=>[createBaseVNode("span",null,"    "+toDisplayString(unref(t).description),1)]),_:1})]),createVNode(r,{dashed:"",style:{"border-color":"#ddd4"}}),createBaseVNode("div",null,[createBaseVNode("div",_hoisted_4$h,[createBaseVNode("span",{id:"mark-info",style:normalizeStyle({color:o.value?"lightgreen":"lightcoral"})},toDisplayString(o.value?"已标记该怪物":"未标记该怪物"),5),createBaseVNode("span",{class:"button-text",onClick:withModifiers(n,["stop"])},toDisplayString(o.value?"取消标记该怪物":"标记该怪物为目标"),9,_hoisted_5$f)])])])}}}),enemyTarget_vue_vue_type_style_index_0_scoped_c9501a8f_lang="",EnemyTarget=_export_sfc(_sfc_main$o,[["__scopeId","data-v-c9501a8f"]]),_withScopeId$8=e=>(pushScopeId("data-v-c8f01fef"),e=e(),popScopeId(),e),_hoisted_1$n={id:"detail"},_hoisted_2$k={id:"detail-more"},_hoisted_3$j={key:0,id:"special-more",class:"detial-more"},_hoisted_4$g={key:1,id:"special-more",class:"detial-more"},_hoisted_5$e={key:2,id:"special-more",class:"detial-more"},_hoisted_6$d=_withScopeId$8(()=>createBaseVNode("span",null,null,-1)),_sfc_main$n=defineComponent({__name:"bookDetail",props:{fromBook:{type:Boolean},defaultPanel:{}},emits:["close"],setup(e,{emit:t}){var _;const o=e,n=core.plugin.bookDetailEnemy,s=ref(core.plugin.bookDetailPos),a=ref((_=o.defaultPanel)!=null?_:"special");let r;function l(u,c){u.stopPropagation(),a.value=c}function h(){s.value=core.plugin.bookDetailPos,r.style.opacity="0",t("close")}function d(u){const c=keycode(u.keyCode);(c===KeyCode.Enter||c===KeyCode.Space||c===KeyCode.KeyC)&&h(),o.fromBook||(c===KeyCode.KeyX||c===KeyCode.Escape)&&h()}return onMounted(async()=>{s.value=0,r=document.getElementById("detail"),r.style.opacity="1";const u=getComputedStyle(r);let c=!1,f=[0,0];await R(600),useDrag(r,(m,w)=>{(m-f[0])**2+(w-f[1])**2>=100&&(c=!0)},(m,w)=>{f=[m,w],w>parseFloat(u.height)*4/5&&(c=!0)},()=>{c===!1&&a.value!=="critical"&&h(),c=!1}),document.addEventListener("keyup",d)}),onUnmounted(()=>{document.removeEventListener("keyup",d)}),(u,c)=>{const f=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$n,[createBaseVNode("div",{id:"info",style:normalizeStyle({top:`${s.value}px`})},[createVNode(EnemyOne,{enemy:unref(n)},null,8,["enemy"]),createVNode(f,{dashed:"",style:{margin:"2vh 0 2vh 0","border-color":"#ddd4",width:"100%"}})],4),createVNode(Transition,{name:"detail"},{default:withCtx(()=>[a.value==="special"?(openBlock(),createBlock(EnemySpecial,{key:0,"from-book":u.fromBook},null,8,["from-book"])):a.value==="critical"?(openBlock(),createBlock(EnemyCritical,{key:1,"from-book":u.fromBook},null,8,["from-book"])):a.value==="target"?(openBlock(),createBlock(EnemyTarget,{key:2})):createCommentVNode("",!0)]),_:1}),createBaseVNode("div",_hoisted_2$k,[createVNode(Transition,{name:"detail"},{default:withCtx(()=>[a.value==="special"?(openBlock(),createElementBlock("div",_hoisted_3$j,[createBaseVNode("span",{id:"enemy-target",class:"button-text more",onClick:c[0]||(c[0]=m=>l(m,"target"))},[createVNode(unref(LeftOutlined)),createTextVNode(" 怪物更多信息")]),createBaseVNode("span",{id:"critical-more",class:"button-text more",onClick:c[1]||(c[1]=m=>l(m,"critical"))},[createTextVNode("详细临界信息 "),createVNode(unref(RightOutlined))])])):a.value==="critical"?(openBlock(),createElementBlock("div",_hoisted_4$g,[createBaseVNode("span",{id:"enemy-pos",class:"button-text more",onClick:c[2]||(c[2]=m=>l(m,"special"))},[createVNode(unref(LeftOutlined)),createTextVNode(" 怪物特殊属性")])])):a.value==="target"?(openBlock(),createElementBlock("div",_hoisted_5$e,[_hoisted_6$d,createBaseVNode("span",{id:"enemy-pos",class:"button-text more",onClick:c[3]||(c[3]=m=>l(m,"special"))},[createTextVNode("怪物特殊属性 "),createVNode(unref(RightOutlined))])])):createCommentVNode("",!0)]),_:1})])])}}}),bookDetail_vue_vue_type_style_index_0_scoped_c8f01fef_lang="",BookDetail=_export_sfc(_sfc_main$n,[["__scopeId","data-v-c8f01fef"]]),_withScopeId$7=e=>(pushScopeId("data-v-15b558ce"),e=e(),popScopeId(),e),_hoisted_1$m={id:"book"},_hoisted_2$j={id:"tools"},_hoisted_3$i={key:0,id:"none"},_hoisted_4$f=_withScopeId$7(()=>createBaseVNode("div",null,"本层无怪物",-1)),_hoisted_5$d=[_hoisted_4$f],_hoisted_6$c={class:"enemy"},_sfc_main$m=defineComponent({__name:"book",setup(e){var w,g,y;const t=(y=core.floorIds[(g=(w=core.status.event)==null?void 0:w.ui)==null?void 0:g.index])!=null?y:core.status.floorId;t!==core.status.floorId&&core.status.checkBlock&&(core.status.checkBlock.cache={});const o=core.getCurrentEnemys(t),n=ref(0),s=ref(!1),a=ref(!1),r=ref(0);o.forEach(k=>{const $=k.specialText.length;k.toShowSpecial=cloneDeep(k.specialText),k.toShowColor=cloneDeep(k.specialColor),$>=3&&(k.toShowSpecial=k.specialText.slice(0,2).concat(["..."]),k.toShowColor=k.specialColor.slice(0,2).concat(["#fff"])),k.toShowColor=k.toShowColor.map(U=>typeof U=="string"?U:core.arrayToRGBA(U)),k.damageColor=getDamageColor(k.damage)});function l(k,$){if(s.value)return;const U=window.innerHeight,N=$*U*.2-n.value;core.plugin.bookDetailEnemy=k,core.plugin.bookDetailPos=N,a.value=!0,h()}async function h(){const k=document.getElementById("book");k.style.opacity="0",await R(600),k.style.display="none"}async function d(){_(),await R(600),a.value=!1}async function _(){const k=document.getElementById("book");k.style.display="flex",await R(50),k.style.opacity="1"}async function u(){noClosePanel.value=!0,core.plugin.bookOpened.value=!1,core.plugin.transition.value?await R(650):await R(100),!core.events.recoverEvents(core.status.event.interval)&&(has(core.status.event.ui)?(core.status.boxAnimateObjs=[],core.ui._drawViewMaps(core.status.event.ui)):core.ui.closePanel())}function c(){const k=window.innerHeight,$=r.value*k*.2-n.value;$<0&&(n.value+=$-20),$>k*.655&&(n.value+=$-k*.655+20)}function f(k){const $=keycode(k.keyCode);($===KeyCode.KeyX||$===KeyCode.Escape)&&u(),($===KeyCode.Enter||$===KeyCode.KeyC||$===KeyCode.Space)&&!a.value&&l(o[r.value],r.value)}function m(k){const $=keycode(k.keyCode);a.value||($===KeyCode.DownArrow&&(r.value<o.length-1&&r.value++,c()),$===KeyCode.UpArrow&&(r.value>0&&r.value--,c()),($===KeyCode.LeftArrow||$===KeyCode.PageUp)&&(r.value<=4?r.value=0:r.value-=5,c()),($===KeyCode.RightArrow||$===KeyCode.PageDown)&&(r.value>=o.length-5?r.value=o.length-1:r.value+=5,c()))}return onMounted(async()=>{core.plugin.transition.value?await R(600):await R(50),document.addEventListener("keyup",f),document.addEventListener("keydown",m)}),onUnmounted(async()=>{document.removeEventListener("keyup",f),document.removeEventListener("keydown",m)}),(k,$)=>{const U=__unplugin_components_0;return openBlock(),createElementBlock(Fragment,null,[createBaseVNode("div",_hoisted_1$m,[createBaseVNode("div",_hoisted_2$j,[createBaseVNode("span",{id:"back",class:"button-text tools",onClick:u},[createVNode(unref(LeftOutlined)),createTextVNode("返回游戏")])]),unref(o).length===0?(openBlock(),createElementBlock("div",_hoisted_3$i,_hoisted_5$d)):(openBlock(),createBlock(Scroll,{key:1,style:{width:"100%",height:"94%","font-family":"normal"},now:n.value,"onUpdate:now":$[0]||($[0]=N=>n.value=N),drag:s.value,"onUpdate:drag":$[1]||($[1]=N=>s.value=N)},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(o),(N,D)=>(openBlock(),createElementBlock("div",_hoisted_6$c,[(openBlock(),createBlock(EnemyOne,{selected:D===r.value,enemy:N,key:D,onSelect:b=>l(N,D),onHover:b=>r.value=D},null,8,["selected","enemy","onSelect","onHover"])),createVNode(U,{dashed:"",style:{width:"100%","border-color":"#ddd4"}})]))),256))]),_:1},8,["now","drag"]))]),a.value?(openBlock(),createBlock(BookDetail,{key:0,"from-book":!0,onClose:$[2]||($[2]=N=>d())})):createCommentVNode("",!0)],64)}}}),book_vue_vue_type_style_index_0_scoped_15b558ce_lang="",Book=_export_sfc(_sfc_main$m,[["__scopeId","data-v-15b558ce"]]),clsMap={tools:"消耗道具",constants:"永久道具",all:"全部道具"};function getClsName(e){return clsMap[e]}function getItems(e){const t=core.status.hero.items,o=["book"];if(e==="all")return{tools:Object.entries(t.tools).filter(a=>!o.includes(a[0])),constants:Object.entries(t.constants).filter(a=>!o.includes(a[0]))};const n=t[e];return Object.entries(n)}const _withScopeId$6=e=>(pushScopeId("data-v-5e7b8682"),e=e(),popScopeId(),e),_hoisted_1$l={id:"toolbox"},_hoisted_2$i={id:"tools"},_hoisted_3$h={id:"toolbox-main"},_hoisted_4$e={class:"item-main"},_hoisted_5$c={class:"item-info"},_hoisted_6$b={key:0,class:"item-type"},_hoisted_7$a={key:1,id:"item-type-mobile"},_hoisted_8$9=["selected"],_hoisted_9$9=["selected"],_hoisted_10$9=["selected","onClick"],_hoisted_11$8={class:"item-icon"},_hoisted_12$6={class:"item-name"},_hoisted_13$6={id:"detail"},_hoisted_14$6={id:"info"},_hoisted_15$5={id:"basic-info"},_hoisted_16$5={style:{"border-bottom":"1px solid #ddd4"}},_hoisted_17$4=_withScopeId$6(()=>createBaseVNode("span",{style:{"margin-top":"2vh"}},"点击该物品以使用",-1)),_hoisted_18$4={id:"desc"},_hoisted_19$4=_withScopeId$6(()=>createBaseVNode("span",null,"道具描述",-1)),_hoisted_20$3={key:0},_hoisted_21$3=["innerHTML"],_sfc_main$l=defineComponent({__name:"toolbox",setup(e){var m,w;const t=ref("tools"),o=getItems("all"),n=computed(()=>isMobile?[t.value]:["tools","constants"]),s=core.material.items,a=ref((w=(m=o[n.value[0]][0])==null?void 0:m[0])!=null?w:"none"),r=ref(0);watch(r,g=>{h(o[t.value][g][0],!0)}),watch(t,g=>{if(!has(o[g][r.value])){a.value="none";return}h(o[g][r.value][0],!0)});const l=computed(()=>{const g=a.value;return g==="none"?ref("没有选择道具"):type(s[g].text,25,G("sin","out"),!0)});async function h(g,y=!1){a.value===g&&!y&&_(g),r.value=o[t.value].findIndex(k=>k[0]===g),a.value=g}function d(){core.plugin.toolOpened.value=!1}async function _(g){if(g!=="none")if(core.canUseItem(g)){const y=core.plugin.transition.value;core.plugin.transition.value=!1,d(),await R(50),core.useItem(g),core.plugin.transition.value=y}else message.warn({content:"当前无法使用该道具!",class:"antdv-message"})}async function u(){const g=core.plugin.transition.value;core.plugin.transition.value=!1,d(),await R(50),core.plugin.equipOpened.value=!0,core.plugin.transition.value=g}function c(g){const y=keycode(g.keyCode);(y===KeyCode.Escape||y===KeyCode.KeyX||y===KeyCode.KeyT)&&d(),(y===KeyCode.Enter||y===KeyCode.KeyC)&&_(a.value)}function f(g){const y=keycode(g.keyCode),k=o[t.value].length;if(y===KeyCode.DownArrow&&r.value<k-1&&r.value++,y===KeyCode.UpArrow&&r.value>0&&r.value--,y===KeyCode.RightArrow){const $=o.constants.length;t.value==="tools"&&(r.value>=$&&(r.value=$-1),t.value="constants")}if(y===KeyCode.LeftArrow){const $=o.tools.length;t.value==="constants"&&(r.value>=$&&(r.value=$-1),t.value="tools")}}return onMounted(async()=>{core.plugin.transition.value?await R(600):await R(50),document.addEventListener("keyup",c),document.addEventListener("keydown",f)}),onUnmounted(()=>{document.removeEventListener("keyup",c),document.removeEventListener("keydown",f)}),(g,y)=>{var $;const k=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$l,[createBaseVNode("div",_hoisted_2$i,[createBaseVNode("span",{class:"button-text tools",onClick:d},[createVNode(unref(LeftOutlined)),createTextVNode(" 返回游戏")]),createBaseVNode("span",{class:"button-text tools",onClick:u},[createTextVNode("装备栏 "),createVNode(unref(RightOutlined))])]),createBaseVNode("div",_hoisted_3$h,[(openBlock(!0),createElementBlock(Fragment,null,renderList(n.value,U=>(openBlock(),createElementBlock("div",_hoisted_4$e,[createBaseVNode("div",_hoisted_5$c,[unref(isMobile)?(openBlock(),createElementBlock("div",_hoisted_7$a,[createBaseVNode("span",{class:"button-text",onClick:y[0]||(y[0]=N=>t.value="tools"),selected:t.value==="tools"},"消耗道具",8,_hoisted_8$9),createVNode(k,{dashed:"",style:{"border-color":"#ddd4",height:"100%"},type:"vertical"}),createBaseVNode("span",{class:"button-text",onClick:y[1]||(y[1]=N=>t.value="constants"),selected:t.value==="constants"},"永久道具",8,_hoisted_9$9)])):(openBlock(),createElementBlock("div",_hoisted_6$b,toDisplayString(unref(getClsName)(U)),1)),createVNode(k,{dashed:"",style:{margin:"1vh 0 1vh 0","border-color":"#ddd4"}}),createVNode(Scroll,{class:"item-list"},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(o)[U],([N,D])=>(openBlock(),createElementBlock("div",{class:"item selectable",selected:a.value===N,onClick:b=>{t.value=U,h(N)}},[createBaseVNode("div",_hoisted_11$8,[createVNode(_sfc_main$t,{id:N,width:32,height:32,noborder:!0},null,8,["id"]),createBaseVNode("span",_hoisted_12$6,toDisplayString(unref(s)[N].name),1)]),createBaseVNode("span",null,"× "+toDisplayString(D),1)],8,_hoisted_10$9))),256))]),_:2},1024)]),createVNode(k,{dashed:"",type:unref(isMobile)?"horizontal":"vertical",class:"divider",style:{"border-color":"#ddd4",margin:"1%"}},null,8,["type"])]))),256)),createBaseVNode("div",_hoisted_13$6,[createBaseVNode("div",_hoisted_14$6,[createVNode(_sfc_main$t,{id:a.value,width:32,height:32},null,8,["id"]),createBaseVNode("div",_hoisted_15$5,[createBaseVNode("span",_hoisted_16$5,toDisplayString(a.value==="none"?"没有道具":unref(s)[a.value].name),1),createBaseVNode("span",null,toDisplayString(a.value==="none"?"永久道具":($=unref(getClsName)(unref(s)[a.value].cls))!=null?$:"永久道具"),1)])]),_hoisted_17$4,createVNode(k,{dashed:"",style:{"border-color":"#ddd4"}}),createBaseVNode("div",_hoisted_18$4,[_hoisted_19$4,createVNode(Scroll,{id:"desc-text"},{default:withCtx(()=>[l.value.value.startsWith("!!html")?(openBlock(),createElementBlock("div",{key:1,innerHTML:l.value.value.slice(6)},null,8,_hoisted_21$3)):(openBlock(),createElementBlock("div",_hoisted_20$3,toDisplayString(l.value.value),1))]),_:1})])])])])}}}),toolbox_vue_vue_type_style_index_0_scoped_5e7b8682_lang="",Toolbox=_export_sfc(_sfc_main$l,[["__scopeId","data-v-5e7b8682"]]),index$3="",index$2="";function getEquips(){return Object.entries(core.status.hero.items.equips)}function getAddStatus(e){const t=Object.assign({},e.value,e.percentage),o=Object.keys(t);return createVNode("div",{class:"equip-add-detail"},[o.map(n=>{var a,r;const s=Math.floor(((a=e.value[n])!=null?a:0)*core.getBuff(n)+core.status.hero[n]*((r=e.percentage[n])!=null?r:0)/100);return createVNode("span",{style:"display: flex"},[createVNode("span",{style:"flex-basis: 50%"},[core.getStatusLabel(n)]),createTextVNode("    "),createVNode("span",{style:{color:s>0?"lightgreen":"lightsalmon"}},[s>0?`+${s}`:s])])})])}function getNowStatus(e,t=!1){return createVNode("div",{id:"hero-status"},[["hp","lv","atk","def","mdef","mana","hpmax","money"].map(n=>{var r,l,h;let s;n==="lv"?s=(r=core.getLvName())!=null?r:"":s=(l=core.getRealStatus(n))==null?void 0:l.toString();let a=0;if(has(e)){a+=Math.floor(((h=e.value[n])!=null?h:0)*core.getBuff(n));const d=Math.floor(e.percentage[n]*core.getStatus(n)/100);a+=isNaN(d)?0:d}return t&&(a=-a),createVNode("div",{class:"hero-status-one"},[createVNode("span",{class:"hero-status-label"},[core.getStatusLabel(n)]),createVNode("div",{class:"hero-status-value"},[createVNode("span",{style:"margin-right: 20%"},[s]),a!==0&&createVNode("span",{style:{color:a>0?"lightgreen":"lightsalmon"}},[a>0?"+"+a:"-"+-a])])])})])}const _hoisted_1$k={id:"equipbox"},_hoisted_2$h={id:"tools"},_hoisted_3$g={id:"equipbox-main"},_hoisted_4$d={id:"equip-list"},_hoisted_5$b={id:"filter"},_hoisted_6$a={key:0},_hoisted_7$9={key:1},_hoisted_8$8=["selected","onMousedown","onTouchstart","onClick"],_hoisted_9$8={class:"equip-icon"},_hoisted_10$8={class:"equip-name"},_hoisted_11$7={id:"equip-status"},_hoisted_12$5={id:"equip-status-main"},_hoisted_13$5={id:"equip-now"},_hoisted_14$5={id:"equip-now-div"},_hoisted_15$4=["draged","access","selected","onMouseenter","onClick"],_hoisted_16$4={key:0,id:"equip-hero"},_hoisted_17$3={id:"hero-icon"},_hoisted_18$3={id:"hero-status"},_hoisted_19$3={id:"equip-desc"},_hoisted_20$2={id:"equip-icon"},_hoisted_21$2={id:"equip-type"},_hoisted_22$2={id:"equip-add"},_hoisted_23$2={id:"equip-desc-text"},_hoisted_24$2={key:0},_hoisted_25$1=["innerHTML"],_hoisted_26$1={id:"icon-drag"},_sfc_main$k=defineComponent({__name:"equipbox",setup(e){const t=ref(getEquips()),o=ref("all"),n=core.material.items,s=ref(0),a=ref(!1),r=core.status.globalAttribute.equipName,l=ref(core.status.hero.equipment),h=ref(!1),d=ref(!1),_=ref(-1),u=ref("down"),c=ref("none"),f=ref("value"),m=["none","atk","def","hpmax","mana"],w=core.getStatusLabel;watch(u,P=>{s.value=U.value.length-s.value-1}),watch(c,P=>{s.value=0}),watch(f,P=>{s.value=0});const g=computed(()=>{const P=U.value[s.value],T={name:"没有选择装备",cls:"equip",text:"没有选择装备",equip:{type:"无",value:{},percentage:{},animate:""}};if(a.value){const J=l.value[s.value],te=core.material.items[J];return has(te)?te:T}return has(P)?n[P[0]]:T}),y=computed(()=>getAddStatus(g.value.equip,a.value)),k=computed(()=>g.value.text.startsWith("!!html")?ref(g.value.text):type(g.value.text,25,G("sin","out"),!0)),$=computed(()=>getNowStatus(g.value.equip,a.value)),U=computed(()=>{const P=u.value,T=c.value,J=f.value,te=t.value.filter(se=>{const re=n[se[0]].equip,Q=re.type;return T!=="none"&&!has(re[J][T])?!1:o.value==="all"?!0:typeof Q=="string"?Q===o.value:core.status.globalAttribute.equipName[Q]===o.value});return T==="none"?te:P==="down"?te.sort((se,re)=>{const Q=n[se[0]].equip,ce=n[re[0]].equip;return Q[J][T]-ce[J][T]}):te.sort((se,re)=>{const Q=n[se[0]].equip;return n[re[0]].equip[J][T]-Q[J][T]})});function N(){u.value==="down"?u.value="up":u.value="down"}function D(){core.plugin.equipOpened.value=!1}function b(P){var T;if(P===s.value&&h.value){const J=(T=U.value[s.value])==null?void 0:T[0];if(!core.canEquip(J)){tip$1("warn","无法装备!");return}core.loadEquip(J),E(),h.value=!1}h.value=!0}function S(P,T=!1){P!==s.value&&!T&&(h.value=!1),T&&(h.value=!1),T&&a.value===T&&s.value===P&&(core.unloadEquip(P),E()),a.value=T,s.value=P}function L(P){var J,te;if(P<0)return!1;const T=(J=g.value.equip)==null?void 0:J.type;return!core.canEquip((te=U.value[s.value])==null?void 0:te[0])||!has(T)?!1:typeof T=="number"?P===T:r[P]===T}function F(){var te;const P=_.value;if(P<0)return;if(!L(P)){tip$1("warn","无法装备!");return}const T=l.value[P],J=(te=U.value[s.value])==null?void 0:te[0];core.items._realLoadEquip(P,J,T),E()}function E(){l.value=core.status.hero.equipment,t.value=getEquips(),requestAnimationFrame(()=>{z()})}function z(){const P=Array.from(document.querySelectorAll(".equip"));useDrag(P,M,(T,J)=>{ee=T,ne=J},()=>{d.value&&(d.value=!1,F())},!0)}let[ee,ne]=[0,0];function M(P,T,J){if((P-ee)**2+(T-ne)**2>10**2&&!d.value&&(d.value=!0),d.value){const te=document.getElementById("icon-drag");te.style.left=`${P-24}px`,te.style.top=`${T-24}px`}}function Z(P,T){P.stopPropagation(),_.value=T}function W(P){P.stopPropagation(),_.value=-1}async function oe(){const P=core.plugin.transition.value;core.plugin.transition.value=!1,D(),await R(50),core.plugin.toolOpened.value=!0,core.plugin.transition.value=P}function le(P){const T=keycode(P.keyCode);if((T===KeyCode.KeyQ||T===KeyCode.KeyX||T===KeyCode.Escape)&&D(),P.altKey){const J=P.keyCode-48;core.quickSaveEquip(J),tip$1("success",`已保存至${J}号套装`)}}return watch(U,P=>{z()}),onMounted(async()=>{z(),core.plugin.transition.value?await R(600):await R(50),document.addEventListener("keyup",le)}),onUnmounted(()=>{cancelGlobalDrag(M),document.removeEventListener("keyup",le)}),(P,T)=>{var re,Q,ce,_e,me,ue;const J=SelectOption,te=__unplugin_components_1,se=__unplugin_components_0;return openBlock(),createElementBlock(Fragment,null,[createBaseVNode("div",_hoisted_1$k,[createBaseVNode("div",_hoisted_2$h,[createBaseVNode("span",{class:"button-text tools",onClick:D},[createVNode(unref(LeftOutlined)),createTextVNode(" 返回游戏")]),createBaseVNode("span",{class:"button-text tools",onClick:oe},[createTextVNode("道具栏 "),createVNode(unref(RightOutlined))])]),createBaseVNode("div",_hoisted_3$g,[createBaseVNode("div",_hoisted_4$d,[createBaseVNode("div",_hoisted_5$b,[createVNode(te,{value:c.value,"onUpdate:value":T[0]||(T[0]=ie=>c.value=ie),class:"select"},{default:withCtx(()=>[(openBlock(),createElementBlock(Fragment,null,renderList(m,ie=>createVNode(J,{value:ie},{default:withCtx(()=>[createTextVNode(toDisplayString(ie==="none"?"所有":unref(w)(ie)),1)]),_:2},1032,["value"])),64))]),_:1},8,["value"]),createVNode(se,{type:"vertical",class:"divider"}),createVNode(te,{value:f.value,"onUpdate:value":T[1]||(T[1]=ie=>f.value=ie),class:"select"},{default:withCtx(()=>[createVNode(J,{value:"value"},{default:withCtx(()=>[createTextVNode("数值")]),_:1}),createVNode(J,{value:"percentage"},{default:withCtx(()=>[createTextVNode("百分比")]),_:1})]),_:1},8,["value"]),createVNode(se,{type:"vertical",class:"divider"}),createBaseVNode("span",{onClick:T[2]||(T[2]=ie=>N()),class:"button-text",id:"sort-type"},[u.value==="down"?(openBlock(),createElementBlock("span",_hoisted_6$a,[createVNode(unref(SortAscendingOutlined))])):(openBlock(),createElementBlock("span",_hoisted_7$9,[createVNode(unref(SortDescendingOutlined))]))])]),createVNode(se,{dashed:"",style:{"border-color":"#ddd4",margin:"1vh 0 1vh 0"}}),createVNode(Scroll,{id:"equip-scroll"},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(U.value,([ie,pe],he)=>(openBlock(),createElementBlock("div",{class:"equip selectable",selected:s.value===he&&!a.value,onMousedown:ge=>S(he),onTouchstart:ge=>S(he),onClick:ge=>b(he)},[createBaseVNode("div",_hoisted_9$8,[createVNode(_sfc_main$t,{id:ie!=null?ie:"none",width:32,height:32,noborder:!0},null,8,["id"]),createBaseVNode("span",_hoisted_10$8,toDisplayString(unref(n)[ie].name),1)]),createBaseVNode("span",null,"× "+toDisplayString(pe),1)],40,_hoisted_8$8))),256))]),_:1})]),createBaseVNode("div",_hoisted_11$7,[createVNode(se,{class:"divider",type:unref(isMobile)?"horizontal":"vertical",dashed:"",style:{"border-color":"#ddd4"}},null,8,["type"]),createBaseVNode("div",_hoisted_12$5,[createBaseVNode("div",_hoisted_13$5,[createVNode(Scroll,{style:normalizeStyle({height:unref(isMobile)?"10vh":"30vh"})},{default:withCtx(()=>[createBaseVNode("div",_hoisted_14$5,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(r),(ie,pe)=>{var he;return openBlock(),createElementBlock("div",{class:"equip-now-one draginable selectable",draged:d.value,access:L(pe),selected:a.value&&s.value===pe,onMouseenter:ge=>Z(ge,pe),onMouseleave:W,onClick:ge=>S(pe,!0)},[createVNode(_sfc_main$t,{id:(he=l.value[pe])!=null?he:"none"},null,8,["id"]),createBaseVNode("span",null,toDisplayString(ie),1)],40,_hoisted_15$4)}),256))])]),_:1},8,["style"])]),createVNode(se,{dashed:"",style:{"border-color":"#ddd4",margin:"1vh 0 1vh 0"}}),unref(isMobile)?createCommentVNode("",!0):(openBlock(),createElementBlock("div",_hoisted_16$4,[createBaseVNode("div",_hoisted_17$3,[createVNode(_sfc_main$t,{id:"hero",width:48,height:64,noborder:""})]),createBaseVNode("div",_hoisted_18$3,[(openBlock(),createBlock(resolveDynamicComponent($.value)))])]))]),unref(isMobile)?createCommentVNode("",!0):(openBlock(),createBlock(se,{key:0,class:"divider",type:"vertical",dashed:"",style:{"border-color":"#ddd4"}}))]),createBaseVNode("div",_hoisted_19$3,[createBaseVNode("div",_hoisted_20$2,[createVNode(_sfc_main$t,{id:a.value?(re=l.value[s.value])!=null?re:"none":(ce=(Q=U.value[s.value])==null?void 0:Q[0])!=null?ce:"none"},null,8,["id"]),createBaseVNode("span",null,toDisplayString(g.value.name),1)]),createBaseVNode("div",_hoisted_21$2,[createBaseVNode("span",null,"装备孔:"+toDisplayString((_e=g.value.equip)==null?void 0:_e.type),1)]),createVNode(se,{dashed:"",style:{"border-color":"#ddd4",margin:"1vh 0 1vh 0"}}),createBaseVNode("div",_hoisted_22$2,[createBaseVNode("span",{style:normalizeStyle({"font-size":unref(isMobile)?"3.8vw":"3vh"}),id:"title"},"增减属性",4),createVNode(Scroll,{style:{width:"100%",height:"100%"}},{default:withCtx(()=>[(openBlock(),createBlock(resolveDynamicComponent(y.value)))]),_:1})]),createVNode(se,{dashed:"",style:{"border-color":"#ddd4",margin:"1vh 0 1vh 0"}}),createBaseVNode("div",_hoisted_23$2,[createBaseVNode("span",{style:normalizeStyle({"font-size":unref(isMobile)?"3.8vw":"3vh"}),id:"title"},"装备介绍",4),createVNode(Scroll,{id:"desc-text",style:{height:"100%",width:"100%"}},{default:withCtx(()=>[k.value.value.startsWith("!!html")?(openBlock(),createElementBlock("div",{key:1,innerHTML:k.value.value.slice(6)},null,8,_hoisted_25$1)):(openBlock(),createElementBlock("div",_hoisted_24$2,toDisplayString(k.value.value),1))]),_:1})])])])]),createBaseVNode("div",_hoisted_26$1,[d.value?(openBlock(),createBlock(_sfc_main$t,{key:0,class:"drag-icon",id:(ue=(me=U.value[s.value])==null?void 0:me[0])!=null?ue:"none",width:48,height:48,noborder:""},null,8,["id"])):createCommentVNode("",!0)])],64)}}}),equipbox_vue_vue_type_style_index_0_scoped_69468f29_lang="",Equipbox=_export_sfc(_sfc_main$k,[["__scopeId","data-v-69468f29"]]),transition$2=ref(!1),itemDetail$1=ref(!0),autoSkill$1=ref(!0),autoScale$1=ref(!0),showHalo$1=ref(!0),showStudied$1=ref(!0),useFixed$1=ref(!0),autoLocate$1=ref(!0),antiAliasing$1=ref(!0),fullscreen$1=ref(!1);watch(transition$2,e=>{core.plugin.transition.value=e,core.setLocalStorage("transition",e)});watch(itemDetail$1,e=>{flags.itemDetail=e,core.updateStatusBar()});watch(autoSkill$1,e=>{flags.autoSkill=e,core.updateStatusBar(),core.status.route.push(`set:autoSkill:${e}`)});watch(autoScale$1,e=>{core.setLocalStorage("autoScale",e)});watch(showStudied$1,e=>{core.setLocalStorage("showStudied",e)});watch(showHalo$1,e=>{core.setLocalStorage("showHalo",e)});watch(useFixed$1,e=>{core.setLocalStorage("useFixed",e)});watch(autoLocate$1,e=>{flags.autoLocate=e,core.updateStatusBar(),core.status.route.push(`set:autoLocate:${e}`)});watch(antiAliasing$1,e=>{core.setLocalStorage("antiAliasing",e);for(const t of core.dom.gameCanvas)core.domStyle.hdCanvas.includes(t.id)||(e?t.classList.remove("no-anti-aliasing"):t.classList.add("no-anti-aliasing"))});function reset(){const e=core.getLocalStorage("transition",!1);transition$2.value=e,core.plugin.transition.value=transition$2.value,autoScale$1.value=core.getLocalStorage("autoScale",!0),showStudied$1.value=core.getLocalStorage("showStudied",!0),showHalo$1.value=core.getLocalStorage("showHalo",!0),antiAliasing$1.value=core.getLocalStorage("antiAliasing",!1),fullscreen$1.value=!!document.fullscreenElement}function resetFlag(){var e,t,o;(e=flags.autoSkill)!=null||(flags.autoSkill=!0),(t=flags.itemDetail)!=null||(flags.itemDetail=!0),(o=flags.autoLocate)!=null||(flags.autoLocate=!0),itemDetail$1.value=!!flags.itemDetail,autoSkill$1.value=!!flags.autoSkill,autoLocate$1.value=!!flags.autoLocate}async function triggerFullscreen(){const{maxGameScale:e}=core.plugin.utils;document.fullscreenElement?(await document.exitFullscreen(),requestAnimationFrame(()=>{e(1)}),fullscreen$1.value=!1):(await document.body.requestFullscreen(),requestAnimationFrame(()=>{e()}),fullscreen$1.value=!0)}function init$f(){return{resetSettings:reset,resetFlagSettings:resetFlag}}const fullscreen={text:"全屏游戏",desc:["是否全屏进行游戏全屏后按ESC退出全屏不能开启系统设置菜单请按下方的按钮打开。","进入或退出全屏后请存读档一下,以解决一部分绘制问题。"]},transition$1={text:"界面动画",desc:["是否展示当一个ui界面如怪物手册等的打开与关闭时的动画。当此项开启时","所有界面被打开或关闭时都会展示动画,否则会直接展示出来"]},itemDetail={text:"宝石血瓶显伤",desc:["是否在地图上显示宝石血瓶装备等增加的属性值"]},autoSkill={text:"自动切换技能",desc:["开启后,打怪物的时候会自动选择伤害最低的技能。同时显伤也会显示此状态下的伤害,","临界也会考虑技能在内"]},autoScale={text:"自动放缩",desc:["开启后,每次进入游戏时会自动缩放游戏画面至合适值。该项只对电脑端有效。","<br>","<br>","缩放原则如下:","<br>","1. 首先尝试缩放至最大缩放比例","<br>","2. 如果缩放后游戏画面高度高于页面高度的95%,那么缩小一个缩放比例,否则保持最大比例"]},showHalo={text:"展示范围光环",desc:["开启后,会在地图上显示范围光环。"]},useFixed={text:"移动鼠标显示怪物信息",desc:["开启后,当鼠标移动到怪物上时,会以盒子的形式展示该点的怪物信息。手机端此功能无效。","<br>","<br>","注当鼠标移动到怪物上时经过200毫秒才会显示信息防止误操作。"]},autoLocate={text:"自动勇士定位",desc:["此项会在进入第二章后会起作用。开启后,当勇士处于不同位置打同一个怪物伤害不同时,在地图上使用绿色箭头标出伤害最低的位置,","其余方向,伤害越高,箭头颜色越红,同时在自动寻路中选择可以到达的伤害最低的位置。","<br>","<br>","注:如果出现明显卡顿现象可以考虑关闭本设置或自动切换技能设置。"]},antiAliasing={text:"抗锯齿",desc:["是否开启抗锯齿。开启后,画面会变得不那么锐利,观感更加舒适;关闭后,可以更好地展现出像素感,同时部分像素错误也不会出现。"]},showStudied={text:"展示已学习技能",desc:["开启后,会在画面内以类似状态栏的盒子的形式显示当前已学习的怪物技能。"]},betterLoad={text:"优化加载",desc:["开启后游戏将对加载进行优化,缩短进入游戏时的加载时长,而在游戏中对资源进行部分性按需加载,从而对加载进行优化。","该设置不会影响你的正常游戏,但如果网络环境较差,可能会导致楼层转换时间明显变长。","<br>","<br>","注:修改后刷新页面起效。"]},settingInfo={fullscreen,transition:transition$1,itemDetail,autoSkill,autoScale,showHalo,useFixed,autoLocate,antiAliasing,showStudied,betterLoad},_hoisted_1$j={class:"colomn"},_hoisted_2$g={class:"tools"},_hoisted_3$f=["id"],_sfc_main$j=defineComponent({__name:"colomn",props:{width:{},height:{},left:{},right:{}},emits:["close"],setup(e,{emit:t}){const o=e,n=(1e8*Math.random()).toFixed(0);let s,a,r;function l(){s=document.getElementById(`column-${n}`),a=document.getElementById(`column-left-${n}`),r=document.getElementById(`column-right-${n}`),has(o.width)&&!isMobile&&(s.style.width=`${o.width}%`),has(o.height)&&(s.style.height=`${o.height}%`),has(o.left)&&(a.style.flexBasis=`${o.left}%`),has(o.right)&&(r.style.flexBasis=`${o.right}%`)}function h(d){const _=keycode(d.keyCode);(_===KeyCode.Escape||_===KeyCode.KeyX)&&t("close")}return onMounted(async()=>{l(),await R(50),core.plugin.transition.value&&await R(600),document.addEventListener("keyup",h)}),onUpdated(l),onUnmounted(()=>{document.removeEventListener("keyup",h)}),(d,_)=>{const u=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$j,[createBaseVNode("div",_hoisted_2$g,[createBaseVNode("span",{class:"button-text",onClick:_[0]||(_[0]=c=>t("close"))},[createVNode(unref(LeftOutlined)),createTextVNode(" 返回游戏")])]),createBaseVNode("div",{class:"column-main",id:`column-${unref(n)}`},[createVNode(Scroll,{class:"column-left",id:`column-left-${unref(n)}`},{default:withCtx(()=>[renderSlot(d.$slots,"left",{},void 0,!0)]),_:3},8,["id"]),createVNode(u,{class:"divider",dashed:"",style:{"border-color":"#ddd4"},type:unref(isMobile)?"horizontal":"vertical"},null,8,["type"]),createVNode(Scroll,{class:"column-right",id:`column-right-${unref(n)}`},{default:withCtx(()=>[renderSlot(d.$slots,"right",{},void 0,!0)]),_:3},8,["id"])],8,_hoisted_3$f)])}}}),colomn_vue_vue_type_style_index_0_scoped_682173f1_lang="",Colomn=_export_sfc(_sfc_main$j,[["__scopeId","data-v-682173f1"]]),_hoisted_1$i={id:"setting-list"},_hoisted_2$f=["selected"],_hoisted_3$e=["selected"],_hoisted_4$c=["selected"],_hoisted_5$a=["selected"],_hoisted_6$9=["selected"],_hoisted_7$8=["selected"],_hoisted_8$7=["selected"],_hoisted_9$7=["selected"],_hoisted_10$7=["innerHTML"],_sfc_main$i=defineComponent({__name:"settings",setup(e){const t=window.core,o=ref("fullscreen");fullscreen$1.value=!!document.fullscreenElement;const n=computed(()=>splitText(settingInfo[o.value].desc)),s={transition:transition$2,itemDetail:itemDetail$1,autoSkill:autoSkill$1,autoScale:autoScale$1,showHalo:showHalo$1,showStudied:showStudied$1,useFixed:useFixed$1,autoLocate:autoLocate$1,antiAliasing:antiAliasing$1,fullscreen:fullscreen$1,betterLoad:ref(!1)},a=["fullscreen"];function r(){t.plugin.settingsOpened.value=!1}function l(h){if(o.value!==h){o.value=h;return}a.includes(h)?h==="fullscreen"&&triggerFullscreen():(s[h].value=!s[h].value,h==="autoSkill"&&t.status.route.push(`set:autoSkill:${s.autoSkill.value}`))}return(h,d)=>(openBlock(),createBlock(Colomn,{width:60,height:60,onClose:r},{left:withCtx(()=>[createBaseVNode("div",_hoisted_1$i,[createBaseVNode("span",{class:"selectable",selected:o.value==="fullscreen",onClick:d[0]||(d[0]=_=>l("fullscreen"))},"全屏游戏:   "+toDisplayString(unref(fullscreen$1)?"ON":"OFF"),9,_hoisted_2$f),createBaseVNode("span",{class:"selectable",selected:o.value==="transition",onClick:d[1]||(d[1]=_=>l("transition"))},"界面动画:   "+toDisplayString(unref(transition$2)?"ON":"OFF"),9,_hoisted_3$e),createBaseVNode("span",{class:"selectable",selected:o.value==="itemDetail",onClick:d[2]||(d[2]=_=>l("itemDetail"))},"宝石血瓶显伤:   "+toDisplayString(unref(itemDetail$1)?"ON":"OFF"),9,_hoisted_4$c),createBaseVNode("span",{class:"selectable",selected:o.value==="autoSkill",onClick:d[3]||(d[3]=_=>l("autoSkill"))},"自动切换技能:   "+toDisplayString(unref(autoSkill$1)?"ON":"OFF"),9,_hoisted_5$a),createBaseVNode("span",{class:"selectable",selected:o.value==="autoScale",onClick:d[4]||(d[4]=_=>l("autoScale"))},"自动放缩:   "+toDisplayString(unref(autoScale$1)?"ON":"OFF"),9,_hoisted_6$9),createBaseVNode("span",{class:"selectable",selected:o.value==="showHalo",onClick:d[5]||(d[5]=_=>l("showHalo"))},"展示范围光环:   "+toDisplayString(unref(showHalo$1)?"ON":"OFF"),9,_hoisted_7$8),createBaseVNode("span",{class:"selectable",selected:o.value==="useFixed",onClick:d[6]||(d[6]=_=>l("useFixed"))},"移动鼠标显示怪物信息:   "+toDisplayString(unref(useFixed$1)?"ON":"OFF"),9,_hoisted_8$7),createBaseVNode("span",{class:"selectable",selected:o.value==="antiAliasing",onClick:d[7]||(d[7]=_=>l("antiAliasing"))},"抗锯齿:   "+toDisplayString(unref(antiAliasing$1)?"ON":"OFF"),9,_hoisted_9$7)])]),right:withCtx(()=>[createBaseVNode("span",{innerHTML:n.value},null,8,_hoisted_10$7)]),_:1}))}}),settings_vue_vue_type_style_index_0_scoped_d55db060_lang="",Settings=_export_sfc(_sfc_main$i,[["__scopeId","data-v-d55db060"]]),tip={text:"注意事项",condition:"true",desc:["这里显示本塔中需要注意的事项。","<br>","<br>",'1. <span style="color: yellow; font-weight: 700">',"本百科全书字数很多,可以选择性地阅读。</span>不过本条目最好可以全部阅读一遍。","<br>","<br>",'2. 本百科全书的内容会<span style="color: gold">随着游戏的推进而增加新内容</span>',"同时每次增加新内容时都会有提示。","<br>","<br>",'3. <span style="color: gold">背包中的系统设置同样非常重要,有些问题可以在那里找到原因</span>。',"例如当你获得技能时可能会发现开启不了技能,",'就是因为你打开了<span style="color: gold">自动切换技能</span>的功能,在系统设置里面有说。',"<br>","<br>",'4. <span style="color: yellow; font-weight: 700">重要!!!</span>本塔没有考虑录像的二次播放性,',"这意味着如果你从头播放一个录像,播放完成后继续游玩,提交成绩后不能保证绿录像,请谨慎考虑。","<br>","<br>",'5. 本塔中<span style="color: gold">几乎所有 ui 都可以纵向滚动</span>,如果发现显示不全,',"可以尝试上下拖动,就像浏览网页一样。电脑端还可以使用滚轮上下滚动。","大部分可以纵向滚动的 ui 都会在右方有一个滚动条,也可以拖动它进行滚动,例如本百科全书的条目列表和","条目说明都是可以通过上述方式滚动的。","<br>","<br>","6. 本塔主要面向电脑端设计,",'<span style="color: gold">建议使用电脑游玩以获得更好的游戏体验同时使用约16:9的比例游玩更加合适',"</span>。但是手机依然可以游玩本塔,","但部分操作可能不是很方便ui 也可能不是很美观,不过依然可以完整体验本游戏。","<br>","<br>",'7. 对于手机端,可以点击<span style="color: gold">右下角的难度文字</span>来切换工具栏至数字键。',"这样,你可以更加方便地进行使用技能等操作。","<br>","<br>","8. 本塔中几乎所有 ui 在打开时都会有一个0.6s的动画,如果不想要,可以在开头捡的系统设置里面关闭(默认关闭)。","同时,几乎所有 ui 的退出按钮都在左上角。","<br>","<br>",'9. 地图上显示的怪物临界有可能不准,当其与折线图有差异时,<span style="color: gold">请以折线图为准</span>。']},about={text:"关于游戏",condition:"true",desc:["使用样板Vite 魔塔样板","<br>","样板版本V2.10.0","<br>","游戏版本V1.0.0-alpha","<br>","游戏作者:古祠","<br>",'游戏开源地址:<a href="https://github.com/unanmed/HumanBreak" target="_blank">',"https://github.com/unanmed/HumanBreak</a>","<br>",'本塔遵循MIT开源协议。<a href="LICENSE" target="_blank">查看开源协议</a>',"<br>","音乐来源:网易云音乐等","<br>","素材来源:大素材库、爱给网、网站素材库等","<br>",'<span style="color: gold">特别说明:素材与音乐均来自网络,不得用于商业用途,仅用于参考与学习</span>',"<br>","特别鸣谢(排名不分先后):","<br>","1. 无名甲烷菌(提供部分特殊属性与机制想法)","<br>","测试(排名不分先后):","<br>","1. 永葆一颗童心","<br>","2. 影法师","<br>","3. 夜战天明889","<br>","4. 霸道的老鼠"]},tutorial={text:"新手教程",condition:"true",desc:["本条目是魔塔游戏的新手教程,如果对魔塔有一定的了解,可以直接忽略。","<br>","<br>",'魔塔是一种固定数值rpg游戏在打怪的时候遵循<span style="color: gold">我打你一下,你打我一下</span>',"的原则,造成的伤害是己方攻击减去对方防御,最后怪物的伤害便是你在战斗中失去的生命值。当然,为了游戏体验,","战斗过程会被省略。","<br>","<br>","宝石可以增加你的属性,在大部分魔塔中,红宝石增加攻击,蓝宝石增加防御,本塔也不例外。血瓶可以增加你的生命值。",'一般情况下,拾取宝物的优先级是<span style="color: gold">红宝石 &gt; 蓝宝石 &gt; 血瓶</span>',"但部分情况可能不是这样,这需要你自己的游玩经验等。","<br>","<br>","本塔还拥有升级机制,升级时能够给你增加大量的属性,因此,一般情况下当你接近升级时,需要尽快打怪升级。","<br>","<br>","然后是门。在魔塔中,很多门都不是必开的门,它们的作用一般是可以躲开怪物拿宝石,或者门里面有血瓶等。","当你血量足够时,这些门可以不用开,不然可能会有必开的门无法开启导致卡关。对于钥匙,每种颜色的钥匙开对应颜色的门,",'价值是<span style="color: gold">红 &gt; 蓝 &gt; 黄</span>。',"<br>","<br>","为了更加方便,本塔增加了宝石血瓶显示数据的功能,这样你可以清晰地知道每个宝石增加了多少属性。","<br>","<br>","下面是勇士基础属性的说明:","<br>",'<span style="color: lightgreen">1. 生命值</span>',"勇士的血量,当它归零时,游戏结束","<br>",'<span style="color: lightcoral">2. 攻击</span>',"勇士的攻击,攻击越高,每回合对怪物造成的伤害越高","<br>",'<span style="color: lightblue">3. 防御</span>',"勇士的防御,防御越高,怪物每回合对你造成的伤害越低","<br>",'<span style="color: green">4. 经验</span>',"勇士的经验,到达一定值后会升级。本塔在状态栏中显示为距离升级剩余的经验","<br>",'<span style="color: gold">5. 金币</span>',"勇士的金币,可以用于购买物品。本塔中在进入第二章后会有用","<br>",'<span style="color: lightgreen">6. 护盾</span>',"勇士的护盾,用处是能够在战后减少同等数值的伤害,在本塔中可以使伤害变为负值。本塔中,在点开无上之盾技能后,","智慧会充当护盾。更多信息可以查看“勇士属性”条目。"]},noun={text:"名词解释",condition:"true",desc:["本条目会解释诸如临界等魔塔术语,对魔塔有一定了解的可以直接忽略。","<br>","<br>",'<span style="color: lightcoral">1. 临界</span>',"在魔塔中,临界是一个非常重要的东西。首先,我们很容易可以得到,吃攻击时只有当减少了战斗回合数时怪物的伤害会减少,",'那么,吃攻击时怪物的减伤是不连续的。而<span style="color: gold">距离下一次减少怪物的伤害需要加的攻击的量</span>',"便是临界。当我们吃一个攻击恰好使怪物伤害减少时,称为“踩临界”。一般情况下,踩临界的减伤要比吃防御要高,","因此,当能踩到临界时,我们应当先踩临界,再吃防御。","<br>","<br>",'<span style="color: lightblue">2. 加防</span>',"加防指的是加防对怪物的减伤。在本塔中会以“n防”的形式显示在怪物手册或其他地方。在本塔中一般你不需要刻意计算",'临界与加防减伤,你可以在怪物手册中<span style="color: gold">查看减伤折线图</span>',"更多信息请查看“怪物手册”条目。","<br>","<br>",'<span style="color: gold">3. 咸鱼</span>',"一般来讲,开不必开的门,或者使用不必使用的道具被称为咸鱼,或者是咸门,咸道具。一般情况下,说“咸”便是指咸鱼。","一般情况下,门后面有宝石且无法通过其他方式进入的都是必开门,而只有血瓶的都是咸鱼门。"]},shortcut={text:"快捷键",condition:"true",desc:["这里包含本塔中所有的快捷键。对于手机端,可以点击工具栏的难度的位置切换工具栏至数字键。","下面会分为样板快捷键和本塔快捷键两类分别说明。可以ctrl+F进行搜索快捷键的功能。","<br>","<br>","下面是样板中的所有快捷键:","<br>",'<span style="color: gold">X</span>:打开怪物手册',"<br>",'<span style="color: gold">S</span>:打开存档界面',"<br>",'<span style="color: gold">D</span>:打开读档界面',"<br>",'<span style="color: gold">A或5</span>:读取自动存档',"<br>",'<span style="color: gold">W或6</span>:撤销读取的自动存档',"<br>",'<span style="color: gold">Q</span>:打开装备栏',"<br>",'<span style="color: gold">T</span>:打开道具栏',"<br>",'<span style="color: gold">G</span>:打开楼层传送器',"<br>",'<span style="color: gold">Z或单击勇士</span>:勇士转向',"<br>",'<span style="color: gold">空格或双击勇士或7</span>:轻按(拾取勇士周围的宝物但不移动勇士)',"<br>",'<span style="color: gold">Esc</span>:打开游戏菜单',"<br>",'<span style="color: gold">R</span>:打开录像回放菜单',"<br>",'<span style="color: gold">N</span>:询问是否返回游戏主菜单',"<br>",'<span style="color: gold">V</span>:打开快捷商店',"<br>",'<span style="color: gold">B</span>:打开数据统计界面',"<br>",'<span style="color: gold">Alt + 数字键</span>:快速换装',"<br>",'<span style="color: gold">PgUp或PgDn</span>:浏览地图',"<br>",'<span style="color: gold">P</span>:打开评论区',"<br>","<br>","下面是本塔中新增的快捷键(不包括技能,技能快捷键请在查看技能界面中查看):","<br>",'<span style="color: gold">M</span>:快速标记怪物',"<br>",'<span style="color: gold">J</span>:打开技能树',"<br>",'<span style="color: gold">H</span>:打开百科全书',"<br>",'<span style="color: gold">E</span>:查看鼠标位置怪物的特殊属性信息',"<br>",'<span style="color: gold">C</span>:查看鼠标位置怪物的详细临界信息']},extraAttr={text:"勇士属性",condition:"true",desc:["这里只对本塔中新增的勇士属性进行说明。","<br>","<br>",'<span style="color: lightblue">1. 智慧</span>',"智慧是该塔的核心属性之一。智慧可用于智慧加点,该功能会在进入第一章后开启。使用智慧可以点技能树。","除此之外,智慧也有其它功能。例如点开无上之盾技能后智慧还可以充当护盾,第二章点开学习技能后可以使用智慧学习怪物技能等。","<br>","<br>",'<span style="color: lightgreen">2. 生命回复</span>',"生命回复指的是勇士每回合回复的生命值。当与怪物战斗时,勇士每回合都会回复对应量的生命值。因此,当吃攻击时,","与怪物战斗的回合数可能会减少,导致生命回复的总回复量减少。不过大部分情况下不需要在意这一点,","减少一回合并不会对吸的血造成很大的影响,除了一些特殊情况。","该项会显示在状态栏的生命值右方偏下的位置。","<br>","<br>",'<span style="color: lightcoral">3. 额外攻击</span>',"额外攻击指的是勇士每回合的额外造成的伤害。一般情况下,当勇士破了怪物的防御时,该项便会起作用。","额外攻击相当于魔攻,无法通过一般方式减免。当勇士攻击怪物时,每回合都会附加对应量的伤害,对坚固怪同样有效。","额外攻击会显示在状态栏的攻击右方偏下的位置。"]},statusBar={text:"状态栏",condition:"true",desc:['在本塔中,状态栏与游戏画面是分开的。<span style="color: gold">你可以自由拖动状态栏,也可以修改其大小</span>。',"具体方法如下:点击一下状态栏之后,左上角的拖拽图标会放大,此时你可以按住它拖动状态栏。","你可以直接将鼠标放到状态栏的边框上,然后直接拖动以改变状态栏的大小。手机端可以先点击一下状态栏使边框","变宽,然后拖动。电脑端点击状态栏也可以使边框变宽。如果你想折叠状态栏,完全可以拖动状态栏的下边框,","然后直接拖动至上方,这时状态栏便会变成一条线,相当于折叠了状态栏","<br>","<br>",'<span style="color: gold">状态栏可以纵向滚动</span>',"如果你发现状态栏显示不全,可以尝试拉大状态栏,或者纵向拖动状态栏,就像网页上下滚动一样。","电脑端还可以使用滚轮上下滚动。","<br>","<br>","如果你觉得状态栏有些碍事,你完全可以将其缩小,或者把它放到不碍事的地方。","<br>","<br>","状态栏上面可能会有按钮,你可以直接点击。","<br>","<br>","对状态栏布局的说明。","<br>","本塔的状态栏的布局较为灵活。它是横向的布局,在状态栏较宽时可以看到,属性会横向依次显示。按照显示顺序,","状态栏显示项依次为:","<br>","<br>",'1. <span style="color: gold">楼层名</span>,点击后进入浏览地图界面',"<br>",'2. <span style="color: gold">勇士等级</span>',"<br>",'3. <span style="color: gold">当前开启的技能</span>',"<br>",'4. <span style="color: lightgreen">当前勇士生命值</span>,右方偏下为每回合回复的生命值',",当点开治愈之泉技能时,右方偏上会显示距离增加生命回复剩余血瓶数","<br>",'5. <span style="color: lightcoral">当前勇士的攻击</span>,右方偏下为勇士的额外攻击',"<br>",'6. <span style="color: lightblue">当前勇士的防御</span>',"<br>",'7. <span style="color: lightgreen">当前勇士的智慧</span>,可以用于智慧加点等',"<br>",'8. <span style="color: gold">当前勇士的金币</span>',"<br>",'9. <span style="color: lightgreen">当前勇士距离升级剩余经验数</span>',"<br>",'10. <span style="color: gold">三色钥匙</span>',"<br>",'11. <span style="color: gold">打开技能树</span>(进入第一章后开启)',"<br>",'12. <span style="color: gold">查看勇士的技能</span>(进入第一章后开启)']},markEnemy={text:"标记怪物",condition:"true",desc:["标记怪物可以使你能够更加方便地了解一个怪物的情况。","<br>","你可以通过以下两种方式标记怪物:","<br>","1. 打开怪物手册,选中怪物,进入怪物更多信息栏,点击标记怪物。","<br>",'2. 将鼠标移动到你想要标记的怪物上面,<span style="color: gold">',"按下M键</span>,即可标记怪物,注意浏览地图中不能用该方式标记。","手机端暂时没有快速标记怪物的方式。","<br>","<br>",'<span style="color: gold">当一个怪物被标记后,怪物会有以下行为</span>',"<br>","1. 当勇士恰好能打败怪物时,会进行提示","<br>","2. 当怪物的伤害恰好低于勇士生命值的2/3或1/3时会进行提示","<br>","3. 当勇士恰好踩到怪物的临界时,会进行提示","<br>","4. 当怪物零伤时,会进行提示","<br>","5. 被标记的怪物会出现类似于状态栏的盒子,可以随意拖动和改变大小。你也可以选择关闭这个盒子,","被关闭后可以通过重新标记来打开。这个盒子会显示标记的怪物的临界与伤害信息等,与状态栏一样,可以纵向滚动。","<br>","<br>","这个功能可以用于标记boss或者较强的挡路怪当这些怪能够攻击时你可以直接收到信息不需要再时刻费心注意怪物的伤害。","<br>","<br>",'<span style="color: gold">注意,标记的怪物是不计入存档的,同时标记的怪物只在本次游戏中有效,刷新页面后便会消失。</span>']},book={text:"怪物手册",condition:"true",desc:["本塔的怪物手册功能很多,下面一一介绍。","<br>","<br>","首先你可以按X打开怪物手册。除此之外将鼠标移动到怪物上也可以定点查看怪物的粗略信息。",'将鼠标移动到一个怪物上,按下<span style="color: gold">','E键</span>,可以查看该怪物的特殊属性信息。按下<span style="color: gold">',"C键</span>,可以查看该怪物的详细临界信息。","<br>","<br>","怪物手册打开的时候有一个0.6秒的动画,如果不想要可以在开头捡的系统设置里面关闭(默认关闭)。","<br>","<br>","打开怪物手册后,怪物手册的布局与样板自带的类似。与样板不同的是,这里的怪物手册不再是翻页式结构。",'<span style="color: gold">这里的怪物手册是滚动式结构</span>',"你可以像浏览网页一样,用手指或鼠标上下滚动或者拖动右边的滚动条,电脑端还可以使用滚轮。","对于电脑端还可以使用键盘操作。上和下可以上下选择怪物左和右可以向上或向下移动5个怪物。这些操作与样板都类似。","<br>","<br>","点击一个怪物或者按下回车空格后,将进入怪物详细信息界面。这个界面分为多个栏,分别是特殊属性栏,详细临界栏,更多信息栏。","进入怪物详细信息后默认在特殊属性栏,该栏可以查看怪物的特殊属性。","注意特殊属性依然可以纵向滚动。在特殊属性下方,","是怪物的临界表,可以粗略地查看怪物的临界信息。在下方,你可以点击详细临界信息进入详细临界栏。","<br>","<br>",'在详细临界栏中,怪物的伤害会以<span style="color: gold">可视化折线图</span>的方式显示出来,',"从而你可以更为清晰地看出怪物减伤趋势。","除了查看怪物伤害曲线,你还可以规划宝石。每个折线图下方都有一个滑动条,你可以拖动来模拟吃宝石。","注意,拖动时,滑动条左边会显示当前的加攻或加防次数,这个数值指的是在勇士所在地图中需要吃的最弱的宝石数量。","例如当前勇士所在地图中最弱的宝石加2点攻击加攻次数为3那么勇士的攻击增加量就为6。","勇士增加的攻击数值也会在下方显示。当加攻次数和加防次数改变时,折线图也会变化。",'当前状态下怪物的伤害以及减伤总量也会在下方显示。<span style="color: gold">',"注意在此栏中无法通过点击屏幕回到怪物手册界面,更多信息请查看最后一段</span>。","<br>","<br>","在特殊属性栏,点击下方的怪物更多信息可以进入更多信息栏。此栏中,你可以查看怪物描述。但这不是这一栏的核心功能。","这一栏的核心功能是标记怪物。被标记的怪物会有一些非常方便的行为,这些行为可以在“",'<span style="color: gold">标记怪物</span>”条目中查看。',"<br>","<br>","注意,在怪物详细信息中,除详细临界栏外均可以通过点击屏幕返回到怪物手册界面。",'如果你是电脑端,在任意栏目中<span style="color: gold">按下X键</span>会退出怪物手册,返回游戏,','<span style="color: gold">按下回车Enter键</span>会回到怪物手册界面。']},fly={text:"楼层传送器",condition:"true",desc:["楼传界面打开时会有一个0.6秒的动画,如果不想要可以在开头捡的系统设置里面关闭。(默认关闭)","<br>","<br>",'本塔的楼层传送器是一个集<span style="color: gold">分区、小地图、楼层传送、浏览地图</span>于一体的多功能楼传。','<a href="https://unanmed.github.io/HumanBreak/maps/index.html" target="_blank">你也可以点击这里</a>查看所有区域的缩略图。',"下面是楼传的具体说明:","<br>","<br>","首先,对于电脑端,最左侧显示区域信息,手机端则在上方的左侧。","<br>","<br>","然后,区域的右侧是小地图栏,这一栏会显示楼层的平面结构。你可以拖动,也可以使用滚轮或者双指放缩,当放缩到一定大小时,","会显示地图的缩略图。直接点击地图也可以选中地图,再次点击会传送至目标地图。","<br>","<br>","对于电脑端,最右侧是当前选中的地图的缩略图,手机则在下方,点击缩略图也可以传送。缩略图的下方是当前选中的地图名,","左右各有两个按钮表示后退10层、后退1层、前进1层、前进10层与样板的楼传的按钮功能类似对于小地图无法显示的单层","可以使用该功能到达。","<br>","<br>","最下方是设置按钮,可以切换无边框模式,电脑端还可以切换传统按键模式,传统按键模式下按键遵循样板的楼传按键方式。",'对于非传统模式,<span style="color: gold">上下左右</span>可以移动地图,','<span style="color: gold">PageUp和PageDown</span>可以前进1层或后退1层。']},tools={text:"道具栏与装备栏",condition:"true",desc:["道具栏与装备栏打开时会有一个0.6秒的动画,如果不想要可以在开头捡的系统设置里面关闭。(默认关闭)","<br>","<br>","本塔的道具栏没有特别之处,这里不需要说明。主要是装备栏。","<br>","<br>","本塔的装备栏手机和电脑端不同,电脑端比手机端多了一个勇士属性的显示。在装备栏的装备列表栏,",'<span style="color: gold">上方有两个选择框与一个排序方式的选项</span>。',"这三个可以筛选你拥有的装备并进行排序,从而让你能够更清楚地知道哪个装备更强。","第一个选择框可以筛选装备增加的属性,如果装备不增加选择的属性,那么会不显示。第二个选择框可以筛选增加的属性的方式,","有数值增加和百分比增加两种。在这个选择框右边有一个图标,这个图标可以改变武器的排序方式,有升序和降序两种,默认为升序。","例如你拥有两个装备分别增加10攻击和20攻击三者你分别选择了攻击数值升序那么增加10攻击的装备会排在上面","而增加20攻击的装备会排在下面。","<br>","<br>",'对于电脑端,如果你想装装备,<span style="color: gold">可以直接拖动装备至装备孔</span>','也可以选中装备后再次点击。<span style="color: gold">手机端暂时无法拖动装备</span>。当选中一个装备后,','电脑端和手机端均会显示装备增加或减少的属性,注意有的装备可能<span style="color: gold">不增加属性但是有特殊功能</span>。',"对于电脑端,还会直接在勇士属性栏显示增加或减少的属性。"]},achievement={text:"成就",condition:"true",desc:["成就系统是本塔的一个独立系统。它不会像勇士属性一样跟随存档变化,而是只要你完成了成就,那么就永远完成了,",'除非你清理了浏览器。每个成就都有成就点,<span style="color: gold">成就点目前没有实际用途,',"只是一个收集要素,对游戏进程没有任何影响。</span>","<br>","<br>","成就分为三种,普通成就,挑战成就和探索成就。普通成就完成难度一般较低,挑战成就完成难度较高,","而探索成就一般需要你自己探索如何完成。对于完成度类型的探索成就,它的完成度由到达过的地图与本章完成的成就数决定。","<br>","<br>",'<span style="color: gold">调试模式下无法完成成就!</span>']},score={text:"计分方式",condition:"true",desc:["第一章计分方式:血量 + 黄 * 5000 + 蓝 * 15000","<br>","第二章计分方式:血量 / 10 + 黄 * 2000 + 蓝 * 5000 + 红 * 10000"]},skillTree={text:"技能树",condition:"flags.chapter > 0",desc:['打开技能树可以点击状态栏的<span style="color: gold">',"技能树按钮</span>(如果发现没有显示可以尝试上下滚动状态栏),还可以按",'<span style="color: gold">快捷键J</span>打开。',"<br>","<br>","技能树是本塔的主要玩法之一。它可以让你使用智慧来学习技能,增加属性等。智慧在状态栏显示在防御的下一项,","绿宝石可以增加勇士的智慧。","<br>","<br>","打开技能树页面后,你可以在上方看到技能的名称与描述,下方会显示技能树,以及升级要求等。点击一个技能可以选中技能,","再次点击可以升级技能。注意,前置技能栏可以上下滚动,因此如果发现显示不全,可以尝试上下滚动前置技能栏","<br>","<br>","注意,技能在点开之后是无法取消的,因此,加点时请慎重加点。注意,部分技能是必点技能,这些技能会在技能说明中明确指出,","这些技能一般需要尽早点出。"]},study={text:"学习",condition:"core.plugin.skillTree.getSkillLevel(11) > 0",desc:["本条目会详细说明学习的机制与所有可以被学习的技能被学习后的效果。当前已经学习的技能会以与状态栏类似的盒子展示出来。","<br>","<br>","首先学习技能消耗的智慧点会越来越多初始消耗的智慧点为500每学习一次增加250。","学习的技能可以持续5场战斗在技能树界面每升级一次增加3场",'<span style="color: gold">当前为${core.plugin.skillTree.getSkillLevel(11) * 3 + 2}场</span>。',"学习后对应属性的值,例如抱团怪增加的属性百分比,会与被学习的怪物相同。学习界面可以使用背包中的道具或点击状态栏打开。","<br>","<br>","下面会详细说明每一种可以被学习的技能被学习后的效果,没有列出的均不可学习。","<br>","<br>",'<span style="color: #fc3">1. 致命一击</span>勇士每5回合对怪物造成一次强力攻击。',"<br>",'<span style="color: #bbb0ff">2. 恶毒</span>:勇士攻击无视怪物的防御。',"<br>",'<span style="color: #c0b088">3. 坚固</span>:勇士防御不低于怪物的攻击-1。',"<br>",'<span style="color: #fe7">4. n连击</span>勇士每回合攻击n次',"<br>",'<span style="color: #b30000">5. 饥渴</span>:勇士在战前吸取怪物一定量的攻击加载自己身上,',"同时减少怪物相应量的攻击,优先于怪物。","<br>",'<span style="color: #fa4">6. 抱团</span>:勇士周围每有一个拥有抱团属性的怪物,勇士的属性便增加一定值。',"相应地,拥有抱团属性的怪物也会受到勇士的加成。","<br>",'<span style="color: #b0c0dd">7. 勇气之刃</span>:勇士第一回合造成一定量的伤害,之后正常。',"<br>",'<span style="color: #ff00d2">8. 勇气冲锋</span>勇士首先发动冲锋造成一定量的伤害眩晕怪物5回合。',"学习该技能后,勇士无条件先手。","<br>",'<span style="color: #bbb0ff">9. 魔攻</span>:勇士攻击无视怪物的防御。',"<br>",'<span style="color: #b0b666">10. 先攻</span>:勇士无条件先手。']},special1={text:"第一章怪物特技",condition:"flags.chapter > 0",desc:["这里会展示第一章的怪物中需要特别说明的怪物特技。","<br>","<br>",'<span style="color: #c0b088">1. 坚固</span>',"在本塔中,额外攻击可以对坚固怪造成额外伤害。","<br>","<br>",'<span style="color: #80eed6">2. 绝对防御</span>',"该怪物一般可以用于刷血。该怪物可以使你每回合对怪物造成的伤害恰好为1导致战斗回合数很高因此可以刷血。","<br>","<br>",'<span style="color: #fc3">3. 致命一击、勇气之刃、勇气冲锋</span>',"造成的伤害为怪物每回合对勇士的伤害的一定倍数,而非攻击提高一定倍数。"]},special2={text:"第二章怪物特技",condition:"flags.chapter > 1",desc:["这里会展示第二章的怪物中需要特别说明的怪物特技。","<br>","<br>",'<span style="color: #f66">1. 电摇嘲讽</span>',"该特技会撞碎路上的所有地形和门,不需要消耗钥匙,拾取路上的所有道具,与路上的怪物战斗,最后与该怪物战斗。","如果怪物所在位置可以被嘲讽,那么勇士会被继续嘲讽。如果在被嘲讽的路上可以被其他怪物嘲讽,则不会触发。","如果一个点可以被多个怪物嘲讽,那么会优先选择最靠左上角的怪物。在地图上会标记出勇士的移动方向。",'<span style="color: gold">在被嘲讽之前会自动存档。</span>',"<br>","<br>",'<span style="color: #d8a">2. 永夜</span>、<span style="color: #ffd">极昼</span>',"战斗后会在本楼层中加减怪物与勇士的攻防每个楼层会单独存储。例如你在1楼层增加了100点攻击2楼层减少了100点攻击","那么当你从2楼层到1楼层时攻击会增加200点反之亦然。注意这里没有计算buff。"]},desc={tip,about,tutorial,noun,shortcut,extraAttr,statusBar,markEnemy,book,fly,tools,achievement,score,skillTree,study,special1,special2},_hoisted_1$h={id:"desc-list"},_hoisted_2$e=["selected","show","onClick"],_hoisted_3$d={key:0},_hoisted_4$b=["innerHTML"],_sfc_main$h=defineComponent({__name:"desc",setup(__props){const selected=ref(Object.keys(desc)[0]);function exit(){core.plugin.descOpened.value=!1}const content=computed(()=>eval("`"+splitText(desc[selected.value].desc)+"`"));function click(key){eval(desc[key].condition)&&(selected.value=key)}function show(condition){return eval(condition)}return(e,t)=>(openBlock(),createBlock(Colomn,{onClose:exit,width:80,height:80,left:30,right:70},{left:withCtx(()=>[createBaseVNode("div",_hoisted_1$h,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(desc),(o,n)=>(openBlock(),createElementBlock("div",{class:"selectable desc-item",selected:selected.value===n,show:show(o.condition),onClick:s=>click(n)},[show(o.condition)?(openBlock(),createElementBlock("span",_hoisted_3$d,toDisplayString(o.text),1)):createCommentVNode("",!0)],8,_hoisted_2$e))),256))])]),right:withCtx(()=>[createBaseVNode("span",{innerHTML:content.value},null,8,_hoisted_4$b)]),_:1}))}}),desc_vue_vue_type_style_index_0_scoped_daf50bc2_lang="",Desc=_export_sfc(_sfc_main$h,[["__scopeId","data-v-daf50bc2"]]),none={text:"无",opened:"true",desc:["当前未选择技能"]},blade={text:"1断灭之刃",opened:"core.plugin.skillTree.getSkillLevel(2) > 0",desc:['<span style="color: gold">快捷键1</span>,开启后勇士攻击增加${level:2 * 10}%',"同时防御减少${level:2 * 10}%。","<br>","<br>","当前等级:${level:2}"]},jump={text:"2跳跃",opened:"flags.skill2 === true",desc:['<span style="color: gold">快捷键2</span>消耗200点生命值困难消耗400点一个地图只能使用3次',"如果前方为可通行的地面,则不能使用该技能,如果前方为怪物,则将怪物移至勇士视线上第一个不能通行的方块后","如果前方为障碍物,则直接跳到该障碍物的后方。","<br>","<br>","进入第二章后不再消耗生命值。"]},shield={text:"3铸剑为盾",opened:"core.plugin.skillTree.getSkillLevel(10) > 0",desc:['<span style="color: gold">快捷键3</span>,开启后勇士防御增加${level:10 * 10}%',"同时攻击减少${level:10 * 10}%。","<br>","<br>","当前等级:${level:10}"]},skills={none,blade,jump,shield},_hoisted_1$g={id:"skill-list"},_hoisted_2$d=["selected","selectable","onClick"],_hoisted_3$c=["innerHTML"],_sfc_main$g=defineComponent({__name:"skill",setup(__props){const selected=ref("none");function skillOpened(skill){return eval(skills[skill].opened)}function select(e){skillOpened(e)&&(selected.value=e)}const content=computed(()=>eval("`"+skills[selected.value].desc.map((e,t,o)=>/^\d+\./.test(e)?`${"&nbsp;".repeat(12)}${e}`:has(o[t-1])&&e!=="<br>"&&o[t-1]==="<br>"||t===0?`${"&nbsp;".repeat(8)}${e}`:e).join("").replace(/level:(\d+)/g,"core.plugin.skillTree.getSkillLevel($1)")+"`"));function exit(){core.plugin.skillOpened.value=!1}return(e,t)=>(openBlock(),createBlock(Colomn,{onClose:exit,width:70,height:70},{left:withCtx(()=>[createBaseVNode("div",_hoisted_1$g,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(skills),(o,n)=>(openBlock(),createElementBlock("span",{class:"selectable skill-item",selected:n===selected.value,selectable:skillOpened(n),onClick:s=>select(n)},toDisplayString(o.text),9,_hoisted_2$d))),256))])]),right:withCtx(()=>[createBaseVNode("span",{innerHTML:content.value},null,8,_hoisted_3$c)]),_:1}))}}),skill_vue_vue_type_style_index_0_scoped_ba79149b_lang="",Skill=_export_sfc(_sfc_main$g,[["__scopeId","data-v-ba79149b"]]),_withScopeId$5=e=>(pushScopeId("data-v-23358c33"),e=e(),popScopeId(),e),_hoisted_1$f={id:"skill-tree"},_hoisted_2$c={id:"tools"},_hoisted_3$b={id:"skill-title"},_hoisted_4$a={id:"skill-info"},_hoisted_5$9=["innerHTML"],_hoisted_6$8={id:"skill-effect"},_hoisted_7$7=["innerHTML"],_hoisted_8$6=["innerHTML"],_hoisted_9$6={id:"skill-bottom"},_hoisted_10$6=_withScopeId$5(()=>createBaseVNode("canvas",{id:"skill-canvas"},null,-1)),_hoisted_11$6={id:"skill-upgrade-info"},_hoisted_12$4={id:"skill-level"},_hoisted_13$4={key:1,id:"skill-consume",style:{color:"gold"}},_hoisted_14$4={id:"skill-front"},_hoisted_15$3=_withScopeId$5(()=>createBaseVNode("span",null,"前置技能",-1)),_hoisted_16$3={id:"skill-chapter"},_sfc_main$f=defineComponent({__name:"skillTree",setup(__props){var e;let canvas,ctx;const selected=ref(0),chapter=ref("chapter1"),update=ref(!1),chapterDict={chapter1:"第一章",chapter2:"第二章"};(e=flags.skillTree)!=null||(flags.skillTree=0);const chapterList=Object.keys(core.plugin.skills);selected.value=core.plugin.skills[chapterList[flags.skillTree]][0].index,chapter.value=chapterList[flags.skillTree],watch(selected,draw),watch(update,()=>mdef.value=core.status.hero.mdef);const mdef=ref(core.status.hero.mdef),skill=computed(()=>(update.value,core.plugin.skillTree.getSkillFromIndex(selected.value))),skills=computed(()=>core.plugin.skills[chapter.value]),desc=computed(()=>eval("`"+splitText(skill.value.desc).replace(/level(:\d+)?/g,(t,o)=>o?`core.plugin.skillTree.getSkillLevel(${o})`:`core.plugin.skillTree.getSkillLevel(${skill.value.index})`)+"`")),effect=computed(()=>[0,1].map(v=>eval(`\`${v===0?"当前效果:":"下一级效果:"}`+skill.value.effect.join("").replace(/level(:\d+)?/g,(t,o)=>o?`(core.plugin.skillTree.getSkillLevel(${o}) + ${v})`:`(core.plugin.skillTree.getSkillLevel(${skill.value.index}) + ${v})`)+"`"))),dict=computed(()=>{const t={};return skills.value.forEach((n,s)=>{t[n.index]=s}),t}),front=computed(()=>skill.value.front.map(t=>`${core.plugin.skillTree.getSkillLevel(t[0])>=t[1]?"a":"b"}${t[1]}${skills.value[dict.value[t[0]]].title}`)),consume=computed(()=>(update.value,core.plugin.skillTree.getSkillConsume(selected.value))),level=computed(()=>(update.value,core.plugin.skillTree.getSkillLevel(selected.value)));function exit(){core.plugin.skillTreeOpened.value=!1}function resize(){const t=getComputedStyle(canvas);canvas.width=parseFloat(t.width)*devicePixelRatio,canvas.height=parseFloat(t.height)*devicePixelRatio}function draw(){const t=dict.value,n=canvas.width/11;ctx.clearRect(0,0,canvas.width,canvas.height),skills.value.forEach(s=>{const[a,r]=s.loc.map(l=>l*2-1);s.front.forEach(([l],h)=>{const d=skills.value[t[l]];ctx.beginPath(),ctx.moveTo(a*n+n/2,r*n+n/2),ctx.lineTo(...d.loc.map(_=>(_*2-1)*n+n/2)),core.plugin.skillTree.getSkillLevel(d.index)<s.front[h][1]?ctx.strokeStyle="#aaa":core.plugin.skillTree.getSkillLevel(d.index)===d.max?ctx.strokeStyle="#ff0":ctx.strokeStyle="#0f8",ctx.lineWidth=devicePixelRatio,ctx.stroke()})}),skills.value.forEach(s=>{const[a,r]=s.loc.map(d=>d*2-1),l=core.plugin.skillTree.getSkillLevel(s.index);ctx.save(),ctx.lineWidth=n*.06,selected.value===s.index?(ctx.strokeStyle="#ff0",ctx.lineWidth*=2):l===0?ctx.strokeStyle="#888":l===s.max?ctx.strokeStyle="#F7FF68":ctx.strokeStyle="#00FF69",ctx.strokeRect(a*n,r*n,n,n);const h=core.material.images.images[`skill${s.index}.png`];ctx.drawImage(h,a*n,r*n,n,n),selected.value===s.index&&(ctx.fillStyle="#ff04",ctx.fillRect(a*n,r*n,n,n)),ctx.restore()})}function click(t){const o=t.offsetX,n=t.offsetY,a=canvas.width/devicePixelRatio/11,r=Math.floor(o/a),l=Math.floor(n/a);if(r%2!==1||l%2!==1)return;const h=Math.floor(r/2)+1,d=Math.floor(l/2)+1,_=skills.value.find(u=>u.loc[0]===h&&u.loc[1]===d);_&&(selected.value!==_.index?selected.value=_.index:upgrade(_.index))}function upgrade(t){core.plugin.skillTree.upgradeSkill(t)?(tip$1("success","升级成功!"),update.value=!update.value,core.status.route.push(`skill:${selected.value}`)):tip$1("error","升级失败!")}function key(t){const o=keycode(t.keyCode);(o===KeyCode.Escape||o===KeyCode.KeyX||o===KeyCode.KeyJ)&&exit(),(o===KeyCode.Space||o===KeyCode.Enter||o===KeyCode.KeyC)&&upgrade(selected.value)}onMounted(async()=>{canvas=document.getElementById("skill-canvas"),ctx=canvas.getContext("2d"),resize(),draw(),await R(50),core.plugin.transition.value&&await R(600),canvas.addEventListener("click",click),document.addEventListener("keyup",key)}),onUnmounted(()=>{document.removeEventListener("keyup",key)});function selectChapter(t){const n=chapterList.indexOf(chapter.value)+t;has(chapterList[n])&&flags.chapter>n&&(selected.value=core.plugin.skills[chapterList[n]][0].index,chapter.value=chapterList[n],update.value=!update.value,flags.skillTree=n,draw())}return(t,o)=>{const n=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$f,[createBaseVNode("div",_hoisted_2$c,[createBaseVNode("span",{id:"back",class:"button-text tools",onClick:exit},[createVNode(unref(LeftOutlined)),createTextVNode("返回游戏")])]),createBaseVNode("span",_hoisted_3$b,toDisplayString(skill.value.title),1),createVNode(n,{dashed:"",style:{"border-color":"#ddd4"},id:"divider"}),createBaseVNode("div",_hoisted_4$a,[createVNode(Scroll,{id:"skill-desc","no-scroll":!0},{default:withCtx(()=>[createBaseVNode("span",{innerHTML:desc.value},null,8,_hoisted_5$9)]),_:1}),createBaseVNode("div",_hoisted_6$8,[level.value>0?(openBlock(),createElementBlock("span",{key:0,innerHTML:effect.value[0]},null,8,_hoisted_7$7)):createCommentVNode("",!0),level.value<skill.value.max?(openBlock(),createElementBlock("span",{key:1,innerHTML:effect.value[1]},null,8,_hoisted_8$6)):createCommentVNode("",!0)])]),createVNode(n,{dashed:"",style:{"border-color":"#ddd4"},id:"divider-split"}),createBaseVNode("div",_hoisted_9$6,[_hoisted_10$6,createVNode(n,{dashed:"",style:{"border-color":"#ddd4"},type:unref(isMobile)?"horizontal":"vertical",id:"divider-vertical"},null,8,["type"]),createBaseVNode("div",_hoisted_11$6,[createBaseVNode("span",_hoisted_12$4,"当前等级:"+toDisplayString(level.value)+" / "+toDisplayString(skill.value.max),1),createVNode(n,{dashed:"",class:"upgrade-divider"}),level.value<skill.value.max?(openBlock(),createElementBlock("span",{key:0,id:"skill-consume",style:normalizeStyle({color:consume.value<=mdef.value?"#fff":"#f44"})},"升级花费:"+toDisplayString(consume.value),5)):(openBlock(),createElementBlock("span",_hoisted_13$4,"已满级")),createVNode(n,{dashed:"",class:"upgrade-divider"}),createVNode(Scroll,{id:"front-scroll","no-scroll":!0},{default:withCtx(()=>[createBaseVNode("div",_hoisted_14$4,[_hoisted_15$3,(openBlock(!0),createElementBlock(Fragment,null,renderList(front.value,s=>(openBlock(),createElementBlock("span",{style:normalizeStyle({color:s.startsWith("a")?"#fff":"#f44"})},toDisplayString(s.slice(1)),5))),256))])]),_:1}),createVNode(n,{dashed:"",class:"upgrade-divider"}),createBaseVNode("div",_hoisted_16$3,[createBaseVNode("span",{class:"button-text",onClick:o[0]||(o[0]=s=>selectChapter(-1))},[createVNode(unref(LeftOutlined))]),createTextVNode("    "),createBaseVNode("span",null,toDisplayString(chapterDict[chapter.value]),1),createTextVNode("    "),createBaseVNode("span",{class:"button-text",onClick:o[1]||(o[1]=s=>selectChapter(1))},[createVNode(unref(RightOutlined))])])])])])}}}),skillTree_vue_vue_type_style_index_0_scoped_23358c33_lang="",SkillTree=_export_sfc(_sfc_main$f,[["__scopeId","data-v-23358c33"]]),index$1="";function init$e(){return{splitArea,getMapDrawData}}let area={};const bfsCache={},drawCache={},arrow={leftPortal:"left",rightPortal:"right",upPortal:"up",downPortal:"down"};function splitArea(){area={};const e=[];for(const t of core.floorIds){if(e.includes(t)||core.status.maps[t].deleted)continue;const o=getMapData(t,!0);if(e.push(...o.maps),o.maps.length>1){const n=core.status.maps[t].title;area[n]=o.maps}}}function getArea(){return area}function getMapDrawData(e,t=5,o=1,n=!1){var w;const s=`${e},${t},${o}`;if(drawCache[s]&&!n)return drawCache[s];const{link:a,maps:r}=getMapData(e,n),l={},h=[],d=core.status.maps[e];let _=-d.width/2,u=d.width/2,c=-d.height/2,f=d.height/2;for(const[g,y]of Object.entries(a)){const[k,$,U,N]=g.split(","),[D,b,S]=y.split(","),L=core.status.maps[k],F=core.status.maps[D],E=parseInt($),z=parseInt(U),ee=parseInt(b),ne=parseInt(S),M=L.width,Z=L.height,W=F.width,oe=F.height;(w=l[k])!=null||(l[k]=[0,0]);const[le,P]=l[k];if(!l[D]){const ce=core.utils.scan[N].x,_e=core.utils.scan[N].y,me=le+(E-M/2)-(ee-W/2)+(o*2+t)*ce,ue=P+(z-Z/2)-(ne-oe/2)+(o*2+t)*_e;l[D]=[me,ue]}const[T,J]=l[D];h.push([le+(E-M/2+.5),P+(z-Z/2+.5),T+(ee-W/2+.5),J+(ne-oe/2+.5)]);const te=T-W/2,se=T+W/2,re=J-oe/2,Q=J+oe/2;te<_&&(_=te),se>u&&(u=se),re<c&&(c=re),Q>f&&(f=Q)}Object.values(l).forEach(g=>{g[0]-=_,g[1]-=c}),h.forEach(g=>{g[0]-=_,g[2]-=_,g[1]-=c,g[3]-=c}),_-=5,u+=5,c-=5,f+=5;const m={locs:l,line:h,width:u-_,height:f-c};return drawCache[s]=m}function getMapData(e,t=!1){if(has(bfsCache[e])&&!t)return bfsCache[e];const o=[e],n={[e]:!0},s=[e],a={};for(;o.length>0;){const l=o.shift(),h=core.floors[l].changeFloor,d=core.getMapBlocksObj(l,t);for(const[_,u]of Object.entries(h)){const c=u.floorId;if(c.startsWith(":"))continue;const m=d[_].event.id;if(m in arrow&&!n[c]){const w=`${l},${_},${arrow[m]}`,g=`${c},${u.loc[0]},${u.loc[1]}`;a[w]=g,o.push(c),s.push(c)}}n[l]=!0}const r={maps:s,link:a};return bfsCache[e]=r}const _withScopeId$4=e=>(pushScopeId("data-v-301939b0"),e=e(),popScopeId(),e),_hoisted_1$e={id:"fly"},_hoisted_2$b={id:"tools"},_hoisted_3$a={id:"fly-settings"},_hoisted_4$9={id:"fly-border"},_hoisted_5$8=_withScopeId$4(()=>createBaseVNode("span",null,"无边框模式",-1)),_hoisted_6$7={key:0,id:"fly-tradition"},_hoisted_7$6=_withScopeId$4(()=>createBaseVNode("span",null,"传统按键模式",-1)),_hoisted_8$5={id:"fly-main"},_hoisted_9$5={id:"fly-left"},_hoisted_10$5={id:"area-list"},_hoisted_11$5=["selected","onClick"],_hoisted_12$3={id:"fly-right"},_hoisted_13$3={id:"fly-tools"},_hoisted_14$3={id:"fly-now"},_sfc_main$e=defineComponent({__name:"fly",setup(e){var ye;const t=getArea(),o=ref((ye=Object.keys(t).find(B=>t[B].includes(core.status.floorId)))!=null?ye:""),n=ref(core.status.floorId),s=ref(!0),a=ref(!1);let r=isMobile?1.5:3,l=0,h=0,d={},_={};s.value=core.getLocalStorage("noBorder",!0),a.value=core.getLocalStorage("flyTradition",!1);const u=computed(()=>core.status.maps[n.value]);watch(n,z),watch(o,B=>{var x;l=0,h=0,r=3,M=3,t[B]&&!t[B].includes(n.value)&&(n.value=(x=t[B].find(A=>A===core.status.floorId))!=null?x:t[B][0])}),watch(s,B=>{core.setLocalStorage("noBorder",B),d={},N()}),watch(a,B=>{core.setLocalStorage("flyTradition",B)});const c=document.createElement("canvas"),f=c.getContext("2d");let m,w,g,y,k=!1;function $(){core.plugin.flyOpened.value=!1}const U=computed(()=>core.status.maps[n.value].title);function N(B=!1){const x=s.value?.5:1,A=getMapDrawData(n.value,s.value?0:5,x,B),K=f,V=r*devicePixelRatio;c.width=A.width*V,c.height=A.height*V,K.lineWidth=x*devicePixelRatio/2,K.strokeStyle="#fff",K.scale(V,V),K.translate(5,5),s.value||A.line.forEach(([X,fe,de,ve])=>{K.beginPath(),K.moveTo(X,fe),K.lineTo(de,ve),K.stroke()});for(const[X,[fe,de]]of Object.entries(A.locs))s.value||D(X,fe,de),L(X,fe,de);b()}function D(B,x,A){const K=s.value?.5:1,V=f;V.lineWidth=K*devicePixelRatio;const X=core.status.maps[B];core.hasVisitedFloor(B)?V.fillStyle="#000":V.fillStyle="#d0d",B===n.value?V.strokeStyle="gold":V.strokeStyle="#fff",V.strokeRect(x-X.width/2,A-X.height/2,X.width,X.height),V.fillRect(x-X.width/2,A-X.height/2,X.width,X.height),B===n.value&&(V.fillStyle="#ff04",V.fillRect(x-X.width/2,A-X.height/2,X.width,X.height))}function b(B=1){w.clearRect(0,0,m.width,m.height),w.drawImage(c,0,0,c.width,c.height,l*devicePixelRatio+(m.width-c.width)/2,h*devicePixelRatio+(m.height-c.height)/2,c.width,c.height)}function S(B,x,A){const K=core.status.maps[B],V=r*devicePixelRatio,X=l*devicePixelRatio+(m.width-c.width)/2+5*V,fe=h*devicePixelRatio+(m.height-c.height)/2+5*V,de=X+(x-K.width/2)*V,ve=fe+(A-K.height/2)*V,ke=de+K.width*V,we=ve+K.height*V;return _[B]=[de,ve,ke,we],!(d[B]||!s.value&&r<=4||ke<0||we<0||de>m.width||ve>m.height)}function L(B,x,A,K=!1){if(!k&&!K&&!S(B,x,A))return;const V=core.status.maps[B];d[B]=!0;const X=f;core.drawThumbnail(B,void 0,{all:!0,inFlyMap:!0,x:x-V.width/2,y:A-V.height/2,w:V.width,h:V.height,ctx:X,damage:r>7}),k||(core.hasVisitedFloor(B)||(X.fillStyle="#d0d6",X.fillRect(x-V.width/2,A-V.height/2,V.width,V.height),X.fillStyle="#000"),n.value===B&&(X.fillStyle="#ff04",X.fillRect(x-V.width/2,A-V.height/2,V.width,V.height),X.fillStyle="#000"))}function F(){const B=s.value?.5:1,x=getMapDrawData(n.value,s.value?0:5,B);for(const[A,[K,V]]of Object.entries(x.locs))S(A,K,V)&&L(A,K,V,!0)}function E(){let B=g.width,x=g.height,A=0,K=0;const V=u.value.width/u.value.height;V>1&&(x=B/V,K=g.height/2-x/2),V<1&&(B=x*V,A=g.width/2-B/2),y.fillStyle="#000",y.fillRect(0,0,g.width,g.height),core.drawThumbnail(n.value,void 0,{ctx:y,all:!0,damage:!0,inFlyMap:!0,x:A,y:K,w:B,h:x})}function z(){d={},_={},N(),E()}function ee(){if(o.value===""){tip$1("error","当前地图不在任意一个区域内!");return}k=!0;const B=r;r=32,N(),downloadCanvasImage(c,o.value),r=B,k=!1,z(),tip$1("success","图片下载成功!")}function ne(){core.flyTo(n.value)?$():tip$1("error",`无法飞往${u.value.title}`)}let M=r;const Z=debounce(B=>{m.style.transform="",d={},N(),M=B},200);function W(B){l*=B,h*=B,r=B*r,Z(r),m.style.transform=`scale(${r/M})`,_={}}let oe=0,le=0,P=!1,T=0,J=0;function te(B,x){if(ue)return;const A=B-oe,K=x-le;l+=A,h+=K,oe=B,le=x,F(),b(),(Math.abs(B-T)>10||Math.abs(x-J)>10)&&(P=!0)}function se(B){if(P)return;const x=B.offsetX*devicePixelRatio,A=B.offsetY*devicePixelRatio;for(const[K,[V,X,fe,de]]of Object.entries(_))x>=V&&x<=fe&&A>=X&&A<=de&&(K===n.value?ne():n.value=K)}function re(B){o.value=Object.keys(t).find(x=>t[x].includes(B))}function Q(B){const x=core.floorIds.indexOf(n.value);let A=x+B;A<0&&(A=0),A>=core.floorIds.length&&(A=core.floorIds.length-1);const K=core.status.maps[core.floorIds[A]];if(K.deleted||K.forceDelete)for(;A!==x;){A+=Math.sign(B);const V=core.status.maps[core.floorIds[A]];if(!V.cannotViewMap&&(!V.deleted&&!V.forceDelete||A<0||A>=core.floorIds.length))break}n.value=core.floorIds[A],re(n.value),_e(n.value)}function ce(B){const x=getMapData(n.value);for(const[A,K]of Object.entries(x.link)){if(!A.startsWith(n.value))continue;if(A.split(",")[3]===B){const X=K.split(",")[0];_e(X),n.value=X;return}}}function _e(B){const x=getMapDrawData(B,s.value?0:5,s.value?.5:1);if(!x.locs[B])return;const[A,K]=x.locs[B];l=(-A+x.width/2-5)*r,h=(-K+x.height/2-5)*r}function me(B){const x=keycode(B.keyCode);(x===KeyCode.Enter||x===KeyCode.Space||x===KeyCode.KeyC)&&ne(),(x===KeyCode.Escape||x===KeyCode.KeyX||x===KeyCode.KeyG)&&$(),a.value?(x===KeyCode.UpArrow&&Q(1),x===KeyCode.DownArrow&&Q(-1),x===KeyCode.LeftArrow&&Q(-10),x===KeyCode.RightArrow&&Q(10),x===KeyCode.PageUp&&Q(10),x===KeyCode.PageDown&&Q(-10)):(x===KeyCode.LeftArrow&&ce("left"),x===KeyCode.RightArrow&&ce("right"),x===KeyCode.UpArrow&&ce("up"),x===KeyCode.DownArrow&&ce("down"),x===KeyCode.PageUp&&Q(1),x===KeyCode.PageDown&&Q(-1))}let ue=!1,ie=0;function pe(B){B.touches.length>=2&&(ue=!0,ie=Math.sqrt((B.touches[0].clientX-B.touches[1].clientX)**2+(B.touches[0].clientY-B.touches[1].clientY)**2))}function he(B){B.touches.length<2&&(ue=!1)}function ge(B){if(!ue)return;const x=Math.sqrt((B.touches[0].clientX-B.touches[1].clientX)**2+(B.touches[0].clientY-B.touches[1].clientY)**2);W(x/ie),ie=x}return onMounted(async()=>{m=document.getElementById("fly-map"),w=m.getContext("2d"),g=document.getElementById("fly-thumbnail"),y=g.getContext("2d");const B=getComputedStyle(m),x=getComputedStyle(g);m.width=parseFloat(B.width)*devicePixelRatio,m.height=parseFloat(B.height)*devicePixelRatio,g.width=parseFloat(x.width)*devicePixelRatio,g.height=parseFloat(x.width)*devicePixelRatio,Array.from(document.getElementsByClassName("fly-settings")).forEach(A=>{A.addEventListener("click",K=>A.blur())}),_e(n.value),z(),useDrag(m,te,(A,K)=>{oe=A,le=K,T=A,J=K},()=>{setTimeout(()=>{P=!1},50)},!0),useWheel(m,(A,K)=>{const V=-Math.sign(K)*.1+1;W(V)}),await R(50),core.plugin.transition.value&&await R(600),document.addEventListener("keyup",me),m.addEventListener("touchstart",pe),m.addEventListener("touchend",he),m.addEventListener("touchend",ge)}),onUnmounted(()=>{cancelGlobalDrag(te),document.removeEventListener("keyup",me)}),(B,x)=>{const A=__unplugin_components_0$2,K=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$e,[createBaseVNode("div",_hoisted_2$b,[createBaseVNode("span",{class:"button-text",onClick:$},[createVNode(unref(LeftOutlined)),createTextVNode(" 返回游戏")])]),createBaseVNode("div",_hoisted_3$a,[createBaseVNode("div",_hoisted_4$9,[_hoisted_5$8,createVNode(A,{class:"fly-settings",checked:s.value,"onUpdate:checked":x[0]||(x[0]=V=>s.value=V),"checked-children":"ON","un-checked-children":"OFF"},null,8,["checked"])]),unref(isMobile)?createCommentVNode("",!0):(openBlock(),createElementBlock("div",_hoisted_6$7,[_hoisted_7$6,createVNode(A,{class:"fly-settings",checked:a.value,"onUpdate:checked":x[1]||(x[1]=V=>a.value=V),"checked-children":"ON","un-checked-children":"OFF"},null,8,["checked"])])),unref(isMobile)?createCommentVNode("",!0):(openBlock(),createElementBlock("span",{key:1,class:"button-text",id:"fly-download",onClick:ee},"下载地图图片"))]),createBaseVNode("div",_hoisted_8$5,[createBaseVNode("div",_hoisted_9$5,[createVNode(Scroll,{id:"fly-area"},{default:withCtx(()=>[createBaseVNode("div",_hoisted_10$5,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(t),(V,X)=>(openBlock(),createElementBlock("span",{selected:o.value===X,class:"selectable",onClick:fe=>o.value=X},toDisplayString(X),9,_hoisted_11$5))),256))])]),_:1}),createVNode(K,{type:"vertical",dashed:"",id:"divider-left"}),createBaseVNode("div",{id:"fly-map-div"},[createBaseVNode("canvas",{id:"fly-map",onClick:se})])]),createVNode(K,{id:"divider-right",dashed:"",type:unref(isMobile)?"horizontal":"vertical"},null,8,["type"]),createBaseVNode("div",_hoisted_12$3,[createBaseVNode("canvas",{id:"fly-thumbnail",onClick:ne}),createBaseVNode("div",_hoisted_13$3,[createVNode(unref(DoubleLeftOutlined),{onClick:x[2]||(x[2]=V=>Q(-10)),class:"button-text"}),createVNode(unref(LeftOutlined),{onClick:x[3]||(x[3]=V=>Q(-1)),class:"button-text"}),createBaseVNode("span",_hoisted_14$3,toDisplayString(U.value),1),createVNode(unref(RightOutlined),{onClick:x[4]||(x[4]=V=>Q(1)),class:"button-text"}),createVNode(unref(DoubleRightOutlined),{onClick:x[5]||(x[5]=V=>Q(10)),class:"button-text"})])])])])}}}),fly_vue_vue_type_style_index_0_scoped_301939b0_lang="",Fly=_export_sfc(_sfc_main$e,[["__scopeId","data-v-301939b0"]]),showFixed=ref(!1);let lastId;const show=debounce(e=>{var r;if(!window.flags||!flags.mouseLoc)return;flags.clientLoc=[e.clientX,e.clientY];const[t,o]=getLocFromMouseLoc(...flags.mouseLoc),n=core.getBlockId(t,o);if(n!==lastId&&(showFixed.value=!1),!n||!((r=core.getClsFromId(n))!=null&&r.startsWith("enemy")))return;lastId=n;const s=core.material.enemys[n],a=getDetailedEnemy(s,t,o);core.plugin.bookDetailEnemy=a,showFixed.value=!0},200);function init$d(){const e=core.canvas.data.canvas;return e.addEventListener("mousemove",t=>{if(!core.isPlaying()||core.status.lockControl)return;const[o,n]=getLocFromMouseLoc(...flags.mouseLoc),s=core.getBlockId(o,n);s!==lastId&&(showFixed.value=!1),s&&show(t)}),e.addEventListener("mousedown",t=>{showFixed.value=!1}),{showFixed}}function getLocFromMouseLoc(e,t){const o=Math.round(e+core.bigmap.offsetX/32),n=Math.round(t+core.bigmap.offsetY/32);return[o,n]}function getDetailedEnemy(e,t,o,n=core.status.floorId){var m,w,g,y,k;const s=core.status.maps[n].ratio,a=Object.assign({},e,core.getEnemyInfo(e,void 0,t,o,n),(m=core.getDamageInfo(e,void 0,t,o,n))!=null?m:{}),r=core.nextCriticals(e,1,t,o,n),l=core.getDefDamage(e,s,t,o,n),h=core.getSpecialText(a);let d=cloneDeep(h);d.length>2&&(d=d.slice(0,2).concat(["..."]));const _=core.getSpecialColor(a);let u=cloneDeep(_);u.length>2&&(u=u.slice(0,2).concat(["#fff"])),d.length===0&&(d=["无属性"],u=["#fff"]);const c=getDamageColor(a.damage);return Object.assign(a,{critical:(g=(w=r[0])==null?void 0:w[0])!=null?g:"???",criticalDamage:(k=(y=r[0])==null?void 0:y[1])!=null?k:"???",defDamage:l,specialColor:_,specialText:h,toShowColor:u,toShowSpecial:d,damageColor:c})}const _hoisted_1$d={id:"fixed-detail"},_sfc_main$d=defineComponent({__name:"fixedDetail",setup(e){var h,d;const t=(h=core.plugin.fixedDetailPanel)!=null?h:"special";core.plugin.bookDetailPos=0;const[o,n]=flags.mouseLoc,s=Math.round(o+core.bigmap.offsetX/32),a=Math.round(n+core.bigmap.offsetY/32),r=core.getBlockId(s,a);if(r&&((d=core.getClsFromId(r))!=null&&d.startsWith("enemy"))){const _=core.material.enemys[r],u=getDetailedEnemy(_,s,a);core.plugin.bookDetailEnemy=u}else l();function l(){core.plugin.fixedDetailOpened.value=!1}return(_,u)=>(openBlock(),createElementBlock("div",_hoisted_1$d,[createVNode(BookDetail,{"from-book":!1,"default-panel":unref(t),onClose:l},null,8,["default-panel"])]))}}),fixedDetail_vue_vue_type_style_index_0_scoped_95b38cb5_lang="",FixedDetail=_export_sfc(_sfc_main$d,[["__scopeId","data-v-95b38cb5"]]),_withScopeId$3=e=>(pushScopeId("data-v-54c55fcb"),e=e(),popScopeId(),e),_hoisted_1$c={id:"shop"},_hoisted_2$a={id:"tools"},_hoisted_3$9={id:"item-name"},_hoisted_4$8={id:"item-info"},_hoisted_5$7=["innerHTML"],_hoisted_6$6={id:"shop-bottom"},_hoisted_7$5={id:"item-list"},_hoisted_8$4=["selected","onClick"],_hoisted_9$4={class:"item-icon"},_hoisted_10$4={id:"item-sell-info"},_hoisted_11$4={id:"shop-mode"},_hoisted_12$2=["active"],_hoisted_13$2=["active"],_hoisted_14$2=_withScopeId$3(()=>createBaseVNode("span",null,"买价",-1)),_hoisted_15$2=_withScopeId$3(()=>createBaseVNode("span",null,"卖价",-1)),_hoisted_16$2={class:"item-sell-info"},_hoisted_17$2=_withScopeId$3(()=>createBaseVNode("span",null,"存货",-1)),_hoisted_18$2={class:"item-sell-info"},_hoisted_19$2=_withScopeId$3(()=>createBaseVNode("span",null,"拥有",-1)),_hoisted_20$1={id:"sell-count"},_hoisted_21$1={id:"sell-count-select"},_hoisted_22$1={id:"fly-now"},_hoisted_23$1={id:"sell-confirm"},_hoisted_24$1=["danger"],_sfc_main$c=defineComponent({__name:"shop",setup(e){var D;const t=core.plugin.openedShopId,o=core.status.shops[core.plugin.openedShopId];if(!o.item)throw new TypeError("Wrong global shop type delivered in opening item shop.");(D=flags.itemShop)!=null||(flags.itemShop={});const n=flags,s=o.choices,a=ref(0),r=ref("buy"),l=core.material.items,h=core.itemCount,d=ref(0),_=ref(core.status.hero.money),u=ref(!1);let c=!1;watch(d,b=>{if(b<0&&(b=0),r.value==="buy")b>m.value&&(b=m.value);else{const S=h(f.value.id);b>S&&(b=S)}d.value=b});const f=computed(()=>s[a.value]),m=computed(()=>{var b,S;return u.value,f.value.number-((S=(b=flags.itemShop[t])==null?void 0:b[f.value.id])!=null?S:0)}),w=computed(()=>core.material.items[f.value.id]),g=computed(()=>{const b=w.value.text;return splitText([b.startsWith("!!html")?b.slice(6):b])}),y=computed(()=>d.value*parseInt(r.value==="buy"?f.value.money:f.value.sell));watch(m,b=>{b<d.value&&(d.value=b)});function k(){var S,L,F,E,z,ee,ne,M,Z,W;if(d.value===0)return;const b=core.status.hero.money;c=!0,r.value==="buy"?y.value<=b?(core.getItem(f.value.id,d.value),core.status.hero.money-=y.value,_.value-=y.value,(L=(S=flags.itemShop)[t])!=null||(S[t]={}),(z=(F=flags.itemShop[t])[E=f.value.id])!=null||(F[E]=0),flags.itemShop[t][f.value.id]+=d.value,tip$1("success",`成功购买${d.value}${w.value.name}`),core.status.route.push(`buy:${f.value.id}:${d.value}`)):tip$1("error","你的金币不够!"):(core.addItem(f.value.id,-d.value),core.status.hero.money+=y.value,_.value+=y.value,(ne=(ee=flags.itemShop)[t])!=null||(ee[t]={}),(W=(M=flags.itemShop[t])[Z=f.value.id])!=null||(M[Z]=0),flags.itemShop[t][f.value.id]-=d.value,tip$1("success",`成功卖出${d.value}${w.value.name}`),core.status.route.push(`sell:${f.value.id}:${d.value}`)),d.value=0,u.value=!u.value}function $(b){const S=keycode(b.keyCode);(S===KeyCode.KeyX||S===KeyCode.Escape||S===KeyCode.KeyV)&&N(),S===KeyCode.UpArrow&&a.value>=1&&a.value--,S===KeyCode.DownArrow&&a.value<=s.length-2&&a.value++,(S===KeyCode.KeyC||S===KeyCode.Space||S===KeyCode.Enter)&&k()}function U(b){const S=keycode(b.keyCode);S===KeyCode.LeftArrow&&d.value--,S===KeyCode.RightArrow&&d.value++}function N(){c&&core.status.route.push("closeShop"),core.plugin.shopOpened.value=!1}return onMounted(async()=>{await R(50),core.plugin.transition.value&&await R(600),document.addEventListener("keyup",$),document.addEventListener("keydown",U),core.status.route.push(`openShop:${t}`)}),onUnmounted(()=>{document.removeEventListener("keyup",$),document.removeEventListener("keydown",U)}),(b,S)=>{const L=__unplugin_components_0;return openBlock(),createElementBlock("div",_hoisted_1$c,[createBaseVNode("div",_hoisted_2$a,[createBaseVNode("span",{class:"button-text",onClick:N},[createVNode(unref(LeftOutlined)),createTextVNode(" 返回游戏")])]),createBaseVNode("span",_hoisted_3$9,toDisplayString(w.value.name),1),createVNode(L,{dashed:"",style:{"border-color":"#ddd4"},id:"divider"}),createBaseVNode("div",_hoisted_4$8,[createVNode(Scroll,{id:"item-desc","no-scroll":!0},{default:withCtx(()=>[createBaseVNode("span",{innerHTML:g.value},null,8,_hoisted_5$7)]),_:1})]),createVNode(L,{dashed:"",style:{"border-color":"#ddd4"},id:"divider-split"}),createBaseVNode("div",_hoisted_6$6,[createBaseVNode("div",_hoisted_7$5,[createVNode(Scroll,{style:{width:"100%",height:"100%"}},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(s),(F,E)=>{var z,ee;return openBlock(),createElementBlock("div",{class:"selectable item-one",selected:E===a.value,onClick:ne=>a.value=E},[createBaseVNode("div",_hoisted_9$4,[createVNode(_sfc_main$t,{id:F.id,noborder:!0},null,8,["id"]),createBaseVNode("span",null,toDisplayString(unref(l)[F.id].name),1)]),createBaseVNode("span",null,"× "+toDisplayString((r.value==="buy"?F.number-((ee=(z=unref(n).itemShop[unref(t)])==null?void 0:z[F.id])!=null?ee:0):unref(h)(F.id))+(u.value,0)),1)],8,_hoisted_8$4)}),256))]),_:1})]),createVNode(L,{dashed:"",style:{"border-color":"#ddd4"},type:"vertical",id:"divider-vertical"}),createBaseVNode("div",_hoisted_10$4,[createBaseVNode("div",_hoisted_11$4,[createBaseVNode("span",{class:"button-text mode-button",active:r.value==="buy",onClick:S[0]||(S[0]=F=>r.value="buy")},"购买",8,_hoisted_12$2),createVNode(L,{dashed:"",type:"vertical",id:"divider-vertical",style:{"border-color":"#ddd4"}}),createBaseVNode("span",{class:"button-text mode-button",active:r.value==="sell",danger:"true",onClick:S[1]||(S[1]=F=>r.value="sell")},"售出",8,_hoisted_13$2)]),createVNode(L,{dashed:"",style:{"border-color":"#ddd4"},id:"divider-mode"}),createBaseVNode("div",{class:"item-sell-info",style:normalizeStyle({color:r.value==="buy"?_.value>=parseInt(f.value.money)?"lightgreen":"lightcoral":"white"})},[_hoisted_14$2,createBaseVNode("span",null,toDisplayString(f.value.money),1)],4),createBaseVNode("div",{class:"item-sell-info",style:normalizeStyle({color:r.value==="sell"?"lightcoral":"white"})},[_hoisted_15$2,createBaseVNode("span",null,toDisplayString(f.value.sell),1)],4),createBaseVNode("div",_hoisted_16$2,[_hoisted_17$2,createBaseVNode("span",null,toDisplayString(m.value),1)]),createBaseVNode("div",_hoisted_18$2,[_hoisted_19$2,createBaseVNode("span",null,toDisplayString(unref(h)(f.value.id)),1)]),createVNode(L,{dashed:"",style:{"border-color":"#ddd4"},id:"divider-mode"}),createBaseVNode("div",_hoisted_20$1,[createBaseVNode("span",null,toDisplayString(r.value==="buy"?"购买":"售出")+"数量",1),createBaseVNode("div",_hoisted_21$1,[createVNode(unref(DoubleLeftOutlined),{class:"button-text",onClick:S[2]||(S[2]=F=>d.value-=10)}),createVNode(unref(LeftOutlined),{class:"button-text",onClick:S[3]||(S[3]=F=>d.value--)}),createBaseVNode("span",_hoisted_22$1,toDisplayString(d.value),1),createVNode(unref(RightOutlined),{class:"button-text",onClick:S[4]||(S[4]=F=>d.value++)}),createVNode(unref(DoubleRightOutlined),{class:"button-text",onClick:S[5]||(S[5]=F=>d.value+=10)})])]),createVNode(L,{dashed:"",style:{"border-color":"#ddd4",margin:"2vh 0 2vh 0"}}),createBaseVNode("div",_hoisted_23$1,[createBaseVNode("span",{id:"sell-total",style:normalizeStyle({color:r.value==="buy"&&_.value>y.value?"lightgreen":"lightcoral"})},"总价:"+toDisplayString(d.value*parseInt(r.value==="buy"?f.value.money:f.value.sell)),5),createBaseVNode("span",{id:"sell-button",class:"button-text",danger:r.value==="sell","danger-display":"true",active:"true",onClick:k},"确认"+toDisplayString(r.value==="buy"?"购买":"售出"),9,_hoisted_24$1)])])])])}}}),shop_vue_vue_type_style_index_0_scoped_54c55fcb_lang="",Shop=_export_sfc(_sfc_main$c,[["__scopeId","data-v-54c55fcb"]]),index="",normal=[{name:"虚惊一场",text:["打完山洞门口的兽人后只剩一滴血"],point:30},{name:"真能刷",text:['勇气之路的刷血怪刷到 <span style="color: gold">15w</span> 以上的血'],point:30}],challenge=[{name:"逃出生天",text:["通过山路追逐战的困难难度"],point:20},{name:"冰与火之舞",text:["完成第二章音游特殊战的困难难度"],point:50}],explore=[{name:"勇气巅峰",text:["第一章完成度达到100%"],progress:"${core.getChapterCompletion(1)} / 100",percent:!0,point:50},{name:"你是怎么办到的?!",text:["与山路上的若干个神秘木牌对话"],progress:"${core.getLocalStorage('mountSign', 0)} / 5",hide:"该探索成就需要你自己探索如何达成",point:25},{name:"智慧之心",text:["第二章完成度达到100%"],progress:"${core.getChapterCompletion(2)} / 100",percent:!0,point:50},{name:"源头?",text:["在冰封雪原第一个山洞的水源处使用跳跃技能,并向前一步触发剧情"],hide:"该探索成就需要你自己探索如何达成",point:30},{name:"学坏了",text:["学习电摇嘲讽技能"],hide:"该探索成就需要你自己探索如何达成",point:20},{name:"满腹经纶",text:["把第二章中所有能学习的技能都学一遍"],hide:"该探索成就需要你自己探索如何达成",progress:"",point:50}],list={normal,challenge,explore};function init$c(){return{getChapterCompletion,checkVisitedFloor}}const floors={1:["MT0","tower7"]},achis={1:{normal:[0,1],challenge:[0],explore:[1]}},achiDict={1:0};function checkVisitedFloor(){changeLocalStorage("visitedFloor",e=>{let t=!1;return core.floorIds.forEach(o=>{core.hasVisitedFloor(o)&&(e[o]=!0,t=!0)}),t&&checkCompletionAchievement(),e},{})}function getChapterCompletion(e){if(!achis[e])return 0;let t=0;const o=floors[e],n=Object.values(achis[e]).reduce((u,c)=>u+c.length,0);let s=0;const a=core.getLocalStorage("visitedFloor",{});o.forEach(u=>{a[u]&&s++});const r=o.length/(o.length+n),l=r*s/o.length;let h=0,d=0;for(const[u,c]of Object.entries(achis[e]))c.forEach(f=>{d+=list[u][f].point,hasCompletedAchievement(u,f)&&(h+=list[u][f].point)});const _=h/d*(1-r);return t=l+_,Math.floor(t*100)}function checkCompletionAchievement(){[1].forEach(e=>{getChapterCompletion(e)>=100&&completeAchievement("explore",achiDict[e])})}function init$b(){return{completeAchievement,hasCompletedAchievement,addMountSign}}const showComplete=ref(!1),completeAchi=ref("explore,1"),totalPoint=Object.values(list).map(e=>e.reduce((t,o)=>o.point+t,0)).reduce((e,t)=>e+t);function completeAchievement(e,t){flags.debug||hasCompletedAchievement(e,t)||(changeLocalStorage("achievement",o=>(o[e][t]=!0,o),{normal:[],challenge:[],explore:[]}),e==="explore"&&!Object.values(achiDict).includes(t)&&checkCompletionAchievement(),completeAchi.value=`${e},${t}`,showComplete.value=!0)}function hasCompletedAchievement(e,t){var n;let o=core.getLocalStorage("achievement");if(!has(o)){const s={normal:[],challenge:[],explore:[]};o=s,core.setLocalStorage("achievement",s)}return(n=o[e][t])!=null?n:!1}function getNowPoint(){let e=0;for(const[t,o]of Object.entries(list))o.forEach((n,s)=>{hasCompletedAchievement(t,s)&&(e+=n.point)});return e}function addMountSign(e){flags.debug||!core.getLocalStorage(`mountSign_${e}`,!1)&&!hasCompletedAchievement("explore",1)&&(changeLocalStorage("mountSign",t=>{if(t+1>=5){completeAchievement("explore",1);for(const o of[1,2,3,4,5])core.removeLocalStorage(`mountSign_${o}`)}return t+1},0),core.setLocalStorage(`mountSign_${e}`,!0))}const _hoisted_1$b={id:"achievement"},_hoisted_2$9={id:"tools"},_hoisted_3$8={id:"column"},_hoisted_4$7={class:"achievement-column"},_hoisted_5$6=["active","onClick"],_hoisted_6$5={id:"list"},_hoisted_7$4={class:"achievement-one"},_hoisted_8$3={class:"list-div"},_hoisted_9$3={class:"list-one"},_hoisted_10$3=["complete"],_hoisted_11$3={class:"list-name"},_hoisted_12$1=["innerHTML"],_hoisted_13$1={class:"list-end"},_hoisted_14$1={class:"end-info"},_hoisted_15$1=["complete"],_hoisted_16$1={class:"point"},_hoisted_17$1={key:0,class:"list-progress"},_hoisted_18$1={id:"total-progress"},_hoisted_19$1={id:"point-number"},_sfc_main$b=defineComponent({__name:"achievement",setup(__props){const column=["normal","challenge","explore"],columnName={normal:"普通成就",challenge:"挑战成就",explore:"探索成就"},selectedColumn=ref("normal"),offset=computed(()=>column.indexOf(selectedColumn.value)*100),height=window.innerHeight,totalPoint=Object.values(list).map(e=>e.reduce((t,o)=>o.point+t,0)).reduce((e,t)=>e+t),nowPoint=getNowPoint();function getAllAchievements(type){return list[type].map((v,i)=>{const complete=hasCompletedAchievement(type,i),text=v.hide&&!complete?v.hide:v.text.join(""),res={text,name:v.name,point:v.point,complete};if(v.progress){const p=eval("`"+v.progress+"`");res.progress=p,res.percent=Math.floor(eval(p)*100),v.percent&&(res.usePercent=!0)}return res})}function exit(){try{core.closePanel()}catch(e){noClosePanel.value=!0}achievementOpened.value=!1}return(e,t)=>{const o=__unplugin_components_0,n=__unplugin_components_0$3;return openBlock(),createElementBlock("div",_hoisted_1$b,[createBaseVNode("div",_hoisted_2$9,[createBaseVNode("span",{id:"back",class:"button-text tools",onClick:exit},[createVNode(unref(LeftOutlined)),createTextVNode("返回游戏")])]),createBaseVNode("div",_hoisted_3$8,[(openBlock(),createElementBlock(Fragment,null,renderList(column,s=>createBaseVNode("div",_hoisted_4$7,[createBaseVNode("span",{class:"column-text button-text",active:selectedColumn.value===s,onClick:a=>selectedColumn.value=s},toDisplayString(columnName[s]),9,_hoisted_5$6)])),64))]),createVNode(o,{dashed:"",id:"divider"}),createBaseVNode("div",_hoisted_6$5,[createBaseVNode("div",{id:"achievement-list",style:normalizeStyle({left:`-${offset.value}%`})},[(openBlock(),createElementBlock(Fragment,null,renderList(column,s=>createBaseVNode("div",_hoisted_7$4,[createVNode(Scroll,{class:"list-scroll",width:unref(isMobile)?10:20},{default:withCtx(()=>[createBaseVNode("div",_hoisted_8$3,[(openBlock(!0),createElementBlock(Fragment,null,renderList(getAllAchievements(s),a=>(openBlock(),createElementBlock("div",_hoisted_9$3,[createBaseVNode("div",{class:"list-content",complete:a.complete},[createBaseVNode("span",_hoisted_11$3,toDisplayString(a.name),1),createBaseVNode("span",{class:"list-text",innerHTML:a.text},null,8,_hoisted_12$1),createBaseVNode("div",_hoisted_13$1,[createBaseVNode("div",_hoisted_14$1,[createBaseVNode("span",{class:"complete",complete:a.complete},"完成情况: "+toDisplayString(a.complete?"已完成":"未完成"),9,_hoisted_15$1),createBaseVNode("span",_hoisted_16$1,"成就点数: "+toDisplayString(a.point),1)]),a.progress?(openBlock(),createElementBlock("div",_hoisted_17$1,[createVNode(n,{percent:a.percent,strokeColor:{"0%":"#108ee9","100%":"#87d068"},strokeWidth:unref(height)/150,format:()=>a.usePercent?`${a.percent}%`:a.progress},null,8,["percent","strokeWidth","format"])])):createCommentVNode("",!0)])],8,_hoisted_10$3),createVNode(o,{id:"divider",dashed:""})]))),256))])]),_:2},1032,["width"])])),64))],4)]),createBaseVNode("div",_hoisted_18$1,[createVNode(n,{id:"point-progress",percent:unref(nowPoint)/unref(totalPoint)*100,strokeColor:{"0%":"#108ee9","100%":"#87d068"},strokeWidth:unref(height)/150,showInfo:!1},null,8,["percent","strokeWidth"]),createBaseVNode("span",_hoisted_19$1,"成就点: "+toDisplayString(unref(nowPoint))+" / "+toDisplayString(unref(totalPoint)),1)])])}}}),achievement_vue_vue_type_style_index_0_scoped_49345ec1_lang="",Achievement=_export_sfc(_sfc_main$b,[["__scopeId","data-v-49345ec1"]]),bgm={"title.mp3":{area:"未完工",name:"川井宪次 - 破裂足音",from:"《永远的七日之都》",img:"/project/images/bg.jpg",desc:[]},"cave.mp3":{area:"山洞",name:"Faodail - Wren",img:"",desc:[]},"grass.mp3":{area:"草地",name:"大树 & 朱晨阳 - 大树与鹿",img:"",desc:[]},"mount.mp3":{area:"山路",name:"Epistra - Dream Of A Dream",img:"",desc:[]},"escape.mp3":{area:"山路追逐",name:"Gareth Coker - Escaping a Foul Presence",from:"《奥日与精灵意志》",img:"",desc:[]},"plot1.mp3":{area:"勇气之路",name:"Mark Petrie & Danny McCarthy - Rags To Rings",img:"",desc:[]},"tower.mp3":{area:"智慧之塔",name:"Falcom Sound Team J.D.K. - A Light Illuminating The Depth",from:"《英雄传说:零之轨迹》",img:"",desc:[]},"beforeBoss.mp3":{area:"战前独白",name:"Evan LE NY - Some Calm",from:"《太空化学》",img:"",desc:[]}},_hoisted_1$a={id:"bgm-list"},_hoisted_2$8=["selected","onClick"],_hoisted_3$7={id:"bgm-name"},_hoisted_4$6=["src"],_hoisted_5$5={key:0},_hoisted_6$4=["innerHTML"],_sfc_main$a=defineComponent({__name:"bgmList",setup(__props){const list=bgm,selected=ref("title.mp3"),content=computed(()=>eval("`"+splitText(list[selected.value].desc)+"`")),name=computed(()=>list[selected.value].name);function exit(){core.plugin.bgmOpened.value=!1}function select(e){selected.value=e}return(e,t)=>(openBlock(),createBlock(Colomn,{onClose:exit,width:60,height:80,left:30,right:70},{left:withCtx(()=>[createBaseVNode("div",_hoisted_1$a,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(list),(o,n)=>(openBlock(),createElementBlock("span",{class:"selectable",selected:selected.value===n,onClick:s=>select(n)},toDisplayString(o.area),9,_hoisted_2$8))),256))])]),right:withCtx(()=>[createBaseVNode("div",null,[createBaseVNode("div",_hoisted_3$7,[createBaseVNode("img",{id:"bgm-image",src:unref(list)[selected.value].img},null,8,_hoisted_4$6),createBaseVNode("span",null,toDisplayString(name.value),1),unref(list)[selected.value].from?(openBlock(),createElementBlock("span",_hoisted_5$5,"出自    "+toDisplayString(unref(list)[selected.value].from),1)):createCommentVNode("",!0)]),createBaseVNode("span",{innerHTML:content.value},null,8,_hoisted_6$4)])]),_:1}))}}),bgmList_vue_vue_type_style_index_0_scoped_8a4e2676_lang="",Bgm=_export_sfc(_sfc_main$a,[["__scopeId","data-v-8a4e2676"]]),bookOpened=ref(!1),toolOpened=ref(!1),equipOpened=ref(!1),showStatusBar=ref(!1),settingsOpened=ref(!1),descOpened=ref(!1),skillOpened=ref(!1),skillTreeOpened=ref(!1),flyOpened=ref(!1),showStudiedSkill=ref(!1),fixedDetailOpened=ref(!1),shopOpened=ref(!1),startOpened=ref(!1),achievementOpened=ref(!1),bgmOpened=ref(!1),transition=ref(!0),noClosePanel=ref(!1),loaded=ref(!1),startAnimationEnded=ref(!1);watch(loaded,e=>{e&&startAnimationEnded.value&&(startOpened.value=!0)});watch(startAnimationEnded,e=>{e&&loaded.value&&(startOpened.value=!0)});let app;const UI_LIST=[[bookOpened,Book],[toolOpened,Toolbox],[equipOpened,Equipbox],[settingsOpened,Settings],[descOpened,Desc],[skillOpened,Skill],[skillTreeOpened,SkillTree],[flyOpened,Fly],[fixedDetailOpened,FixedDetail],[shopOpened,Shop],[achievementOpened,Achievement],[bgmOpened,Bgm]],uiStack=shallowReactive([]);function init$a(){return app=document.getElementById("root"),UI_LIST.forEach(([e,t])=>{watch(e,o=>{if(o===!0)uiStack.push(markRaw(t)),showApp();else{const n=uiStack.findIndex(s=>s===t);if(n===-1)return;uiStack.length===1?hideApp(n):uiStack.splice(n,1)}})}),{uiStack,transition,bookOpened,toolOpened,equipOpened,showStatusBar,settingsOpened,descOpened,skillOpened,skillTreeOpened,flyOpened,showStudiedSkill,fixedDetailOpened,shopOpened,startOpened,startAnimationEnded,loaded,achievementOpened,bgmOpened}}async function showApp(){core.lockControl(),transition.value?app.style.transition="all 0.6s linear":app.style.transition="none",app.style.display="flex",await R(50),app.style.opacity="1"}async function hideApp(e){transition.value?(app.style.transition="all 0.6s linear",app.style.opacity="0",await R(600)):(app.style.transition="",app.style.opacity="0"),uiStack.splice(e,1),app.style.display="none",noClosePanel.value||core.closePanel(),noClosePanel.value=!1}const _hoisted_1$9={id:"ui"},_sfc_main$9=defineComponent({__name:"App",setup(e){return(t,o)=>(openBlock(),createElementBlock("div",_hoisted_1$9,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(uiStack),n=>(openBlock(),createBlock(resolveDynamicComponent(n)))),256))]))}}),App_vue_vue_type_style_index_0_scoped_9668aeb3_lang="",App=_export_sfc(_sfc_main$9,[["__scopeId","data-v-9668aeb3"]]),chapterShowed=ref(!1),chapterContent=ref("");function init$9(){return{chapterShowed,chapterContent}}const _hoisted_1$8=["id"],_hoisted_2$7=["id"],_hoisted_3$6=["id","selected"],_hoisted_4$5=["id","selected","selectable"],_hoisted_5$4=["id","selected","selectable"],_hoisted_6$3=["id","selected","selectable"],_hoisted_7$3=["id","selected","selectable"],_sfc_main$8=defineComponent({__name:"box",props:{dragable:{type:Boolean},resizable:{type:Boolean},left:{},top:{},width:{},height:{}},emits:["update:left","update:top","update:width","update:height"],setup(e,{emit:t}){const o=e,n=(1e8*Math.random()).toFixed(0),s=ref(!1);let a=0,r,l,h,d,_,u;const c=ref(isMobile?window.innerWidth-100:window.innerWidth*.175),f=ref(isMobile?250:window.innerHeight-100),m=ref(isMobile?30:50),w=ref(isMobile?30:50);watch(m,E=>t("update:left",E)),watch(w,E=>t("update:top",E)),watch(c,E=>t("update:width",E)),watch(f,E=>t("update:height",E));async function g(){s.value=!0,a=window.setTimeout(()=>{s.value=!1},4e3)}let y=0,k=0;function $(E,z){const ee=getComputedStyle(r),ne=parseFloat(ee.left),M=parseFloat(ee.top);m.value=ne+E-y,w.value=M+z-k,r.style.left=`${m.value}px`,r.style.top=`${w.value}px`,s.value=!0,clearTimeout(a),y=E,k=z}let U=m.value+c.value;function N(E,z){r.style.left=`${E}px`,c.value=U-E,m.value=E,r.style.width=`${c.value}px`}let D=w.value+f.value;function b(E,z){r.style.top=`${z}px`,f.value=D-z,w.value=z,r.style.height=`${f.value}px`}function S(E,z){const ee=getComputedStyle(r);c.value=E-parseFloat(ee.left),r.style.width=`${c.value}px`}function L(E,z){const ee=getComputedStyle(r);f.value=z-parseFloat(ee.top),r.style.height=`${f.value}px`}function F(){r=document.getElementById(`box-${n}`),l=document.getElementById(`border-left-${n}`),d=document.getElementById(`border-top-${n}`),h=document.getElementById(`border-right-${n}`),_=document.getElementById(`border-bottom-${n}`),u=document.getElementById(`box-drag-${n}`),r&&(has(o.left)&&(m.value=o.left),has(o.top)&&(w.value=o.top),has(o.width)&&(c.value=o.width),has(o.height)&&(f.value=o.height),r.style.left=`${m.value}px`,r.style.top=`${w.value}px`,r.style.width=`${c.value}px`,r.style.height=`${f.value}px`)}return onUpdated(F),onMounted(async()=>{await R(50),F(),r&&(o.dragable&&useDrag(u,$,(E,z)=>{y=E,k=z},()=>{s.value=!1},!0),o.resizable&&(useDrag(l,N,(E,z)=>{U=m.value+c.value},void 0,!0),useDrag(d,b,(E,z)=>{D=w.value+f.value},void 0,!0),useDrag(h,S,void 0,void 0,!0),useDrag(_,L,void 0,void 0,!0)))}),onUnmounted(()=>{o.dragable&&cancelGlobalDrag($),o.resizable&&(cancelGlobalDrag(N),cancelGlobalDrag(b),cancelGlobalDrag(S),cancelGlobalDrag(L))}),(E,z)=>(openBlock(),createElementBlock("div",{id:`box-${unref(n)}`,class:"box"},[createBaseVNode("div",{id:`box-main-${unref(n)}`,class:"box-main",onClick:g},[renderSlot(E.$slots,"default",{},void 0,!0)],8,_hoisted_2$7),E.dragable?(openBlock(),createElementBlock("div",{key:0,id:`box-move-${unref(n)}`,class:"box-move",selected:s.value},[createVNode(unref(DragOutlined),{id:`box-drag-${unref(n)}`,class:"box-drag",style:{right:"0",bottom:"0",position:"absolute"}},null,8,["id"])],8,_hoisted_3$6)):createCommentVNode("",!0),createBaseVNode("div",{class:"border border-vertical border-left",id:`border-left-${unref(n)}`,selected:s.value&&E.resizable,selectable:E.resizable},null,8,_hoisted_4$5),createBaseVNode("div",{class:"border border-horizontal border-top",id:`border-top-${unref(n)}`,selected:s.value&&E.resizable,selectable:E.resizable},null,8,_hoisted_5$4),createBaseVNode("div",{class:"border border-vertical border-right",id:`border-right-${unref(n)}`,selected:s.value&&E.resizable,selectable:E.resizable},null,8,_hoisted_6$3),createBaseVNode("div",{class:"border border-horizontal border-bottom",id:`border-bottom-${unref(n)}`,selected:s.value&&E.resizable,selectable:E.resizable},null,8,_hoisted_7$3)],8,_hoisted_1$8))}}),box_vue_vue_type_style_index_0_scoped_edc283f6_lang="",Box=_export_sfc(_sfc_main$8,[["__scopeId","data-v-edc283f6"]]),_hoisted_1$7={id:"marked-enemy"},_hoisted_2$6={class:"marked-main"},_hoisted_3$5={class:"marked-info"},_hoisted_4$4={class:"marked-name marked-item"},_hoisted_5$3={class:"marked-damage marked-item"},_hoisted_6$2={class:"marked-critical marked-item"},_hoisted_7$2={class:"marked-critical-damage marked-item"},_hoisted_8$2={class:"marked-def marked-item"},_hoisted_9$2={class:"marked-button"},_hoisted_10$2=["onClick"],_hoisted_11$2=["onClick"],_sfc_main$7=defineComponent({__name:"markedEnemy",setup(e){var _,u;const t=(u=(_=core.status.thisMap)==null?void 0:_.ratio)!=null?u:1;let o=getMarkedEnemy();watch(checkMarkedStatus,s);const n=reactive({});function s(){o.push(...o.splice(0,o.length));for(const c in n)o.includes(c)||delete n[c]}function a(c){return has(n[c])||(n[c]={left:window.innerWidth-300,top:100,width:200,height:150,hidden:!1}),n[c]}function r(c){return core.material.enemys[c].name}function l(c){var f,m;return(m=core.formatBigNumber((f=core.getDamageInfo(c,void 0,void 0,void 0,"empty"))==null?void 0:f.damage))!=null?m:"???"}function h(c){var f,m;return(m=(f=core.nextCriticals(c,1,void 0,void 0,"empty")[0])==null?void 0:f.map(w=>core.formatBigNumber(w)))!=null?m:[0,0]}function d(c){return core.formatBigNumber(core.getDefDamage(c,t,void 0,void 0,"empty"))}return(c,f)=>(openBlock(),createElementBlock("div",_hoisted_1$7,[(openBlock(!0),createElementBlock(Fragment,null,renderList(unref(o),m=>(openBlock(),createElementBlock("div",null,[a(m).hidden?createCommentVNode("",!0):(openBlock(),createBlock(Box,{key:m,left:a(m).left,"onUpdate:left":w=>a(m).left=w,top:a(m).top,"onUpdate:top":w=>a(m).top=w,width:a(m).width,"onUpdate:width":w=>a(m).width=w,height:a(m).height,"onUpdate:height":w=>a(m).height=w,resizable:!0,dragable:!0},{default:withCtx(()=>[createVNode(Scroll,{class:"box-scroll","no-scroll":!0},{default:withCtx(()=>[createBaseVNode("div",_hoisted_2$6,[createBaseVNode("div",_hoisted_3$5,[createVNode(_sfc_main$t,{id:m,width:24,height:24},null,8,["id"]),createBaseVNode("span",_hoisted_4$4,toDisplayString(r(m)),1)]),createBaseVNode("span",_hoisted_5$3,"伤害:"+toDisplayString(l(m)),1),createBaseVNode("span",_hoisted_6$2,"临界:"+toDisplayString(h(m)[0]),1),createBaseVNode("span",_hoisted_7$2,"减伤:"+toDisplayString(h(m)[1]),1),createBaseVNode("span",_hoisted_8$2,toDisplayString(unref(t))+"防:"+toDisplayString(d(m)),1),createBaseVNode("div",_hoisted_9$2,[createBaseVNode("span",{class:"marked-hide button-text",onClick:withModifiers(w=>a(m).hidden=!0,["stop"])},"隐藏盒子",8,_hoisted_10$2),createBaseVNode("span",{class:"marked-cancel button-text",onClick:withModifiers(w=>unref(unmarkEnemy)(m),["stop"])},"取消标记",8,_hoisted_11$2)])])]),_:2},1024)]),_:2},1032,["left","onUpdate:left","top","onUpdate:top","width","onUpdate:width","height","onUpdate:height"]))]))),256))]))}}),markedEnemy_vue_vue_type_style_index_0_scoped_b674387d_lang="",MarkedEnemy=_export_sfc(_sfc_main$7,[["__scopeId","data-v-b674387d"]]),_imports_0$1="/HumanBreak/project/images/skill.png",_imports_1="/HumanBreak/project/images/hp.png",_imports_2="/HumanBreak/project/images/atk.png",_imports_3="/HumanBreak/project/images/def.png",_imports_4="/HumanBreak/project/images/IQ.png",_imports_5="/HumanBreak/project/images/money.png",_imports_6="/HumanBreak/project/images/exp.png",status=ref(!1);function init$8(){return{statusBarStatus:status}}const _withScopeId$2=e=>(pushScopeId("data-v-9b47d1d8"),e=e(),popScopeId(),e),_hoisted_1$6={id:"status-bar"},_hoisted_2$5={id:"status-div"},_hoisted_3$4=["onClick"],_hoisted_4$3={id:"status-lv"},_hoisted_5$2={id:"status-skill",class:"status-item"},_hoisted_6$1=_withScopeId$2(()=>createBaseVNode("img",{src:_imports_0$1,class:"status-icon"},null,-1)),_hoisted_7$1={key:0,id:"status-spring",class:"status-extra"},_hoisted_8$1={id:"status-hp",class:"status-item"},_hoisted_9$1=_withScopeId$2(()=>createBaseVNode("img",{src:_imports_1,class:"status-icon"},null,-1)),_hoisted_10$1={class:"status-item-bold"},_hoisted_11$1={id:"status-hpmax",class:"status-extra status-item-bold"},_hoisted_12={key:0,id:"status-jump",class:"status-extra"},_hoisted_13={id:"status-atk",class:"status-item"},_hoisted_14=_withScopeId$2(()=>createBaseVNode("img",{src:_imports_2,class:"status-icon"},null,-1)),_hoisted_15={class:"status-item-bold"},_hoisted_16={id:"status-mana",class:"status-extra status-item-bold"},_hoisted_17={id:"status-def",class:"status-item status-item-bold"},_hoisted_18=_withScopeId$2(()=>createBaseVNode("img",{src:_imports_3,class:"status-icon"},null,-1)),_hoisted_19={id:"status-mdef",class:"status-item status-item-bold"},_hoisted_20=_withScopeId$2(()=>createBaseVNode("img",{src:_imports_4,class:"status-icon"},null,-1)),_hoisted_21={id:"status-money",class:"status-item status-item-bold"},_hoisted_22=_withScopeId$2(()=>createBaseVNode("img",{src:_imports_5,class:"status-icon"},null,-1)),_hoisted_23={id:"status-exp",class:"status-item status-item-bold"},_hoisted_24=_withScopeId$2(()=>createBaseVNode("img",{src:_imports_6,class:"status-icon"},null,-1)),_hoisted_25={id:"status-key",class:"status-item status-item-bold"},_hoisted_26={style:{color:"#fca","padding-left":"10%"}},_hoisted_27={style:{color:"#aad"}},_hoisted_28={style:{color:"#f88","padding-right":"10%"}},_hoisted_29={key:0,class:"status-item"},_hoisted_30=["onClick"],_hoisted_31={key:1,class:"status-item"},_hoisted_32=["onClick"],_hoisted_33={key:2,class:"status-item"},_hoisted_34=["onClick"],_sfc_main$6=defineComponent({__name:"statusBar",setup(e){const t=ref(isMobile?window.innerWidth-60:window.innerWidth*.175),o=ref(isMobile?250:window.innerHeight-100),n=ref(!1),s=core.formatBigNumber;watch(t,N=>n.value=!n.value),watch(o,N=>n.value=!n.value);const a=shallowReactive({}),r=shallowReactive([]),l=ref(),h=ref(),d=ref(flags.autoSkill?"自动切换":"无"),_=ref(0),u=ref(),c=ref(core.getFlag("chapter",0)>0),f=ref(core.plugin.skillTree.getSkillLevel(11)>0),m=ref(),w=["hp","atk","def","mdef","hpmax","mana","money","exp","lv"];watch(status,g);function g(){var N,D,b,S;w.forEach(L=>{a[L]=core.getRealStatus(L)}),r[0]=core.itemCount("yellowKey"),r[1]=core.itemCount("blueKey"),r[2]=core.itemCount("redKey"),l.value=(N=core.status.thisMap)==null?void 0:N.title,h.value=core.getLvName(a.lv),flags.autoSkill?d.value="自动切换":flags.blade&&flags.bladeOn?d.value="断灭之刃":flags.shield&&flags.shieldOn?d.value="铸剑为盾":d.value="无",_.value=(D=core.getNextLvUpNeed())!=null?D:0,core.hasFlag("spring")?u.value=50-((b=flags.springCount)!=null?b:0):u.value=void 0,c.value=core.getFlag("chapter",0)>0,f.value=core.plugin.skillTree.getSkillLevel(11)>0,m.value=flags.skill2&&!core.plugin.skillEffects.jumpIgnoreFloor.includes(core.status.floorId)?3-((S=flags[`jump_${core.status.floorId}`])!=null?S:0):void 0}function y(){core.useItem("skill1")}function k(){core.useItem("cross")}function $(){core.ui._drawViewMaps()}function U(){}return onMounted(()=>{g()}),(N,D)=>(openBlock(),createElementBlock("div",_hoisted_1$6,[createVNode(Box,{resizable:!0,dragable:!0,width:t.value,"onUpdate:width":D[1]||(D[1]=b=>t.value=b),height:o.value,"onUpdate:height":D[2]||(D[2]=b=>o.value=b)},{default:withCtx(()=>[createVNode(Scroll,{id:"status-main",update:n.value,"onUpdate:update":D[0]||(D[0]=b=>n.value=b),"no-scroll":!0},{default:withCtx(()=>{var b,S,L;return[createBaseVNode("div",_hoisted_2$5,[createBaseVNode("span",{id:"status-floor",onClick:withModifiers($,["stop"]),class:"button-text"},toDisplayString(l.value),9,_hoisted_3$4),createBaseVNode("span",_hoisted_4$3,toDisplayString(h.value),1),createBaseVNode("div",_hoisted_5$2,[_hoisted_6$1,createBaseVNode("span",null,toDisplayString(d.value),1),unref(has)(u.value)?(openBlock(),createElementBlock("span",_hoisted_7$1,"剩余"+toDisplayString(u.value),1)):createCommentVNode("",!0)]),createBaseVNode("div",_hoisted_8$1,[_hoisted_9$1,createBaseVNode("span",_hoisted_10$1,toDisplayString(unref(s)(unref(a).hp)),1),createBaseVNode("span",_hoisted_11$1,"+"+toDisplayString(unref(s)(unref(a).hpmax))+"/t",1),unref(has)(m.value)?(openBlock(),createElementBlock("span",_hoisted_12,"跳跃剩余"+toDisplayString(m.value),1)):createCommentVNode("",!0)]),createBaseVNode("div",_hoisted_13,[_hoisted_14,createBaseVNode("span",_hoisted_15,toDisplayString(unref(s)(unref(a).atk)),1),createBaseVNode("span",_hoisted_16,"+"+toDisplayString(unref(s)(unref(a).mana)),1)]),createBaseVNode("div",_hoisted_17,[_hoisted_18,createBaseVNode("span",null,toDisplayString(unref(s)(unref(a).def)),1)]),createBaseVNode("div",_hoisted_19,[_hoisted_20,createBaseVNode("span",null,toDisplayString(unref(s)(unref(a).mdef)),1)]),createBaseVNode("div",_hoisted_21,[_hoisted_22,createBaseVNode("span",null,toDisplayString(unref(s)(unref(a).money)),1)]),createBaseVNode("div",_hoisted_23,[_hoisted_24,createBaseVNode("span",null,toDisplayString(unref(s)(_.value)),1)]),createBaseVNode("div",_hoisted_25,[createBaseVNode("span",_hoisted_26,toDisplayString((b=unref(r)[0])==null?void 0:b.toString().padStart(2,"0")),1),createBaseVNode("span",_hoisted_27,toDisplayString((S=unref(r)[1])==null?void 0:S.toString().padStart(2,"0")),1),createBaseVNode("span",_hoisted_28,toDisplayString((L=unref(r)[2])==null?void 0:L.toString().padStart(2,"0")),1)]),c.value?(openBlock(),createElementBlock("div",_hoisted_29,[createBaseVNode("span",{id:"skill-tree",class:"button-text",onClick:withModifiers(y,["stop"])},"技能树",8,_hoisted_30)])):createCommentVNode("",!0),c.value?(openBlock(),createElementBlock("div",_hoisted_31,[createBaseVNode("span",{id:"status-skill",class:"button-text",onClick:withModifiers(k,["stop"])},"查看技能",8,_hoisted_32)])):createCommentVNode("",!0),f.value?(openBlock(),createElementBlock("div",_hoisted_33,[createBaseVNode("span",{id:"status-study",class:"button-text",onClick:withModifiers(U,["stop"])},"学习",8,_hoisted_34)])):createCommentVNode("",!0)])]}),_:1},8,["update"])]),_:1},8,["width","height"])]))}}),statusBar_vue_vue_type_style_index_0_scoped_9b47d1d8_lang="",StatusBar=_export_sfc(_sfc_main$6,[["__scopeId","data-v-9b47d1d8"]]),_withScopeId$1=e=>(pushScopeId("data-v-520239e9"),e=e(),popScopeId(),e),_hoisted_1$5={id:"chapter"},_hoisted_2$4=_withScopeId$1(()=>createBaseVNode("canvas",{id:"chapter-back"},null,-1)),_hoisted_3$3={id:"chapter-text"},_sfc_main$5=defineComponent({__name:"chapter",props:{chapter:{}},setup(e){const t=e;let o,n,s;return onMounted(async()=>{o=document.getElementById("chapter-back"),n=o.getContext("2d"),s=document.getElementById("chapter-text");const a=new Y,r=window.innerWidth*devicePixelRatio,l=window.innerHeight*devicePixelRatio;n.font="5vh scroll";const h=n.measureText(t.chapter).width,d=l*.05;a.register("rect",0),a.register("line",-10),a.register("lineOpacity",1),a.register("rect2",l/2),a.register("text",window.innerWidth+10+h),o.width=r,o.height=l,o.style.width=`${window.innerWidth}px`,o.style.height=`${window.innerHeight}px`,s.style.left=`${r+10}px`,s.style.width=`${h}px`;let _=!1,u=!1;a.ticker.add(c=>{if(!(!has(c)||isNaN(c))){if(!u){u=!0;return}c>=4050&&(chapterShowed.value=!1,a.ticker.destroy()),!_&&c>=1500&&(_=!0,core.playSound("chapter.mp3")),n.restore(),n.save(),s.style.left=`${a.value.text}px`,n.fillStyle="#000",n.clearRect(0,0,r,l),c<=2e3?(n.fillRect(0,l/2,r,-a.value.rect),n.fillRect(0,l/2,r,a.value.rect)):c>=2e3&&c<=3050&&(n.fillRect(0,0,r,a.value.rect2),n.fillRect(0,l,r,-a.value.rect2)),n.shadowColor="#fff",n.shadowBlur=3,n.shadowOffsetX=0,n.shadowOffsetY=0,n.lineWidth=3,n.strokeStyle="#fff",n.fillStyle="#fff",n.globalAlpha=a.value.lineOpacity,n.beginPath(),n.moveTo(0,l/2-d),n.lineTo(a.value.line,l/2-d),n.stroke(),n.beginPath(),n.moveTo(r,l/2+d),n.lineTo(r-a.value.line,l/2+d),n.stroke(),n.shadowBlur=0,n.filter="blur(5px)",n.beginPath(),n.arc(a.value.line,l/2-d,10,0,Math.PI*2),n.fill(),n.beginPath(),n.arc(r-a.value.line,l/2+d,10,0,Math.PI*2),n.fill()}}),a.mode(G("tan","center")).time(3e3).absolute().apply("line",r+10).mode(G("sin","out")).time(1e3).apply("rect",l/2).mode(G("tan","center")).time(3e3).apply("text",-h*2-10),await R(2e3),a.mode(G("sin","in")).time(1e3).apply("rect2",0),await R(1e3),a.mode(G("sin","out")).time(1e3).apply("lineOpacity",0)}),(a,r)=>(openBlock(),createElementBlock("div",_hoisted_1$5,[_hoisted_2$4,createBaseVNode("span",_hoisted_3$3,toDisplayString(a.chapter),1)]))}}),chapter_vue_vue_type_style_index_0_scoped_520239e9_lang="",Chapter=_export_sfc(_sfc_main$5,[["__scopeId","data-v-520239e9"]]),_hoisted_1$4={id:"studied"},_hoisted_2$3={id:"studied-main"},_hoisted_3$2={id:"studied-rough"},_hoisted_4$2={key:0,id:"studied-detail"},_sfc_main$4=defineComponent({__name:"studied",setup(e){watch(status,c=>{});let t;const o=ref(200),n=ref(0),s=ref(window.innerWidth-300),a=ref(window.innerHeight-300),r=reactive([]),l=computed(()=>{var c,f;return status.value,(f=(c=core.status.hero.special)==null?void 0:c.num)!=null?f:[]}),h=computed(()=>{var c,f;return status.value,(f=(c=core.status.hero.special)==null?void 0:c.last)!=null?f:[]}),d=computed(()=>{const c=core.getSpecials();return l.value.map(f=>{const m=c[f-1][1];return m instanceof Function?m(core.status.hero.special):m})});function _(c){const m=core.getSpecials()[c-1][2];return m instanceof Function?m(core.status.hero.special):m}async function u(){await new Promise(c=>{requestAnimationFrame(()=>{const f=getComputedStyle(t);n.value=parseFloat(f.height),c()})})}return onUpdated(()=>{u()}),onMounted(()=>{t=document.getElementById("studied-main"),u()}),(c,f)=>(openBlock(),createElementBlock("div",_hoisted_1$4,[createVNode(Box,{resizable:!0,dragable:!0,width:o.value,"onUpdate:width":f[0]||(f[0]=m=>o.value=m),height:n.value,"onUpdate:height":f[1]||(f[1]=m=>n.value=m),left:s.value,"onUpdate:left":f[2]||(f[2]=m=>s.value=m),top:a.value,"onUpdate:top":f[3]||(f[3]=m=>a.value=m)},{default:withCtx(()=>[createVNode(Scroll,{"no-scroll":!0,style:{height:"100%"}},{default:withCtx(()=>[createBaseVNode("div",_hoisted_2$3,[(openBlock(!0),createElementBlock(Fragment,null,renderList(l.value,(m,w)=>(openBlock(),createElementBlock("div",{key:w},[createBaseVNode("div",_hoisted_3$2,[createVNode(unref(RightOutlined),{class:normalizeClass(r[w]?"folded":""),onClick:g=>r[w]=!r[w],id:"studied-fold"},null,8,["class","onClick"]),createBaseVNode("span",null,toDisplayString(w)+". "+toDisplayString(d.value[w])+",剩余"+toDisplayString(h.value[w])+"场战斗",1)]),r[w]?createCommentVNode("",!0):(openBlock(),createElementBlock("div",_hoisted_4$2,toDisplayString(_(m)),1))]))),128))])]),_:1})]),_:1},8,["width","height","left","top"])]))}}),studied_vue_vue_type_style_index_0_scoped_94a02f6d_lang="",Studied=_export_sfc(_sfc_main$4,[["__scopeId","data-v-94a02f6d"]]),_hoisted_1$3={id:"fixed"},_hoisted_2$2={id:"enemy-fixed"},_hoisted_3$1={id:"enemy-name"},_hoisted_4$1={id:"enemy-special"},_hoisted_5$1={class:"enemy-attr"},_sfc_main$3=defineComponent({__name:"fixed",setup(e){watch(showFixed,w=>{w&&c()});let t;const o=core.formatBigNumber,n=["hp","atk","def","money","exp","critical","criticalDamage","defDamage"],s=["lightgreen","lightcoral","lightblue","lightyellow","lawngreen","lightsalmon","lightpink","cyan"],a=ref(core.plugin.bookDetailEnemy),r=ref(0),l=ref(0),h=ref(300),d=ref(400);let _=window.innerHeight,u=window.innerWidth;async function c(){if(a.value=core.plugin.bookDetailEnemy,_=window.innerHeight,u=window.innerWidth,h.value=_*.28,await new Promise($=>requestAnimationFrame($)),core.plugin.fixedDetailOpened.value&&(showFixed.value=!1),m(),!t)return;const w=getComputedStyle(t),g=parseFloat(w.height),[y,k]=flags.clientLoc;k+g+10>_-10?l.value=_-g-10:l.value=k+10,y+h.value+10>u-10?r.value=u-h.value-10:r.value=y+10,d.value=g}function f(w){var g,y,k;return w==="critical"?"临界":w==="criticalDamage"?"临界减伤":w==="defDamage"?`${(k=(y=(g=core.status)==null?void 0:g.thisMap)==null?void 0:y.ratio)!=null?k:1}`:core.getStatusLabel(w)}function m(){t=document.getElementById("enemy-fixed"),t&&t.addEventListener("mouseleave",()=>{showFixed.value=!1})}return onUpdated(c),onMounted(()=>{m(),c()}),(w,g)=>(openBlock(),createElementBlock("div",_hoisted_1$3,[createVNode(Transition,null,{default:withCtx(()=>[unref(showFixed)?(openBlock(),createBlock(Box,{key:0,height:d.value,"onUpdate:height":g[0]||(g[0]=y=>d.value=y),left:r.value,"onUpdate:left":g[1]||(g[1]=y=>r.value=y),top:l.value,"onUpdate:top":g[2]||(g[2]=y=>l.value=y),width:h.value,"onUpdate:width":g[3]||(g[3]=y=>h.value=y)},{default:withCtx(()=>[createBaseVNode("div",_hoisted_2$2,[createBaseVNode("span",_hoisted_3$1,toDisplayString(a.value.name),1),createBaseVNode("div",_hoisted_4$1,[(openBlock(!0),createElementBlock(Fragment,null,renderList(a.value.toShowSpecial,(y,k)=>(openBlock(),createElementBlock("span",{style:normalizeStyle({color:a.value.toShowColor[k]})},toDisplayString(y),5))),256))]),(openBlock(),createElementBlock(Fragment,null,renderList(n,(y,k)=>createBaseVNode("div",_hoisted_5$1,[createBaseVNode("span",{class:"attr-name",style:normalizeStyle({color:s[k]})},toDisplayString(f(y)),5),createBaseVNode("span",{class:"attr-value",style:normalizeStyle({color:s[k]})},toDisplayString(unref(o)(a.value[y])),5)])),64))])]),_:1},8,["height","left","top","width"])):createCommentVNode("",!0)]),_:1})]))}}),fixed_vue_vue_type_style_index_0_scoped_9e6f7a60_lang="",Fixed=_export_sfc(_sfc_main$3,[["__scopeId","data-v-9e6f7a60"]]),_imports_0="/HumanBreak/project/images/bg.jpg";class Matrix extends Array{constructor(...t){var o;if(t.length!==((o=t[0])==null?void 0:o.length))throw new TypeError("The array delivered to Matrix must has the same length of its item and itself.");super(...t)}add(t){if(t.length!==this.length)throw new TypeError("To add a martrix, the be-added-matrix's size must equal to the to-add-matrix's.");const o=t.length;for(let n=0;n<o;n++)for(let s=0;s<o;s++)this[n][s]+=t[n][s];return this}multipy(t){if(t.length!==this.length)throw new TypeError("To multipy a martrix, the be-multipied-matrix's size must equal to the to-multipy-matrix's.");const o=this.length,n=Array.from(this).map(s=>s.slice());for(let s=0;s<o;s++)for(let a=0;a<o;a++){this[s][a]=0;for(let r=0;r<o;r++)this[s][a]+=n[s][r]*t[r][a]}return this}}class Matrix4 extends Matrix{constructor(...t){if(t.length===0&&(t=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]]),t.length!==4)throw new TypeError("The length of delivered array must be 4.");super(...t)}translate(t,o,n){this.multipy([[1,0,0,t],[0,1,0,o],[0,0,1,n],[0,0,0,1]])}scale(t,o,n){this.multipy([[t,0,0,0],[0,o,0,0],[0,0,n,0],[0,0,0,1]])}rotate(t,o,n){if(has(t)&&t!==0){const s=Math.sin(t),a=Math.cos(t);this.multipy([[1,0,0,0],[0,a,s,0],[0,-s,a,0],[0,0,0,1]])}if(has(o)&&o!==0){const s=Math.sin(o),a=Math.cos(o);this.multipy([[a,0,-s,0],[0,1,0,0],[s,0,a,0],[0,0,0,1]])}if(has(n)&&n!==0){const s=Math.sin(n),a=Math.cos(n);this.multipy([[a,s,0,0],[-s,a,0,0],[0,0,1,0],[0,0,0,1]])}return this}transpose(t="new"){const o=t==="this"?this:new Matrix4,n=Array.from(this).map(s=>s.slice());for(let s=0;s<4;s++)for(let a=0;a<4;a++)o[s][a]=n[a][s];return o}toWebGLFloat32Array(){return new Float32Array(Array.from(this.transpose()).flat())}}const _withScopeId=e=>(pushScopeId("data-v-e152ec4d"),e=e(),popScopeId(),e),_hoisted_1$2={id:"start"},_hoisted_2$1={id:"start-div"},_hoisted_3=_withScopeId(()=>createBaseVNode("img",{id:"background",src:_imports_0},null,-1)),_hoisted_4={id:"start-main"},_hoisted_5=_withScopeId(()=>createBaseVNode("div",{id:"title"},"人类:开天辟地",-1)),_hoisted_6={id:"settings"},_hoisted_7=["checked"],_hoisted_8={key:0,id:"sound-del"},_hoisted_9=_withScopeId(()=>createBaseVNode("div",{id:"background-gradient"},null,-1)),_hoisted_10={id:"buttons"},_hoisted_11=["id","selected","showed","index","length","onClick","onMouseenter"],_sfc_main$2=defineComponent({__name:"start",setup(e){let t,o,n,s,a,r=[],l;const h=ref(!1),d=ref(!!document.fullscreenElement),_=ref(!1),u=["开始游戏","读取存档","录像回放","查看成就"].reverse(),c=["轮回","分支","观测","回忆"].reverse(),f=["start-game","load-game","replay","achievement"].reverse(),m=["easy","hard-hard","back"].reverse(),w=["简单","困难","返回"].reverse(),g=ref(u),y=reactive([]),k=ref("start-game");function $(){const M=core.domStyle.scale,W=core._PY_*M,oe=W*1.5;t.style.width=`${oe}px`,t.style.height=`${W}px`,n.style.fontSize=`${M*16}px`}function U(){s.style.opacity="1",N(r[0],0)}function N(M,Z){const W=getComputedStyle(M);s.style.top=`${parseFloat(W.height)*(Z+.5)-parseFloat(W.marginBottom)*(1-Z)}px`,s.style.left=`${parseFloat(W.left)-20*core.domStyle.scale}px`}async function D(M){core.checkBgm(),M==="start-game"&&ee(),M==="back"&&ne(),(M==="easy"||M==="hard-hard")&&(o.style.opacity="0",await R(600),core.startGame(M==="easy"?"easy":"hard")),M==="load-game"&&(core.dom.gameGroup.style.display="block",o.style.top="100vh",core.load()),M==="replay"&&core.chooseReplayFile(),M==="achievement"&&(achievementOpened.value=!0)}function b(M){const{offsetX:Z,offsetY:W}=M,oe=M.target,le=getComputedStyle(oe),P=parseFloat(le.width),T=parseFloat(le.height),J=P/2,te=T/2,se=(Z-J)/J,re=(W-te)/te,Q=new Matrix4;Q.scale(1.2,1.2,1),Q.rotate(re*10*Math.PI/180,-(se*10*Math.PI)/180);const ce=Array.from(Q.transpose()).flat().join(",");a.style.transform=`perspective(${1e3*core.domStyle.scale}px)matrix3d(${ce})`}function S(M,Z){N(M,Z),k.value=M.id}function L(M){const Z=keycode(M.keyCode),W=y.indexOf(k.value);if(Z===KeyCode.DownArrow){const oe=y[W-1];if(!oe)return;k.value=oe,N(r[y.length-W],y.length-W)}if(Z===KeyCode.UpArrow){const oe=y[W+1];if(!oe)return;k.value=oe,N(r[y.length-W-2],y.length-W-2)}}function F(M){const Z=keycode(M.keyCode);(Z===KeyCode.Enter||Z===KeyCode.Space||Z===KeyCode.KeyC)&&D(k.value)}function E(){core.triggerBgm(),h.value=!h.value}async function z(){const M=y.length-y.indexOf(k.value)-1;await triggerFullscreen(),requestAnimationFrame(()=>{d.value=!!document.fullscreenElement,N(r[M],M)})}async function ee(){s.style.transition="left 0.4s ease-out, top 0.4s ease-out, opacity 0.4s linear",s.style.opacity="0",r.forEach(M=>M.style.transition=""),await doByInterval(Array(4).fill(()=>f.unshift(y.pop())),150),await R(250),g.value=w,await doByInterval(Array(3).fill(()=>y.push(m.shift())),150),k.value="easy",nextTick(()=>{r=y.map(M=>document.getElementById(M)).reverse(),s.style.opacity="1",N(r[0],0)}),await R(600),r.forEach(M=>M.style.transition="transform 0.3s ease-out, color 0.3s ease-out")}async function ne(){y.length>0&&(s.style.transition="left 0.4s ease-out, top 0.4s ease-out, opacity 0.4s linear",s.style.opacity="0",r.forEach(M=>M.style.transition=""),await doByInterval(Array(3).fill(()=>m.unshift(y.pop())),150)),g.value=u,l&&(g.value=c),await R(250),await doByInterval(Array(4).fill(()=>y.push(f.shift())),150),k.value="start-game",nextTick(()=>{r=y.map(M=>document.getElementById(M)).reverse(),s.style.opacity="1",N(r[0],0),r.forEach((M,Z)=>{})}),_.value?await R(600):await R(1200),r.forEach(M=>M.style.transition="transform 0.3s ease-out, color 0.3s ease-out")}return onMounted(async()=>{s=document.getElementById("cursor"),l=core.getLocalStorage("oneweek1",!1),t=document.getElementById("start-div"),n=document.getElementById("start-main"),o=document.getElementById("start"),a=document.getElementById("background"),core.registerResize("start",$),$(),h.value=core.musicStatus.bgmStatus,await R(50),document.addEventListener("keydown",L),document.addEventListener("keyup",F),o.style.opacity="1",l&&(g.value=c,w.splice(1,0,"挑战")),ne().then(()=>_.value=!0),await R(1e3),U(),await R(1200),core.dom.startPanel.style.display="none"}),onUnmounted(()=>{core.unregisterResize("start"),document.removeEventListener("keydown",L),document.removeEventListener("keyup",F)}),(M,Z)=>(openBlock(),createElementBlock("div",_hoisted_1$2,[createBaseVNode("div",_hoisted_2$1,[_hoisted_3,createBaseVNode("div",_hoisted_4,[_hoisted_5,createBaseVNode("div",_hoisted_6,[createBaseVNode("div",{id:"sound",class:"setting-buttons",checked:h.value,onClick:E},[createVNode(unref(SoundOutlined)),h.value?createCommentVNode("",!0):(openBlock(),createElementBlock("span",_hoisted_8))],8,_hoisted_7),d.value?(openBlock(),createBlock(unref(FullscreenExitOutlined),{key:1,class:"button-text setting-buttons2",onClick:z})):(openBlock(),createBlock(unref(FullscreenOutlined),{key:0,class:"button-text setting-buttons2",onClick:z}))]),_hoisted_9,createBaseVNode("div",_hoisted_10,[createVNode(unref(RightOutlined),{id:"cursor"}),createVNode(TransitionGroup,{name:"start"},{default:withCtx(()=>[(openBlock(!0),createElementBlock(Fragment,null,renderList(y,(W,oe)=>(openBlock(),createElementBlock("span",{class:"start-button",id:W,key:W,selected:k.value===W,showed:_.value,index:oe,length:g.value[oe].length,onClick:le=>D(W),onMouseenter:le=>S(le.target,y.length-oe-1)},toDisplayString(g.value[oe]),41,_hoisted_11))),128))]),_:1})])]),createBaseVNode("div",{id:"listen",onMousemove:b},null,32)])]))}}),start_vue_vue_type_style_index_0_scoped_e152ec4d_lang="",Start=_export_sfc(_sfc_main$2,[["__scopeId","data-v-e152ec4d"]]),_hoisted_1$1={id:"complete"},_hoisted_2={id:"point-number"},_sfc_main$1=defineComponent({__name:"completeAchievement",props:{complete:{}},setup(e){const t=e,o=window.innerHeight,n=t.complete.split(","),s=n[0],a=parseInt(n[1]),r=list[s][a],l=r.point,h=getNowPoint()-l,d=ref(h),_=computed(()=>d.value/totalPoint);return onMounted(async()=>{await R(500);const u=new I,c=Date.now();u.add(()=>{const f=Date.now();f-c>1e3&&(d.value=h+l,u.destroy());const m=(f-c)/1e3;d.value=Math.floor(h+l*m)}),await R(4600),showComplete.value=!1}),(u,c)=>{const f=__unplugin_components_0$3;return openBlock(),createBlock(Box,{id:"complete-box"},{default:withCtx(()=>[createBaseVNode("div",_hoisted_1$1,[createBaseVNode("span",null,"完成成就    "+toDisplayString(unref(r).name),1),createVNode(f,{id:"progress",percent:_.value*100,strokeColor:{"0%":"#108ee9","100%":"#87d068"},strokeWidth:unref(o)/200,showInfo:!1},null,8,["percent","strokeWidth"]),createBaseVNode("span",_hoisted_2,"成就点: "+toDisplayString(d.value)+" / "+toDisplayString(unref(totalPoint)),1)])]),_:1})}}}),completeAchievement_vue_vue_type_style_index_0_scoped_6db4a5b0_lang="",CompleteAchievement=_export_sfc(_sfc_main$1,[["__scopeId","data-v-6db4a5b0"]]),_hoisted_1={id:"non-ui"},_sfc_main=defineComponent({__name:"App2",setup(e){return(t,o)=>(openBlock(),createElementBlock("div",_hoisted_1,[unref(startOpened)?(openBlock(),createBlock(Start,{key:0})):createCommentVNode("",!0),unref(showStatusBar)?(openBlock(),createBlock(StatusBar,{key:1})):createCommentVNode("",!0),unref(showMarkedEnemy)&&unref(showStatusBar)?(openBlock(),createBlock(MarkedEnemy,{key:2})):createCommentVNode("",!0),unref(showStudiedSkill)&&unref(showStatusBar)&&unref(showStudied$1)?(openBlock(),createBlock(Studied,{key:3})):createCommentVNode("",!0),unref(showStatusBar)&&unref(useFixed$1)?(openBlock(),createBlock(Fixed,{key:4})):createCommentVNode("",!0),unref(chapterShowed)?(openBlock(),createBlock(Chapter,{key:5,chapter:unref(chapterContent)},null,8,["chapter"])):createCommentVNode("",!0),unref(showComplete)?(openBlock(),createBlock(CompleteAchievement,{key:6,complete:unref(completeAchi)},null,8,["complete"])):createCommentVNode("",!0)]))}}),App2_vue_vue_type_style_index_0_scoped_8fd1387d_lang="",App2=_export_sfc(_sfc_main,[["__scopeId","data-v-8fd1387d"]]),styles="",antd_dark="";let pop=[],time=0;function init$7(){return main.replayChecking||core.registerAnimationFrame("pop",!0,popValue),{addPop,pop}}function popValue(e){if(e-time<15)return;let t=core.getContextByName("pop");t||(t=core.createCanvas("pop",0,0,core._PX_,core._PY_,90)),core.clearMap(t);let o=0;pop.forEach(function(n){const s=6-n.frame*.2,a=1;n.py-=s,n.px+=a,n.frame++,n.frame>=60?core.setAlpha(t,3-n.frame/30):core.setAlpha(t,1),core.fillBoldText(t,n.value,n.px,n.py,"#f22","#000","24px normal"),n.frame>=90&&o++}),o>0&&pop.splice(0,o),time=e}function addPop(e,t,o){var n={px:e,py:t,value:o,frame:0};pop.push(n)}const ani=new Y;ani.register("rect",0);const path1={MT16:[[23,23],[0,23]],MT15:[[63,4],[61,4],[61,5],[58,5],[58,8],[54,8],[54,11],[51,11],[51,8],[45,8],[45,4],[47,4],[47,6],[51,6],[51,5],[52,5],[52,3],[50,3],[50,5],[48,5],[48,3],[35,3],[35,5],[31,5],[31,7],[34,7],[34,9],[31,9],[31,11],[12,11],[12,8],[1,8],[1,7],[0,7]],MT14:[[127,7],[126,7],[126,8],[124,8],[124,7],[115.2,7],[115.2,9.2],[110.2,9.2],[110.2,11],[109.8,11],[109.8,8.8],[111.8,8.8],[111.8,7],[104,7],[104,3],[100,3],[100,4],[98,4],[98,3],[96,3],[96,6],[95,6],[95,7],[88,7],[88,6],[85,6],[85,8],[83,8],[83,9],[81,9],[81,11],[72,11],[72,5],[68,5],[68,8],[67,8],[67,10],[65,10],[65,11],[62,11],[62,9],[60,9],[60,11],[57,11],[57,9],[54,9]]},camera1=[["MT16",0,10,0,1600,G("sin","in")],["MT15",45,0,0,2324,G("sin","in")],["MT15",40,0,2324,1992,G("sin","out")],["MT15",41,0,5312,498,G("sin","in-out")],["MT15",37,0,5810,1660,G("sin","in")],["MT15",29,0,7470,830,G("sin","out")],["MT15",25,0,11454,996,G("sin","in")],["MT15",12,0,12450,996,O()],["MT15",0,0,13446,1470,G("sin","out")],["MT14",109,0,0,1328,G("sin","in")],["MT14",104,0,1328,332,G("sin","out")],["MT14",92,0,5478,2822,G("sin","in")],["MT14",84,0,8300,1992,O()],["MT14",74,0,10292,2988,O()],["MT14",65,0,13280,2988,O()],["MT14",58,0,16268,1992,O()],["MT14",47,0,18260,3320,O()],["MT14",36,0,21580,3320,O()],["MT14",0,0,24900,9960,O()]];function init1(){return core.plugin.chase.chaseInit1()}function chaseShake(e){e.ani.mode(shake2(2/32,q(1,1,1,1,1,1,1,1,1,1,1,1)),!0).time(5e4).shake(1,0)}async function wolfMove(e){core.moveBlock(23,17,Array(6).fill("down"),80),await R(550),core.setBlock(508,23,23)}function judgeFail1(e){e.ani.ticker.add(()=>{core.status.hero.loc.x>core.bigmap.offsetX/32+17&&(e.end(!0),ani.time(750).apply("rect",0),core.lose("逃跑失败"))})}function drawBack(e){e.on("MT15",0,()=>{ani.mode(G("sin","out")).time(1500).absolute().apply("rect",64);const t=core.createCanvas("chaseBack",0,0,480,480,120);t.fillStyle="#000";const o=()=>{t||ani.ticker.remove(o),core.clearMap(t),t.fillRect(0,0,480,ani.value.rect),t.fillRect(0,480,480,-ani.value.rect)};ani.ticker.add(o)})}function para1(e){e.on("MT15",830,()=>{for(let t=53;t<58;t++)for(let o=3;o<8;o++)core.setBlock(336,t,o);core.drawAnimate("explosion3",55,5),core.drawAnimate("stone",55,5)}),e.on("MT15",1080,()=>{core.setBlock(336,58,9),core.setBlock(336,59,9),core.drawAnimate("explosion1",58,9),core.drawAnimate("explosion1",59,9)}),e.on("MT15",1190,()=>{core.setBlock(336,53,8),core.setBlock(336,52,8),core.drawAnimate("explosion1",53,8),core.drawAnimate("explosion1",52,8)}),e.on("MT15",1580,()=>{core.setBlock(336,51,7),core.drawAnimate("explosion1",51,7)}),e.on("MT15",1830,()=>{core.setBlock(336,47,7),core.setBlock(336,49,9),core.drawAnimate("explosion1",49,9),core.drawAnimate("explosion1",47,7)})}function para2(e){e.onHeroLoc("MT15",()=>{core.setBlock(336,45,9),core.drawAnimate("explosion1",45,9)},45,8),e.onHeroLoc("MT15",()=>{core.setBlock(336,44,6),core.drawAnimate("explosion1",44,6)},45,6),e.onHeroLoc("MT15",()=>{core.setBlock(336,44,4),core.drawAnimate("explosion1",44,4),core.drawAnimate("explosion1",48,6),core.removeBlock(48,6)},45,4),e.onHeroLoc("MT15",()=>{core.setBlock(336,41,4),core.setBlock(336,32,6),core.drawAnimate("explosion1",41,4),core.drawAnimate("explosion1",32,6)},41,3),e.onHeroLoc("MT15",()=>{core.drawAnimate("explosion3",37,7),core.vibrate("vertical",1e3,25,10);for(let t=36;t<42;t++)for(let o=4;o<11;o++)core.setBlock(336,t,o)},35,3),e.onHeroLoc("MT15",()=>{core.vibrate("vertical",1e4,25,1),core.removeBlock(34,8),core.removeBlock(33,8),core.drawAnimate("explosion1",34,8),core.drawAnimate("explosion1",33,8)},31,5),e.onHeroLoc("MT15",()=>{core.setBlock(336,32,9),core.drawAnimate("explosion1",32,9)},33,7),e.onHeroLoc("MT15",()=>{core.removeBlock(32,9),core.drawAnimate("explosion1",32,9)},[33,34,34],9);for(let t=19;t<31;t++){const o=t;e.onHeroLoc("MT15",()=>{core.setBlock(336,o+1,11),core.drawAnimate("explosion1",o+1,11)},o,11)}}function para3(e){e.onHeroLoc("MT14",()=>{core.setBlock(336,126,6),core.setBlock(336,124,6),core.setBlock(336,124,9),core.setBlock(336,126,9),core.drawAnimate("explosion1",126,6),core.drawAnimate("explosion1",124,6),core.drawAnimate("explosion1",124,9),core.drawAnimate("explosion1",126,9)},126,7),e.onHeroLoc("MT14",()=>{core.setBlock(508,127,7),core.jumpBlock(127,7,112,7,500,!0),setTimeout(()=>{core.setBlock(509,112,7)},520),core.drawHeroAnimate("amazed"),core.setBlock(336,121,6),core.setBlock(336,122,6),core.setBlock(336,120,8),core.setBlock(336,121,8),core.setBlock(336,122,8),core.drawAnimate("explosion1",121,6),core.drawAnimate("explosion1",122,6),core.drawAnimate("explosion1",120,8),core.drawAnimate("explosion1",121,8),core.drawAnimate("explosion1",122,8)},123,7),e.onHeroLoc("MT14",()=>{core.setBlock(336,109,11),core.removeBlock(112,8),core.drawAnimate("explosion1",109,11),core.drawAnimate("explosion1",112,8),core.insertAction([{type:"moveHero",time:400,steps:["backward:1"]}]),e.onHeroLoc("MT14",()=>{core.jumpBlock(112,7,110,4,500,!0),core.drawHeroAnimate("amazed"),setTimeout(()=>{core.setBlock(506,110,4)},540)},112,8)},110,10),e.onHeroLoc("MT14",()=>{core.setBlock(336,117,6),core.setBlock(336,116,6),core.setBlock(336,115,6),core.setBlock(336,114,6),core.setBlock(336,117,8),core.setBlock(336,116,8),core.drawAnimate("explosion1",117,6),core.drawAnimate("explosion1",116,6),core.drawAnimate("explosion1",115,6),core.drawAnimate("explosion1",114,6),core.drawAnimate("explosion1",116,8),core.drawAnimate("explosion1",117,8)},118,7),e.onHeroLoc("MT14",()=>{core.setBlock(336,112,8),core.setBlock(336,113,7),core.drawAnimate("explosion1",112,8),core.drawAnimate("explosion1",113,7)},112,7),e.onHeroLoc("MT14",()=>{for(let t=111;t<=115;t++)core.setBlock(336,t,10),core.drawAnimate("explosion1",t,10);core.setBlock(336,112,8),core.drawAnimate("explosion1",112,8)},115,7),e.onHeroLoc("MT14",()=>{core.jumpBlock(97,4,120,-3,2e3);for(let t=109;t<=120;t++)for(let o=3;o<=11;o++)o!=7&&core.setBlock(336,t,o);core.drawAnimate("explosion2",119,7),core.removeBlock(105,7),core.drawAnimate("explosion1",105,7)},110,7),e.onHeroLoc("MT14",()=>{core.setBlock(336,95,3),core.setBlock(336,93,6),core.drawAnimate("explosion1",95,3),core.drawAnimate("explosion1",93,6)},97,3),e.onHeroLoc("MT14",()=>{core.setBlock(336,87,4),core.setBlock(336,88,5),core.drawAnimate("explosion1",87,4),core.drawAnimate("explosion1",88,5)},88,6),e.onHeroLoc("MT14",()=>{core.setBlock(336,84,6),core.setBlock(336,85,5),core.setBlock(336,86,8),core.drawAnimate("explosion1",84,6),core.drawAnimate("explosion1",85,5),core.drawAnimate("explosion1",86,8)},86,6),e.onHeroLoc("MT14",()=>{core.setBlock(336,81,8),core.setBlock(336,82,11),core.drawAnimate("explosion1",81,8),core.drawAnimate("explosion1",82,11)},81,9),e.onHeroLoc("MT14",()=>{core.setBlock(336,73,8),core.setBlock(336,72,4),core.drawAnimate("explosion1",73,8),core.drawAnimate("explosion1",72,4)},72,11),e.onHeroLoc("MT14",()=>{for(let t=74;t<86;t++)for(let o=3;o<12;o++)core.setBlock(336,t,o);core.drawAnimate("explosion2",79,7),core.vibrate("vertical",4e3,25,15)},71,7),e.onHeroLoc("MT14",()=>{core.setBlock(336,68,4),core.setBlock(336,67,6),core.drawAnimate("explosion1",68,4),core.drawAnimate("explosion1",67,6)},68,5),e.onHeroLoc("MT14",()=>{for(let t=65;t<=72;t++)for(let o=3;o<=9;o++)core.setBlock(336,t,o);core.setBlock(336,72,10),core.setBlock(336,72,11),core.drawAnimate("explosion3",69,5)},67,10),e.onHeroLoc("MT14",()=>{core.setBlock(336,63,9),core.setBlock(336,60,8),core.setBlock(336,56,11),core.drawAnimate("explosion1",63,9),core.drawAnimate("explosion1",60,8),core.drawAnimate("explosion1",56,11)},64,11),e.onHeroLoc("MT14",()=>{for(let t=58;t<=64;t++)for(let o=3;o<=11;o++)core.setBlock(336,t,o);core.drawAnimate("explosion2",61,7)},57,9);for(let t=21;t<49;t++)e.onHeroLoc("MT14",()=>{for(let o=3;o<=11;o++)core.setBlock(336,t+4,o),core.drawAnimate("explosion1",t+4,o)},t);e.onHeroLoc("MT14",async()=>{flags.finishChase1=!0,core.plugin.replay.clip("choices:0"),core.showStatusBar(),ani.time(750).apply("rect",0),e.end(),await R(750),ani.ticker.destroy(),core.deleteCanvas("chaseBack")},21)}function getChaseDataByIndex(e){if(e===1)return init1(),{camera:camera1,fns:[para1,para2,para3,chaseShake,wolfMove,drawBack,judgeFail1],path:path1};throw new ReferenceError("Deliver wrong chase index.")}function init$6(){return{startChase,chaseInit1:init1}}function shake2(e,t){let o=0;return n=>(o+=Math.PI/2,Math.sin(o)*e*t(n))}class Chase{constructor(t,o,n,s=!1){ae(this,"ani",new Y);ae(this,"path");ae(this,"showPath",!1);ae(this,"endFn");this.path=t,flags.__lockViewport__=!0,flags.onChase=!0,flags.chaseTime={[core.status.floorId]:Date.now()},this.ani.absolute().time(0).move(core.bigmap.offsetX/32,core.bigmap.offsetY/32),o.forEach(l=>l(this));const a=[],r=core.createCanvas("chasePath",0,0,0,0,35);for(const[l,h,d,_,u,c,f]of n)a.includes(l)||(this.on(l,0,()=>{flags.__lockViewport__=!1,core.drawHero(),flags.__lockViewport__=!0,this.ani.time(0).move(core.bigmap.offsetX/32,core.bigmap.offsetY/32)},!0),a.push(l)),has(f)?this.on(l,_,()=>{this.ani.time(u).mode(c).moveAs(f)}):this.on(l,_,()=>{this.ani.time(u).mode(c).move(h,d)});if(this.ani.ticker.add(()=>{flags.floorChanging||(core.setViewport(this.ani.x*32,this.ani.y*32),core.relocateCanvas(r,-this.ani.x*32,-this.ani.y*32))}),s)for(const[l,h]of Object.entries(t))this.on(l,0,()=>{const d=core.status.maps[l];core.resizeCanvas(r,d.width*32,d.height*32),r.beginPath(),r.moveTo(h[0][0]*32+16,h[1][1]*32+24),r.lineJoin="round",r.lineWidth=4,r.strokeStyle="cyan",r.globalAlpha=.3,h.forEach((_,u,c)=>{if(u===0)return;const[f,m]=_;r.lineTo(f*32+16,m*32+24)}),r.stroke()})}on(t,o,n,s=!1){const a=()=>{var r,l,h;(r=flags.chaseTime)!=null&&r[t]&&Date.now()-((h=(l=flags.chaseTime)==null?void 0:l[t])!=null?h:Date.now())>=o&&(n(this),this.ani.ticker.remove(a))};this.ani.ticker.add(a,s)}onHeroLoc(t,o,n,s,a=0){if(a===1){typeof n=="number"&&(n=[n]),typeof s=="number"&&(s=[s]),n.forEach(h=>{s.forEach(d=>{this.onHeroLoc(t,o,h,d)})});return}const r=()=>{if(core.status.floorId!==t)return!1;if(has(n)){if(typeof n=="number"){if(core.status.hero.loc.x!==n)return!1}else if(!n.includes(core.status.hero.loc.x))return!1}if(has(s)){if(typeof s=="number"){if(core.status.hero.loc.y!==s)return!1}else if(!s.includes(core.status.hero.loc.y))return!1}return!0},l=()=>{if(r()){o(this);try{this.ani.ticker.remove(l)}catch(h){}}};this.ani.ticker.add(l)}setPathShowStatus(t){this.showPath=t}onEnd(t){this.endFn=t}end(t=!1){this.ani.ticker.destroy(),delete flags.onChase,delete flags.chase,delete flags.chaseTime,delete flags.chaseHard,delete flags.chaseIndex,flags.__lockViewport__=!1,core.deleteCanvas("chasePath"),this.endFn&&this.endFn(t)}}async function startChase(e){const t=getChaseDataByIndex(e);flags.chaseIndex=e,flags.onChase=!0,await R(20);const o=new Chase(t.path,t.fns,t.camera,flags.chaseHard===0);flags.chase=o;const n=flags.chaseHard;o.onEnd(s=>{n===1&&e===1&&!s&&completeAchievement("challenge",0)})}function init$5(){return{isWebGLSupported}}const isWebGLSupported=function(){return!!document.createElement("canvas").getContext("webgl")}();class Polygon{constructor(t){ae(this,"nodes");ae(this,"cache",{});if(t.length<3)throw new Error("Nodes number delivered is less than 3!");this.nodes=t.map(o=>[o[0]+32,o[1]+32])}static from(...t){return t.map(o=>new Polygon(o))}shadowArea(t,o,n){var c,f;const s=`${t},${o}`;if(this.cache[s])return this.cache[s];const a=[],r=((c=core._PX_)!=null?c:core.__PIXELS__)+64,l=((f=core._PY_)!=null?f:core.__PIXELS__)+64,h=l/r,d=(m,w)=>{const g=(w-o)/(m-t);if(g>h||g<-h)if(w<o){const y=t+o/g;return[2*t-y,0]}else return[t+(l-o)/g,l];else if(m<t){const y=o+g*t;return[0,2*o-y]}else{const y=o+g*(r-t);return[r,y]}},_=this.nodes.length;let u=d(...this.nodes[0]);for(let m=0;m<_;m++){const w=(m+1)%_,g=d(...this.nodes[w]),y=[this.nodes[m],u],k=[g,this.nodes[w]];let $;u[0]===0&&g[1]===0||u[1]===0&&g[0]===0?$=[...y,[0,0],...k]:u[0]===0&&g[1]===l||u[1]===l&&g[0]===0?$=[...y,[0,l],...k]:u[0]===r&&g[1]===0||u[1]===0&&g[0]===r?$=[...y,[r,0],...k]:u[0]===r&&g[1]===l||u[1]===l&&g[0]===r?$=[...y,[r,l],...k]:$=[...y,...k],a.push($),u=g}return this.cache[s]=a,a}}function init$4(){return core.registerAnimationFrame("shadow",!0,()=>{needRefresh&&drawShadow()}),{initShadowCanvas,drawShadow,addLight,removeLight,setLight,setShadowNodes,setBackground,animateLight,transitionLight,moveLightAs,getAllLights,refreshLight}}let canvas,ctx,lights=[],needRefresh=!1,shadowNodes=[],background,blur=3;const temp1=document.createElement("canvas"),temp2=document.createElement("canvas"),temp3=document.createElement("canvas"),ct1=temp1.getContext("2d"),ct2=temp2.getContext("2d"),ct3=temp3.getContext("2d"),animationList={},transitionList={};function initShadowCanvas(){var n,s;const e=(n=core._PX_)!=null?n:core.__PIXELS__,t=(s=core._PY_)!=null?s:core.__PIXELS__;ctx=core.createCanvas("shadow",-32,-32,e+64,t+64,55),canvas=ctx.canvas;const o=core.domStyle.scale*devicePixelRatio;temp1.width=(e+64)*o,temp1.height=(t+64)*o,temp2.width=(e+64)*o,temp2.height=(t+64)*o,temp3.width=(e+64)*o,temp3.height=(t+64)*o,ct1.scale(o,o),ct2.scale(o,o),ct3.scale(o,o),canvas.style.filter=`blur(${blur}px)`}function addLight(e){lights.push(e),needRefresh=!0}function removeLight(e){const t=lights.findIndex(o=>o.id===e);if(t===-1)throw new ReferenceError("You are going to remove nonexistent light!");lights.splice(t,1),needRefresh=!0}function setLight(e,t){has(t.id)&&delete t.id;const o=lights.find(n=>n.id===e);if(!o)throw new ReferenceError("You are going to set nonexistent light!");for(const[n,s]of Object.entries(t))o[n]=s;needRefresh=!0}function setLightList(e){lights=e,needRefresh=!0}function removeAllLights(){lights=[],needRefresh=!0}function getLight(e){return lights.find(t=>t.id===e)}function getAllLights(){return lights}function setBackground(e){background=e,needRefresh=!0}function refreshLight(){needRefresh=!0}function animateLight(e,t,o,n=1e3,s=O(),a=!1){var _,u;const r=getLight(e);if(!has(r))throw new ReferenceError("You are going to animate nonexistent light");typeof o!="number"&&(r[t]=o);const l=(_=animationList[e])!=null?_:animationList[e]=new Y;typeof l.value[t]!="number"?l.register(t,r[t]):l.time(0).mode(O()).absolute().apply(t,r[t]),l.time(n).mode(s)[a?"relative":"absolute"]().apply(t,o);const h=Date.now(),d=()=>{Date.now()-h>n+50&&(l.ticker.remove(d),r._animating[t]=!1),needRefresh=!0,r[t]=l.value[t]};l.ticker.add(d),(u=r._animating)!=null||(r._animating={}),r._animating[t]=!0}function transitionLight(e,t,o=1e3,n=O()){var l,h;const s=lights.findIndex(d=>d.id===e);if(s===-1)throw new ReferenceError("You are going to transite nonexistent light");const a=lights[s];if(typeof a[t]!="number")return;(l=a._transition)!=null||(a._transition={}),a._transition[t]={time:o,mode:n};const r=(h=transitionList[e])!=null?h:transitionList[e]=new j;if(r.value[t]=a[t],!a._isProxy){const d={set(_,u,c){var g;if(typeof u=="symbol")return!1;const f=Date.now();if(!a._transition[u]||(g=a._animating)!=null&&g[t]||typeof c!="number")return _[u]=c,!0;_[u]=a[u];const m=a._transition[u];r.mode(m.mode).time(m.time);const w=()=>{Date.now()-f>m.time+50&&r.ticker.remove(w),needRefresh=!0,_[u]=r.value[t]};return r.ticker.add(w),r.transition(u,c),!0}};lights[s]=new Proxy(a,d)}}function moveLightAs(e,t,o,n=O(),s=!0){var d,_;const a=getLight(e);if(!has(a))throw new ReferenceError("You are going to animate nonexistent light");const r=(d=animationList[e])!=null?d:animationList[e]=new Y;r.mode(O()).time(0).move(a.x,a.y),r.time(t).mode(n)[s?"relative":"absolute"]().moveAs(o);const l=Date.now(),h=()=>{Date.now()-l>t+50&&(r.ticker.remove(h),a._animating.x=!1,a._animating.y=!1),needRefresh=!0,a.x=r.x,a.y=r.y};r.ticker.add(h),(_=a._animating)!=null||(a._animating={}),a._animating.x=!0,a._animating.y=!0}function setShadowNodes(e){e.length===0&&(shadowNodes=[],needRefresh=!0),e[0]instanceof Polygon?shadowNodes=e:shadowNodes=Polygon.from(...e),needRefresh=!0}function setBlur(e){blur=e,canvas.style.filter=`blur(${e}px)`}function drawShadow(){var n,s;const e=((n=core._PX_)!=null?n:core.__PIXELS__)+64,t=((s=core._PY_)!=null?s:core.__PIXELS__)+64;needRefresh=!1,ctx.clearRect(0,0,e,t),ct1.clearRect(0,0,e,t),ct2.clearRect(0,0,e,t),ct3.clearRect(0,0,e,t);const o=core.arrayToRGBA(background);ctx.globalCompositeOperation="source-over",ct3.globalCompositeOperation="source-over";for(let a=0;a<lights.length;a++){const{x:r,y:l,r:h,decay:d,color:_,noShelter:u}=lights[a],c=r+32,f=l+32;if(ct1.clearRect(0,0,e,t),ct2.clearRect(0,0,e,t),!u)for(const g of shadowNodes)g.shadowArea(c,f,h).forEach(k=>{ct1.beginPath(),ct1.moveTo(k[0][0],k[0][1]);for(let $=1;$<k.length;$++)ct1.lineTo(k[$][0],k[$][1]);ct1.closePath(),ct1.fillStyle="#000",ct1.globalCompositeOperation="source-over",ct1.fill()});ct2.globalCompositeOperation="source-over",ct2.drawImage(temp1,0,0,e,t),ct2.globalCompositeOperation="source-out";const m=ct2.createRadialGradient(c,f,d,c,f,h);m.addColorStop(0,core.arrayToRGBA(_)),m.addColorStop(1,"transparent"),ct2.fillStyle=m,ct2.beginPath(),ct2.arc(c,f,h,0,Math.PI*2),ct2.fill(),ctx.drawImage(temp2,0,0,e,t),ct1.globalCompositeOperation="source-out";const w=ct1.createRadialGradient(c,f,d,c,f,h);w.addColorStop(0,"#fff"),w.addColorStop(1,"#fff0"),ct1.beginPath(),ct1.arc(c,f,h,0,Math.PI*2),ct1.fillStyle=w,ct1.fill(),ct3.drawImage(temp1,0,0,e,t)}ct3.globalCompositeOperation="source-out",ct3.fillStyle=o,ct3.fillRect(0,0,e,t),ctx.globalCompositeOperation="destination-over",ctx.drawImage(temp3,0,0,e,t)}function init$3(){const e=control.prototype.drawHero;return control.prototype.drawHero=function(){e.apply(core.control,arguments),core.getFlag("__heroOpacity__")!==0&&getAllLights().forEach(t=>{var o;t.followHero&&((o=t._offset)!=null||(t._offset={x:t.x,y:t.y}),t.x=core.status.heroCenter.px+t._offset.x,t.y=core.status.heroCenter.py+t._offset.y,refreshLight())})},{updateShadow,clearShadowCache,setCalShadow}}const shadowInfo={MT50:[{id:"mt50_1",x:144,y:144,decay:20,r:150,color:"#e953",noShelter:!0},{id:"mt50_2",x:336,y:144,decay:20,r:150,color:"#e953",noShelter:!0},{id:"mt50_2",x:336,y:336,decay:20,r:150,color:"#e953",noShelter:!0},{id:"mt50_2",x:144,y:336,decay:20,r:150,color:"#e953",noShelter:!0}]},backgroundInfo={MT50:"#0006"},blurInfo={},immersionInfo={},shadowCache={};let calMapShadow=!0;function updateShadow(e=!1){var r;const t=core.status.floorId;if(!shadowInfo[t]||!backgroundInfo[t]){removeAllLights(),setShadowNodes([]),setBackground("#0000");return}const o=core.status.thisMap,n=o.width,s=o.height,a=[];if(calMapShadow)if(shadowCache[t]&&!e)setShadowNodes(shadowCache[t]);else{core.extractBlocks();const l=core.getMapBlocksObj();core.status.maps[t].blocks.forEach(h=>{var d;if(["terrains","autotile","tileset","animates"].includes(h.event.cls)&&h.event.noPass){const _=(d=immersionInfo[t])!=null?d:4,u=h.x,c=h.y;let f=u*32+_,m=c*32+_,w=f+32-_*2,g=m+32-_*2;const y=`${u-1},${c}`,k=`${u+1},${c}`,$=`${u},${c-1}`,U=`${u},${c+1}`;u===0&&(f-=_*2),u+1===n&&(w+=_*2),c===0&&(m-=_*2),c+1===s&&(g+=_*2),l[y]&&l[y].event.noPass&&(f-=_),l[k]&&l[k].event.noPass&&(w+=_),l[$]&&l[$].event.noPass&&(m-=_),l[U]&&l[U].event.noPass&&(g+=_),a.push(new Polygon([[f,m],[w,m],[w,g],[f,g]]));return}}),shadowCache[t]=a,setShadowNodes(a)}else setShadowNodes([]),setBlur(0);setLightList(shadowInfo[t]),setBackground(backgroundInfo[t]),setBlur((r=blurInfo[t])!=null?r:3)}function clearShadowCache(e){delete shadowCache[e]}function setCalShadow(e){calMapShadow=e,updateShadow()}function init$2(){return{AnimatedPath,pathTest:test}}class AnimatedPath{constructor(t){ae(this,"join",!0);ae(this,"linePath",[]);ae(this,"ctx");ae(this,"dashStatus",0);ae(this,"dashLength",0);ae(this,"dashMode",[]);ae(this,"lineWidth",1);ae(this,"lineColor","#fff");ae(this,"lineShadow",{});ae(this,"lineFilter",{});ae(this,"pathClose",!1);this.ctx=t}dash(t){const o=t.slice();return t.length%2===1&&o.push(...t),this.dashMode=t,this}width(t){return this.lineWidth=t,this}color(t){return this.lineColor=t,this}shadow(t){return this.lineShadow=t,this}filter(t){return this.lineFilter=t,this}clear(){return this.linePath=[],this}line(t,o,n,s){const a=n-t,r=s-o;return this.add(l=>[t+a*l,o+r*l],Math.sqrt(a**2+r**2)),this}circle(t,o,n,s,a){const r=a-s;return this.add(l=>[t+n*Math.cos(r*l+s),o+n*Math.sin(r*l+s)],n*r),this}ellipse(t,o,n,s,a,r){const l=r-a;return this.add(h=>[t+n*Math.cos(l*h+a),o+s*Math.sin(l*h+a)]),this}rect(t,o,n,s,a=0){const r=t+n,l=o+s;return this.line(t,o,r,o).line(r,o,r,l).line(r,l,t,l).line(t,l,t,o-a/2),this}bezier(...t){if(t.length<2)throw new Error("The point number of bezier must larger than 2.");const o=t[0],n=t.at(-1),s=t.slice(1,-1);return this.add(H(o,n,...s)),this}add(t,o=this.calLength(t)){return this.linePath.push({path:t,length:o}),this}close(t){return this.pathClose=t,this}calLength(t){let[o,n]=t(0),s=0;for(let a=1;a<=1e3;a++){const[r,l]=t(a*.001);s+=Math.sqrt((r-o)**2+(l-n)**2),o=r,n=l}return s}drawImmediate(){const t=this.linePath.reduce((n,s)=>n+s.length,0);let o=0;return this.linePath.forEach(n=>{this.drawFrom(n.path,0,1,o,n.length),o+=n.length/t}),this}draw(t,o=O()){const n=this.linePath.reduce((u,c)=>u+c.length,0),s=this.linePath.map(u=>u.length/n);let a=0,r=0,l=s[0],h=0;this.ctx.beginPath(),this.ctx.moveTo(...this.linePath[0].path(0));const d=u=>{if(u>=1||l>u)return[];const c=[];for(;;)if(a+=s[r],r++,l+=s[r],u<l){h=a;break}else c.push(r);return c},_=new Y;return _.register("path",0),_.mode(o).time(t).absolute().apply("path",1),_.all().then(()=>{_.ticker.destroy(),this.pathClose&&(this.ctx.beginPath(),this.ctx.moveTo(...this.linePath.at(-1).path(.999)),this.ctx.lineTo(...this.linePath[0].path(.001)),this.ctx.stroke()),this.ctx.closePath()}),_.ticker.add(()=>{const u=_.value.path;if(u>=l){const g=l-a,y=(h-a)/g;this.drawFrom(this.linePath[r].path,y,1,h,s[r]),d(u).forEach($=>{const U=this.linePath[$];this.drawFrom(U.path,0,1,h,s[$])})}const c=this.linePath[r].path,f=l-a,m=(h-a)/f,w=(u-a)/f;this.drawFrom(c,m,w,h,s[r]),h=u}),this}drawFrom(t,o,n,s,a,r){const[l,h]=t(o),[d,_]=t(n),u=r!=null?r:Math.ceil(Math.sqrt((d-l)**2+(_-h)**2)),c=(n-o)/u,f=this.ctx;let[m,w]=t(o);for(let g=1;g<=u;g++){this.handleFx(s+a*g*c/u);const[y,k]=t(o+c*g);f.lineTo(y,k),f.stroke(),f.beginPath(),f.moveTo(m,w),f.lineTo(y,k),m=y,w=k}}handleFx(t){const o=this.ctx,n=typeof this.lineWidth=="number"?this.lineWidth:this.lineWidth(t);o.lineWidth=n;let s;if(typeof this.lineColor=="string")s=this.lineColor;else{const l=this.lineColor(t);s=`rgba(${l[0]},${l[1]},${l[2]},${l[3]})`}o.strokeStyle=s;const a={};for(const[l,h]of Object.entries(this.lineShadow))if(typeof h=="function"){const d=h(t);typeof d=="number"?a[l]=d:a.color=`rgba(${d[0]},${d[1]},${d[2]},${d[3]})`}else a[l]=h;has(a.blur)&&(o.shadowBlur=a.blur),has(a.offsetX)&&(o.shadowOffsetX=a.offsetX),has(a.offsetY)&&(o.shadowOffsetY=a.offsetY),has(a.color)&&(o.shadowColor=a.color);let r="";for(const[l,h]of Object.entries(this.lineFilter)){let d;typeof h=="number"?d=h:d=h(t),l==="blur"?r+=`blur(${d}px)`:r+=`${l}(${d}%)`}o.filter=r}}async function test(){const e=core.createCanvas("test",0,0,480,480,100);e.canvas.style.backgroundColor="#000d";const t=new AnimatedPath(e);t.color("#fff").width(2).rect(100,100,280,280,2).close(!0).draw(1e3,C(5,"in-out")),await R(1050),t.clear().bezier([200,200],[280,200],[280,280]).bezier([280,280],[200,280],[200,200]).draw(1e3,C(5,"in-out")),await R(1050),t.clear().bezier([280,200],[200,200],[200,280]).bezier([200,280],[280,280],[280,200]).draw(1e3,C(5,"in-out"))}function init$1(){return{setGameCanvasFilter,getCanvasFilterByFloorId,setCanvasFilterByFloorId}}function setGameCanvasFilter(e){["bg","bg2","event","event2","fg","fg2","hero"].forEach(t=>{core.canvas[t].canvas.style.filter=e})}const filterMap=[[["MT50"],"brightness(80%)contrast(120%)"]];function getCanvasFilterByFloorId(e=core.status.floorId){var t,o;return(o=(t=filterMap.find(n=>n[0].includes(e)))==null?void 0:t[1])!=null?o:""}function setCanvasFilterByFloorId(e=core.status.floorId){setGameCanvasFilter(getCanvasFilterByFloorId(e))}function init(){return{createGaussNoise}}function createGaussNoise(e){var r,l,h,d;const t=(r=e.canvas)!=null?r:document.createElement("canvas");t.width=(l=e.width)!=null?l:core._PX_,t.height=(h=e.height)!=null?h:core._PY_,t.style.imageRendering="pixelated";const o=t.getContext("2d");o.imageSmoothingEnabled=!1;const n=Math.max(t.width,t.height),s=Math.min(n,(d=e.resolution)!=null?d:n/2),a=n===t.width?t.width/s:t.height/s;for(let _=0;_<t.width;_+=a)for(let u=0;u<t.height;u+=a){const f=255-Math.sqrt(Math.log(Math.random())*-2)*Math.sin(2*Math.PI*Math.random())*e.deviation-e.expectation;o.fillStyle=`rgba(${f},${f},${f},${f/255})`,o.fillRect(_,u,a,a)}return t}function forward(){const e=[init$7(),init$a(),init$h(),init$i(),init$j(),init$8(),init$g(),init$f(),init$9(),init$e(),init$6(),init$d(),init$5(),init$4(),init$3(),init$b(),init$c(),init$2(),init$1(),init()];for(const t of e)for(const o in t){const n=t[o];o in core.plugin||(core.plugin[o]=n),n instanceof Function&&(o in core||o.startsWith("_")||(core[o]=n))}console.log("插件转发完成!"),Object.values(floors).forEach((t,o)=>{const n=core.floorIds.indexOf(t[0]),s=core.floorIds.indexOf(t[1]),a=core.floorIds.slice(n,s+1);floors[o+1]=a})}main.forward=forward;main.init("play");main.listen();createApp(App).mount("#root");createApp(App2).mount("#root2");export{__vite_legacy_guard};