@malib/gear 1.0.0-next.4 → 1.0.0-next.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var Pt=Object.defineProperty;var Zt=Object.getOwnPropertyDescriptor;var zt=Object.getOwnPropertyNames;var Tt=Object.prototype.hasOwnProperty;var te=(t,o)=>{for(var n in o)Pt(t,n,{get:o[n],enumerable:!0})},ee=(t,o,n,a)=>{if(o&&typeof o=="object"||typeof o=="function")for(let r of zt(o))!Tt.call(t,r)&&r!==n&&Pt(t,r,{get:()=>o[r],enumerable:!(a=Zt(o,r))||a.enumerable});return t};var oe=t=>ee(Pt({},"__esModule",{value:!0}),t);var We={};te(We,{AddOptionCan:()=>Y,AddOptionType:()=>vt,Gear:()=>wt,GearAttribute:()=>E,GearCuttable:()=>_t,GearReq:()=>U,GearShare:()=>gt,GearTrade:()=>At,GearType:()=>h,PotentialCan:()=>Z,PotentialGrade:()=>D,SpellTraceType:()=>Ut,applyExceptional:()=>nt,applyGoldenHammer:()=>rt,applyScroll:()=>R,applySoulEnchant:()=>ht,applySpellTrace:()=>ct,canApplyExceptional:()=>G,canApplyScroll:()=>B,canApplySoulEnchant:()=>$,canFailScroll:()=>y,canGoldenHammer:()=>L,canResetExceptional:()=>q,canResetStarforce:()=>F,canResetUpgrade:()=>j,canResileScroll:()=>M,canSetSoul:()=>K,canSetSoulCharge:()=>Q,canStarScroll:()=>C,canStarforce:()=>v,failScroll:()=>it,getAddOption:()=>ot,getAddOptionValue:()=>Ct,getSpellTraceScroll:()=>It,isAccessory:()=>x,isArmor:()=>b,isDoubleHandWeapon:()=>Rt,isDragonGear:()=>tt,isLeftWeapon:()=>kt,isMechanicGear:()=>T,isShield:()=>H,isSubWeapon:()=>z,isWeapon:()=>d,resetExceptional:()=>at,resetSoulEnchant:()=>Ot,resetStarforce:()=>ut,resetUpgrade:()=>st,resileScroll:()=>lt,setSoul:()=>bt,setSoulCharge:()=>xt,starScroll:()=>V,starforce:()=>N,supportsAddOption:()=>et,supportsExceptional:()=>k,supportsSoul:()=>X,supportsStarforce:()=>g,supportsUpgrade:()=>S,toGearOption:()=>u});module.exports=oe(We);var At=(a=>(a[a.Tradeable=0]="Tradeable",a[a.TradeBlock=1]="TradeBlock",a[a.EquipTradeBlock=2]="EquipTradeBlock",a))(At||{}),gt=(a=>(a[a.None=0]="None",a[a.AccountSharable=1]="AccountSharable",a[a.AccountSharableOnce=2]="AccountSharableOnce",a))(gt||{}),Y=(a=>(a[a.None=0]="None",a[a.Can=1]="Can",a[a.Cannot=2]="Cannot",a))(Y||{}),Z=(r=>(r[r.None=0]="None",r[r.Can=1]="Can",r[r.Cannot=2]="Cannot",r[r.Fixed=3]="Fixed",r))(Z||{}),_t=(a=>(a[a.None=0]="None",a[a.Silver=1]="Silver",a[a.Platinum=2]="Platinum",a))(_t||{});var h=(e=>(e[e.cap=100]="cap",e[e.faceAccessory=101]="faceAccessory",e[e.eyeAccessory=102]="eyeAccessory",e[e.earrings=103]="earrings",e[e.coat=104]="coat",e[e.longcoat=105]="longcoat",e[e.pants=106]="pants",e[e.shoes=107]="shoes",e[e.glove=108]="glove",e[e.cape=110]="cape",e[e.ring=111]="ring",e[e.pendant=112]="pendant",e[e.belt=113]="belt",e[e.medal=114]="medal",e[e.shoulder=115]="shoulder",e[e.pocket=116]="pocket",e[e.badge=118]="badge",e[e.android=166]="android",e[e.machineHeart=167]="machineHeart",e[e.shield=109]="shield",e[e.emblem=119]="emblem",e[e.powerSource=119020]="powerSource",e[e.shiningRod=1212]="shiningRod",e[e.tuner=1213]="tuner",e[e.breathShooter=1214]="breathShooter",e[e.soulShooter=122]="soulShooter",e[e.desperado=123]="desperado",e[e.energySword=124]="energySword",e[e.espLimiter=126]="espLimiter",e[e.chain=127]="chain",e[e.magicGauntlet=128]="magicGauntlet",e[e.ritualFan=129]="ritualFan",e[e.ohSword=130]="ohSword",e[e.ohAxe=131]="ohAxe",e[e.ohBlunt=132]="ohBlunt",e[e.dagger=133]="dagger",e[e.katara=134]="katara",e[e.cane=136]="cane",e[e.wand=137]="wand",e[e.staff=138]="staff",e[e.thSword=140]="thSword",e[e.chakram=1404]="chakram",e[e.thAxe=141]="thAxe",e[e.thBlunt=142]="thBlunt",e[e.spear=143]="spear",e[e.polearm=144]="polearm",e[e.bow=145]="bow",e[e.crossbow=146]="crossbow",e[e.claw=147]="claw",e[e.knuckle=148]="knuckle",e[e.gun=149]="gun",e[e.shovel=150]="shovel",e[e.pickaxe=151]="pickaxe",e[e.dualBowguns=152]="dualBowguns",e[e.handCannon=153]="handCannon",e[e.heavySword=156]="heavySword",e[e.longSword=157]="longSword",e[e.gauntletRevolver=158]="gauntletRevolver",e[e.ancientBow=159]="ancientBow",e[e.soulShield=1098]="soulShield",e[e.demonShield=1099]="demonShield",e[e.magicArrow=135200]="magicArrow",e[e.card=135210]="card",e[e.medallion=135220]="medallion",e[e.rosary=135221]="rosary",e[e.ironChain=135222]="ironChain",e[e.magicBook1=135223]="magicBook1",e[e.magicBook2=135224]="magicBook2",e[e.magicBook3=135225]="magicBook3",e[e.arrowFletching=135226]="arrowFletching",e[e.bowThimble=135227]="bowThimble",e[e.daggerScabbard=135228]="daggerScabbard",e[e.charm=135229]="charm",e[e.orb=135240]="orb",e[e.dragonEssence=135250]="dragonEssence",e[e.soulRing=135260]="soulRing",e[e.magnum=135270]="magnum",e[e.wristBand=135290]="wristBand",e[e.farSight=135291]="farSight",e[e.powderKeg=135292]="powderKeg",e[e.mass=135293]="mass",e[e.document=135294]="document",e[e.magicMarble=135295]="magicMarble",e[e.arrowhead=135296]="arrowhead",e[e.jewel=135297]="jewel",e[e.powderKeg2=135298]="powderKeg2",e[e.controller=135300]="controller",e[e.foxMarble=135310]="foxMarble",e[e.chessPiece=135320]="chessPiece",e[e.transmitter=135330]="transmitter",e[e.charge=135340]="charge",e[e.magicWing=135350]="magicWing",e[e.pathOfAbyss=135360]="pathOfAbyss",e[e.relic=135370]="relic",e[e.fanTassel=135380]="fanTassel",e[e.bracelet=135400]="bracelet",e[e.weaponBelt=135401]="weaponBelt",e[e.ornament=135402]="ornament",e[e.hexSeeker=135403]="hexSeeker",e[e.petEquip=180]="petEquip",e[e.machineEngine=161]="machineEngine",e[e.machineArms=162]="machineArms",e[e.machineLegs=163]="machineLegs",e[e.machineBody=164]="machineBody",e[e.machineTransistors=165]="machineTransistors",e[e.dragonMask=194]="dragonMask",e[e.dragonPendant=195]="dragonPendant",e[e.dragonWings=196]="dragonWings",e[e.dragonTail=197]="dragonTail",e))(h||{});var D=(i=>(i[i.Normal=0]="Normal",i[i.Rare=1]="Rare",i[i.Epic=2]="Epic",i[i.Unique=3]="Unique",i[i.Legendary=4]="Legendary",i))(D||{});function d(t){return kt(t)||Rt(t)}function kt(t){return 121<=t&&t<=139&&t!==134||Math.floor(t/10)===121}function Rt(t){return t>=140&&t<=149||t>=152&&t<=159||Math.floor(t/10)===140}function z(t){if(H(t))return!0;switch(t){case 134:return!0;default:return Math.floor(t/1e3)===135}}function H(t){switch(t){case 109:case 1099:case 1098:return!0;default:return!1}}function b(t){return t===100||t>=104&&t<=110||t===1098||t===1099}function x(t){return t>=101&&t<=103||t>=111&&t<=113||t===115}function T(t){return t>=161&&t<=165}function tt(t){return t>=194&&t<=197}var vt=(p=>(p.str="str",p.dex="dex",p.int="int",p.luk="luk",p.str_dex="str&dex",p.str_int="str&int",p.str_luk="str&luk",p.dex_int="dex&int",p.dex_luk="dex&luk",p.int_luk="int&luk",p.maxHp="maxHp",p.maxMp="maxMp",p.attackPower="attackPower",p.magicPower="magicPower",p.armor="armor",p.speed="speed",p.jump="jump",p.bossDamage="bossDamage",p.damage="damage",p.allStat="allStat",p.reqLevelDecrease="reqLevelDecrease",p))(vt||{});function et(t){return t.attributes.canAddOption===1?!0:t.attributes.canAddOption===2?!1:d(t.type)?!0:b(t.type)?!H(t.type):x(t.type)?![111,115].includes(t.type):t.type===116}function ot(t,o,n){let a=me(o),r=Ct(t,o,n),i=a.map(s=>[s,r]);return Object.fromEntries(i)}function Ct(t,o,n){let a={type:o,reqLevel:t.req.level,gearType:t.type,bossReward:t.attributes.bossReward,attackPower:t.baseOption.attackPower,magicPower:t.baseOption.magicPower};switch(o){case"str":case"dex":case"int":case"luk":return qt(n,a);case"str&dex":case"str&int":case"str&luk":case"dex&int":case"dex&luk":case"int&luk":return ne(n,a);case"armor":return qt(n,a);case"attackPower":case"magicPower":return ae(n,a);case"maxHp":case"maxMp":return le(n,a);case"speed":return se(n,a);case"jump":return ce(n,a);case"damage":return pe(n,a);case"bossDamage":return de(n,a);case"allStat":return ue(n,a);case"reqLevelDecrease":return fe(n,a)}}function qt(t,{reqLevel:o}){return o>=250?Math.floor(o/20)*t:(Math.floor(o/20)+1)*t}function ne(t,{reqLevel:o}){return(Math.floor(o/40)+1)*t}function ae(t,o){let{reqLevel:n,gearType:a}=o;if(d(a))return re(t,o);if(n>=60)return t;throw TypeError("\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 60 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.")}function re(t,o){let{reqLevel:n,type:a,gearType:r,bossReward:i,attackPower:s,magicPower:l}=o,f=i?[0,0,1,1.4666,2.0166,2.663,3.4166]:[1,2.222,3.63,5.325,7.32,8.777,10.25];if(r===156||r===157){let m=ie(r,o),I=n>180?6:n>160?5:n>110?4:3;return Math.ceil(m*f[t-1]*I/100)}else{let m=a==="magicPower"&&l>s?l:s;if(i){let I=n>160?6:n>150?5:n>110?4:3;return Math.ceil(m*f[t-1]*I*3/100)}else{let I=n>110?4:3;return Math.ceil(m*f[t-1]*I/100)}}}function ie(t,{attackPower:o}){if(t===156)return o;let a=new Map([[100,102],[103,105],[105,107],[112,114],[117,121],[135,139],[169,173],[203,207],[293,297],[337,342]]).get(o);if(a===void 0)throw TypeError("\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC744 \uBD80\uC5EC\uD560 \uC218 \uC5C6\uB294 \uD0DC\uB3C4 \uC7A5\uBE44\uC785\uB2C8\uB2E4. (Please submit issue with the gear info)");return a}function le(t,{reqLevel:o}){return o<10?3*t:o>=250?700*t:Math.floor(o/10)*30*t}function se(t,{gearType:o}){if(d(o))throw TypeError("\uC774\uB3D9\uC18D\uB3C4 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function ce(t,{gearType:o}){if(d(o))throw TypeError("\uC810\uD504\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function pe(t,{gearType:o}){if(!d(o))throw TypeError("\uB370\uBBF8\uC9C0(%) \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function de(t,{reqLevel:o,gearType:n}){if(o<90||!d(n))throw TypeError("\uBCF4\uC2A4 \uACF5\uACA9 \uC2DC \uB370\uBBF8\uC9C0 \uC99D\uAC00(%) \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 90 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return 2*t}function ue(t,{reqLevel:o,gearType:n}){if(o<70&&!d(n))throw TypeError("\uC62C\uC2A4\uD0EF(%) \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 70 \uC774\uC0C1 \uB610\uB294 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function fe(t,{reqLevel:o}){if(o<=0)throw TypeError("\uCC29\uC6A9 \uB808\uBCA8 \uAC10\uC18C \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 1 \uC774\uC0C1\uC758 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return Math.min(o,5*t)}function me(t){return t.split("&")}function w(t,...o){let n=t;for(let a of o)for(let[r,i]of Object.entries(a))r in n?n[r]+=i:n[r]=i}function Lt(...t){let o={};return w(o,...t),o}function k(t){return t.exceptionalTotalUpgradeableCount>0}function G(t){return k(t)&&t.exceptionalUpgradeableCount>0}function nt(t,o){if(!G(t))throw TypeError("\uC775\uC149\uC154\uB110 \uAC15\uD654\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.exceptionalOption===void 0&&(t.data.exceptionalOption={}),w(t.data.exceptionalOption,o.option),t.data.exceptionalUpgradeableCount=t.exceptionalUpgradeableCount-1,t.data.exceptionalUpgradeCount=t.exceptionalUpgradeCount+1}function q(t){return k(t)}function at(t){if(!q(t))throw TypeError("\uC8FC\uBB38\uC11C \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.exceptionalOption={},t.data.exceptionalUpgradeableCount=t.exceptionalTotalUpgradeableCount,t.data.exceptionalUpgradeCount=void 0}function S(t){return!t.attributes.cannotUpgrade&&t.scrollTotalUpgradeableCount>0}function L(t){return S(t)&&!t.attributes.blockGoldenHammer&&t.goldenHammer===0}function rt(t){if(!L(t))throw TypeError("\uD669\uAE08 \uB9DD\uCE58\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.goldenHammer=t.goldenHammer+1,t.data.scrollUpgradeableCount=t.scrollUpgradeableCount+1}function y(t){return S(t)&&t.scrollUpgradeableCount>0}function it(t){if(!y(t))throw TypeError("\uC8FC\uBB38\uC11C \uC2E4\uD328\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.scrollUpgradeableCount=t.scrollUpgradeableCount-1,t.data.scrollResilienceCount=t.scrollResilienceCount+1}function M(t){return S(t)&&t.scrollResilienceCount>0}function lt(t){if(!M(t))throw TypeError("\uC5C5\uADF8\uB808\uC774\uB4DC \uAC00\uB2A5 \uD69F\uC218\uB97C \uBCF5\uAD6C\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.scrollResilienceCount=t.scrollResilienceCount-1,t.data.scrollUpgradeableCount=t.scrollUpgradeableCount+1}function j(t){return S(t)}function st(t){if(!j(t))throw TypeError("\uC8FC\uBB38\uC11C \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.upgradeOption={},t.data.scrollUpgradeableCount=t.scrollTotalUpgradeableCount,t.data.scrollUpgradeCount=void 0,t.data.scrollResilienceCount=void 0,t.data.goldenHammer=void 0}function B(t){return S(t)&&t.scrollUpgradeableCount>0}function R(t,o){if(!B(t))throw TypeError("\uC8FC\uBB38\uC11C\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.upgradeOption===void 0&&(t.data.upgradeOption={}),w(t.data.upgradeOption,o.option),t.data.scrollUpgradeableCount=t.scrollUpgradeableCount-1,t.data.scrollUpgradeCount=t.scrollUpgradeCount+1}var Ut=(s=>(s.str="str",s.dex="dex",s.int="int",s.luk="luk",s.maxHp="maxHp",s.allStat="allStat",s))(Ut||{});function ct(t,o,n){let a=It(t,o,n);R(t,a)}function It(t,o,n){if(d(t.type)||t.type===134)return Se(t,o,n);if(t.type===108)return he(t,o,n);if(b(t.type)||t.type===115)return be(t,o,n);if(x(t.type))return xe(t,o,n);if(t.type===167)return Oe(t,o,n);throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44 \uBD84\uB958\uC785\uB2C8\uB2E4.")}function Se(t,o,n){if(o==="allStat")throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let a=W(t),[r,i]=we[n][a];o==="maxHp"&&(i*=50);let s=Dt(o),l,f;return i===0?(l=A(n,P(s)),f={[s]:r}):(l=A(n,P(s),P(o)),f={[s]:r,[o]:i}),{name:l,option:f,type:o,rate:n}}function he(t,o,n){let a=W(t),r=Ae[n][a],i,s;if(r===0)i=A(n,"\uBC29\uC5B4\uB825"),s={armor:3};else{let l=Dt(o);i=A(n,P(l)),s={[l]:r}}return{name:i,option:s,rate:n,type:o}}function be(t,o,n){let a=W(t),[r,i,s]=Pe[n][a],l={maxHp:i,armor:s};switch(o){case"str":case"dex":case"int":case"luk":l[o]=r;break;case"maxHp":l.maxHp+=r*50;break;case"allStat":{if(!(n in yt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let m=yt[n][a];l.str=m,l.dex=m,l.int=m,l.luk=m;break}}return t.scrollUpgradeCount===3&&(t.req.beginner()?(l.attackPower=1,l.magicPower=1):t.req.magician()?l.magicPower=1:l.attackPower=1),{name:A(n,P(o)),option:l,type:o,rate:n}}function xe(t,o,n){if(!(n in Et))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let a=W(t),r=Et[n][a],i={};switch(o){case"str":case"dex":case"int":case"luk":i[o]=r;break;case"maxHp":i.maxHp=r*50;break;case"allStat":{if(!(n in Mt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let l=Mt[n][a];i.str=l,i.dex=l,i.int=l,i.luk=l;break}}return{name:A(n,P(o)),option:i,type:o,rate:n}}function Oe(t,o,n){if(!(n in Et))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let a=W(t),r=ge[n][a],i=Dt(o),s=A(n,P(i)),l={[i]:r};return{name:s,option:l,type:o,rate:n}}function A(t,o,n){return n?`${t.toString()}% ${o}(${n}) \uC8FC\uBB38\uC11C`:`${t.toString()}% ${o} \uC8FC\uBB38\uC11C`}function P(t){switch(t){case"str":return"\uD798";case"dex":return"\uBBFC\uCCA9";case"int":return"\uC9C0\uB825";case"luk":return"\uC6B4";case"maxHp":return"\uCCB4\uB825";case"allStat":return"\uC62C\uC2A4\uD0EF";case"attackPower":return"\uACF5\uACA9\uB825";case"magicPower":return"\uB9C8\uB825"}}function W(t){return t.req.level>110?2:t.req.level>70?1:0}function Dt(t){return t==="int"?"magicPower":"attackPower"}var we={100:[[1,0],[2,0],[3,1]],70:[[2,0],[3,1],[5,2]],30:[[3,1],[5,2],[7,3]],15:[[5,2],[7,3],[9,4]]},Pe={100:[[1,5,1],[2,20,2],[3,30,3]],70:[[2,15,2],[3,40,4],[4,70,5]],30:[[3,30,4],[5,70,7],[7,120,10]],15:[[4,45,6],[7,110,10],[10,170,15]]},yt={30:[1,2,3],15:[2,3,4]},Ae={100:[0,1,1],70:[1,2,2],30:[2,3,3],15:[3,4,4]},Et={100:[1,1,2],70:[2,2,3],30:[3,4,5]},Mt={30:[1,2,3]},ge={100:[1,2,3],70:[2,3,5],30:[3,5,7]};var jt="__GearOption_s87Ns2aQ";function u(t){return jt in t?t:new Proxy(t,{get(o,n){if(n===jt)return!0;if(n in Ht)return o[n]??Ht[n]},set(o,n,a){return n in Ht?(o[n]=a,!0):!1},ownKeys(o){return Object.entries(o).filter(([,n])=>n!=0).map(([n])=>n)}})}var Ht={str:0,dex:0,int:0,luk:0,strRate:0,dexRate:0,intRate:0,lukRate:0,maxHp:0,maxMp:0,maxHpRate:0,maxMpRate:0,maxDemonForce:0,attackPower:0,magicPower:0,attackPowerRate:0,magicPowerRate:0,armor:0,armorRate:0,speed:0,jump:0,knockback:0,bossDamage:0,normalDamage:0,ignoreMonsterArmor:0,allStat:0,damage:0,reqLevelDecrease:0,criticalRate:0,criticalDamage:0,cooltimeReduce:0,strLv:0,dexLv:0,intLv:0,lukLv:0};var _e=25,dt=15,ke=15,Re=150;function g(t){return(t.data.maxStar??0)>0}function v(t,o=!1){if(!g(t))return!1;if(t.attributes.superior)return t.star<Math.min(ke,t.maxStar);if(!o&&t.star>=t.maxStar)return!1;let n=t.starScroll?dt:_e;return t.star<n}function N(t,o=!1){if(!v(t,o))throw TypeError("\uC2A4\uD0C0\uD3EC\uC2A4 \uAC15\uD654\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.star=t.star+1,t.attributes.superior?ve(t):d(t.type)||t.type===134?Ce(t):Ee(t)}function C(t,o=!1){return!g(t)||t.attributes.superior||t.req.level>Re||!o&&t.star>=t.maxStar?!1:t.star<dt}function V(t,o=!1,n=!1){if(!C(t,n))throw TypeError("\uB180\uB77C\uC6B4 \uC7A5\uBE44 \uAC15\uD654 \uC8FC\uBB38\uC11C\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.starScroll=!0,t.data.star=t.star+1;let a=O(ye,t),r=O(Me,t),i=d(t.type)||t.type===134;for(let l of J)Gt(t,l)>0&&(c(t)[l]+=a,o&&x(t.type)&&(c(t)[l]+=t.star>5?2:1));for(let l of Wt){let f=Gt(t,l);f>0&&(i&&(c(t)[l]+=Math.floor(f/50)+1),c(t)[l]+=r,o&&(i||t.type===109)&&(c(t)[l]+=1))}o&&b(t.type)&&(c(t).maxHp+=50);let s=Gt(t,"armor");s>0&&(c(t).armor+=Math.floor(s/20)+1)}function F(t){return!!g(t)}function ut(t){if(!F(t))throw TypeError("\uC2A4\uD0C0\uD3EC\uC2A4 \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.starforceOption={},t.data.star=void 0,t.data.starScroll=void 0}function ve(t){let o=O(Ge,t),n=O(He,t);for(let r of J)t.baseOption[r]>0&&(c(t)[r]+=o);for(let r of Wt)t.baseOption[r]>0&&(c(t)[r]+=n);let a=pt(t,"armor");c(t).armor+=Math.floor(a/20)+1}function Ce(t){let o=O(Nt,t),n=O(De,t),a=Bt(t);for(let s of J)(a.has(s)||t.star>15&&(t.baseOption[s]>0||t.upgradeOption[s]>0))&&(c(t)[s]+=o);let r=t.req.magician()||t.upgradeOption.magicPower>0;if(t.star>15)c(t).attackPower+=n,r&&(c(t).magicPower+=n);else{let s=pt(t,"attackPower");if(c(t).attackPower+=Math.floor(s/50)+1,r){let l=pt(t,"magicPower");c(t).magicPower+=Math.floor(l/50)+1}}let i=Vt[t.star];c(t).maxHp+=i,c(t).maxMp+=i}function Ee(t){let o=O(Nt,t),n=O(Ie,t),a=Bt(t);for(let r of J)(a.has(r)||t.star>15&&(t.baseOption[r]>0||t.upgradeOption[r]>0))&&(c(t)[r]+=o);if(c(t).attackPower+=n,c(t).magicPower+=n,t.type===108){let r=qe[t.star];t.req.beginner()?(c(t).attackPower+=r,c(t).magicPower+=r):t.req.magician()?c(t).magicPower+=r:c(t).attackPower+=r}if(t.type!==167){let r=pt(t,"armor");c(t).armor+=Math.floor(r/20)+1}if(Ue.includes(t.type)){let r=Vt[t.star];c(t).maxHp+=r}if(t.type===107){let r=Le[t.star];c(t).speed+=r,c(t).jump+=r}}function Bt(t){if(t.req.beginner())return new Set(J);let o=[];return t.req.warrior()&&o.push("str","dex"),t.req.magician()&&o.push("int","luk"),t.req.bowman()&&o.push("dex","str"),t.req.thief()&&o.push("luk","dex"),t.req.pirate()&&o.push("str","dex"),new Set(o)}function O(t,o){let n=o.req.level;for(let a=t.length-1;a>=0;a--){let r=t[a];if(n>=r[0])return r[o.star]}throw TypeError("\uC7A5\uBE44\uC758 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8\uC740 0 \uC774\uC0C1\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.")}function c(t){return t.data.starforceOption===void 0&&(t.data.starforceOption={}),u(t.data.starforceOption)}function pt(t,o){return t.baseOption[o]+t.upgradeOption[o]+t.starforceOption[o]}function Gt(t,o){return t.baseOption[o]+t.addOption[o]+t.upgradeOption[o]+t.starforceOption[o]}var J=["str","dex","int","luk"],Wt=["attackPower","magicPower"],Ue=[100,104,105,106,110,111,112,113,115,109],Nt=[[0,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0],[108,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0],[118,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,0,0,0],[128,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,0,0,0],[138,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,9,9,9,9,9,9,9,0,0,0],[148,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,11,11,11,11,11,11,11,0,0,0],[158,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,13,13,13,13,13,13,13,0,0,0],[198,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,15,15,15,15,15,15,15,0,0,0],[248,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,17,17,17,17,17,17,17,0,0,0]],Ie=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,7,8,9,10,12,13,15,17],[118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,8,9,10,11,13,14,16,18],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,9,10,11,12,14,16,18,20],[138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,10,11,12,13,15,17,19,21],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,10,11,12,13,14,16,18,20,22],[158,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,11,12,13,14,15,17,19,21,23],[198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,13,14,15,16,17,19,21,23,25],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,15,16,17,18,19,21,23,25,27]],De=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,6,7,8,9,27,28,29],[118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,6,7,8,9,10,28,29,30],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,9,10,11,29,30,31],[138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,9,10,11,12,30,31,32],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,10,11,12,13,31,32,33],[158,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,10,11,12,13,14,32,33,34],[198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,13,14,14,15,16,17,34,35,36],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,15,16,16,17,18,19,36,37,38]],He=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[110,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0],[150,0,0,0,0,0,9,10,11,12,13,15,17,19,21,23]],Ge=[[0,1,2,4,7,11,0,0,0,0,0,0,0,0,0,0],[80,2,3,5,8,12,0,0,0,0,0,0,0,0,0,0],[110,9,10,12,15,19,0,0,0,0,0,0,0,0,0,0],[150,19,20,22,25,29,0,0,0,0,0,0,0,0,0,0]],qe=[-1,0,0,0,0,1,0,1,0,1,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0],Vt=[-1,5,5,5,10,10,15,15,20,20,25,25,25,25,25,25,0,0,0,0,0,0,0,0,0,0],Le=[-1,0,0,1,1,1,1,1,1,1,1,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0],ye=[[0,1,2,4,7,11,0,0,0,0,0,0,0,0,0,0],[80,2,3,5,8,12,0,0,0,0,0,0,0,0,0,0],[85,3,4,6,9,13,0,0,0,0,0,0,0,0,0,0],[90,4,5,7,10,14,0,0,0,0,0,0,0,0,0,0],[95,5,6,8,11,15,0,0,0,0,0,0,0,0,0,0],[100,7,8,10,13,17,0,0,0,0,0,0,0,0,0,0],[105,8,9,11,14,18,0,0,0,0,0,0,0,0,0,0],[110,9,10,12,15,19,0,0,0,0,0,0,0,0,0,0],[115,10,11,13,16,20,0,0,0,0,0,0,0,0,0,0],[120,12,13,15,18,22,0,0,0,0,0,0,0,0,0,0],[125,13,14,16,19,23,0,0,0,0,0,0,0,0,0,0],[130,14,15,17,20,24,0,0,0,0,0,0,0,0,0,0],[135,15,16,18,21,25,0,0,0,0,0,0,0,0,0,0],[140,17,18,20,23,27,0,0,0,0,0,0,0,0,0,0],[145,18,19,21,24,28,0,0,0,0,0,0,0,0,0,0],[150,19,20,22,25,29,0,0,0,0,0,0,0,0,0,0]],Me=[[0,0,0,0,0,0,1,2,3,4,5,6,8,10,12,14],[80,0,0,0,0,0,2,3,4,5,6,7,9,11,13,15],[90,0,0,0,0,0,3,4,5,6,7,8,10,12,14,16],[100,0,0,0,0,0,4,5,6,7,8,9,11,13,15,17],[110,0,0,0,0,0,5,6,7,8,9,10,12,14,16,18],[120,0,0,0,0,0,6,7,8,9,10,11,13,15,17,19],[130,0,0,0,0,0,7,8,9,10,11,12,14,16,18,20],[140,0,0,0,0,0,8,9,10,11,12,13,15,17,19,21],[150,0,0,0,0,0,9,10,11,12,13,14,16,18,20,22]];function Ft(t){return St(t.attributes.canPotential,t)!==2}function ft(t){return St(t.attributes.canPotential,t)===1}function Jt(t,o,n){if(!ft(t))throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");if(o===0)throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825 \uB4F1\uAE09\uC744 Normal\uB85C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. (\uC7A0\uC7AC\uB2A5\uB825\uC744 \uCD08\uAE30\uD654\uD558\uB824\uBA74 resetPotential\uC744 \uC0AC\uC6A9\uD558\uC138\uC694.)");if(n.length<1||n.length>3)throw new TypeError("\uC7A0\uC7AC\uC635\uC158 \uAC1C\uC218\uB294 1\uAC1C\uC5D0\uC11C 3\uAC1C \uC0AC\uC774\uC5EC\uC57C \uD569\uB2C8\uB2E4.");t.data.potentialGrade=o,t.data.potentials=n}function Xt(t){if(!ft(t))throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.potentialGrade=0,t.data.potentials=void 0}function $t(t){return St(t.attributes.canAdditionalPotential,t)!==2}function mt(t){return St(t.attributes.canAdditionalPotential,t)===1}function Kt(t,o,n){if(!mt(t))throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");if(o===0)throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825 \uB4F1\uAE09\uC744 Normal\uB85C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. (\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uCD08\uAE30\uD654\uD558\uB824\uBA74 resetAdditionalPotential\uC744 \uC0AC\uC6A9\uD558\uC138\uC694.)");if(n.length<1||n.length>3)throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uC635\uC158 \uAC1C\uC218\uB294 1\uAC1C\uC5D0\uC11C 3\uAC1C \uC0AC\uC774\uC5EC\uC57C \uD569\uB2C8\uB2E4.");t.data.additionalPotentialGrade=o,t.data.additionalPotentials=n}function Qt(t){if(!mt(t))throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.additionalPotentialGrade=0,t.data.additionalPotentials=void 0}function St(t,o){return t!==0?t:je(o)}function je(t){return t.scrollTotalUpgradeableCount>0?T(t.type)||tt(t.type)?2:1:Be(t.type)||z(t.type)?1:2}function Be(t){switch(t){case 1098:case 1099:case 134:case 135200:case 135210:case 135240:case 135250:case 135260:case 135270:case 119:return!0;default:return!1}}var E=class{data;constructor(o){this.data=o}get only(){return this.data.only??!1}get trade(){return this.data.trade??0}set trade(o){this.data.trade=o}get onlyEquip(){return this.data.onlyEquip??!1}get share(){return this.data.share??0}get blockGoldenHammer(){return this.data.blockGoldenHammer??!1}get superior(){return this.data.superior??!1}get attackSpeed(){return this.data.attackSpeed}get cannotUpgrade(){return this.data.cannotUpgrade??!1}get canAddOption(){return this.data.canAddOption??0}get canPotential(){return this.data.canPotential??0}get canAdditionalPotential(){return this.data.canAdditionalPotential??0}get specialGrade(){return this.data.specialGrade??!1}get reqLevelIncrease(){return this.data.reqLevelIncrease??0}get cuttable(){return this.data.cuttable??0}get cuttableCount(){return this.data.cuttableCount}set cuttableCount(o){this.data.cuttableCount=o}get accountShareTag(){return this.data.accountShareTag??!1}get lucky(){return this.data.lucky??!1}get incline(){return{charisma:0,insight:0,will:0,craft:0,sense:0,charm:0,...this.data.incline}}set incline(o){this.data.incline=o}get bossReward(){return this.data.bossReward??!1}get growthExp(){return this.data.growthExp}set growthExp(o){(o===void 0||0<=o&&o<=100)&&(this.data.growthExp=o)}get growthLevel(){return this.data.growthLevel}set growthLevel(o){this.data.growthLevel=o}get dateExpire(){return this.data.dateExpire}set dateExpire(o){(o===void 0||!Number.isNaN(Date.parse(o)))&&(this.data.dateExpire=o)}};var U=class{data;constructor(o){this.data=o}get level(){return this.data.level??0}get str(){return this.data.str??0}get dex(){return this.data.dex??0}get int(){return this.data.int??0}get luk(){return this.data.luk??0}get job(){return this.data.job??0}get class(){return this.data.class??0}beginner(){return this.job===0}warrior(){return this.job===0||(this.job&1)!=0}magician(){return this.job===0||(this.job&2)!=0}bowman(){return this.job===0||(this.job&4)!=0}thief(){return this.job===0||(this.job&8)!=0}pirate(){return this.job===0||(this.job&16)!=0}};function X(t){return d(t.type)&&t.req.level>=30}function $(t){return X(t)&&!t.soulEnchanted}function ht(t){if(!$(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0\uC740 \uC911\uBCF5\uD574\uC11C \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");t.data.soulSlot={}}function K(t){return t.soulEnchanted}function bt(t,o){if(!K(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC5D0\uB9CC \uC18C\uC6B8\uC744 \uC7A5\uCC29\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");t.data.soulSlot.soul=o,Yt(t)}function Q(t){return t.soulEnchanted}function xt(t,o){if(!Q(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uB9CC \uC18C\uC6B8 \uCDA9\uC804\uB7C9\uC744 \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");if(o<0||o>1e3)throw TypeError("\uC18C\uC6B8 \uCDA9\uC804\uB7C9\uC740 0 \uC774\uC0C1 1000 \uC774\uD558\uC758 \uAC12\uC73C\uB85C\uB9CC \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");t.data.soulSlot.charge=o,Yt(t)}function Ot(t){t.data.soulSlot=void 0}function Yt(t){let o;if(t.soulCharge===0)o={};else{let n=t.baseOption.attackPower>=t.baseOption.magicPower?"attackPower":"magicPower",a=Math.min(5,Math.ceil(t.soulCharge/100)-1);t.soul?o={[n]:10+a*(t.soul.chargeFactor??1)}:o={[n]:5+a}}t.data.soulSlot.chargeOption=o}var wt=class{data;constructor(o){this.data=o}get meta(){return this.data.meta}get name(){return this.data.name}get icon(){return this.data.icon??""}get desc(){return this.data.desc}get shape(){return this.data.shape}set shape(o){this.data.shape=o}get shapeIcon(){return this.shape?.icon??this.icon}get type(){return this.data.type}get req(){return new U(this.data.req)}get attributes(){return new E(this.data.attributes)}get totalOption(){return u(Lt(this.baseOption,this.addOption,this.upgradeOption,this.starforceOption))}get baseOption(){return u(this.data.baseOption??{})}get addOption(){return u(this.data.addOption??{})}get upgradeOption(){return u(this.data.upgradeOption??{})}get starforceOption(){return u(this.data.starforceOption??{})}get scrollUpgradeCount(){return this.data.scrollUpgradeCount??0}get scrollResilienceCount(){return this.data.scrollResilienceCount??0}get scrollUpgradeableCount(){return this.data.scrollUpgradeableCount??0}get goldenHammer(){return this.data.goldenHammer??0}get scrollTotalUpgradeableCount(){return this.scrollUpgradeCount+this.scrollUpgradeableCount+this.scrollResilienceCount-this.goldenHammer}get star(){return this.data.star??0}get maxStar(){let o=this.data.maxStar??0;return Math.max(this.star,this.starScroll?Math.min(dt,o):o)}get starScroll(){return this.data.starScroll??!1}get soulEnchanted(){return this.data.soulSlot!==void 0}get soul(){if(this.data.soulSlot?.soul)return{...this.data.soulSlot.soul,option:u(this.data.soulSlot.soul.option)}}get soulCharge(){return this.data.soulSlot?.charge??0}get soulChargeOption(){return u(this.data.soulSlot?.chargeOption??{})}get potentialGrade(){return this.data.potentialGrade??0}get potentials(){return this.data.potentials?this.data.potentials.map(o=>({...o,option:u(o.option)})):[]}get additionalPotentialGrade(){return this.data.additionalPotentialGrade??0}get additionalPotentials(){return this.data.additionalPotentials?this.data.additionalPotentials.map(o=>({...o,option:u(o.option)})):[]}get exceptionalOption(){return u(this.data.exceptionalOption??{})}get exceptionalUpgradeCount(){return this.data.exceptionalUpgradeCount??0}get exceptionalUpgradeableCount(){return this.data.exceptionalUpgradeableCount??0}get exceptionalTotalUpgradeableCount(){return this.exceptionalUpgradeCount+this.exceptionalUpgradeableCount}get supportsAddOption(){return et(this)}applyAddOption(o,n){let a=ot(this,o,n);this.data.addOption||(this.data.addOption={}),w(this.data.addOption,a),this.meta.add.push([o,n])}resetAddOption(){this.data.addOption=void 0,this.meta.add=[]}get supportsUpgrade(){return S(this)}get canApplyGoldenHammer(){return L(this)}applyGoldenHammer(){rt(this)}get canApplyFailScroll(){return y(this)}applyScrollFail(){it(this)}get canApplyResileScroll(){return M(this)}applyScrollResile(){lt(this)}get canResetUpgrade(){return j(this)}resetUpgrade(){st(this)}get canApplyScroll(){return B(this)}applyScroll(o){R(this,o)}applySpellTrace(o,n){ct(this,o,n)}get supportsStarforce(){return g(this)}get canApplyStarforce(){return v(this)}applyStarforce(){N(this)}get canApplyStarforceIgnoringMaxStar(){return v(this,!0)}applyStarforceIgnoringMaxStar(){N(this,!0)}get canApplyStarScroll(){return C(this)}applyStarScroll(o=!1){V(this,o)}get canApplyStarScrollIgnoringMaxStar(){return C(this,!0)}applyStarScrollIgnoringMaxStar(o=!1){V(this,o,!0)}get canResetStarforce(){return F(this)}resetStarforce(){ut(this)}get supportsPotential(){return Ft(this)}get canSetPotential(){return ft(this)}setPotential(o,n){Jt(this,o,n)}resetPotential(){Xt(this)}get supportsAdditionalPotential(){return $t(this)}get canSetAdditionalPotential(){return mt(this)}setAdditionalPotential(o,n){Kt(this,o,n)}resetAdditionalPotential(){Qt(this)}get supportsSoul(){return X(this)}get canApplySoulEnchant(){return $(this)}applySoulEnchant(){ht(this)}get canSetSoul(){return K(this)}setSoul(o){bt(this,o)}get canSetSoulCharge(){return Q(this)}setSoulCharge(o){xt(this,o)}resetSoulEnchant(){Ot(this)}get supportsExceptional(){return k(this)}get canApplyExceptional(){return G(this)}applyExceptional(o){nt(this,o)}get canResetExceptional(){return q(this)}resetExceptional(){at(this)}};
1
+ "use strict";var _t=Object.defineProperty;var Tt=Object.getOwnPropertyDescriptor;var te=Object.getOwnPropertyNames;var ee=Object.prototype.hasOwnProperty;var oe=(t,o)=>{for(var a in o)_t(t,a,{get:o[a],enumerable:!0})},ae=(t,o,a,n)=>{if(o&&typeof o=="object"||typeof o=="function")for(let r of te(o))!ee.call(t,r)&&r!==a&&_t(t,r,{get:()=>o[r],enumerable:!(n=Tt(o,r))||n.enumerable});return t};var ne=t=>ae(_t({},"__esModule",{value:!0}),t);var Xe={};oe(Xe,{AddOptionType:()=>et,Gear:()=>gt,GearAttribute:()=>U,GearCapability:()=>b,GearCuttable:()=>kt,GearReq:()=>G,GearShare:()=>Ct,GearTrade:()=>vt,GearType:()=>x,PotentialGrade:()=>H,ReadonlyGear:()=>q,SpellTraceType:()=>qt,applyAddOption:()=>ot,applyExceptional:()=>rt,applyScroll:()=>I,applySoulEnchant:()=>ft,applySpellTrace:()=>Pt,canApplyAddOption:()=>M,canApplyExceptional:()=>j,canApplyScroll:()=>Q,canApplySoulEnchant:()=>N,canFailScroll:()=>X,canResetAddOption:()=>B,canResetExceptional:()=>W,canResetStarforce:()=>T,canResetUpgrade:()=>K,canResileScroll:()=>$,canSetAdditionalPotential:()=>E,canSetPotential:()=>k,canSetSoul:()=>F,canSetSoulCharge:()=>J,canStarScroll:()=>D,canStarforce:()=>y,failScroll:()=>bt,getAddOption:()=>Ut,getAddOptionValue:()=>nt,getMaxStar:()=>Rt,getSpellTraceScroll:()=>Lt,isAccessory:()=>g,isArmor:()=>R,isDoubleHandWeapon:()=>yt,isDragonGear:()=>Ft,isLeftWeapon:()=>It,isMechanicGear:()=>Nt,isShield:()=>Dt,isSubWeapon:()=>Vt,isWeapon:()=>p,resetAddOption:()=>at,resetAdditionalPotential:()=>ut,resetExceptional:()=>it,resetPotential:()=>ct,resetSoulEnchant:()=>ht,resetStarforce:()=>At,resetUpgrade:()=>Ot,resileScroll:()=>xt,setAdditionalPotential:()=>pt,setPotential:()=>st,setSoul:()=>mt,setSoulCharge:()=>St,starScroll:()=>z,starforce:()=>Z,supportsAddOption:()=>v,supportsAdditionalPotential:()=>dt,supportsExceptional:()=>C,supportsPotential:()=>lt,supportsSoul:()=>V,supportsStarforce:()=>A,supportsUpgrade:()=>S,toGearOption:()=>u});module.exports=ne(Xe);var et=(d=>(d.str="str",d.dex="dex",d.int="int",d.luk="luk",d.str_dex="str,dex",d.str_int="str,int",d.str_luk="str,luk",d.dex_int="dex,int",d.dex_luk="dex,luk",d.int_luk="int,luk",d.maxHp="maxHp",d.maxMp="maxMp",d.attackPower="attackPower",d.magicPower="magicPower",d.armor="armor",d.speed="speed",d.jump="jump",d.bossDamage="bossDamage",d.damage="damage",d.allStat="allStat",d.reqLevelDecrease="reqLevelDecrease",d))(et||{});var vt=(n=>(n[n.Tradeable=0]="Tradeable",n[n.TradeBlock=1]="TradeBlock",n[n.EquipTradeBlock=2]="EquipTradeBlock",n))(vt||{}),Ct=(n=>(n[n.None=0]="None",n[n.AccountSharable=1]="AccountSharable",n[n.AccountSharableOnce=2]="AccountSharableOnce",n))(Ct||{}),b=(n=>(n[n.Cannot=0]="Cannot",n[n.Can=1]="Can",n[n.Fixed=2]="Fixed",n))(b||{}),kt=(n=>(n[n.None=0]="None",n[n.Silver=1]="Silver",n[n.Platinum=2]="Platinum",n))(kt||{});var x=(e=>(e[e.cap=100]="cap",e[e.faceAccessory=101]="faceAccessory",e[e.eyeAccessory=102]="eyeAccessory",e[e.earrings=103]="earrings",e[e.coat=104]="coat",e[e.longcoat=105]="longcoat",e[e.pants=106]="pants",e[e.shoes=107]="shoes",e[e.glove=108]="glove",e[e.cape=110]="cape",e[e.ring=111]="ring",e[e.pendant=112]="pendant",e[e.belt=113]="belt",e[e.medal=114]="medal",e[e.shoulder=115]="shoulder",e[e.pocket=116]="pocket",e[e.badge=118]="badge",e[e.android=166]="android",e[e.machineHeart=167]="machineHeart",e[e.shield=109]="shield",e[e.emblem=119]="emblem",e[e.powerSource=119020]="powerSource",e[e.shiningRod=1212]="shiningRod",e[e.tuner=1213]="tuner",e[e.breathShooter=1214]="breathShooter",e[e.soulShooter=122]="soulShooter",e[e.desperado=123]="desperado",e[e.energySword=124]="energySword",e[e.espLimiter=126]="espLimiter",e[e.chain=127]="chain",e[e.magicGauntlet=128]="magicGauntlet",e[e.ritualFan=129]="ritualFan",e[e.ohSword=130]="ohSword",e[e.ohAxe=131]="ohAxe",e[e.ohBlunt=132]="ohBlunt",e[e.dagger=133]="dagger",e[e.katara=134]="katara",e[e.cane=136]="cane",e[e.wand=137]="wand",e[e.staff=138]="staff",e[e.thSword=140]="thSword",e[e.chakram=1404]="chakram",e[e.thAxe=141]="thAxe",e[e.thBlunt=142]="thBlunt",e[e.spear=143]="spear",e[e.polearm=144]="polearm",e[e.bow=145]="bow",e[e.crossbow=146]="crossbow",e[e.claw=147]="claw",e[e.knuckle=148]="knuckle",e[e.gun=149]="gun",e[e.shovel=150]="shovel",e[e.pickaxe=151]="pickaxe",e[e.dualBowguns=152]="dualBowguns",e[e.handCannon=153]="handCannon",e[e.heavySword=156]="heavySword",e[e.longSword=157]="longSword",e[e.gauntletRevolver=158]="gauntletRevolver",e[e.ancientBow=159]="ancientBow",e[e.soulShield=1098]="soulShield",e[e.demonShield=1099]="demonShield",e[e.magicArrow=135200]="magicArrow",e[e.card=135210]="card",e[e.medallion=135220]="medallion",e[e.rosary=135221]="rosary",e[e.ironChain=135222]="ironChain",e[e.magicBook1=135223]="magicBook1",e[e.magicBook2=135224]="magicBook2",e[e.magicBook3=135225]="magicBook3",e[e.arrowFletching=135226]="arrowFletching",e[e.bowThimble=135227]="bowThimble",e[e.daggerScabbard=135228]="daggerScabbard",e[e.charm=135229]="charm",e[e.orb=135240]="orb",e[e.dragonEssence=135250]="dragonEssence",e[e.soulRing=135260]="soulRing",e[e.magnum=135270]="magnum",e[e.wristBand=135290]="wristBand",e[e.farSight=135291]="farSight",e[e.powderKeg=135292]="powderKeg",e[e.mass=135293]="mass",e[e.document=135294]="document",e[e.magicMarble=135295]="magicMarble",e[e.arrowhead=135296]="arrowhead",e[e.jewel=135297]="jewel",e[e.powderKeg2=135298]="powderKeg2",e[e.controller=135300]="controller",e[e.foxMarble=135310]="foxMarble",e[e.chessPiece=135320]="chessPiece",e[e.transmitter=135330]="transmitter",e[e.charge=135340]="charge",e[e.magicWing=135350]="magicWing",e[e.pathOfAbyss=135360]="pathOfAbyss",e[e.relic=135370]="relic",e[e.fanTassel=135380]="fanTassel",e[e.bracelet=135400]="bracelet",e[e.weaponBelt=135401]="weaponBelt",e[e.ornament=135402]="ornament",e[e.hexSeeker=135403]="hexSeeker",e[e.petEquip=180]="petEquip",e[e.machineEngine=161]="machineEngine",e[e.machineArms=162]="machineArms",e[e.machineLegs=163]="machineLegs",e[e.machineBody=164]="machineBody",e[e.machineTransistors=165]="machineTransistors",e[e.dragonMask=194]="dragonMask",e[e.dragonPendant=195]="dragonPendant",e[e.dragonWings=196]="dragonWings",e[e.dragonTail=197]="dragonTail",e))(x||{});var H=(i=>(i[i.Normal=0]="Normal",i[i.Rare=1]="Rare",i[i.Epic=2]="Epic",i[i.Unique=3]="Unique",i[i.Legendary=4]="Legendary",i))(H||{});var jt="__GearOption_s87Ns2aQ";function u(t){return jt in t?t:new Proxy(t,{get(o,a){if(a===jt)return!0;if(a in Et)return o[a]??Et[a]},set(o,a,n){return a in Et?(o[a]=n,!0):!1},ownKeys(o){return Object.entries(o).filter(([,a])=>a!=0).map(([a])=>a)}})}function O(t,...o){let a=t;for(let n of o)for(let[r,i]of Object.entries(n))r in a?a[r]+=i:a[r]=i}function Wt(...t){let o={};return O(o,...t),o}var Et={str:0,dex:0,int:0,luk:0,strRate:0,dexRate:0,intRate:0,lukRate:0,maxHp:0,maxMp:0,maxHpRate:0,maxMpRate:0,maxDemonForce:0,attackPower:0,magicPower:0,attackPowerRate:0,magicPowerRate:0,armor:0,armorRate:0,speed:0,jump:0,bossDamage:0,normalDamage:0,ignoreMonsterArmor:0,allStat:0,damage:0,reqLevelDecrease:0,criticalRate:0,criticalDamage:0,cooltimeReduce:0,strLv:0,dexLv:0,intLv:0,lukLv:0};function p(t){return It(t)||yt(t)}function It(t){return 121<=t&&t<=139&&t!==134||Math.floor(t/10)===121}function yt(t){return t>=140&&t<=149||t>=152&&t<=159||Math.floor(t/10)===140}function Vt(t){if(Dt(t))return!0;switch(t){case 134:return!0;default:return Math.floor(t/1e3)===135}}function Dt(t){switch(t){case 109:case 1099:case 1098:return!0;default:return!1}}function R(t){return t===100||t>=104&&t<=110||t===1098||t===1099}function g(t){return t>=101&&t<=103||t>=111&&t<=113||t===115}function Nt(t){return t>=161&&t<=165}function Ft(t){return t>=194&&t<=197}var re=4;function v(t){return t.attributes.canAddOption===1}function M(t){return!(!v(t)||t.addOptions.length===re)}function ot(t,o,a){if(!M(t))throw TypeError("\uCD94\uAC00 \uC635\uC158\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.addOption===void 0&&(t.data.addOption={});let n=Ut(t,o,a);O(t.data.addOption,n),t.data.addOptions===void 0&&(t.data.addOptions=[]);let r=nt(t,o,a);t.data.addOptions.push({type:o,grade:a,value:r})}function B(t){return!!v(t)}function at(t){if(!B(t))throw TypeError("\uCD94\uAC00 \uC635\uC158\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.addOption=void 0,t.data.addOptions=void 0}function Ut(t,o,a){let n=be(o),r=nt(t,o,a),i=n.map(s=>[s,r]);return Object.fromEntries(i)}function nt(t,o,a){let n={type:o,reqLevel:t.req.level+t.req.levelIncrease,gearType:t.type,bossReward:t.attributes.bossReward,attackPower:t.baseOption.attackPower,magicPower:t.baseOption.magicPower};switch(o){case"str":case"dex":case"int":case"luk":return Jt(a,n);case"str,dex":case"str,int":case"str,luk":case"dex,int":case"dex,luk":case"int,luk":return ie(a,n);case"armor":return Jt(a,n);case"attackPower":case"magicPower":return le(a,n);case"maxHp":case"maxMp":return de(a,n);case"speed":return pe(a,n);case"jump":return ue(a,n);case"damage":return fe(a,n);case"bossDamage":return me(a,n);case"allStat":return Se(a,n);case"reqLevelDecrease":return he(a,n)}}function Jt(t,{reqLevel:o}){return o>=250?Math.floor(o/20)*t:(Math.floor(o/20)+1)*t}function ie(t,{reqLevel:o}){return(Math.floor(o/40)+1)*t}function le(t,o){let{reqLevel:a,gearType:n}=o;if(p(n))return se(t,o);if(a>=60)return t;throw TypeError("\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 60 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.")}function se(t,o){let{reqLevel:a,type:n,gearType:r,bossReward:i,attackPower:s,magicPower:l}=o,f=i?[0,0,1,1.4666,2.0166,2.663,3.4166]:[1,2.222,3.63,5.325,7.32,8.777,10.25];if(r===156||r===157){let m=ce(r,o),L=a>180?6:a>160?5:a>110?4:3;return Math.ceil(m*f[t-1]*L/100)}else{let m=n==="magicPower"&&l>s?l:s;if(i){let L=a>160?6:a>150?5:a>110?4:3;return Math.ceil(m*f[t-1]*L*3/100)}else{let L=a>110?4:3;return Math.ceil(m*f[t-1]*L/100)}}}function ce(t,{attackPower:o}){if(t===156)return o;let n=new Map([[100,102],[103,105],[105,107],[112,114],[117,121],[135,139],[169,173],[203,207],[293,297],[337,342]]).get(o);if(n===void 0)throw TypeError("\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC744 \uBD80\uC5EC\uD560 \uC218 \uC5C6\uB294 \uD0DC\uB3C4 \uC7A5\uBE44\uC785\uB2C8\uB2E4. (Please submit issue with the gear info)");return n}function de(t,{reqLevel:o}){return o<10?3*t:o>=250?700*t:Math.floor(o/10)*30*t}function pe(t,{gearType:o}){if(p(o))throw TypeError("\uC774\uB3D9\uC18D\uB3C4 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function ue(t,{gearType:o}){if(p(o))throw TypeError("\uC810\uD504\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function fe(t,{gearType:o}){if(!p(o))throw TypeError("\uB370\uBBF8\uC9C0(%) \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function me(t,{reqLevel:o,gearType:a}){if(o<90||!p(a))throw TypeError("\uBCF4\uC2A4 \uACF5\uACA9 \uC2DC \uB370\uBBF8\uC9C0 \uC99D\uAC00(%) \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 90 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return 2*t}function Se(t,{reqLevel:o,gearType:a}){if(o<70&&!p(a))throw TypeError("\uC62C\uC2A4\uD0EF(%) \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 70 \uC774\uC0C1 \uB610\uB294 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function he(t,{reqLevel:o}){if(o<=0)throw TypeError("\uCC29\uC6A9 \uB808\uBCA8 \uAC10\uC18C \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 1 \uC774\uC0C1\uC758 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return Math.min(o,5*t)}function be(t){return t.split(",")}function C(t){return t.exceptionalTotalUpgradeableCount>0}function j(t){return C(t)&&t.exceptionalUpgradeableCount>0}function rt(t,o){if(!j(t))throw TypeError("\uC775\uC149\uC154\uB110 \uAC15\uD654\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.exceptionalOption===void 0&&(t.data.exceptionalOption={}),O(t.data.exceptionalOption,o.option),t.data.exceptionalUpgradeableCount=t.exceptionalUpgradeableCount-1,t.data.exceptionalUpgradeCount=t.exceptionalUpgradeCount+1}function W(t){return C(t)}function it(t){if(!W(t))throw TypeError("\uC8FC\uBB38\uC11C \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.exceptionalOption={},t.data.exceptionalUpgradeableCount=t.exceptionalTotalUpgradeableCount,t.data.exceptionalUpgradeCount=void 0}function lt(t){return t.attributes.canPotential===1}function k(t){return t.attributes.canPotential===1}function st(t,o,a){if(!k(t))throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");if(o===0)throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825 \uB4F1\uAE09\uC744 Normal\uB85C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. (\uC7A0\uC7AC\uB2A5\uB825\uC744 \uCD08\uAE30\uD654\uD558\uB824\uBA74 resetPotential\uC744 \uC0AC\uC6A9\uD558\uC138\uC694.)");if(a.length<1||a.length>3)throw new TypeError("\uC7A0\uC7AC\uC635\uC158 \uAC1C\uC218\uB294 1\uAC1C\uC5D0\uC11C 3\uAC1C \uC0AC\uC774\uC5EC\uC57C \uD569\uB2C8\uB2E4.");t.data.potentialGrade=o,t.data.potentials=a}function ct(t){if(!k(t))throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.potentialGrade=0,t.data.potentials=void 0}function dt(t){return t.attributes.canAdditionalPotential===1}function E(t){return t.attributes.canAdditionalPotential===1}function pt(t,o,a){if(!E(t))throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");if(o===0)throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825 \uB4F1\uAE09\uC744 Normal\uB85C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. (\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uCD08\uAE30\uD654\uD558\uB824\uBA74 resetAdditionalPotential\uC744 \uC0AC\uC6A9\uD558\uC138\uC694.)");if(a.length<1||a.length>3)throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uC635\uC158 \uAC1C\uC218\uB294 1\uAC1C\uC5D0\uC11C 3\uAC1C \uC0AC\uC774\uC5EC\uC57C \uD569\uB2C8\uB2E4.");t.data.additionalPotentialGrade=o,t.data.additionalPotentials=a}function ut(t){if(!E(t))throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.additionalPotentialGrade=0,t.data.additionalPotentials=void 0}function V(t){return p(t.type)}function N(t){return V(t)&&!t.soulEnchanted}function ft(t){if(!N(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0\uC740 \uC911\uBCF5\uD574\uC11C \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");t.data.soulSlot={}}function F(t){return t.soulEnchanted}function mt(t,o){if(!F(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC5D0\uB9CC \uC18C\uC6B8\uC744 \uC7A5\uCC29\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");t.data.soulSlot.soul=o,Xt(t)}function J(t){return t.soulEnchanted}function St(t,o){if(!J(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uB9CC \uC18C\uC6B8 \uCDA9\uC804\uB7C9\uC744 \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");if(o<0||o>1e3)throw TypeError("\uC18C\uC6B8 \uCDA9\uC804\uB7C9\uC740 0 \uC774\uC0C1 1000 \uC774\uD558\uC758 \uAC12\uC73C\uB85C\uB9CC \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");t.data.soulSlot.charge=o,Xt(t)}function ht(t){t.data.soulSlot=void 0}function Xt(t){let o;if(t.soulCharge===0)o={};else{let a=t.baseOption.attackPower>=t.baseOption.magicPower?"attackPower":"magicPower",n=Math.min(5,Math.ceil(t.soulCharge/100)-1);t.soul?o={[a]:10+n*(t.soul.chargeFactor??1)}:o={[a]:5+n}}t.data.soulSlot.chargeOption=o}function S(t){return t.attributes.canScroll===1}function X(t){return S(t)&&t.scrollUpgradeableCount>0}function bt(t){if(!X(t))throw TypeError("\uC8FC\uBB38\uC11C \uC2E4\uD328\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.scrollUpgradeableCount=t.scrollUpgradeableCount-1,t.data.scrollResilienceCount=t.scrollResilienceCount+1}function $(t){return S(t)&&t.scrollResilienceCount>0}function xt(t){if(!$(t))throw TypeError("\uC5C5\uADF8\uB808\uC774\uB4DC \uAC00\uB2A5 \uD69F\uC218\uB97C \uBCF5\uAD6C\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.scrollResilienceCount=t.scrollResilienceCount-1,t.data.scrollUpgradeableCount=t.scrollUpgradeableCount+1}function K(t){return S(t)}function Ot(t){if(!K(t))throw TypeError("\uC8FC\uBB38\uC11C \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.upgradeOption={},t.data.scrollUpgradeableCount=t.scrollTotalUpgradeableCount,t.data.scrollUpgradeCount=void 0,t.data.scrollResilienceCount=void 0}function Q(t){return S(t)&&t.scrollUpgradeableCount>0}function I(t,o){if(!Q(t))throw TypeError("\uC8FC\uBB38\uC11C\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.upgradeOption===void 0&&(t.data.upgradeOption={}),O(t.data.upgradeOption,o.option),t.data.scrollUpgradeableCount=t.scrollUpgradeableCount-1,t.data.scrollUpgradeCount=t.scrollUpgradeCount+1}var qt=(s=>(s.str="str",s.dex="dex",s.int="int",s.luk="luk",s.maxHp="maxHp",s.allStat="allStat",s))(qt||{});function Pt(t,o,a){let n=Lt(t,o,a);I(t,n)}function Lt(t,o,a){if(p(t.type)||t.type===134)return xe(t,o,a);if(t.type===108)return Oe(t,o,a);if(R(t.type)||t.type===115)return Pe(t,o,a);if(g(t.type))return we(t,o,a);if(t.type===167)return Ae(t,o,a);throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44 \uBD84\uB958\uC785\uB2C8\uB2E4.")}function xe(t,o,a){if(o==="allStat")throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let n=Y(t),[r,i]=Re[a][n];o==="maxHp"&&(i*=50);let s=Ht(o),l,f;return i===0?(l=w(a,P(s)),f={[s]:r}):(l=w(a,P(s),P(o)),f={[s]:r,[o]:i}),{name:l,option:f,type:o,rate:a}}function Oe(t,o,a){let n=Y(t),r=_e[a][n],i,s;if(r===0)i=w(a,"\uBC29\uC5B4\uB825"),s={armor:3};else{let l=Ht(o);i=w(a,P(l)),s={[l]:r}}return{name:i,option:s,rate:a,type:o}}function Pe(t,o,a){let n=Y(t),[r,i,s]=ge[a][n],l={maxHp:i,armor:s};switch(o){case"str":case"dex":case"int":case"luk":l[o]=r;break;case"maxHp":l.maxHp+=r*50;break;case"allStat":{if(!(a in $t))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let m=$t[a][n];l.str=m,l.dex=m,l.int=m,l.luk=m;break}}return t.scrollUpgradeCount===3&&(t.req.beginner()?(l.attackPower=1,l.magicPower=1):t.req.magician()?l.magicPower=1:l.attackPower=1),{name:w(a,P(o)),option:l,type:o,rate:a}}function we(t,o,a){if(!(a in Gt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let n=Y(t),r=Gt[a][n],i={};switch(o){case"str":case"dex":case"int":case"luk":i[o]=r;break;case"maxHp":i.maxHp=r*50;break;case"allStat":{if(!(a in Kt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let l=Kt[a][n];i.str=l,i.dex=l,i.int=l,i.luk=l;break}}return{name:w(a,P(o)),option:i,type:o,rate:a}}function Ae(t,o,a){if(!(a in Gt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let n=Y(t),r=ve[a][n],i=Ht(o),s=w(a,P(i)),l={[i]:r};return{name:s,option:l,type:o,rate:a}}function w(t,o,a){return a?`${t.toString()}% ${o}(${a}) \uC8FC\uBB38\uC11C`:`${t.toString()}% ${o} \uC8FC\uBB38\uC11C`}function P(t){switch(t){case"str":return"\uD798";case"dex":return"\uBBFC\uCCA9";case"int":return"\uC9C0\uB825";case"luk":return"\uC6B4";case"maxHp":return"\uCCB4\uB825";case"allStat":return"\uC62C\uC2A4\uD0EF";case"attackPower":return"\uACF5\uACA9\uB825";case"magicPower":return"\uB9C8\uB825"}}function Y(t){let o=t.req.level+t.req.levelIncrease;return o>110?2:o>70?1:0}function Ht(t){return t==="int"?"magicPower":"attackPower"}var Re={100:[[1,0],[2,0],[3,1]],70:[[2,0],[3,1],[5,2]],30:[[3,1],[5,2],[7,3]],15:[[5,2],[7,3],[9,4]]},ge={100:[[1,5,1],[2,20,2],[3,30,3]],70:[[2,15,2],[3,40,4],[4,70,5]],30:[[3,30,4],[5,70,7],[7,120,10]],15:[[4,45,6],[7,110,10],[10,170,15]]},$t={30:[1,2,3],15:[2,3,4]},_e={100:[0,1,1],70:[1,2,2],30:[2,3,3],15:[3,4,4]},Gt={100:[1,1,2],70:[2,2,3],30:[3,4,5]},Kt={30:[1,2,3]},ve={100:[1,2,3],70:[2,3,5],30:[3,5,7]};var Ce=30,Bt=15,ke=15,Ee=150;function A(t){return t.attributes.canStarforce===1}function y(t,o=!1){if(!A(t))return!1;if(t.attributes.superior)return t.star<Math.min(ke,t.maxStar);if(o){if(t.star>=Ge(t))return!1}else if(t.star>=t.maxStar)return!1;let a=t.starScroll?Bt:Ce;return t.star<a}function Z(t,o=!1){if(!y(t,o))throw TypeError("\uC2A4\uD0C0\uD3EC\uC2A4 \uAC15\uD654\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.star=t.star+1,t.attributes.superior?Ie(t):p(t.type)||t.type===134?ye(t):De(t)}function D(t,o=!1){return!A(t)||t.attributes.superior||t.req.level>Ee||!o&&t.star>=t.maxStar?!1:t.star<Bt}function z(t,o=!1,a=!1){if(!D(t,a))throw TypeError("\uB180\uB77C\uC6B4 \uC7A5\uBE44 \uAC15\uD654 \uC8FC\uBB38\uC11C\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.starScroll=!0,t.data.star=t.star+1;let n=h(Fe,t),r=h(Je,t),i=p(t.type)||t.type===134;for(let l of tt)Mt(t,l)>0&&(c(t)[l]+=n,o&&g(t.type)&&(c(t)[l]+=t.star>5?2:1));for(let l of Yt){let f=Mt(t,l);f>0&&(i&&(c(t)[l]+=Math.floor(f/50)+1),c(t)[l]+=r,o&&(i||t.type===109)&&(c(t)[l]+=1))}o&&R(t.type)&&(c(t).maxHp+=50);let s=Mt(t,"armor");s>0&&(c(t).armor+=Math.floor(s/20)+1)}function T(t){return!!A(t)}function At(t){if(!T(t))throw TypeError("\uC2A4\uD0C0\uD3EC\uC2A4 \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.starforceOption={},t.data.star=void 0,t.data.starScroll=void 0}function Rt(t){if(t.attributes.canStarforce===0)return 0;let o=Ue(t);return t.starScroll?Math.min(Bt,o):o}function Ie(t){let o=h(We,t),a=h(je,t);for(let r of tt)t.baseOption[r]>0&&(c(t)[r]+=o);for(let r of Yt)t.baseOption[r]>0&&(c(t)[r]+=a);let n=wt(t,"armor");c(t).armor+=Math.floor(n/20)+1}function ye(t){let o=h(Zt,t),a=h(Be,t),n=Qt(t);for(let s of tt)(n.has(s)||t.star>15&&(t.baseOption[s]>0||t.upgradeOption[s]>0))&&(c(t)[s]+=o);let r=t.req.magician()||t.upgradeOption.magicPower>0;if(t.star>15)c(t).attackPower+=a,r&&(c(t).magicPower+=a);else{let s=wt(t,"attackPower");if(c(t).attackPower+=Math.floor(s/50)+1,r){let l=wt(t,"magicPower");c(t).magicPower+=Math.floor(l/50)+1}}let i=zt[t.star];c(t).maxHp+=i,c(t).maxMp+=i}function De(t){let o=h(Zt,t),a=h(Me,t),n=Qt(t);for(let r of tt)(n.has(r)||t.star>15&&(t.baseOption[r]>0||t.upgradeOption[r]>0))&&(c(t)[r]+=o);if(c(t).attackPower+=a,c(t).magicPower+=a,t.type===108&&t.req.level>=130){let r=Ve[t.star];t.req.beginner()?(c(t).attackPower+=r,c(t).magicPower+=r):t.req.magician()?c(t).magicPower+=r:c(t).attackPower+=r}if(t.type!==167){let r=wt(t,"armor");c(t).armor+=Math.floor(r/20)+1}if(He.includes(t.type)){let r=zt[t.star];c(t).maxHp+=r}if(t.type===107){let r=Ne[t.star];c(t).speed+=r,c(t).jump+=r}}function Qt(t){if(t.req.beginner())return new Set(tt);let o=[];return t.req.warrior()&&o.push("str","dex"),t.req.magician()&&o.push("int","luk"),t.req.bowman()&&o.push("dex","str"),t.req.thief()&&o.push("luk","dex"),t.req.pirate()&&o.push("str","dex"),new Set(o)}function h(t,o){let a=o.req.level;for(let n=t.length-1;n>=0;n--){let r=t[n];if(a>=r[0])return r[o.star]}throw TypeError("\uC7A5\uBE44\uC758 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8\uC740 0 \uC774\uC0C1\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.")}function c(t){return t.data.starforceOption===void 0&&(t.data.starforceOption={}),u(t.data.starforceOption)}function wt(t,o){return t.baseOption[o]+t.upgradeOption[o]+t.starforceOption[o]}function Mt(t,o){return t.baseOption[o]+t.addOption[o]+t.upgradeOption[o]+t.starforceOption[o]}function Ue(t){let o=t.req.level+t.req.levelIncrease,a;for(let n of qe)if(o>=n[0])a=n;else break;return a?t.attributes.superior?a[2]:a[1]:0}function Ge(t){let o=t.req.level,a;for(let n of Le)if(o>=n[0])a=n;else break;return a?a[1]:0}var qe=[[0,5,3],[95,8,5],[110,10,8],[120,15,10],[130,20,12],[140,30,15]],Le=[[0,15],[101,19],[111,29],[140,30]],tt=["str","dex","int","luk"],Yt=["attackPower","magicPower"],He=[100,104,105,106,110,111,112,113,115,109],Zt=[[0,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,0,0,0,0,0],[108,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0],[118,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,0,0,0],[128,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,0,0,0],[138,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,9,9,9,9,9,9,9,0,0,0,0,0,0,0,0],[148,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,11,11,11,11,11,11,11,0,0,0,0,0,0,0,0],[158,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,13,13,13,13,13,13,13,0,0,0,0,0,0,0,0],[198,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,15,15,15,15,15,15,15,0,0,0,0,0,0,0,0],[248,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,17,17,17,17,17,17,17,0,0,0,0,0,0,0,0]],Me=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,8,0,0,0,0,0],[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,7,8,9,10,12,13,15,17],[118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,8,9,10,11,13,14,16,18],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,9,10,11,12,14,16,18,20],[138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,10,11,12,13,15,17,19,21,22,23,24,25,26],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,10,11,12,13,14,16,18,20,22,23,24,25,26,27],[158,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,11,12,13,14,15,17,19,21,23,24,25,26,27,28],[198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,13,14,15,16,17,19,21,23,25,26,27,28,29,30],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,15,16,17,18,19,21,23,25,27,28,29,30,31,32]],Be=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,6,7,0,0,0,0,0],[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,6,7,8,9,27,28,29],[118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,6,7,8,9,10,28,29,30],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,9,10,11,29,30,31],[138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,9,10,11,12,30,31,32,33,34,35,36,37],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,10,11,12,13,31,32,33,34,35,36,37,38],[158,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,10,11,12,13,14,32,33,34,35,36,37,38,39],[198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,13,14,14,15,16,17,34,35,36,37,38,39,40,41],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,15,16,16,17,18,19,36,37,38,39,40,41,42,43]],je=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[110,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0],[150,0,0,0,0,0,9,10,11,12,13,15,17,19,21,23]],We=[[0,1,2,4,7,11,0,0,0,0,0,0,0,0,0,0],[80,2,3,5,8,12,0,0,0,0,0,0,0,0,0,0],[110,9,10,12,15,19,0,0,0,0,0,0,0,0,0,0],[150,19,20,22,25,29,0,0,0,0,0,0,0,0,0,0]],Ve=[-1,0,0,0,0,1,0,1,0,1,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],zt=[-1,5,5,5,10,10,15,15,20,20,25,25,25,25,25,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],Ne=[-1,0,0,1,1,1,1,1,1,1,1,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],Fe=[[0,1,2,4,7,11,0,0,0,0,0,0,0,0,0,0],[80,2,3,5,8,12,0,0,0,0,0,0,0,0,0,0],[85,3,4,6,9,13,0,0,0,0,0,0,0,0,0,0],[90,4,5,7,10,14,0,0,0,0,0,0,0,0,0,0],[95,5,6,8,11,15,0,0,0,0,0,0,0,0,0,0],[100,7,8,10,13,17,0,0,0,0,0,0,0,0,0,0],[105,8,9,11,14,18,0,0,0,0,0,0,0,0,0,0],[110,9,10,12,15,19,0,0,0,0,0,0,0,0,0,0],[115,10,11,13,16,20,0,0,0,0,0,0,0,0,0,0],[120,12,13,15,18,22,0,0,0,0,0,0,0,0,0,0],[125,13,14,16,19,23,0,0,0,0,0,0,0,0,0,0],[130,14,15,17,20,24,0,0,0,0,0,0,0,0,0,0],[135,15,16,18,21,25,0,0,0,0,0,0,0,0,0,0],[140,17,18,20,23,27,0,0,0,0,0,0,0,0,0,0],[145,18,19,21,24,28,0,0,0,0,0,0,0,0,0,0],[150,19,20,22,25,29,0,0,0,0,0,0,0,0,0,0]],Je=[[0,0,0,0,0,0,1,2,3,4,5,6,8,10,12,14],[80,0,0,0,0,0,2,3,4,5,6,7,9,11,13,15],[90,0,0,0,0,0,3,4,5,6,7,8,10,12,14,16],[100,0,0,0,0,0,4,5,6,7,8,9,11,13,15,17],[110,0,0,0,0,0,5,6,7,8,9,10,12,14,16,18],[120,0,0,0,0,0,6,7,8,9,10,11,13,15,17,19],[130,0,0,0,0,0,7,8,9,10,11,12,14,16,18,20],[140,0,0,0,0,0,8,9,10,11,12,13,15,17,19,21],[150,0,0,0,0,0,9,10,11,12,13,14,16,18,20,22]];var U=class{data;constructor(o){this.data=o}get only(){return this.data.only??!1}get trade(){return this.data.trade??0}set trade(o){this.data.trade=o}get onlyEquip(){return this.data.onlyEquip??!1}get share(){return this.data.share??0}get superior(){return this.data.superior??!1}get attackSpeed(){return this.data.attackSpeed}get canScroll(){return this.data.canScroll??0}get canStarforce(){return this.data.canStarforce??0}get canAddOption(){return this.data.canAddOption??0}get canPotential(){return this.data.canPotential??0}get canAdditionalPotential(){return this.data.canAdditionalPotential??0}get specialGrade(){return this.data.specialGrade??!1}get cuttable(){return this.data.cuttable??0}get cuttableCount(){return this.data.cuttableCount}set cuttableCount(o){this.data.cuttableCount=o}get totalCuttableCount(){return this.data.totalCuttableCount}get accountShareTag(){return this.data.accountShareTag??!1}get setItemId(){return this.data.setItemId}get lucky(){return this.data.lucky??!1}get incline(){return{charisma:0,insight:0,will:0,craft:0,sense:0,charm:0,...this.data.incline}}set incline(o){this.data.incline=o}get bossReward(){return this.data.bossReward??!1}get skills(){return this.data.skills??[]}get growthExp(){return this.data.growthExp}set growthExp(o){(o===void 0||0<=o&&o<=100)&&(this.data.growthExp=o)}get growthLevel(){return this.data.growthLevel}set growthLevel(o){this.data.growthLevel=o}get dateExpire(){return this.data.dateExpire}set dateExpire(o){(o===void 0||!Number.isNaN(Date.parse(o)))&&(this.data.dateExpire=o)}};var G=class{data;constructor(o){this.data=o}get level(){return this.data.level??0}get levelIncrease(){return this.data.levelIncrease??0}get job(){return this.data.job??0}get class(){return this.data.class??0}beginner(){return this.job===0}warrior(){return this.job===0||(this.job&1)!=0}magician(){return this.job===0||(this.job&2)!=0}bowman(){return this.job===0||(this.job&4)!=0}thief(){return this.job===0||(this.job&8)!=0}pirate(){return this.job===0||(this.job&16)!=0}};var q=class{_data;constructor(o){this._data=o}get data(){return this._data}get meta(){return this.data.meta}get name(){return this.data.name}get icon(){return this.data.icon??""}get desc(){return this.data.desc}get shape(){return this.data.shape}get shapeIcon(){return this.shape?.icon??this.icon}get type(){return this.data.type}get req(){return new G(this.data.req)}get attributes(){return new U(this.data.attributes)}get totalOption(){return u(Wt(this.baseOption,this.addOption,this.upgradeOption,this.starforceOption))}get baseOption(){return u(this.data.baseOption??{})}get addOption(){return u(this.data.addOption??{})}get upgradeOption(){return u(this.data.upgradeOption??{})}get starforceOption(){return u(this.data.starforceOption??{})}get addOptions(){return this.data.addOptions??[]}get scrollUpgradeCount(){return this.data.scrollUpgradeCount??0}get scrollResilienceCount(){return this.data.scrollResilienceCount??0}get scrollUpgradeableCount(){return this.data.scrollUpgradeableCount??0}get scrollTotalUpgradeableCount(){return this.scrollUpgradeCount+this.scrollUpgradeableCount+this.scrollResilienceCount}get star(){return this.data.star??0}get maxStar(){return Rt(this)}get starScroll(){return this.data.starScroll??!1}get soulEnchanted(){return this.data.soulSlot!==void 0}get soul(){if(this.data.soulSlot?.soul)return{...this.data.soulSlot.soul,option:u(this.data.soulSlot.soul.option)}}get soulCharge(){return this.data.soulSlot?.charge??0}get soulChargeOption(){return u(this.data.soulSlot?.chargeOption??{})}get potentialGrade(){return this.data.potentialGrade??0}get potentials(){return this.data.potentials?this.data.potentials.map(o=>({...o,option:u(o.option)})):[]}get additionalPotentialGrade(){return this.data.additionalPotentialGrade??0}get additionalPotentials(){return this.data.additionalPotentials?this.data.additionalPotentials.map(o=>({...o,option:u(o.option)})):[]}get exceptionalOption(){return u(this.data.exceptionalOption??{})}get exceptionalUpgradeCount(){return this.data.exceptionalUpgradeCount??0}get exceptionalUpgradeableCount(){return this.data.exceptionalUpgradeableCount??0}get exceptionalTotalUpgradeableCount(){return this.exceptionalUpgradeCount+this.exceptionalUpgradeableCount}};var gt=class extends q{get data(){return this._data}get shape(){return this.data.shape}set shape(o){this.data.shape=o}get supportsAddOption(){return v(this)}get canApplyAddOption(){return M(this)}applyAddOption(o,a){ot(this,o,a)}get canResetAddOption(){return B(this)}resetAddOption(){at(this)}get supportsUpgrade(){return S(this)}get canApplyScrollFail(){return X(this)}applyScrollFail(){bt(this)}get canApplyResileScroll(){return $(this)}applyResileScroll(){xt(this)}get canResetUpgrade(){return K(this)}resetUpgrade(){Ot(this)}get canApplyScroll(){return Q(this)}applyScroll(o){I(this,o)}applySpellTrace(o,a){Pt(this,o,a)}get supportsStarforce(){return A(this)}get canApplyStarforce(){return y(this)}applyStarforce(){Z(this)}get canApplyStarforceIgnoringMaxStar(){return y(this,!0)}applyStarforceIgnoringMaxStar(){Z(this,!0)}get canApplyStarScroll(){return D(this)}applyStarScroll(o=!1){z(this,o)}get canApplyStarScrollIgnoringMaxStar(){return D(this,!0)}applyStarScrollIgnoringMaxStar(o=!1){z(this,o,!0)}get canResetStarforce(){return T(this)}resetStarforce(){At(this)}get supportsPotential(){return lt(this)}get canSetPotential(){return k(this)}setPotential(o,a){st(this,o,a)}resetPotential(){ct(this)}get supportsAdditionalPotential(){return dt(this)}get canSetAdditionalPotential(){return E(this)}setAdditionalPotential(o,a){pt(this,o,a)}resetAdditionalPotential(){ut(this)}get supportsSoul(){return V(this)}get canApplySoulEnchant(){return N(this)}applySoulEnchant(){ft(this)}get canSetSoul(){return F(this)}setSoul(o){mt(this,o)}get canSetSoulCharge(){return J(this)}setSoulCharge(o){St(this,o)}resetSoulEnchant(){ht(this)}get supportsExceptional(){return C(this)}get canApplyExceptional(){return j(this)}applyExceptional(o){rt(this,o)}get canResetExceptional(){return W(this)}resetExceptional(){it(this)}};
package/dist/index.d.ts CHANGED
@@ -1,12 +1,14 @@
1
- export { type GearAttributeData, GearTrade, GearShare, AddOptionCan, PotentialCan, GearCuttable, type GearIncline, type GearData, type GearMetadata, type GearShapeData, type GearReqData, type GearBaseOption, type GearAddOption, type GearUpgradeOption, type GearStarforceOption, type GearExceptionalOption, type GearOption, GearType, type PotentialData, type PotentialOption, PotentialGrade, type SoulSlotData, type SoulData, type ReadonlySoulData, type SoulChargeOption, type SoulOption, } from './lib/data';
2
- export { AddOptionType, type AddOptionGrade, supportsAddOption, getAddOption, getAddOptionValue, } from './lib/enhance/addOption';
1
+ export { AddOptionType, type AddOptionGrade, type AddOptionData, type GearAttributeData, GearTrade, GearShare, GearCapability, GearCuttable, type GearIncline, type GearData, type GearMetadata, type GearShapeData, type GearReqData, type GearBaseOption, type GearAddOption, type GearUpgradeOption, type GearStarforceOption, type GearExceptionalOption, type GearOption, GearType, type PotentialData, type PotentialOption, PotentialGrade, type SoulSlotData, type SoulData, type ReadonlySoulData, type SoulChargeOption, type SoulOption, } from './lib/data';
2
+ export { supportsAddOption, canApplyAddOption, applyAddOption, canResetAddOption, resetAddOption, getAddOption, getAddOptionValue, } from './lib/enhance/addOption';
3
3
  export { type ExceptionalHammer, supportsExceptional, canApplyExceptional, applyExceptional, canResetExceptional, resetExceptional, } from './lib/enhance/exceptional';
4
+ export { type ReadonlyPotential, supportsPotential, canSetPotential, setPotential, resetPotential, supportsAdditionalPotential, canSetAdditionalPotential, setAdditionalPotential, resetAdditionalPotential, } from './lib/enhance/potential';
5
+ export { supportsSoul, canApplySoulEnchant, applySoulEnchant, canSetSoul, setSoul, canSetSoulCharge, setSoulCharge, resetSoulEnchant, } from './lib/enhance/soulSlot';
4
6
  export { SpellTraceType, type SpellTraceRate, type SpellTrace, applySpellTrace, getSpellTraceScroll, } from './lib/enhance/spellTrace';
5
- export { supportsStarforce, canStarforce, starforce, canStarScroll, starScroll, canResetStarforce, resetStarforce, } from './lib/enhance/starforce';
6
- export { type Scroll, supportsUpgrade, canGoldenHammer, applyGoldenHammer, canFailScroll, failScroll, canResileScroll, resileScroll, canResetUpgrade, resetUpgrade, canApplyScroll, applyScroll, } from './lib/enhance/upgrade';
7
+ export { supportsStarforce, canStarforce, starforce, canStarScroll, starScroll, canResetStarforce, resetStarforce, getMaxStar, } from './lib/enhance/starforce';
8
+ export { type Scroll, supportsUpgrade, canFailScroll, failScroll, canResileScroll, resileScroll, canResetUpgrade, resetUpgrade, canApplyScroll, applyScroll, } from './lib/enhance/upgrade';
7
9
  export { Gear } from './lib/Gear';
10
+ export { ReadonlyGear } from './lib/ReadonlyGear';
8
11
  export { GearAttribute } from './lib/GearAttribute';
9
12
  export { toGearOption } from './lib/gearOption';
10
13
  export { GearReq } from './lib/GearReq';
11
14
  export { isWeapon, isLeftWeapon, isDoubleHandWeapon, isSubWeapon, isShield, isArmor, isAccessory, isMechanicGear, isDragonGear, } from './lib/gearType';
12
- export { supportsSoul, canApplySoulEnchant, applySoulEnchant, canSetSoul, setSoul, canSetSoulCharge, setSoulCharge, resetSoulEnchant, } from './lib/soulSlot';
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- var kt=(a=>(a[a.Tradeable=0]="Tradeable",a[a.TradeBlock=1]="TradeBlock",a[a.EquipTradeBlock=2]="EquipTradeBlock",a))(kt||{}),Rt=(a=>(a[a.None=0]="None",a[a.AccountSharable=1]="AccountSharable",a[a.AccountSharableOnce=2]="AccountSharableOnce",a))(Rt||{}),et=(a=>(a[a.None=0]="None",a[a.Can=1]="Can",a[a.Cannot=2]="Cannot",a))(et||{}),ot=(r=>(r[r.None=0]="None",r[r.Can=1]="Can",r[r.Cannot=2]="Cannot",r[r.Fixed=3]="Fixed",r))(ot||{}),vt=(a=>(a[a.None=0]="None",a[a.Silver=1]="Silver",a[a.Platinum=2]="Platinum",a))(vt||{});var b=(e=>(e[e.cap=100]="cap",e[e.faceAccessory=101]="faceAccessory",e[e.eyeAccessory=102]="eyeAccessory",e[e.earrings=103]="earrings",e[e.coat=104]="coat",e[e.longcoat=105]="longcoat",e[e.pants=106]="pants",e[e.shoes=107]="shoes",e[e.glove=108]="glove",e[e.cape=110]="cape",e[e.ring=111]="ring",e[e.pendant=112]="pendant",e[e.belt=113]="belt",e[e.medal=114]="medal",e[e.shoulder=115]="shoulder",e[e.pocket=116]="pocket",e[e.badge=118]="badge",e[e.android=166]="android",e[e.machineHeart=167]="machineHeart",e[e.shield=109]="shield",e[e.emblem=119]="emblem",e[e.powerSource=119020]="powerSource",e[e.shiningRod=1212]="shiningRod",e[e.tuner=1213]="tuner",e[e.breathShooter=1214]="breathShooter",e[e.soulShooter=122]="soulShooter",e[e.desperado=123]="desperado",e[e.energySword=124]="energySword",e[e.espLimiter=126]="espLimiter",e[e.chain=127]="chain",e[e.magicGauntlet=128]="magicGauntlet",e[e.ritualFan=129]="ritualFan",e[e.ohSword=130]="ohSword",e[e.ohAxe=131]="ohAxe",e[e.ohBlunt=132]="ohBlunt",e[e.dagger=133]="dagger",e[e.katara=134]="katara",e[e.cane=136]="cane",e[e.wand=137]="wand",e[e.staff=138]="staff",e[e.thSword=140]="thSword",e[e.chakram=1404]="chakram",e[e.thAxe=141]="thAxe",e[e.thBlunt=142]="thBlunt",e[e.spear=143]="spear",e[e.polearm=144]="polearm",e[e.bow=145]="bow",e[e.crossbow=146]="crossbow",e[e.claw=147]="claw",e[e.knuckle=148]="knuckle",e[e.gun=149]="gun",e[e.shovel=150]="shovel",e[e.pickaxe=151]="pickaxe",e[e.dualBowguns=152]="dualBowguns",e[e.handCannon=153]="handCannon",e[e.heavySword=156]="heavySword",e[e.longSword=157]="longSword",e[e.gauntletRevolver=158]="gauntletRevolver",e[e.ancientBow=159]="ancientBow",e[e.soulShield=1098]="soulShield",e[e.demonShield=1099]="demonShield",e[e.magicArrow=135200]="magicArrow",e[e.card=135210]="card",e[e.medallion=135220]="medallion",e[e.rosary=135221]="rosary",e[e.ironChain=135222]="ironChain",e[e.magicBook1=135223]="magicBook1",e[e.magicBook2=135224]="magicBook2",e[e.magicBook3=135225]="magicBook3",e[e.arrowFletching=135226]="arrowFletching",e[e.bowThimble=135227]="bowThimble",e[e.daggerScabbard=135228]="daggerScabbard",e[e.charm=135229]="charm",e[e.orb=135240]="orb",e[e.dragonEssence=135250]="dragonEssence",e[e.soulRing=135260]="soulRing",e[e.magnum=135270]="magnum",e[e.wristBand=135290]="wristBand",e[e.farSight=135291]="farSight",e[e.powderKeg=135292]="powderKeg",e[e.mass=135293]="mass",e[e.document=135294]="document",e[e.magicMarble=135295]="magicMarble",e[e.arrowhead=135296]="arrowhead",e[e.jewel=135297]="jewel",e[e.powderKeg2=135298]="powderKeg2",e[e.controller=135300]="controller",e[e.foxMarble=135310]="foxMarble",e[e.chessPiece=135320]="chessPiece",e[e.transmitter=135330]="transmitter",e[e.charge=135340]="charge",e[e.magicWing=135350]="magicWing",e[e.pathOfAbyss=135360]="pathOfAbyss",e[e.relic=135370]="relic",e[e.fanTassel=135380]="fanTassel",e[e.bracelet=135400]="bracelet",e[e.weaponBelt=135401]="weaponBelt",e[e.ornament=135402]="ornament",e[e.hexSeeker=135403]="hexSeeker",e[e.petEquip=180]="petEquip",e[e.machineEngine=161]="machineEngine",e[e.machineArms=162]="machineArms",e[e.machineLegs=163]="machineLegs",e[e.machineBody=164]="machineBody",e[e.machineTransistors=165]="machineTransistors",e[e.dragonMask=194]="dragonMask",e[e.dragonPendant=195]="dragonPendant",e[e.dragonWings=196]="dragonWings",e[e.dragonTail=197]="dragonTail",e))(b||{});var G=(i=>(i[i.Normal=0]="Normal",i[i.Rare=1]="Rare",i[i.Epic=2]="Epic",i[i.Unique=3]="Unique",i[i.Legendary=4]="Legendary",i))(G||{});function d(t){return Ct(t)||Et(t)}function Ct(t){return 121<=t&&t<=139&&t!==134||Math.floor(t/10)===121}function Et(t){return t>=140&&t<=149||t>=152&&t<=159||Math.floor(t/10)===140}function nt(t){if(q(t))return!0;switch(t){case 134:return!0;default:return Math.floor(t/1e3)===135}}function q(t){switch(t){case 109:case 1099:case 1098:return!0;default:return!1}}function x(t){return t===100||t>=104&&t<=110||t===1098||t===1099}function O(t){return t>=101&&t<=103||t>=111&&t<=113||t===115}function at(t){return t>=161&&t<=165}function rt(t){return t>=194&&t<=197}var It=(p=>(p.str="str",p.dex="dex",p.int="int",p.luk="luk",p.str_dex="str&dex",p.str_int="str&int",p.str_luk="str&luk",p.dex_int="dex&int",p.dex_luk="dex&luk",p.int_luk="int&luk",p.maxHp="maxHp",p.maxMp="maxMp",p.attackPower="attackPower",p.magicPower="magicPower",p.armor="armor",p.speed="speed",p.jump="jump",p.bossDamage="bossDamage",p.damage="damage",p.allStat="allStat",p.reqLevelDecrease="reqLevelDecrease",p))(It||{});function it(t){return t.attributes.canAddOption===1?!0:t.attributes.canAddOption===2?!1:d(t.type)?!0:x(t.type)?!q(t.type):O(t.type)?![111,115].includes(t.type):t.type===116}function lt(t,o,n){let a=le(o),r=Dt(t,o,n),i=a.map(s=>[s,r]);return Object.fromEntries(i)}function Dt(t,o,n){let a={type:o,reqLevel:t.req.level,gearType:t.type,bossReward:t.attributes.bossReward,attackPower:t.baseOption.attackPower,magicPower:t.baseOption.magicPower};switch(o){case"str":case"dex":case"int":case"luk":return Ut(n,a);case"str&dex":case"str&int":case"str&luk":case"dex&int":case"dex&luk":case"int&luk":return Yt(n,a);case"armor":return Ut(n,a);case"attackPower":case"magicPower":return Zt(n,a);case"maxHp":case"maxMp":return te(n,a);case"speed":return ee(n,a);case"jump":return oe(n,a);case"damage":return ne(n,a);case"bossDamage":return ae(n,a);case"allStat":return re(n,a);case"reqLevelDecrease":return ie(n,a)}}function Ut(t,{reqLevel:o}){return o>=250?Math.floor(o/20)*t:(Math.floor(o/20)+1)*t}function Yt(t,{reqLevel:o}){return(Math.floor(o/40)+1)*t}function Zt(t,o){let{reqLevel:n,gearType:a}=o;if(d(a))return zt(t,o);if(n>=60)return t;throw TypeError("\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 60 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.")}function zt(t,o){let{reqLevel:n,type:a,gearType:r,bossReward:i,attackPower:s,magicPower:l}=o,f=i?[0,0,1,1.4666,2.0166,2.663,3.4166]:[1,2.222,3.63,5.325,7.32,8.777,10.25];if(r===156||r===157){let m=Tt(r,o),k=n>180?6:n>160?5:n>110?4:3;return Math.ceil(m*f[t-1]*k/100)}else{let m=a==="magicPower"&&l>s?l:s;if(i){let k=n>160?6:n>150?5:n>110?4:3;return Math.ceil(m*f[t-1]*k*3/100)}else{let k=n>110?4:3;return Math.ceil(m*f[t-1]*k/100)}}}function Tt(t,{attackPower:o}){if(t===156)return o;let a=new Map([[100,102],[103,105],[105,107],[112,114],[117,121],[135,139],[169,173],[203,207],[293,297],[337,342]]).get(o);if(a===void 0)throw TypeError("\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC744 \uBD80\uC5EC\uD560 \uC218 \uC5C6\uB294 \uD0DC\uB3C4 \uC7A5\uBE44\uC785\uB2C8\uB2E4. (Please submit issue with the gear info)");return a}function te(t,{reqLevel:o}){return o<10?3*t:o>=250?700*t:Math.floor(o/10)*30*t}function ee(t,{gearType:o}){if(d(o))throw TypeError("\uC774\uB3D9\uC18D\uB3C4 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function oe(t,{gearType:o}){if(d(o))throw TypeError("\uC810\uD504\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function ne(t,{gearType:o}){if(!d(o))throw TypeError("\uB370\uBBF8\uC9C0(%) \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function ae(t,{reqLevel:o,gearType:n}){if(o<90||!d(n))throw TypeError("\uBCF4\uC2A4 \uACF5\uACA9 \uC2DC \uB370\uBBF8\uC9C0 \uC99D\uAC00(%) \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 90 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return 2*t}function re(t,{reqLevel:o,gearType:n}){if(o<70&&!d(n))throw TypeError("\uC62C\uC2A4\uD0EF(%) \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 70 \uC774\uC0C1 \uB610\uB294 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function ie(t,{reqLevel:o}){if(o<=0)throw TypeError("\uCC29\uC6A9 \uB808\uBCA8 \uAC10\uC18C \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 1 \uC774\uC0C1\uC758 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return Math.min(o,5*t)}function le(t){return t.split("&")}function w(t,...o){let n=t;for(let a of o)for(let[r,i]of Object.entries(a))r in n?n[r]+=i:n[r]=i}function Ht(...t){let o={};return w(o,...t),o}function R(t){return t.exceptionalTotalUpgradeableCount>0}function L(t){return R(t)&&t.exceptionalUpgradeableCount>0}function st(t,o){if(!L(t))throw TypeError("\uC775\uC149\uC154\uB110 \uAC15\uD654\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.exceptionalOption===void 0&&(t.data.exceptionalOption={}),w(t.data.exceptionalOption,o.option),t.data.exceptionalUpgradeableCount=t.exceptionalUpgradeableCount-1,t.data.exceptionalUpgradeCount=t.exceptionalUpgradeCount+1}function y(t){return R(t)}function ct(t){if(!y(t))throw TypeError("\uC8FC\uBB38\uC11C \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.exceptionalOption={},t.data.exceptionalUpgradeableCount=t.exceptionalTotalUpgradeableCount,t.data.exceptionalUpgradeCount=void 0}function S(t){return!t.attributes.cannotUpgrade&&t.scrollTotalUpgradeableCount>0}function M(t){return S(t)&&!t.attributes.blockGoldenHammer&&t.goldenHammer===0}function pt(t){if(!M(t))throw TypeError("\uD669\uAE08 \uB9DD\uCE58\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.goldenHammer=t.goldenHammer+1,t.data.scrollUpgradeableCount=t.scrollUpgradeableCount+1}function j(t){return S(t)&&t.scrollUpgradeableCount>0}function dt(t){if(!j(t))throw TypeError("\uC8FC\uBB38\uC11C \uC2E4\uD328\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.scrollUpgradeableCount=t.scrollUpgradeableCount-1,t.data.scrollResilienceCount=t.scrollResilienceCount+1}function B(t){return S(t)&&t.scrollResilienceCount>0}function ut(t){if(!B(t))throw TypeError("\uC5C5\uADF8\uB808\uC774\uB4DC \uAC00\uB2A5 \uD69F\uC218\uB97C \uBCF5\uAD6C\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.scrollResilienceCount=t.scrollResilienceCount-1,t.data.scrollUpgradeableCount=t.scrollUpgradeableCount+1}function W(t){return S(t)}function ft(t){if(!W(t))throw TypeError("\uC8FC\uBB38\uC11C \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.upgradeOption={},t.data.scrollUpgradeableCount=t.scrollTotalUpgradeableCount,t.data.scrollUpgradeCount=void 0,t.data.scrollResilienceCount=void 0,t.data.goldenHammer=void 0}function N(t){return S(t)&&t.scrollUpgradeableCount>0}function v(t,o){if(!N(t))throw TypeError("\uC8FC\uBB38\uC11C\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.upgradeOption===void 0&&(t.data.upgradeOption={}),w(t.data.upgradeOption,o.option),t.data.scrollUpgradeableCount=t.scrollUpgradeableCount-1,t.data.scrollUpgradeCount=t.scrollUpgradeCount+1}var Lt=(s=>(s.str="str",s.dex="dex",s.int="int",s.luk="luk",s.maxHp="maxHp",s.allStat="allStat",s))(Lt||{});function St(t,o,n){let a=yt(t,o,n);v(t,a)}function yt(t,o,n){if(d(t.type)||t.type===134)return se(t,o,n);if(t.type===108)return ce(t,o,n);if(x(t.type)||t.type===115)return pe(t,o,n);if(O(t.type))return de(t,o,n);if(t.type===167)return ue(t,o,n);throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44 \uBD84\uB958\uC785\uB2C8\uB2E4.")}function se(t,o,n){if(o==="allStat")throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let a=C(t),[r,i]=fe[n][a];o==="maxHp"&&(i*=50);let s=ht(o),l,f;return i===0?(l=A(n,P(s)),f={[s]:r}):(l=A(n,P(s),P(o)),f={[s]:r,[o]:i}),{name:l,option:f,type:o,rate:n}}function ce(t,o,n){let a=C(t),r=Se[n][a],i,s;if(r===0)i=A(n,"\uBC29\uC5B4\uB825"),s={armor:3};else{let l=ht(o);i=A(n,P(l)),s={[l]:r}}return{name:i,option:s,rate:n,type:o}}function pe(t,o,n){let a=C(t),[r,i,s]=me[n][a],l={maxHp:i,armor:s};switch(o){case"str":case"dex":case"int":case"luk":l[o]=r;break;case"maxHp":l.maxHp+=r*50;break;case"allStat":{if(!(n in Gt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let m=Gt[n][a];l.str=m,l.dex=m,l.int=m,l.luk=m;break}}return t.scrollUpgradeCount===3&&(t.req.beginner()?(l.attackPower=1,l.magicPower=1):t.req.magician()?l.magicPower=1:l.attackPower=1),{name:A(n,P(o)),option:l,type:o,rate:n}}function de(t,o,n){if(!(n in mt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let a=C(t),r=mt[n][a],i={};switch(o){case"str":case"dex":case"int":case"luk":i[o]=r;break;case"maxHp":i.maxHp=r*50;break;case"allStat":{if(!(n in qt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let l=qt[n][a];i.str=l,i.dex=l,i.int=l,i.luk=l;break}}return{name:A(n,P(o)),option:i,type:o,rate:n}}function ue(t,o,n){if(!(n in mt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let a=C(t),r=he[n][a],i=ht(o),s=A(n,P(i)),l={[i]:r};return{name:s,option:l,type:o,rate:n}}function A(t,o,n){return n?`${t.toString()}% ${o}(${n}) \uC8FC\uBB38\uC11C`:`${t.toString()}% ${o} \uC8FC\uBB38\uC11C`}function P(t){switch(t){case"str":return"\uD798";case"dex":return"\uBBFC\uCCA9";case"int":return"\uC9C0\uB825";case"luk":return"\uC6B4";case"maxHp":return"\uCCB4\uB825";case"allStat":return"\uC62C\uC2A4\uD0EF";case"attackPower":return"\uACF5\uACA9\uB825";case"magicPower":return"\uB9C8\uB825"}}function C(t){return t.req.level>110?2:t.req.level>70?1:0}function ht(t){return t==="int"?"magicPower":"attackPower"}var fe={100:[[1,0],[2,0],[3,1]],70:[[2,0],[3,1],[5,2]],30:[[3,1],[5,2],[7,3]],15:[[5,2],[7,3],[9,4]]},me={100:[[1,5,1],[2,20,2],[3,30,3]],70:[[2,15,2],[3,40,4],[4,70,5]],30:[[3,30,4],[5,70,7],[7,120,10]],15:[[4,45,6],[7,110,10],[10,170,15]]},Gt={30:[1,2,3],15:[2,3,4]},Se={100:[0,1,1],70:[1,2,2],30:[2,3,3],15:[3,4,4]},mt={100:[1,1,2],70:[2,2,3],30:[3,4,5]},qt={30:[1,2,3]},he={100:[1,2,3],70:[2,3,5],30:[3,5,7]};var Mt="__GearOption_s87Ns2aQ";function u(t){return Mt in t?t:new Proxy(t,{get(o,n){if(n===Mt)return!0;if(n in bt)return o[n]??bt[n]},set(o,n,a){return n in bt?(o[n]=a,!0):!1},ownKeys(o){return Object.entries(o).filter(([,n])=>n!=0).map(([n])=>n)}})}var bt={str:0,dex:0,int:0,luk:0,strRate:0,dexRate:0,intRate:0,lukRate:0,maxHp:0,maxMp:0,maxHpRate:0,maxMpRate:0,maxDemonForce:0,attackPower:0,magicPower:0,attackPowerRate:0,magicPowerRate:0,armor:0,armorRate:0,speed:0,jump:0,knockback:0,bossDamage:0,normalDamage:0,ignoreMonsterArmor:0,allStat:0,damage:0,reqLevelDecrease:0,criticalRate:0,criticalDamage:0,cooltimeReduce:0,strLv:0,dexLv:0,intLv:0,lukLv:0};var be=25,F=15,xe=15,Oe=150;function _(t){return(t.data.maxStar??0)>0}function E(t,o=!1){if(!_(t))return!1;if(t.attributes.superior)return t.star<Math.min(xe,t.maxStar);if(!o&&t.star>=t.maxStar)return!1;let n=t.starScroll?F:be;return t.star<n}function J(t,o=!1){if(!E(t,o))throw TypeError("\uC2A4\uD0C0\uD3EC\uC2A4 \uAC15\uD654\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.star=t.star+1,t.attributes.superior?we(t):d(t.type)||t.type===134?Pe(t):Ae(t)}function U(t,o=!1){return!_(t)||t.attributes.superior||t.req.level>Oe||!o&&t.star>=t.maxStar?!1:t.star<F}function X(t,o=!1,n=!1){if(!U(t,n))throw TypeError("\uB180\uB77C\uC6B4 \uC7A5\uBE44 \uAC15\uD654 \uC8FC\uBB38\uC11C\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.starScroll=!0,t.data.star=t.star+1;let a=h(Ue,t),r=h(Ie,t),i=d(t.type)||t.type===134;for(let l of I)xt(t,l)>0&&(c(t)[l]+=a,o&&O(t.type)&&(c(t)[l]+=t.star>5?2:1));for(let l of Bt){let f=xt(t,l);f>0&&(i&&(c(t)[l]+=Math.floor(f/50)+1),c(t)[l]+=r,o&&(i||t.type===109)&&(c(t)[l]+=1))}o&&x(t.type)&&(c(t).maxHp+=50);let s=xt(t,"armor");s>0&&(c(t).armor+=Math.floor(s/20)+1)}function $(t){return!!_(t)}function Ot(t){if(!$(t))throw TypeError("\uC2A4\uD0C0\uD3EC\uC2A4 \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.starforceOption={},t.data.star=void 0,t.data.starScroll=void 0}function we(t){let o=h(ve,t),n=h(Re,t);for(let r of I)t.baseOption[r]>0&&(c(t)[r]+=o);for(let r of Bt)t.baseOption[r]>0&&(c(t)[r]+=n);let a=V(t,"armor");c(t).armor+=Math.floor(a/20)+1}function Pe(t){let o=h(Wt,t),n=h(ke,t),a=jt(t);for(let s of I)(a.has(s)||t.star>15&&(t.baseOption[s]>0||t.upgradeOption[s]>0))&&(c(t)[s]+=o);let r=t.req.magician()||t.upgradeOption.magicPower>0;if(t.star>15)c(t).attackPower+=n,r&&(c(t).magicPower+=n);else{let s=V(t,"attackPower");if(c(t).attackPower+=Math.floor(s/50)+1,r){let l=V(t,"magicPower");c(t).magicPower+=Math.floor(l/50)+1}}let i=Nt[t.star];c(t).maxHp+=i,c(t).maxMp+=i}function Ae(t){let o=h(Wt,t),n=h(_e,t),a=jt(t);for(let r of I)(a.has(r)||t.star>15&&(t.baseOption[r]>0||t.upgradeOption[r]>0))&&(c(t)[r]+=o);if(c(t).attackPower+=n,c(t).magicPower+=n,t.type===108){let r=Ce[t.star];t.req.beginner()?(c(t).attackPower+=r,c(t).magicPower+=r):t.req.magician()?c(t).magicPower+=r:c(t).attackPower+=r}if(t.type!==167){let r=V(t,"armor");c(t).armor+=Math.floor(r/20)+1}if(ge.includes(t.type)){let r=Nt[t.star];c(t).maxHp+=r}if(t.type===107){let r=Ee[t.star];c(t).speed+=r,c(t).jump+=r}}function jt(t){if(t.req.beginner())return new Set(I);let o=[];return t.req.warrior()&&o.push("str","dex"),t.req.magician()&&o.push("int","luk"),t.req.bowman()&&o.push("dex","str"),t.req.thief()&&o.push("luk","dex"),t.req.pirate()&&o.push("str","dex"),new Set(o)}function h(t,o){let n=o.req.level;for(let a=t.length-1;a>=0;a--){let r=t[a];if(n>=r[0])return r[o.star]}throw TypeError("\uC7A5\uBE44\uC758 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8\uC740 0 \uC774\uC0C1\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.")}function c(t){return t.data.starforceOption===void 0&&(t.data.starforceOption={}),u(t.data.starforceOption)}function V(t,o){return t.baseOption[o]+t.upgradeOption[o]+t.starforceOption[o]}function xt(t,o){return t.baseOption[o]+t.addOption[o]+t.upgradeOption[o]+t.starforceOption[o]}var I=["str","dex","int","luk"],Bt=["attackPower","magicPower"],ge=[100,104,105,106,110,111,112,113,115,109],Wt=[[0,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,0,0,0,0,0,0,0,0,0,0],[108,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0],[118,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,0,0,0],[128,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,0,0,0],[138,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,9,9,9,9,9,9,9,0,0,0],[148,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,11,11,11,11,11,11,11,0,0,0],[158,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,13,13,13,13,13,13,13,0,0,0],[198,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,15,15,15,15,15,15,15,0,0,0],[248,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,17,17,17,17,17,17,17,0,0,0]],_e=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,7,8,9,10,12,13,15,17],[118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,8,9,10,11,13,14,16,18],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,9,10,11,12,14,16,18,20],[138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,10,11,12,13,15,17,19,21],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,10,11,12,13,14,16,18,20,22],[158,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,11,12,13,14,15,17,19,21,23],[198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,13,14,15,16,17,19,21,23,25],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,15,16,17,18,19,21,23,25,27]],ke=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,6,7,8,9,27,28,29],[118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,6,7,8,9,10,28,29,30],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,9,10,11,29,30,31],[138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,9,10,11,12,30,31,32],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,10,11,12,13,31,32,33],[158,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,10,11,12,13,14,32,33,34],[198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,13,14,14,15,16,17,34,35,36],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,15,16,16,17,18,19,36,37,38]],Re=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[110,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0],[150,0,0,0,0,0,9,10,11,12,13,15,17,19,21,23]],ve=[[0,1,2,4,7,11,0,0,0,0,0,0,0,0,0,0],[80,2,3,5,8,12,0,0,0,0,0,0,0,0,0,0],[110,9,10,12,15,19,0,0,0,0,0,0,0,0,0,0],[150,19,20,22,25,29,0,0,0,0,0,0,0,0,0,0]],Ce=[-1,0,0,0,0,1,0,1,0,1,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0],Nt=[-1,5,5,5,10,10,15,15,20,20,25,25,25,25,25,25,0,0,0,0,0,0,0,0,0,0],Ee=[-1,0,0,1,1,1,1,1,1,1,1,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0],Ue=[[0,1,2,4,7,11,0,0,0,0,0,0,0,0,0,0],[80,2,3,5,8,12,0,0,0,0,0,0,0,0,0,0],[85,3,4,6,9,13,0,0,0,0,0,0,0,0,0,0],[90,4,5,7,10,14,0,0,0,0,0,0,0,0,0,0],[95,5,6,8,11,15,0,0,0,0,0,0,0,0,0,0],[100,7,8,10,13,17,0,0,0,0,0,0,0,0,0,0],[105,8,9,11,14,18,0,0,0,0,0,0,0,0,0,0],[110,9,10,12,15,19,0,0,0,0,0,0,0,0,0,0],[115,10,11,13,16,20,0,0,0,0,0,0,0,0,0,0],[120,12,13,15,18,22,0,0,0,0,0,0,0,0,0,0],[125,13,14,16,19,23,0,0,0,0,0,0,0,0,0,0],[130,14,15,17,20,24,0,0,0,0,0,0,0,0,0,0],[135,15,16,18,21,25,0,0,0,0,0,0,0,0,0,0],[140,17,18,20,23,27,0,0,0,0,0,0,0,0,0,0],[145,18,19,21,24,28,0,0,0,0,0,0,0,0,0,0],[150,19,20,22,25,29,0,0,0,0,0,0,0,0,0,0]],Ie=[[0,0,0,0,0,0,1,2,3,4,5,6,8,10,12,14],[80,0,0,0,0,0,2,3,4,5,6,7,9,11,13,15],[90,0,0,0,0,0,3,4,5,6,7,8,10,12,14,16],[100,0,0,0,0,0,4,5,6,7,8,9,11,13,15,17],[110,0,0,0,0,0,5,6,7,8,9,10,12,14,16,18],[120,0,0,0,0,0,6,7,8,9,10,11,13,15,17,19],[130,0,0,0,0,0,7,8,9,10,11,12,14,16,18,20],[140,0,0,0,0,0,8,9,10,11,12,13,15,17,19,21],[150,0,0,0,0,0,9,10,11,12,13,14,16,18,20,22]];function Vt(t){return Y(t.attributes.canPotential,t)!==2}function K(t){return Y(t.attributes.canPotential,t)===1}function Ft(t,o,n){if(!K(t))throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");if(o===0)throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825 \uB4F1\uAE09\uC744 Normal\uB85C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. (\uC7A0\uC7AC\uB2A5\uB825\uC744 \uCD08\uAE30\uD654\uD558\uB824\uBA74 resetPotential\uC744 \uC0AC\uC6A9\uD558\uC138\uC694.)");if(n.length<1||n.length>3)throw new TypeError("\uC7A0\uC7AC\uC635\uC158 \uAC1C\uC218\uB294 1\uAC1C\uC5D0\uC11C 3\uAC1C \uC0AC\uC774\uC5EC\uC57C \uD569\uB2C8\uB2E4.");t.data.potentialGrade=o,t.data.potentials=n}function Jt(t){if(!K(t))throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.potentialGrade=0,t.data.potentials=void 0}function Xt(t){return Y(t.attributes.canAdditionalPotential,t)!==2}function Q(t){return Y(t.attributes.canAdditionalPotential,t)===1}function $t(t,o,n){if(!Q(t))throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");if(o===0)throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825 \uB4F1\uAE09\uC744 Normal\uB85C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. (\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uCD08\uAE30\uD654\uD558\uB824\uBA74 resetAdditionalPotential\uC744 \uC0AC\uC6A9\uD558\uC138\uC694.)");if(n.length<1||n.length>3)throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uC635\uC158 \uAC1C\uC218\uB294 1\uAC1C\uC5D0\uC11C 3\uAC1C \uC0AC\uC774\uC5EC\uC57C \uD569\uB2C8\uB2E4.");t.data.additionalPotentialGrade=o,t.data.additionalPotentials=n}function Kt(t){if(!Q(t))throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.additionalPotentialGrade=0,t.data.additionalPotentials=void 0}function Y(t,o){return t!==0?t:De(o)}function De(t){return t.scrollTotalUpgradeableCount>0?at(t.type)||rt(t.type)?2:1:He(t.type)||nt(t.type)?1:2}function He(t){switch(t){case 1098:case 1099:case 134:case 135200:case 135210:case 135240:case 135250:case 135260:case 135270:case 119:return!0;default:return!1}}var D=class{data;constructor(o){this.data=o}get only(){return this.data.only??!1}get trade(){return this.data.trade??0}set trade(o){this.data.trade=o}get onlyEquip(){return this.data.onlyEquip??!1}get share(){return this.data.share??0}get blockGoldenHammer(){return this.data.blockGoldenHammer??!1}get superior(){return this.data.superior??!1}get attackSpeed(){return this.data.attackSpeed}get cannotUpgrade(){return this.data.cannotUpgrade??!1}get canAddOption(){return this.data.canAddOption??0}get canPotential(){return this.data.canPotential??0}get canAdditionalPotential(){return this.data.canAdditionalPotential??0}get specialGrade(){return this.data.specialGrade??!1}get reqLevelIncrease(){return this.data.reqLevelIncrease??0}get cuttable(){return this.data.cuttable??0}get cuttableCount(){return this.data.cuttableCount}set cuttableCount(o){this.data.cuttableCount=o}get accountShareTag(){return this.data.accountShareTag??!1}get lucky(){return this.data.lucky??!1}get incline(){return{charisma:0,insight:0,will:0,craft:0,sense:0,charm:0,...this.data.incline}}set incline(o){this.data.incline=o}get bossReward(){return this.data.bossReward??!1}get growthExp(){return this.data.growthExp}set growthExp(o){(o===void 0||0<=o&&o<=100)&&(this.data.growthExp=o)}get growthLevel(){return this.data.growthLevel}set growthLevel(o){this.data.growthLevel=o}get dateExpire(){return this.data.dateExpire}set dateExpire(o){(o===void 0||!Number.isNaN(Date.parse(o)))&&(this.data.dateExpire=o)}};var H=class{data;constructor(o){this.data=o}get level(){return this.data.level??0}get str(){return this.data.str??0}get dex(){return this.data.dex??0}get int(){return this.data.int??0}get luk(){return this.data.luk??0}get job(){return this.data.job??0}get class(){return this.data.class??0}beginner(){return this.job===0}warrior(){return this.job===0||(this.job&1)!=0}magician(){return this.job===0||(this.job&2)!=0}bowman(){return this.job===0||(this.job&4)!=0}thief(){return this.job===0||(this.job&8)!=0}pirate(){return this.job===0||(this.job&16)!=0}};function Z(t){return d(t.type)&&t.req.level>=30}function z(t){return Z(t)&&!t.soulEnchanted}function wt(t){if(!z(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0\uC740 \uC911\uBCF5\uD574\uC11C \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");t.data.soulSlot={}}function T(t){return t.soulEnchanted}function Pt(t,o){if(!T(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC5D0\uB9CC \uC18C\uC6B8\uC744 \uC7A5\uCC29\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");t.data.soulSlot.soul=o,Qt(t)}function tt(t){return t.soulEnchanted}function At(t,o){if(!tt(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uB9CC \uC18C\uC6B8 \uCDA9\uC804\uB7C9\uC744 \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");if(o<0||o>1e3)throw TypeError("\uC18C\uC6B8 \uCDA9\uC804\uB7C9\uC740 0 \uC774\uC0C1 1000 \uC774\uD558\uC758 \uAC12\uC73C\uB85C\uB9CC \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");t.data.soulSlot.charge=o,Qt(t)}function gt(t){t.data.soulSlot=void 0}function Qt(t){let o;if(t.soulCharge===0)o={};else{let n=t.baseOption.attackPower>=t.baseOption.magicPower?"attackPower":"magicPower",a=Math.min(5,Math.ceil(t.soulCharge/100)-1);t.soul?o={[n]:10+a*(t.soul.chargeFactor??1)}:o={[n]:5+a}}t.data.soulSlot.chargeOption=o}var _t=class{data;constructor(o){this.data=o}get meta(){return this.data.meta}get name(){return this.data.name}get icon(){return this.data.icon??""}get desc(){return this.data.desc}get shape(){return this.data.shape}set shape(o){this.data.shape=o}get shapeIcon(){return this.shape?.icon??this.icon}get type(){return this.data.type}get req(){return new H(this.data.req)}get attributes(){return new D(this.data.attributes)}get totalOption(){return u(Ht(this.baseOption,this.addOption,this.upgradeOption,this.starforceOption))}get baseOption(){return u(this.data.baseOption??{})}get addOption(){return u(this.data.addOption??{})}get upgradeOption(){return u(this.data.upgradeOption??{})}get starforceOption(){return u(this.data.starforceOption??{})}get scrollUpgradeCount(){return this.data.scrollUpgradeCount??0}get scrollResilienceCount(){return this.data.scrollResilienceCount??0}get scrollUpgradeableCount(){return this.data.scrollUpgradeableCount??0}get goldenHammer(){return this.data.goldenHammer??0}get scrollTotalUpgradeableCount(){return this.scrollUpgradeCount+this.scrollUpgradeableCount+this.scrollResilienceCount-this.goldenHammer}get star(){return this.data.star??0}get maxStar(){let o=this.data.maxStar??0;return Math.max(this.star,this.starScroll?Math.min(F,o):o)}get starScroll(){return this.data.starScroll??!1}get soulEnchanted(){return this.data.soulSlot!==void 0}get soul(){if(this.data.soulSlot?.soul)return{...this.data.soulSlot.soul,option:u(this.data.soulSlot.soul.option)}}get soulCharge(){return this.data.soulSlot?.charge??0}get soulChargeOption(){return u(this.data.soulSlot?.chargeOption??{})}get potentialGrade(){return this.data.potentialGrade??0}get potentials(){return this.data.potentials?this.data.potentials.map(o=>({...o,option:u(o.option)})):[]}get additionalPotentialGrade(){return this.data.additionalPotentialGrade??0}get additionalPotentials(){return this.data.additionalPotentials?this.data.additionalPotentials.map(o=>({...o,option:u(o.option)})):[]}get exceptionalOption(){return u(this.data.exceptionalOption??{})}get exceptionalUpgradeCount(){return this.data.exceptionalUpgradeCount??0}get exceptionalUpgradeableCount(){return this.data.exceptionalUpgradeableCount??0}get exceptionalTotalUpgradeableCount(){return this.exceptionalUpgradeCount+this.exceptionalUpgradeableCount}get supportsAddOption(){return it(this)}applyAddOption(o,n){let a=lt(this,o,n);this.data.addOption||(this.data.addOption={}),w(this.data.addOption,a),this.meta.add.push([o,n])}resetAddOption(){this.data.addOption=void 0,this.meta.add=[]}get supportsUpgrade(){return S(this)}get canApplyGoldenHammer(){return M(this)}applyGoldenHammer(){pt(this)}get canApplyFailScroll(){return j(this)}applyScrollFail(){dt(this)}get canApplyResileScroll(){return B(this)}applyScrollResile(){ut(this)}get canResetUpgrade(){return W(this)}resetUpgrade(){ft(this)}get canApplyScroll(){return N(this)}applyScroll(o){v(this,o)}applySpellTrace(o,n){St(this,o,n)}get supportsStarforce(){return _(this)}get canApplyStarforce(){return E(this)}applyStarforce(){J(this)}get canApplyStarforceIgnoringMaxStar(){return E(this,!0)}applyStarforceIgnoringMaxStar(){J(this,!0)}get canApplyStarScroll(){return U(this)}applyStarScroll(o=!1){X(this,o)}get canApplyStarScrollIgnoringMaxStar(){return U(this,!0)}applyStarScrollIgnoringMaxStar(o=!1){X(this,o,!0)}get canResetStarforce(){return $(this)}resetStarforce(){Ot(this)}get supportsPotential(){return Vt(this)}get canSetPotential(){return K(this)}setPotential(o,n){Ft(this,o,n)}resetPotential(){Jt(this)}get supportsAdditionalPotential(){return Xt(this)}get canSetAdditionalPotential(){return Q(this)}setAdditionalPotential(o,n){$t(this,o,n)}resetAdditionalPotential(){Kt(this)}get supportsSoul(){return Z(this)}get canApplySoulEnchant(){return z(this)}applySoulEnchant(){wt(this)}get canSetSoul(){return T(this)}setSoul(o){Pt(this,o)}get canSetSoulCharge(){return tt(this)}setSoulCharge(o){At(this,o)}resetSoulEnchant(){gt(this)}get supportsExceptional(){return R(this)}get canApplyExceptional(){return L(this)}applyExceptional(o){st(this,o)}get canResetExceptional(){return y(this)}resetExceptional(){ct(this)}};export{et as AddOptionCan,It as AddOptionType,_t as Gear,D as GearAttribute,vt as GearCuttable,H as GearReq,Rt as GearShare,kt as GearTrade,b as GearType,ot as PotentialCan,G as PotentialGrade,Lt as SpellTraceType,st as applyExceptional,pt as applyGoldenHammer,v as applyScroll,wt as applySoulEnchant,St as applySpellTrace,L as canApplyExceptional,N as canApplyScroll,z as canApplySoulEnchant,j as canFailScroll,M as canGoldenHammer,y as canResetExceptional,$ as canResetStarforce,W as canResetUpgrade,B as canResileScroll,T as canSetSoul,tt as canSetSoulCharge,U as canStarScroll,E as canStarforce,dt as failScroll,lt as getAddOption,Dt as getAddOptionValue,yt as getSpellTraceScroll,O as isAccessory,x as isArmor,Et as isDoubleHandWeapon,rt as isDragonGear,Ct as isLeftWeapon,at as isMechanicGear,q as isShield,nt as isSubWeapon,d as isWeapon,ct as resetExceptional,gt as resetSoulEnchant,Ot as resetStarforce,ft as resetUpgrade,ut as resileScroll,Pt as setSoul,At as setSoulCharge,X as starScroll,J as starforce,it as supportsAddOption,R as supportsExceptional,Z as supportsSoul,_ as supportsStarforce,S as supportsUpgrade,u as toGearOption};
1
+ var ot=(d=>(d.str="str",d.dex="dex",d.int="int",d.luk="luk",d.str_dex="str,dex",d.str_int="str,int",d.str_luk="str,luk",d.dex_int="dex,int",d.dex_luk="dex,luk",d.int_luk="int,luk",d.maxHp="maxHp",d.maxMp="maxMp",d.attackPower="attackPower",d.magicPower="magicPower",d.armor="armor",d.speed="speed",d.jump="jump",d.bossDamage="bossDamage",d.damage="damage",d.allStat="allStat",d.reqLevelDecrease="reqLevelDecrease",d))(ot||{});var It=(n=>(n[n.Tradeable=0]="Tradeable",n[n.TradeBlock=1]="TradeBlock",n[n.EquipTradeBlock=2]="EquipTradeBlock",n))(It||{}),yt=(n=>(n[n.None=0]="None",n[n.AccountSharable=1]="AccountSharable",n[n.AccountSharableOnce=2]="AccountSharableOnce",n))(yt||{}),P=(n=>(n[n.Cannot=0]="Cannot",n[n.Can=1]="Can",n[n.Fixed=2]="Fixed",n))(P||{}),Dt=(n=>(n[n.None=0]="None",n[n.Silver=1]="Silver",n[n.Platinum=2]="Platinum",n))(Dt||{});var w=(e=>(e[e.cap=100]="cap",e[e.faceAccessory=101]="faceAccessory",e[e.eyeAccessory=102]="eyeAccessory",e[e.earrings=103]="earrings",e[e.coat=104]="coat",e[e.longcoat=105]="longcoat",e[e.pants=106]="pants",e[e.shoes=107]="shoes",e[e.glove=108]="glove",e[e.cape=110]="cape",e[e.ring=111]="ring",e[e.pendant=112]="pendant",e[e.belt=113]="belt",e[e.medal=114]="medal",e[e.shoulder=115]="shoulder",e[e.pocket=116]="pocket",e[e.badge=118]="badge",e[e.android=166]="android",e[e.machineHeart=167]="machineHeart",e[e.shield=109]="shield",e[e.emblem=119]="emblem",e[e.powerSource=119020]="powerSource",e[e.shiningRod=1212]="shiningRod",e[e.tuner=1213]="tuner",e[e.breathShooter=1214]="breathShooter",e[e.soulShooter=122]="soulShooter",e[e.desperado=123]="desperado",e[e.energySword=124]="energySword",e[e.espLimiter=126]="espLimiter",e[e.chain=127]="chain",e[e.magicGauntlet=128]="magicGauntlet",e[e.ritualFan=129]="ritualFan",e[e.ohSword=130]="ohSword",e[e.ohAxe=131]="ohAxe",e[e.ohBlunt=132]="ohBlunt",e[e.dagger=133]="dagger",e[e.katara=134]="katara",e[e.cane=136]="cane",e[e.wand=137]="wand",e[e.staff=138]="staff",e[e.thSword=140]="thSword",e[e.chakram=1404]="chakram",e[e.thAxe=141]="thAxe",e[e.thBlunt=142]="thBlunt",e[e.spear=143]="spear",e[e.polearm=144]="polearm",e[e.bow=145]="bow",e[e.crossbow=146]="crossbow",e[e.claw=147]="claw",e[e.knuckle=148]="knuckle",e[e.gun=149]="gun",e[e.shovel=150]="shovel",e[e.pickaxe=151]="pickaxe",e[e.dualBowguns=152]="dualBowguns",e[e.handCannon=153]="handCannon",e[e.heavySword=156]="heavySword",e[e.longSword=157]="longSword",e[e.gauntletRevolver=158]="gauntletRevolver",e[e.ancientBow=159]="ancientBow",e[e.soulShield=1098]="soulShield",e[e.demonShield=1099]="demonShield",e[e.magicArrow=135200]="magicArrow",e[e.card=135210]="card",e[e.medallion=135220]="medallion",e[e.rosary=135221]="rosary",e[e.ironChain=135222]="ironChain",e[e.magicBook1=135223]="magicBook1",e[e.magicBook2=135224]="magicBook2",e[e.magicBook3=135225]="magicBook3",e[e.arrowFletching=135226]="arrowFletching",e[e.bowThimble=135227]="bowThimble",e[e.daggerScabbard=135228]="daggerScabbard",e[e.charm=135229]="charm",e[e.orb=135240]="orb",e[e.dragonEssence=135250]="dragonEssence",e[e.soulRing=135260]="soulRing",e[e.magnum=135270]="magnum",e[e.wristBand=135290]="wristBand",e[e.farSight=135291]="farSight",e[e.powderKeg=135292]="powderKeg",e[e.mass=135293]="mass",e[e.document=135294]="document",e[e.magicMarble=135295]="magicMarble",e[e.arrowhead=135296]="arrowhead",e[e.jewel=135297]="jewel",e[e.powderKeg2=135298]="powderKeg2",e[e.controller=135300]="controller",e[e.foxMarble=135310]="foxMarble",e[e.chessPiece=135320]="chessPiece",e[e.transmitter=135330]="transmitter",e[e.charge=135340]="charge",e[e.magicWing=135350]="magicWing",e[e.pathOfAbyss=135360]="pathOfAbyss",e[e.relic=135370]="relic",e[e.fanTassel=135380]="fanTassel",e[e.bracelet=135400]="bracelet",e[e.weaponBelt=135401]="weaponBelt",e[e.ornament=135402]="ornament",e[e.hexSeeker=135403]="hexSeeker",e[e.petEquip=180]="petEquip",e[e.machineEngine=161]="machineEngine",e[e.machineArms=162]="machineArms",e[e.machineLegs=163]="machineLegs",e[e.machineBody=164]="machineBody",e[e.machineTransistors=165]="machineTransistors",e[e.dragonMask=194]="dragonMask",e[e.dragonPendant=195]="dragonPendant",e[e.dragonWings=196]="dragonWings",e[e.dragonTail=197]="dragonTail",e))(w||{});var B=(i=>(i[i.Normal=0]="Normal",i[i.Rare=1]="Rare",i[i.Epic=2]="Epic",i[i.Unique=3]="Unique",i[i.Legendary=4]="Legendary",i))(B||{});var Ut="__GearOption_s87Ns2aQ";function u(t){return Ut in t?t:new Proxy(t,{get(o,a){if(a===Ut)return!0;if(a in at)return o[a]??at[a]},set(o,a,n){return a in at?(o[a]=n,!0):!1},ownKeys(o){return Object.entries(o).filter(([,a])=>a!=0).map(([a])=>a)}})}function h(t,...o){let a=t;for(let n of o)for(let[r,i]of Object.entries(n))r in a?a[r]+=i:a[r]=i}function Gt(...t){let o={};return h(o,...t),o}var at={str:0,dex:0,int:0,luk:0,strRate:0,dexRate:0,intRate:0,lukRate:0,maxHp:0,maxMp:0,maxHpRate:0,maxMpRate:0,maxDemonForce:0,attackPower:0,magicPower:0,attackPowerRate:0,magicPowerRate:0,armor:0,armorRate:0,speed:0,jump:0,bossDamage:0,normalDamage:0,ignoreMonsterArmor:0,allStat:0,damage:0,reqLevelDecrease:0,criticalRate:0,criticalDamage:0,cooltimeReduce:0,strLv:0,dexLv:0,intLv:0,lukLv:0};function p(t){return qt(t)||Lt(t)}function qt(t){return 121<=t&&t<=139&&t!==134||Math.floor(t/10)===121}function Lt(t){return t>=140&&t<=149||t>=152&&t<=159||Math.floor(t/10)===140}function Qt(t){if(Ht(t))return!0;switch(t){case 134:return!0;default:return Math.floor(t/1e3)===135}}function Ht(t){switch(t){case 109:case 1099:case 1098:return!0;default:return!1}}function _(t){return t===100||t>=104&&t<=110||t===1098||t===1099}function v(t){return t>=101&&t<=103||t>=111&&t<=113||t===115}function Yt(t){return t>=161&&t<=165}function Zt(t){return t>=194&&t<=197}var zt=4;function C(t){return t.attributes.canAddOption===1}function j(t){return!(!C(t)||t.addOptions.length===zt)}function nt(t,o,a){if(!j(t))throw TypeError("\uCD94\uAC00 \uC635\uC158\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.addOption===void 0&&(t.data.addOption={});let n=Bt(t,o,a);h(t.data.addOption,n),t.data.addOptions===void 0&&(t.data.addOptions=[]);let r=it(t,o,a);t.data.addOptions.push({type:o,grade:a,value:r})}function W(t){return!!C(t)}function rt(t){if(!W(t))throw TypeError("\uCD94\uAC00 \uC635\uC158\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.addOption=void 0,t.data.addOptions=void 0}function Bt(t,o,a){let n=de(o),r=it(t,o,a),i=n.map(s=>[s,r]);return Object.fromEntries(i)}function it(t,o,a){let n={type:o,reqLevel:t.req.level+t.req.levelIncrease,gearType:t.type,bossReward:t.attributes.bossReward,attackPower:t.baseOption.attackPower,magicPower:t.baseOption.magicPower};switch(o){case"str":case"dex":case"int":case"luk":return Mt(a,n);case"str,dex":case"str,int":case"str,luk":case"dex,int":case"dex,luk":case"int,luk":return Tt(a,n);case"armor":return Mt(a,n);case"attackPower":case"magicPower":return te(a,n);case"maxHp":case"maxMp":return ae(a,n);case"speed":return ne(a,n);case"jump":return re(a,n);case"damage":return ie(a,n);case"bossDamage":return le(a,n);case"allStat":return se(a,n);case"reqLevelDecrease":return ce(a,n)}}function Mt(t,{reqLevel:o}){return o>=250?Math.floor(o/20)*t:(Math.floor(o/20)+1)*t}function Tt(t,{reqLevel:o}){return(Math.floor(o/40)+1)*t}function te(t,o){let{reqLevel:a,gearType:n}=o;if(p(n))return ee(t,o);if(a>=60)return t;throw TypeError("\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 60 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.")}function ee(t,o){let{reqLevel:a,type:n,gearType:r,bossReward:i,attackPower:s,magicPower:l}=o,f=i?[0,0,1,1.4666,2.0166,2.663,3.4166]:[1,2.222,3.63,5.325,7.32,8.777,10.25];if(r===156||r===157){let m=oe(r,o),g=a>180?6:a>160?5:a>110?4:3;return Math.ceil(m*f[t-1]*g/100)}else{let m=n==="magicPower"&&l>s?l:s;if(i){let g=a>160?6:a>150?5:a>110?4:3;return Math.ceil(m*f[t-1]*g*3/100)}else{let g=a>110?4:3;return Math.ceil(m*f[t-1]*g/100)}}}function oe(t,{attackPower:o}){if(t===156)return o;let n=new Map([[100,102],[103,105],[105,107],[112,114],[117,121],[135,139],[169,173],[203,207],[293,297],[337,342]]).get(o);if(n===void 0)throw TypeError("\uACF5\uACA9\uB825/\uB9C8\uB825 \uCD94\uAC00 \uC635\uC158\uC744 \uBD80\uC5EC\uD560 \uC218 \uC5C6\uB294 \uD0DC\uB3C4 \uC7A5\uBE44\uC785\uB2C8\uB2E4. (Please submit issue with the gear info)");return n}function ae(t,{reqLevel:o}){return o<10?3*t:o>=250?700*t:Math.floor(o/10)*30*t}function ne(t,{gearType:o}){if(p(o))throw TypeError("\uC774\uB3D9\uC18D\uB3C4 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function re(t,{gearType:o}){if(p(o))throw TypeError("\uC810\uD504\uB825 \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30\uAC00 \uC544\uB2CC \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function ie(t,{gearType:o}){if(!p(o))throw TypeError("\uB370\uBBF8\uC9C0(%) \uCD94\uAC00 \uC635\uC158\uC740 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function le(t,{reqLevel:o,gearType:a}){if(o<90||!p(a))throw TypeError("\uBCF4\uC2A4 \uACF5\uACA9 \uC2DC \uB370\uBBF8\uC9C0 \uC99D\uAC00(%) \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 90 \uC774\uC0C1\uC758 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return 2*t}function se(t,{reqLevel:o,gearType:a}){if(o<70&&!p(a))throw TypeError("\uC62C\uC2A4\uD0EF(%) \uCD94\uAC00 \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 70 \uC774\uC0C1 \uB610\uB294 \uBB34\uAE30 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return t}function ce(t,{reqLevel:o}){if(o<=0)throw TypeError("\uCC29\uC6A9 \uB808\uBCA8 \uAC10\uC18C \uC635\uC158\uC740 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8 1 \uC774\uC0C1\uC758 \uC7A5\uBE44\uC5D0\uB9CC \uBD80\uC5EC\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");return Math.min(o,5*t)}function de(t){return t.split(",")}function k(t){return t.exceptionalTotalUpgradeableCount>0}function V(t){return k(t)&&t.exceptionalUpgradeableCount>0}function lt(t,o){if(!V(t))throw TypeError("\uC775\uC149\uC154\uB110 \uAC15\uD654\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.exceptionalOption===void 0&&(t.data.exceptionalOption={}),h(t.data.exceptionalOption,o.option),t.data.exceptionalUpgradeableCount=t.exceptionalUpgradeableCount-1,t.data.exceptionalUpgradeCount=t.exceptionalUpgradeCount+1}function N(t){return k(t)}function st(t){if(!N(t))throw TypeError("\uC8FC\uBB38\uC11C \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.exceptionalOption={},t.data.exceptionalUpgradeableCount=t.exceptionalTotalUpgradeableCount,t.data.exceptionalUpgradeCount=void 0}function ct(t){return t.attributes.canPotential===1}function E(t){return t.attributes.canPotential===1}function dt(t,o,a){if(!E(t))throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");if(o===0)throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825 \uB4F1\uAE09\uC744 Normal\uB85C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. (\uC7A0\uC7AC\uB2A5\uB825\uC744 \uCD08\uAE30\uD654\uD558\uB824\uBA74 resetPotential\uC744 \uC0AC\uC6A9\uD558\uC138\uC694.)");if(a.length<1||a.length>3)throw new TypeError("\uC7A0\uC7AC\uC635\uC158 \uAC1C\uC218\uB294 1\uAC1C\uC5D0\uC11C 3\uAC1C \uC0AC\uC774\uC5EC\uC57C \uD569\uB2C8\uB2E4.");t.data.potentialGrade=o,t.data.potentials=a}function pt(t){if(!E(t))throw new TypeError("\uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.potentialGrade=0,t.data.potentials=void 0}function ut(t){return t.attributes.canAdditionalPotential===1}function I(t){return t.attributes.canAdditionalPotential===1}function ft(t,o,a){if(!I(t))throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");if(o===0)throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825 \uB4F1\uAE09\uC744 Normal\uB85C \uC124\uC815\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. (\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uCD08\uAE30\uD654\uD558\uB824\uBA74 resetAdditionalPotential\uC744 \uC0AC\uC6A9\uD558\uC138\uC694.)");if(a.length<1||a.length>3)throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uC635\uC158 \uAC1C\uC218\uB294 1\uAC1C\uC5D0\uC11C 3\uAC1C \uC0AC\uC774\uC5EC\uC57C \uD569\uB2C8\uB2E4.");t.data.additionalPotentialGrade=o,t.data.additionalPotentials=a}function mt(t){if(!I(t))throw new TypeError("\uC5D0\uB514\uC154\uB110 \uC7A0\uC7AC\uB2A5\uB825\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.additionalPotentialGrade=0,t.data.additionalPotentials=void 0}function F(t){return p(t.type)}function J(t){return F(t)&&!t.soulEnchanted}function St(t){if(!J(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0\uC740 \uC911\uBCF5\uD574\uC11C \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");t.data.soulSlot={}}function X(t){return t.soulEnchanted}function ht(t,o){if(!X(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC5D0\uB9CC \uC18C\uC6B8\uC744 \uC7A5\uCC29\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");t.data.soulSlot.soul=o,jt(t)}function $(t){return t.soulEnchanted}function bt(t,o){if(!$(t))throw TypeError("\uC18C\uC6B8\uC6E8\uD3F0 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uB9CC \uC18C\uC6B8 \uCDA9\uC804\uB7C9\uC744 \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");if(o<0||o>1e3)throw TypeError("\uC18C\uC6B8 \uCDA9\uC804\uB7C9\uC740 0 \uC774\uC0C1 1000 \uC774\uD558\uC758 \uAC12\uC73C\uB85C\uB9CC \uBCC0\uACBD\uD560 \uC218 \uC788\uC2B5\uB2C8\uB2E4.");t.data.soulSlot.charge=o,jt(t)}function xt(t){t.data.soulSlot=void 0}function jt(t){let o;if(t.soulCharge===0)o={};else{let a=t.baseOption.attackPower>=t.baseOption.magicPower?"attackPower":"magicPower",n=Math.min(5,Math.ceil(t.soulCharge/100)-1);t.soul?o={[a]:10+n*(t.soul.chargeFactor??1)}:o={[a]:5+n}}t.data.soulSlot.chargeOption=o}function b(t){return t.attributes.canScroll===1}function K(t){return b(t)&&t.scrollUpgradeableCount>0}function Ot(t){if(!K(t))throw TypeError("\uC8FC\uBB38\uC11C \uC2E4\uD328\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.scrollUpgradeableCount=t.scrollUpgradeableCount-1,t.data.scrollResilienceCount=t.scrollResilienceCount+1}function Q(t){return b(t)&&t.scrollResilienceCount>0}function Pt(t){if(!Q(t))throw TypeError("\uC5C5\uADF8\uB808\uC774\uB4DC \uAC00\uB2A5 \uD69F\uC218\uB97C \uBCF5\uAD6C\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.scrollResilienceCount=t.scrollResilienceCount-1,t.data.scrollUpgradeableCount=t.scrollUpgradeableCount+1}function Y(t){return b(t)}function wt(t){if(!Y(t))throw TypeError("\uC8FC\uBB38\uC11C \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.upgradeOption={},t.data.scrollUpgradeableCount=t.scrollTotalUpgradeableCount,t.data.scrollUpgradeCount=void 0,t.data.scrollResilienceCount=void 0}function Z(t){return b(t)&&t.scrollUpgradeableCount>0}function y(t,o){if(!Z(t))throw TypeError("\uC8FC\uBB38\uC11C\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.upgradeOption===void 0&&(t.data.upgradeOption={}),h(t.data.upgradeOption,o.option),t.data.scrollUpgradeableCount=t.scrollUpgradeableCount-1,t.data.scrollUpgradeCount=t.scrollUpgradeCount+1}var Nt=(s=>(s.str="str",s.dex="dex",s.int="int",s.luk="luk",s.maxHp="maxHp",s.allStat="allStat",s))(Nt||{});function Rt(t,o,a){let n=Ft(t,o,a);y(t,n)}function Ft(t,o,a){if(p(t.type)||t.type===134)return pe(t,o,a);if(t.type===108)return ue(t,o,a);if(_(t.type)||t.type===115)return fe(t,o,a);if(v(t.type))return me(t,o,a);if(t.type===167)return Se(t,o,a);throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44 \uBD84\uB958\uC785\uB2C8\uB2E4.")}function pe(t,o,a){if(o==="allStat")throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let n=D(t),[r,i]=he[a][n];o==="maxHp"&&(i*=50);let s=gt(o),l,f;return i===0?(l=O(a,x(s)),f={[s]:r}):(l=O(a,x(s),x(o)),f={[s]:r,[o]:i}),{name:l,option:f,type:o,rate:a}}function ue(t,o,a){let n=D(t),r=xe[a][n],i,s;if(r===0)i=O(a,"\uBC29\uC5B4\uB825"),s={armor:3};else{let l=gt(o);i=O(a,x(l)),s={[l]:r}}return{name:i,option:s,rate:a,type:o}}function fe(t,o,a){let n=D(t),[r,i,s]=be[a][n],l={maxHp:i,armor:s};switch(o){case"str":case"dex":case"int":case"luk":l[o]=r;break;case"maxHp":l.maxHp+=r*50;break;case"allStat":{if(!(a in Wt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let m=Wt[a][n];l.str=m,l.dex=m,l.int=m,l.luk=m;break}}return t.scrollUpgradeCount===3&&(t.req.beginner()?(l.attackPower=1,l.magicPower=1):t.req.magician()?l.magicPower=1:l.attackPower=1),{name:O(a,x(o)),option:l,type:o,rate:a}}function me(t,o,a){if(!(a in At))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let n=D(t),r=At[a][n],i={};switch(o){case"str":case"dex":case"int":case"luk":i[o]=r;break;case"maxHp":i.maxHp=r*50;break;case"allStat":{if(!(a in Vt))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let l=Vt[a][n];i.str=l,i.dex=l,i.int=l,i.luk=l;break}}return{name:O(a,x(o)),option:i,type:o,rate:a}}function Se(t,o,a){if(!(a in At))throw TypeError("\uC8FC\uBB38\uC758 \uD754\uC801\uC744 \uC7A5\uBE44\uC5D0 \uC801\uC6A9\uD560 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4.");let n=D(t),r=Oe[a][n],i=gt(o),s=O(a,x(i)),l={[i]:r};return{name:s,option:l,type:o,rate:a}}function O(t,o,a){return a?`${t.toString()}% ${o}(${a}) \uC8FC\uBB38\uC11C`:`${t.toString()}% ${o} \uC8FC\uBB38\uC11C`}function x(t){switch(t){case"str":return"\uD798";case"dex":return"\uBBFC\uCCA9";case"int":return"\uC9C0\uB825";case"luk":return"\uC6B4";case"maxHp":return"\uCCB4\uB825";case"allStat":return"\uC62C\uC2A4\uD0EF";case"attackPower":return"\uACF5\uACA9\uB825";case"magicPower":return"\uB9C8\uB825"}}function D(t){let o=t.req.level+t.req.levelIncrease;return o>110?2:o>70?1:0}function gt(t){return t==="int"?"magicPower":"attackPower"}var he={100:[[1,0],[2,0],[3,1]],70:[[2,0],[3,1],[5,2]],30:[[3,1],[5,2],[7,3]],15:[[5,2],[7,3],[9,4]]},be={100:[[1,5,1],[2,20,2],[3,30,3]],70:[[2,15,2],[3,40,4],[4,70,5]],30:[[3,30,4],[5,70,7],[7,120,10]],15:[[4,45,6],[7,110,10],[10,170,15]]},Wt={30:[1,2,3],15:[2,3,4]},xe={100:[0,1,1],70:[1,2,2],30:[2,3,3],15:[3,4,4]},At={100:[1,1,2],70:[2,2,3],30:[3,4,5]},Vt={30:[1,2,3]},Oe={100:[1,2,3],70:[2,3,5],30:[3,5,7]};var Pe=30,vt=15,we=15,Ae=150;function R(t){return t.attributes.canStarforce===1}function U(t,o=!1){if(!R(t))return!1;if(t.attributes.superior)return t.star<Math.min(we,t.maxStar);if(o){if(t.star>=Ce(t))return!1}else if(t.star>=t.maxStar)return!1;let a=t.starScroll?vt:Pe;return t.star<a}function T(t,o=!1){if(!U(t,o))throw TypeError("\uC2A4\uD0C0\uD3EC\uC2A4 \uAC15\uD654\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.star=t.star+1,t.attributes.superior?Re(t):p(t.type)||t.type===134?ge(t):_e(t)}function G(t,o=!1){return!R(t)||t.attributes.superior||t.req.level>Ae||!o&&t.star>=t.maxStar?!1:t.star<vt}function tt(t,o=!1,a=!1){if(!G(t,a))throw TypeError("\uB180\uB77C\uC6B4 \uC7A5\uBE44 \uAC15\uD654 \uC8FC\uBB38\uC11C\uB97C \uC801\uC6A9\uD560 \uC218 \uC5C6\uB294 \uC0C1\uD0DC\uC758 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.starScroll=!0,t.data.star=t.star+1;let n=S(He,t),r=S(Me,t),i=p(t.type)||t.type===134;for(let l of q)_t(t,l)>0&&(c(t)[l]+=n,o&&v(t.type)&&(c(t)[l]+=t.star>5?2:1));for(let l of Xt){let f=_t(t,l);f>0&&(i&&(c(t)[l]+=Math.floor(f/50)+1),c(t)[l]+=r,o&&(i||t.type===109)&&(c(t)[l]+=1))}o&&_(t.type)&&(c(t).maxHp+=50);let s=_t(t,"armor");s>0&&(c(t).armor+=Math.floor(s/20)+1)}function et(t){return!!R(t)}function Ct(t){if(!et(t))throw TypeError("\uC2A4\uD0C0\uD3EC\uC2A4 \uAC15\uD654\uB97C \uCD08\uAE30\uD654\uD560 \uC218 \uC5C6\uB294 \uC7A5\uBE44\uC785\uB2C8\uB2E4.");t.data.starforceOption={},t.data.star=void 0,t.data.starScroll=void 0}function kt(t){if(t.attributes.canStarforce===0)return 0;let o=ve(t);return t.starScroll?Math.min(vt,o):o}function Re(t){let o=S(Ge,t),a=S(Ue,t);for(let r of q)t.baseOption[r]>0&&(c(t)[r]+=o);for(let r of Xt)t.baseOption[r]>0&&(c(t)[r]+=a);let n=z(t,"armor");c(t).armor+=Math.floor(n/20)+1}function ge(t){let o=S($t,t),a=S(De,t),n=Jt(t);for(let s of q)(n.has(s)||t.star>15&&(t.baseOption[s]>0||t.upgradeOption[s]>0))&&(c(t)[s]+=o);let r=t.req.magician()||t.upgradeOption.magicPower>0;if(t.star>15)c(t).attackPower+=a,r&&(c(t).magicPower+=a);else{let s=z(t,"attackPower");if(c(t).attackPower+=Math.floor(s/50)+1,r){let l=z(t,"magicPower");c(t).magicPower+=Math.floor(l/50)+1}}let i=Kt[t.star];c(t).maxHp+=i,c(t).maxMp+=i}function _e(t){let o=S($t,t),a=S(ye,t),n=Jt(t);for(let r of q)(n.has(r)||t.star>15&&(t.baseOption[r]>0||t.upgradeOption[r]>0))&&(c(t)[r]+=o);if(c(t).attackPower+=a,c(t).magicPower+=a,t.type===108&&t.req.level>=130){let r=qe[t.star];t.req.beginner()?(c(t).attackPower+=r,c(t).magicPower+=r):t.req.magician()?c(t).magicPower+=r:c(t).attackPower+=r}if(t.type!==167){let r=z(t,"armor");c(t).armor+=Math.floor(r/20)+1}if(Ie.includes(t.type)){let r=Kt[t.star];c(t).maxHp+=r}if(t.type===107){let r=Le[t.star];c(t).speed+=r,c(t).jump+=r}}function Jt(t){if(t.req.beginner())return new Set(q);let o=[];return t.req.warrior()&&o.push("str","dex"),t.req.magician()&&o.push("int","luk"),t.req.bowman()&&o.push("dex","str"),t.req.thief()&&o.push("luk","dex"),t.req.pirate()&&o.push("str","dex"),new Set(o)}function S(t,o){let a=o.req.level;for(let n=t.length-1;n>=0;n--){let r=t[n];if(a>=r[0])return r[o.star]}throw TypeError("\uC7A5\uBE44\uC758 \uCC29\uC6A9 \uAC00\uB2A5 \uB808\uBCA8\uC740 0 \uC774\uC0C1\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4.")}function c(t){return t.data.starforceOption===void 0&&(t.data.starforceOption={}),u(t.data.starforceOption)}function z(t,o){return t.baseOption[o]+t.upgradeOption[o]+t.starforceOption[o]}function _t(t,o){return t.baseOption[o]+t.addOption[o]+t.upgradeOption[o]+t.starforceOption[o]}function ve(t){let o=t.req.level+t.req.levelIncrease,a;for(let n of ke)if(o>=n[0])a=n;else break;return a?t.attributes.superior?a[2]:a[1]:0}function Ce(t){let o=t.req.level,a;for(let n of Ee)if(o>=n[0])a=n;else break;return a?a[1]:0}var ke=[[0,5,3],[95,8,5],[110,10,8],[120,15,10],[130,20,12],[140,30,15]],Ee=[[0,15],[101,19],[111,29],[140,30]],q=["str","dex","int","luk"],Xt=["attackPower","magicPower"],Ie=[100,104,105,106,110,111,112,113,115,109],$t=[[0,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,2,2,2,2,2,0,0,0,0,0],[108,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,0,0,0],[118,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,5,5,5,5,5,5,5,0,0,0],[128,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,7,7,7,7,7,7,7,0,0,0],[138,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,9,9,9,9,9,9,9,0,0,0,0,0,0,0,0],[148,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,11,11,11,11,11,11,11,0,0,0,0,0,0,0,0],[158,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,13,13,13,13,13,13,13,0,0,0,0,0,0,0,0],[198,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,15,15,15,15,15,15,15,0,0,0,0,0,0,0,0],[248,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,17,17,17,17,17,17,17,0,0,0,0,0,0,0,0]],ye=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,6,7,8,0,0,0,0,0],[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,7,8,9,10,12,13,15,17],[118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,8,9,10,11,13,14,16,18],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,9,10,11,12,14,16,18,20],[138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,10,11,12,13,15,17,19,21,22,23,24,25,26],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,10,11,12,13,14,16,18,20,22,23,24,25,26,27],[158,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,10,11,12,13,14,15,17,19,21,23,24,25,26,27,28],[198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,12,13,14,15,16,17,19,21,23,25,26,27,28,29,30],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,14,15,16,17,18,19,21,23,25,27,28,29,30,31,32]],De=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,3,4,5,6,7,0,0,0,0,0],[108,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,5,5,6,7,8,9,27,28,29],[118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,5,6,6,7,8,9,10,28,29,30],[128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,6,7,7,8,9,10,11,29,30,31],[138,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,8,8,9,10,11,12,30,31,32,33,34,35,36,37],[148,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8,9,9,10,11,12,13,31,32,33,34,35,36,37,38],[158,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,10,11,12,13,14,32,33,34,35,36,37,38,39],[198,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,13,13,14,14,15,16,17,34,35,36,37,38,39,40,41],[248,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,15,15,16,16,17,18,19,36,37,38,39,40,41,42,43]],Ue=[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],[110,0,0,0,0,0,5,6,7,0,0,0,0,0,0,0],[150,0,0,0,0,0,9,10,11,12,13,15,17,19,21,23]],Ge=[[0,1,2,4,7,11,0,0,0,0,0,0,0,0,0,0],[80,2,3,5,8,12,0,0,0,0,0,0,0,0,0,0],[110,9,10,12,15,19,0,0,0,0,0,0,0,0,0,0],[150,19,20,22,25,29,0,0,0,0,0,0,0,0,0,0]],qe=[-1,0,0,0,0,1,0,1,0,1,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],Kt=[-1,5,5,5,10,10,15,15,20,20,25,25,25,25,25,25,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],Le=[-1,0,0,1,1,1,1,1,1,1,1,2,2,2,2,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],He=[[0,1,2,4,7,11,0,0,0,0,0,0,0,0,0,0],[80,2,3,5,8,12,0,0,0,0,0,0,0,0,0,0],[85,3,4,6,9,13,0,0,0,0,0,0,0,0,0,0],[90,4,5,7,10,14,0,0,0,0,0,0,0,0,0,0],[95,5,6,8,11,15,0,0,0,0,0,0,0,0,0,0],[100,7,8,10,13,17,0,0,0,0,0,0,0,0,0,0],[105,8,9,11,14,18,0,0,0,0,0,0,0,0,0,0],[110,9,10,12,15,19,0,0,0,0,0,0,0,0,0,0],[115,10,11,13,16,20,0,0,0,0,0,0,0,0,0,0],[120,12,13,15,18,22,0,0,0,0,0,0,0,0,0,0],[125,13,14,16,19,23,0,0,0,0,0,0,0,0,0,0],[130,14,15,17,20,24,0,0,0,0,0,0,0,0,0,0],[135,15,16,18,21,25,0,0,0,0,0,0,0,0,0,0],[140,17,18,20,23,27,0,0,0,0,0,0,0,0,0,0],[145,18,19,21,24,28,0,0,0,0,0,0,0,0,0,0],[150,19,20,22,25,29,0,0,0,0,0,0,0,0,0,0]],Me=[[0,0,0,0,0,0,1,2,3,4,5,6,8,10,12,14],[80,0,0,0,0,0,2,3,4,5,6,7,9,11,13,15],[90,0,0,0,0,0,3,4,5,6,7,8,10,12,14,16],[100,0,0,0,0,0,4,5,6,7,8,9,11,13,15,17],[110,0,0,0,0,0,5,6,7,8,9,10,12,14,16,18],[120,0,0,0,0,0,6,7,8,9,10,11,13,15,17,19],[130,0,0,0,0,0,7,8,9,10,11,12,14,16,18,20],[140,0,0,0,0,0,8,9,10,11,12,13,15,17,19,21],[150,0,0,0,0,0,9,10,11,12,13,14,16,18,20,22]];var L=class{data;constructor(o){this.data=o}get only(){return this.data.only??!1}get trade(){return this.data.trade??0}set trade(o){this.data.trade=o}get onlyEquip(){return this.data.onlyEquip??!1}get share(){return this.data.share??0}get superior(){return this.data.superior??!1}get attackSpeed(){return this.data.attackSpeed}get canScroll(){return this.data.canScroll??0}get canStarforce(){return this.data.canStarforce??0}get canAddOption(){return this.data.canAddOption??0}get canPotential(){return this.data.canPotential??0}get canAdditionalPotential(){return this.data.canAdditionalPotential??0}get specialGrade(){return this.data.specialGrade??!1}get cuttable(){return this.data.cuttable??0}get cuttableCount(){return this.data.cuttableCount}set cuttableCount(o){this.data.cuttableCount=o}get totalCuttableCount(){return this.data.totalCuttableCount}get accountShareTag(){return this.data.accountShareTag??!1}get setItemId(){return this.data.setItemId}get lucky(){return this.data.lucky??!1}get incline(){return{charisma:0,insight:0,will:0,craft:0,sense:0,charm:0,...this.data.incline}}set incline(o){this.data.incline=o}get bossReward(){return this.data.bossReward??!1}get skills(){return this.data.skills??[]}get growthExp(){return this.data.growthExp}set growthExp(o){(o===void 0||0<=o&&o<=100)&&(this.data.growthExp=o)}get growthLevel(){return this.data.growthLevel}set growthLevel(o){this.data.growthLevel=o}get dateExpire(){return this.data.dateExpire}set dateExpire(o){(o===void 0||!Number.isNaN(Date.parse(o)))&&(this.data.dateExpire=o)}};var H=class{data;constructor(o){this.data=o}get level(){return this.data.level??0}get levelIncrease(){return this.data.levelIncrease??0}get job(){return this.data.job??0}get class(){return this.data.class??0}beginner(){return this.job===0}warrior(){return this.job===0||(this.job&1)!=0}magician(){return this.job===0||(this.job&2)!=0}bowman(){return this.job===0||(this.job&4)!=0}thief(){return this.job===0||(this.job&8)!=0}pirate(){return this.job===0||(this.job&16)!=0}};var M=class{_data;constructor(o){this._data=o}get data(){return this._data}get meta(){return this.data.meta}get name(){return this.data.name}get icon(){return this.data.icon??""}get desc(){return this.data.desc}get shape(){return this.data.shape}get shapeIcon(){return this.shape?.icon??this.icon}get type(){return this.data.type}get req(){return new H(this.data.req)}get attributes(){return new L(this.data.attributes)}get totalOption(){return u(Gt(this.baseOption,this.addOption,this.upgradeOption,this.starforceOption))}get baseOption(){return u(this.data.baseOption??{})}get addOption(){return u(this.data.addOption??{})}get upgradeOption(){return u(this.data.upgradeOption??{})}get starforceOption(){return u(this.data.starforceOption??{})}get addOptions(){return this.data.addOptions??[]}get scrollUpgradeCount(){return this.data.scrollUpgradeCount??0}get scrollResilienceCount(){return this.data.scrollResilienceCount??0}get scrollUpgradeableCount(){return this.data.scrollUpgradeableCount??0}get scrollTotalUpgradeableCount(){return this.scrollUpgradeCount+this.scrollUpgradeableCount+this.scrollResilienceCount}get star(){return this.data.star??0}get maxStar(){return kt(this)}get starScroll(){return this.data.starScroll??!1}get soulEnchanted(){return this.data.soulSlot!==void 0}get soul(){if(this.data.soulSlot?.soul)return{...this.data.soulSlot.soul,option:u(this.data.soulSlot.soul.option)}}get soulCharge(){return this.data.soulSlot?.charge??0}get soulChargeOption(){return u(this.data.soulSlot?.chargeOption??{})}get potentialGrade(){return this.data.potentialGrade??0}get potentials(){return this.data.potentials?this.data.potentials.map(o=>({...o,option:u(o.option)})):[]}get additionalPotentialGrade(){return this.data.additionalPotentialGrade??0}get additionalPotentials(){return this.data.additionalPotentials?this.data.additionalPotentials.map(o=>({...o,option:u(o.option)})):[]}get exceptionalOption(){return u(this.data.exceptionalOption??{})}get exceptionalUpgradeCount(){return this.data.exceptionalUpgradeCount??0}get exceptionalUpgradeableCount(){return this.data.exceptionalUpgradeableCount??0}get exceptionalTotalUpgradeableCount(){return this.exceptionalUpgradeCount+this.exceptionalUpgradeableCount}};var Et=class extends M{get data(){return this._data}get shape(){return this.data.shape}set shape(o){this.data.shape=o}get supportsAddOption(){return C(this)}get canApplyAddOption(){return j(this)}applyAddOption(o,a){nt(this,o,a)}get canResetAddOption(){return W(this)}resetAddOption(){rt(this)}get supportsUpgrade(){return b(this)}get canApplyScrollFail(){return K(this)}applyScrollFail(){Ot(this)}get canApplyResileScroll(){return Q(this)}applyResileScroll(){Pt(this)}get canResetUpgrade(){return Y(this)}resetUpgrade(){wt(this)}get canApplyScroll(){return Z(this)}applyScroll(o){y(this,o)}applySpellTrace(o,a){Rt(this,o,a)}get supportsStarforce(){return R(this)}get canApplyStarforce(){return U(this)}applyStarforce(){T(this)}get canApplyStarforceIgnoringMaxStar(){return U(this,!0)}applyStarforceIgnoringMaxStar(){T(this,!0)}get canApplyStarScroll(){return G(this)}applyStarScroll(o=!1){tt(this,o)}get canApplyStarScrollIgnoringMaxStar(){return G(this,!0)}applyStarScrollIgnoringMaxStar(o=!1){tt(this,o,!0)}get canResetStarforce(){return et(this)}resetStarforce(){Ct(this)}get supportsPotential(){return ct(this)}get canSetPotential(){return E(this)}setPotential(o,a){dt(this,o,a)}resetPotential(){pt(this)}get supportsAdditionalPotential(){return ut(this)}get canSetAdditionalPotential(){return I(this)}setAdditionalPotential(o,a){ft(this,o,a)}resetAdditionalPotential(){mt(this)}get supportsSoul(){return F(this)}get canApplySoulEnchant(){return J(this)}applySoulEnchant(){St(this)}get canSetSoul(){return X(this)}setSoul(o){ht(this,o)}get canSetSoulCharge(){return $(this)}setSoulCharge(o){bt(this,o)}resetSoulEnchant(){xt(this)}get supportsExceptional(){return k(this)}get canApplyExceptional(){return V(this)}applyExceptional(o){lt(this,o)}get canResetExceptional(){return N(this)}resetExceptional(){st(this)}};export{ot as AddOptionType,Et as Gear,L as GearAttribute,P as GearCapability,Dt as GearCuttable,H as GearReq,yt as GearShare,It as GearTrade,w as GearType,B as PotentialGrade,M as ReadonlyGear,Nt as SpellTraceType,nt as applyAddOption,lt as applyExceptional,y as applyScroll,St as applySoulEnchant,Rt as applySpellTrace,j as canApplyAddOption,V as canApplyExceptional,Z as canApplyScroll,J as canApplySoulEnchant,K as canFailScroll,W as canResetAddOption,N as canResetExceptional,et as canResetStarforce,Y as canResetUpgrade,Q as canResileScroll,I as canSetAdditionalPotential,E as canSetPotential,X as canSetSoul,$ as canSetSoulCharge,G as canStarScroll,U as canStarforce,Ot as failScroll,Bt as getAddOption,it as getAddOptionValue,kt as getMaxStar,Ft as getSpellTraceScroll,v as isAccessory,_ as isArmor,Lt as isDoubleHandWeapon,Zt as isDragonGear,qt as isLeftWeapon,Yt as isMechanicGear,Ht as isShield,Qt as isSubWeapon,p as isWeapon,rt as resetAddOption,mt as resetAdditionalPotential,st as resetExceptional,pt as resetPotential,xt as resetSoulEnchant,Ct as resetStarforce,wt as resetUpgrade,Pt as resileScroll,ft as setAdditionalPotential,dt as setPotential,ht as setSoul,bt as setSoulCharge,tt as starScroll,T as starforce,C as supportsAddOption,ut as supportsAdditionalPotential,k as supportsExceptional,ct as supportsPotential,F as supportsSoul,R as supportsStarforce,b as supportsUpgrade,u as toGearOption};
@@ -1,15 +1,8 @@
1
- import { GearAddOption, GearBaseOption, GearData, GearExceptionalOption, GearMetadata, GearShapeData, GearStarforceOption, GearType, GearUpgradeOption, PotentialData, PotentialGrade, ReadonlySoulData, SoulChargeOption, SoulData } from './data';
2
- import { AddOptionGrade, AddOptionType } from './enhance/addOption';
1
+ import { AddOptionGrade, AddOptionType, GearData, GearShapeData, PotentialData, PotentialGrade, SoulData } from './data';
3
2
  import { ExceptionalHammer } from './enhance/exceptional';
4
- import { ReadonlyPotential } from './enhance/potential';
5
3
  import { SpellTraceRate, SpellTraceType } from './enhance/spellTrace';
6
4
  import { Scroll } from './enhance/upgrade';
7
- import { GearAttribute } from './GearAttribute';
8
- import { GearReq } from './GearReq';
9
- type _Gear = Omit<GearData, 'potentials' | 'additionalPotentials'> & {
10
- potentials: readonly ReadonlyPotential[];
11
- additionalPotentials: readonly ReadonlyPotential[];
12
- };
5
+ import { ReadonlyGear } from './ReadonlyGear';
13
6
  /**
14
7
  * 장비
15
8
  *
@@ -22,200 +15,58 @@ type _Gear = Omit<GearData, 'potentials' | 'additionalPotentials'> & {
22
15
  *
23
16
  * 생성자에 전달된 장비 정보와 `data` 속성 간에 엄격한 동등(`===`)을 보장합니다.
24
17
  *
25
- * 장비 정보의 모든 속성에 대해 읽기 전용 속성을 제공하고, 일부 속성은 장비 객체 자체에 또는 반환 객체의 속성에 쓰기가 가능합니다.
18
+ * 장비 정보의 모든 속성에 대해 읽기 전용 속성을 제공합니다.
19
+ * 일부 속성은 장비 객체 자체에 또는 반환 객체의 속성에 쓰기가 가능합니다.
26
20
  */
27
- export declare class Gear implements _Gear {
28
- /** 장비 정보 */
29
- data: GearData;
21
+ export declare class Gear extends ReadonlyGear {
30
22
  /**
31
- * 장비 정보를 참조하는 장비 인스턴스를 생성합니다.
32
- * @param data 장비 정보.
23
+ * 장비 정보
33
24
  */
34
- constructor(data: GearData);
35
- /**
36
- * 장비 메타데이터
37
- */
38
- get meta(): GearMetadata;
39
- /**
40
- * 장비명
41
- */
42
- get name(): string;
43
- /**
44
- * 장비 아이콘
45
- */
46
- get icon(): string;
47
- /**
48
- * 장비 설명
49
- */
50
- get desc(): string | undefined;
25
+ get data(): GearData;
51
26
  /**
52
27
  * 장비 외형
53
28
  */
54
29
  get shape(): Readonly<GearShapeData> | undefined;
55
30
  set shape(shape: GearShapeData | undefined);
56
- /**
57
- * 장비 외형 아이콘
58
- *
59
- * 장비 외형이 설정되었을 경우 장비 외형 아이콘, 그렇지 않을 경우 장비 아이콘.
60
- */
61
- get shapeIcon(): string;
62
- /**
63
- * 장비 분류
64
- */
65
- get type(): GearType;
66
- /**
67
- * 장비 착용 제한
68
- */
69
- get req(): GearReq;
70
- /**
71
- * 장비 속성
72
- */
73
- get attributes(): GearAttribute;
74
- /**
75
- * 장비 최종 옵션
76
- *
77
- * 기본 옵션, 추가 옵션, 주문서 옵션, 스타포스 옵션의 합.
78
- *
79
- * 익셉셔널 옵션은 미포함.
80
- */
81
- get totalOption(): Readonly<GearBaseOption & GearAddOption & GearUpgradeOption & GearStarforceOption>;
82
- /**
83
- * 장비 순수 옵션
84
- */
85
- get baseOption(): Readonly<GearBaseOption>;
86
- /**
87
- * 장비 추가 옵션
88
- */
89
- get addOption(): Readonly<GearAddOption>;
90
- /**
91
- * 장비 주문서 강화 옵션
92
- */
93
- get upgradeOption(): Readonly<GearUpgradeOption>;
94
- /**
95
- * 장비 스타포스 옵션
96
- */
97
- get starforceOption(): Readonly<GearStarforceOption>;
98
- /**
99
- * 업그레이드 횟수
100
- */
101
- get scrollUpgradeCount(): number;
102
- /**
103
- * 복구 가능 횟수
104
- */
105
- get scrollResilienceCount(): number;
106
- /**
107
- * 업그레이드 가능 횟수
108
- */
109
- get scrollUpgradeableCount(): number;
110
- /**
111
- * 황금 망치 재련 적용
112
- */
113
- get goldenHammer(): number;
114
- /**
115
- * 전체 업그레이드 가능 횟수
116
- *
117
- * 성공, 실패, 황금 망치 적용 여부를 무시한 장비의 기본 업그레이드 가능 횟수입니다.
118
- */
119
- get scrollTotalUpgradeableCount(): number;
120
- /**
121
- * 강화 단계
122
- */
123
- get star(): number;
124
- /**
125
- * 최대 강화 단계
126
- *
127
- * 장비의 현재 강화 단계가 최대 강화 단계를 초과할 시 현재 강화 단계입니다.
128
- * 놀라운 장비 강화 주문서가 사용되었을 경우 최대 `15`입니다.
129
- */
130
- get maxStar(): number;
131
- /**
132
- * 놀라운 장비 강화 주문서 사용 여부
133
- */
134
- get starScroll(): boolean;
135
- /**
136
- * 소울 인챈트 여부
137
- */
138
- get soulEnchanted(): boolean;
139
- /**
140
- * 소울
141
- */
142
- get soul(): ReadonlySoulData | undefined;
143
- /**
144
- * 소울 충전량
145
- */
146
- get soulCharge(): number;
147
- /**
148
- * 소울 충전 옵션
149
- */
150
- get soulChargeOption(): Readonly<SoulChargeOption>;
151
- /**
152
- * 잠재능력 등급
153
- */
154
- get potentialGrade(): PotentialGrade;
155
- /**
156
- * 잠재능력 목록
157
- */
158
- get potentials(): readonly ReadonlyPotential[];
159
- /**
160
- * 에디셔널 잠재능력 등급
161
- */
162
- get additionalPotentialGrade(): PotentialGrade;
163
- /**
164
- * 에디셔널 잠재능력 목록
165
- */
166
- get additionalPotentials(): readonly Readonly<ReadonlyPotential>[];
167
- /**
168
- * 장비 익셉셔널 옵션
169
- */
170
- get exceptionalOption(): Readonly<GearExceptionalOption>;
171
- /**
172
- * 익셉셔널 강화 횟수
173
- */
174
- get exceptionalUpgradeCount(): number;
175
- /**
176
- * 익셉셔널 강화 가능 횟수
177
- */
178
- get exceptionalUpgradeableCount(): number;
179
- /**
180
- * 전체 익셉셔널 강화 가능 횟수
181
- */
182
- get exceptionalTotalUpgradeableCount(): number;
183
31
  /**
184
32
  * 장비가 추가 옵션을 지원하는지 여부
185
33
  */
186
34
  get supportsAddOption(): boolean;
35
+ /**
36
+ * 장비에 추가 옵션을 적용할 수 있는 상태인지 여부
37
+ */
38
+ get canApplyAddOption(): boolean;
187
39
  /**
188
40
  * 장비에 추가 옵션을 적용합니다.
189
41
  * @param type 추가 옵션 종류.
190
- * @param grade 추가 옵션 등급.
42
+ * @param grade 추가 옵션 단계.
43
+ *
44
+ * @throws {@link TypeError}
45
+ * 추가 옵션을 적용할 수 없는 상태일 경우.
191
46
  *
192
47
  * @throws {@link TypeError}
193
- * 장비에 부여할 수 없는 추가 옵션을 지정했을 경우.
48
+ * 부여할 수 없는 추가 옵션을 지정했을 경우.
194
49
  */
195
50
  applyAddOption(type: AddOptionType, grade: AddOptionGrade): void;
51
+ /**
52
+ * 장비의 추가 옵션을 초기화할 수 있는 상태인지 여부
53
+ */
54
+ get canResetAddOption(): boolean;
196
55
  /**
197
56
  * 장비의 추가 옵션을 초기화합니다.
57
+ *
58
+ * @throws {@link TypeError}
59
+ * 추가 옵션을 초기화할 수 없는 상태의 장비일 경우.
198
60
  */
199
61
  resetAddOption(): void;
200
62
  /**
201
63
  * 장비가 주문서 강화를 지원하는지 여부
202
64
  */
203
65
  get supportsUpgrade(): boolean;
204
- /**
205
- * 장비에 황금 망치를 적용할 수 있는 상태인지 여부
206
- */
207
- get canApplyGoldenHammer(): boolean;
208
- /**
209
- * 장비에 황금 망치를 적용합니다.
210
- *
211
- * @throws {@link TypeError}
212
- * 황금 망치를 적용할 수 없는 상태일 경우.
213
- */
214
- applyGoldenHammer(): void;
215
66
  /**
216
67
  * 장비에 주문서 실패를 적용할 수 있는 상태인지 여부
217
68
  */
218
- get canApplyFailScroll(): boolean;
69
+ get canApplyScrollFail(): boolean;
219
70
  /**
220
71
  * 장비에 주문서 실패를 1회 적용합니다.
221
72
  *
@@ -233,7 +84,7 @@ export declare class Gear implements _Gear {
233
84
  * @throws {@link TypeError}
234
85
  * 업그레이드 가능 횟수를 복구할 수 없는 상태일 경우.
235
86
  */
236
- applyScrollResile(): void;
87
+ applyResileScroll(): void;
237
88
  /**
238
89
  * 장비의 주문서 강화를 초기화할 수 있는 상태인지 여부
239
90
  */
@@ -465,4 +316,3 @@ export declare class Gear implements _Gear {
465
316
  */
466
317
  resetExceptional(): void;
467
318
  }
468
- export {};