Builds / 1.14.97
Update 1.14.97
Compared with 1.14.88 · published Mon, 28 Sep 2026 01:35:11 GMT · live channel
No summary yet.
Text changes 51
| Key | Text | |
|---|---|---|
| DIALOGUE_TEXT_77 | + | The enemies are getting stronger. Use the [Gold] you've gathered to level up your Heroes! |
| DIALOGUE_TEXT_78 | + | Right. The Heroes need to get stronger to keep the Castle safe. |
| DIALOGUE_TEXT_79 | + | The enemies keep pushing closer to the walls. The Castle can't just sit still either. |
| DIALOGUE_TEXT_80 | + | Upgrade the Castle in the [Castle] tab to attack farther and faster. |
| DIALOGUE_TEXT_81 | + | My lord, even if the Castle falls, please don't worry too much. |
| DIALOGUE_TEXT_82 | + | It's fine if it falls? |
| DIALOGUE_TEXT_83 | + | With [Rebirth], you can rise again even stronger. Valkion has always been that way. |
| PRODUCT_NAME_298 | + | Legion Challenge Energy Pack 1 |
| PRODUCT_NAME_299 | + | Legion Challenge Energy Pack 2 |
| PRODUCT_NAME_300 | + | Legion Challenge Energy Pack 3 |
| PRODUCT_DESC_72 | + | This product contains Legion Challenge Energy. |
| PRODUCT_DESC_73 | + | Used to enter the Legion Challenge event. |
| PRODUCT_DESC_74 | + | Contains Energy for the Legion Challenge event. |
| PRODUCT_DESC_75 | + | Energy is granted immediately upon purchase. Can be purchased up to 3 times per season. |
| GAME_1851 | + | My lord, this is the [Castle] we must protect. |
| GAME_1852 | + | Defend it to the end against the incoming enemies! |
| GAME_1853 | + | Shall we call the [Heroes] who will defend the Castle with us? |
| GAME_1854 | + | Heroes are waiting for battle in the [Barracks]. |
| GAME_1855 | + | Tap [Deploy] to send a Hero to the battlefield! |
| GAME_1856 | + | Now close the window and watch your Heroes fight. |
| GAME_1857 | + | Press and drag a Hero to move them anywhere you like. |
| GAME_1858 | + | [Quests] earn [Gold] every time the gauge fills up. |
| GAME_1859 | + | Level up to earn more Gold each time. |
| GAME_1860 | + | When you have enough Gold, open a new Quest. |
| GAME_1861 | + | You'll earn much more Gold! |
| GAME_1862 | + | It's all right, my lord! You earn [Medals] for how far you made it. |
| GAME_1863 | + | Power gained with [Medals] stays even after Rebirth. |
| GAME_1864 | + | [Rebirth] and take on the challenge again, even stronger! |
| GAME_1865 | + | Shall we use your [Medals] to make the Castle stronger? |
| GAME_1866 | + | Use Medals in [Upgrade] to strengthen your Castle. |
| GAME_1867 | + | Tap it! This power stays even after Rebirth. |
| GAME_1868 | + | Great! Your Castle just got even sturdier. |
| GAME_1869 | + | From Floor 10, you can [Rebirth] anytime you like. |
| GAME_1870 | + | When it gets hard to climb, tap it to earn [Medals]! |
| GAME_1871 | + | Tap the screen to continue |
| GAME_1872 | + | Reach Lv.{1} in {0} |
| GAME_1873 | + | Unlock {0} |
| GAME_1874 | + | My lord, a new ally, the [Priest], has joined us! |
| GAME_1875 | + | When the Priest's [Divine Blessing] activates, game speed increases by +300% for 2 minutes. |
| GAME_1876 | + | The more Priests you deploy, the more often it activates. |
| GAME_1877 | + | This time, a [Fairy] has come to lend a hand! |
| GAME_1878 | + | When the Fairy's [Elven Arcane Art] activates, you skip a wave. |
| GAME_1879 | + | The more Fairies you deploy, the faster you can advance. |
| GAME_1880 | + | A [Dark Archer] has joined! A great ally especially when you Rebirth. |
| GAME_1881 | + | With Dark Archers deployed, you start from a higher floor after Rebirth. |
| GAME_1882 | + | Deploy 10 of them and Rebirth at Floor 1000, and you'll start again from Floor 500. |
| GAME_1883 | + | A [Secretary] has arrived at the Citadel. A reliable ally who helps you grow. |
| GAME_1884 | + | The Secretary gathers resources like Hero and Pet shards at regular intervals. |
| GAME_1885 | + | Hire a [Premium Secretary] to gather much more. |
| GAME_1886 | + | Legion Challenge Energy was added instantly. (+{0}) |
| + |
Translations touched: de (51), es (51), fr (51), id (51), it (51), ja (51), ko (51), pl (51), pt (51), ru (51), th (51), tr (51), vi (51), zh-CN (51), zh-TW (51)
Assets 11
Code 261 changes in 108 classes
Minified client code with short names blanked for diffing. Class names are real.
- TopMenuLayer 543
- DayNightFx 210
- GuideBubble 196
- TutorialController 132
- MiniAscentLobbyPopup 129
- MiniAscentLobbyFx 84
- HelpDataManager 58
- ArrowButtonDouble 53
- MiniAscentShell 48
- BaseMap 39
- MiniAscentModeSwitch 37
- HelpDetailPopup 29
- ShopGemSubView 25
- MiniAscentService 24
- NpcDialogueToast 23
- BackgroundLayer 19
- MiniAscentDeployPopup 19
- ClickAniLayer 18
- MiniAscentDataManager 16
- MissionGuide 15
- BattleController 15
- MiniAscentFlow 15
- ShopDataManager 12
- MiniAscentRelicsPage 12
- MenuState 10
- GameLayer 9
- WaveInfoLayer 8
- MiniAscentCardPickPopup 8
- URLManager 7
- GameOverPopup 7
- GoldLayer 7
- OnboardingGate 7
- SafeAreaTopContent 6
- GuildWarBattlePopupV3 6
- PetDataManager 5
- CastleBuffSource 5
- SoundManager 5
- MissionGuideController 5
- TowerHeroSelectVO 5
- HeartInfo 5
- CastleSubView 5
- CastleView 5
- QuestDetailPopup 5
- GameSpeedPopup 5
- MiniAscentAssets 5
- LocalDataManager 4
- InAppPurchaseManager 4
- ClickHand 4
- CastleDetailPopup 4
- QuestItemRenderer 4
- Archery2GameScene 4
- MiniAscentResultPopup 4
- Or 3
- SHA256 3
- SuiProvider 3
- WalletPopup 3
- CastleItemRenderer 3
- RewardItem 2
- Lr 2
- Dr 2
- ShopPayItemRenderer 2
- QuestSubView 2
- TopMenu 2
- GuildBarrackRowItemRenderer 2
- GuildWarBattleReadyPopup 2
- GuildWarSquadsPopup 2
- GuildWarTierAssignPopup 2
- CapacitorBridge 2
- MiniAscentBattleController 2
- MiniAscentCorpsPanel 2
- MiniAscentCorpsPage 2
- MiniAscentChapterRewardItem 2
- VersionManager 1
- AutoTogglePill 1
- Sr 1
- Fr 1
- Zr 1
- Pi 1
- Ma 1
- Yp 1
- SuiStandardProvider 1
- AppReadyEvent 1
- SolProvider 1
- OkxwalletInjectConnector 1
- TcRootElement 1
- WalletSelectPopup 1
- BaseShopProductPopup 1
- FavoritePetSubView 1
- GuildBarracksRaceView 1
- GuildMainSubView 1
- GuildRaidBattleReadyPopup 1
- GuildWarHistoryItemRenderer 1
- GuildWarTournamentRewardGuidePopup 1
- AttendanceAutoTrigger 1
- GuildWarCombatLogItemRenderer 1
- GuildWarMemberStatusItemRenderer 1
- GuildWarTargetMarkerItemRenderer 1
- MiniAscentBattleProgress 1
- Delay 1
- NetworkTimeout 1
- RecaptchaVerifier 1
- BrowserPopupRedirectResolver 1
- MiniAscentCardsPage 1
- MiniAscentCrystalRowRenderer 1
- MiniAscentCrystalsPage 1
- MiniAscentTextButton 1
- MiniAscentRoutePopup 1
- MiniAscentCrystalRewardPopup 1
TopMenuLayer 2 hunks, 543 statements
- ),Xt(Noi,"DURATION_PER_DIALOGUE",300),Xt(Noi,"FADE_IN_FRAMES",10),Xt(Noi,"FADE_OUT_FRAMES",30); + ),Xt(sai,"DURATION_PER_DIALOGUE",300),Xt(sai,"FADE_IN_FRAMES",10),Xt(sai,"FADE_OUT_FRAMES",30),Xt(sai,"MESSAGE_STYLE",OL.DEFAULT_FONT_OPTION_16),Xt(sai,"MESSAGE_WIDTH",480); + let eai=sai; + const nai=class extends pS{ + constructor(){ + super()} + } + ; + qt(nai,"TopMenuLayer"); + let hai=nai; + const rai=class extends pS{ + constructor(){ + super()} + } + ; + qt(rai,"GoldLayer"); + let oai=rai; + const aai=class t extends pS{ + constructor(){ + super(),Xt(this,"spine",null),Xt(this,"isLoaded",!1),Xt(this,"loadingStarted",!1),Xt(this,"overlay"),Xt(this,"onCompleteCallback",null),Xt(this,"onEarlyCallback",null),Xt(this,"earlyFrameCount",0),Xt(this,"safetyTimer",null),Xt(this,"listener",{ + complete:qt(()=>{ + this.onAnimationComplete()} + ,"complete")} + ),this.overlay=new Ff,this.overlay.rect(0,-Xy.SAFE_AREA_TOP,640,Xy.stageHeight+Xy.SAFE_AREA_TOP),this.overlay.fill({ + color:0,alpha:.7} + ),this.addChild(this.overlay),this.visible=!1,this.eventMode="static"} + preload(){ + this.loadSpine()} + async loadSpine(){ + if(!this.loadingStarted){ + this.loadingStarted=!0; + try{ + const t=`${ + tS.getBase()} + assets/spines/Reincarnation.skel`,i=`${ + tS.getBase()} + assets/spines/Reincarnation.atlas`; + if(ld.add({ + alias:"reincarnationAtlas",src:i} + ),ld.add({ + alias:"reincarnationSkel",src:t} + ),await ld.load(["reincarnationAtlas","reincarnationSkel"]),this.spine=nZ.from({ + skeleton:"reincarnationSkel",atlas:"reincarnationAtlas"} + ),!this.spine)throw new Error("Failed to create Reincarnation Spine"); + this.spine.x=320,this.spine.y=.5*Xy.stageHeight,this.spine.scale.set(1),this.spine.visible=!1,this.spine.autoUpdate=!1,this.addChild(this.spine),this.isLoaded=!0} + catch(t){ + this.loadingStarted=!1} + } + } + async play(i,s){ + this.safetyTimer&&(clearTimeout(this.safetyTimer),this.safetyTimer=null),this.onCompleteCallback=i,this.onEarlyCallback=s??null,this.earlyFrameCount=0,this.isLoaded||this.loadingStarted||await this.loadSpine(); + let e=0; + for(; + !this.isLoaded&&this.loadingStarted&&e<100; + )await new Promise(t=>setTimeout(t,50)),e++; + if(!this.isLoaded||!this.spine)return null==s||s(),i(),this.onEarlyCallback=null,void(this.onCompleteCallback=null); + this.visible=!0,this.overlay.visible=!0,this.spine.visible=!0,this.spine.alpha=1,this.spine.autoUpdate=!1,this.spine.autoUpdate=!0,this.spine.state.removeListener(this.listener),this.spine.state.addListener(this.listener),this.spine.state.setAnimation(0,"Reincarnation",!1),this.onEarlyCallback&&(this.earlyFrameCount=0,FM.getInstance().add(this.onEarlyFrame,this)),this.safetyTimer=setTimeout(()=>this.forceFinish(),t.SAFETY_TIMEOUT_MS)} + onEarlyFrame(){ + this.earlyFrameCount++,this.earlyFrameCount>=98&&(FM.getInstance().remove(this.onEarlyFrame,this),this.overlay.visible=!1,this.onEarlyCallback&&(this.onEarlyCallback(),this.onEarlyCallback=null))} + onAnimationComplete(){ + this.spine&&(this.spine.state.removeListener(this.listener),this.spine.state.clearTracks(),this.spine.autoUpdate=!1,this.spine.visible=!1),this.visible=!1,this.onCompleteCallback&&(this.onCompleteCallback(),this.onCompleteCallback=null)} + forceFinish(){ + this.safetyTimer=null; + const t=this.onEarlyCallback,i=this.onCompleteCallback; + (t||i)&&(FM.getInstance().remove(this.onEarlyFrame,this),this.spine&&(this.spine.state.removeListener(this.listener),this.spine.state.clearTracks(),this.spine.autoUpdate=!1,this.spine.visible=!1),this.overlay.visible=!1,this.visible=!1,t&&(this.onEarlyCallback=null,t()),i&&(this.onCompleteCallback=null,i()))} + } + ; + qt(aai,"ReviveLayer"),Xt(aai,"SAFETY_TIMEOUT_MS",8e3); + let cai=aai; + const lai=[{ + event:"txt_01",text:"세계의 봉인을 지키는 마지막 요새.\n<발키온>",fadeOut:13.67,ox:3,oy:-216} + ,{ + event:"txt_02",text:"심연의 군단과 끝없는 전쟁에서\n영웅들은 모두 쓰러졌고,\n발키온은 어둠속에 침묵했다.",fadeOut:13.67,ox:4,oy:127} + ,{ + event:"txt_03",text:"그런데... 어느날..\n발키온의 심장이 다시 뛰기 시작했다.",fadeOut:13.67,ox:7,oy:485} + ,{ + event:"txt_04",text:"깨어나셨군요.",fadeOut:25.67,ox:-178,oy:-448} + ,{ + event:"txt_05",text:"그래...\n다시 환생 했어..",fadeOut:25.67,ox:121,oy:-126} + ,{ + event:"txt_06",text:"영웅은 온 힘을 다해\n심연의 군단에 맞섰으나\n부족한 자신의 힘에 절망했다.",fadeOut:25.67,ox:0,oy:465} + ,{ + event:"txt_07",text:"그때, 전투의 기억을 간직한\n영웅의 훈장이 빛을 뿜었고,",fadeOut:35.33,ox:0,oy:-216} + ,{ + event:"txt_08",text:"영웅에게 다시 일어날\n강력한 힘을 부여했다.",fadeOut:35.33,ox:0,oy:140} + ,{ + event:"txt_09",text:"받으세요.\n이 훈장에는 과거...\n당신의 전투기억이 담겨있습니다.",fadeOut:47.33,ox:0,oy:-92} + ,{ + event:"txt_10",text:"그래.. 힘이 느껴져...\n이 힘이라면, 다시 싸울수 있을것 같아",fadeOut:47.33,ox:67,oy:487} + ,{ + event:"txt_11",text:"영웅이여 !\n발키온에 잠든 진짜 힘이\n깨어날때까지....\n이 성을 수호하라 !",fadeOut:55.33,ox:0,oy:431} + ]; + function uai(){ + const t=OL.WHITE_OUTLINE_FONT_OPTION_22; + return t.align="center",t.lineHeight=30,t.wordWrap=!1,t} + qt(uai,"createIntroTextStyle"); + const dai=class extends pS{ + constructor(){ + super(),Xt(this,"spine",null),Xt(this,"isLoaded",!1),Xt(this,"loadingStarted",!1),Xt(this,"overlay"),Xt(this,"onCompleteCallback",null),Xt(this,"activeTexts",[]),Xt(this,"textMap",new Map),Xt(this,"skipText",null),Xt(this,"introSound",null),Xt(this,"listener",{ + event:qt((t,i)=>{ + this.onSpineEvent(i.data.name)} + ,"event"),complete:qt(()=>{ + this.onAnimationComplete()} + ,"complete")} + ),this.overlay=new Ff,this.overlay.rect(0,-Xy.SAFE_AREA_TOP,640,Xy.stageHeight+Xy.SAFE_AREA_TOP),this.overlay.fill({ + color:0,alpha:1} + ),this.addChild(this.overlay); + for(const t of lai)this.textMap.set(t.event,t); + this.visible=!1,this.eventMode="static"} + preload(){ + this.loadSpine()} + async loadSpine(){ + if(!this.loadingStarted){ + this.loadingStarted=!0; + try{ + const t=`${ + tS.getBase()} + assets/spines/scene.json`,i=`${ + tS.getBase()} + assets/spines/scene.atlas`; + if(ld.add({ + alias:"sceneAtlas",src:i} + ),ld.add({ + alias:"sceneJson",src:t} + ),await ld.load(["sceneAtlas","sceneJson"]),this.spine=nZ.from({ + skeleton:"sceneJson",atlas:"sceneAtlas"} + ),!this.spine)throw new Error("Failed to create Intro Spine"); + this.spine.x=320,this.spine.y=.5*Xy.stageHeight,this.spine.scale.set(1),this.spine.visible=!1,this.spine.autoUpdate=!1,this.addChild(this.spine),this.isLoaded=!0} + catch(t){ + } + } + } + async play(t){ + this.onCompleteCallback=t,this.isLoaded||this.loadingStarted||await this.loadSpine(); + let i=0; + for(; + !this.isLoaded&&this.loadingStarted&&i<100; + )await new Promise(t=>setTimeout(t,50)),i++; + this.isLoaded&&this.spine?(this.visible=!0,this.overlay.visible=!0,this.spine.visible=!0,this.spine.alpha=1,this.clearAllTexts(),this.spine.autoUpdate=!1,this.spine.autoUpdate=!0,this.spine.state.removeListener(this.listener),this.spine.state.addListener(this.listener),this.muteGameSounds(),this.playIntroSound(),this.spine.state.timeScale=1,this.spine.state.setAnimation(0,"scene",!1),FM.getInstance().add(this.onFrame,this),this.createSkipButton()):t()} + onSpineEvent(t){ + var i,s; + const e=this.textMap.get(t); + if(!e)return; + null==(i=this.spine)||i.skeleton.updateWorldTransform(0); + const n=null==(s=this.spine)?void 0:s.skeleton.findBone(t); + let h,r; + n?(h=this.spine.x+n.worldX,r=this.spine.y+n.worldY):(h=320+e.ox,r=.5*Xy.stageHeight+e.oy),this.showText(e,h,r)} + showText(t,i,s){ + const e=uai(),n=nB.getText(`INTRO_${ + t.event} + `,t.text).split("\n"),h=new He; + h.x=i,h.y=s,this.addChild(h); + const r=e.lineHeight??30,o=-(n.length-1)*r/2; + n.forEach((t,i)=>{ + const s=new jg({ + text:t,style:e} + ); + s.anchor.set(.5,.5),s.y=o+i*r,s.alpha=0,h.addChild(s),setTimeout(()=>{ + s.parent&&this.fadeIn(s,.5)} + ,1e3+1e3*i)} + ),this.activeTexts.push({ + container:h,fadeOut:t.fadeOut} + )} + fadeIn(t,i){ + const s=performance.now(),e=qt(()=>{ + const n=(performance.now()-s)/1e3,h=Math.min(1,n/i); + t.alpha=h,h<1&&requestAnimationFrame(e)} + ,"tick"); + requestAnimationFrame(e)} + fadeOut(t,i,s){ + const e=performance.now(),n=t.alpha,h=qt(()=>{ + const r=(performance.now()-e)/1e3,o=Math.min(1,r/i); + t.alpha=n*(1-o),o<1?requestAnimationFrame(h):null==s||s()} + ,"tick"); + requestAnimationFrame(h)} + onFrame(){ + if(!this.spine)return; + const t=this.spine.state.getCurrent(0); + if(!t)return; + const i=t.trackTime; + for(let s=this.activeTexts.length-1; + s>=0; + s--){ + const t=this.activeTexts[s]; + i>=t.fadeOut-.67&&(this.fadeOut(t.container,.67,()=>{ + t.container.destroy()} + ),this.activeTexts.splice(s,1))} + } + playIntroSound(){ + const t=MG.getInstance(); + t.initialized&&(t.isBgmOn||t.isSfxOn)&&(this.introSound&&(this.introSound.stop(),this.introSound.unload()),this.introSound=new aG.Howl({ + src:[MG.SFX_INTRO],volume:1} + ),this.introSound.play())} + stopIntroSound(){ + this.introSound&&(this.introSound.stop(),this.introSound.unload(),this.introSound=null)} + muteGameSounds(){ + MG.getInstance().stopBGM()} + resumeGameSounds(){ + const t=MG.getInstance(); + t.isBgmOn&&t.playRandomBGM(.35)} + createSkipButton(){ + this.skipText&&this.skipText.destroy(),this.skipText=new jg({ + text:"SKIP >>",style:new Ig({ + fontFamily:"Arial, sans-serif",fontSize:18,fill:11184810} + )} + ),this.skipText.anchor.set(1,0),this.skipText.x=620,this.skipText.y=16,this.skipText.eventMode="static",this.skipText.cursor="pointer",this.skipText.on("pointertap",()=>{ + this.skip()} + ),this.addChild(this.skipText)} + skip(){ + this.spine&&(this.spine.state.removeListener(this.listener),this.spine.state.clearTracks(),this.spine.autoUpdate=!1,this.spine.visible=!1),this.stopIntroSound(),this.clearAllTexts(),FM.getInstance().remove(this.onFrame,this),this.resumeGameSounds(),this.visible=!1,this.destroySpine(),this.onCompleteCallback&&(this.onCompleteCallback(),this.onCompleteCallback=null)} + onAnimationComplete(){ + setTimeout(()=>{ + this.skip()} + ,1e3)} + destroySpine(){ + this.spine&&(this.removeChild(this.spine),this.spine.destroy(),this.spine=null),this.isLoaded=!1,this.loadingStarted=!1,ld.unload(["sceneAtlas","sceneJson"])} + clearAllTexts(){ + for(const t of this.activeTexts)t.container.destroy(); + this.activeTexts=[],this.skipText&&(this.skipText.destroy(),this.skipText=null)} + } + ; + qt(dai,"IntroLayer"); + let fai=dai; + const pai=class extends pS{ + constructor(){ + super(),this.addChild(IU.getInstance()),this.addChild(tai.getInstance()),this.addChild($4t.getInstance()),this.addChild(oai.getInstance()),this.addChild(TF.getInstance()),this.addChild(zKt.getInstance()),this.addChild(hai.getInstance()),this.addChild(Poi.getInstance()),this.addChild(hG.getInstance()),this.addChild(AD.getInstance()),this.addChild(Fzt.getInstance()),this.addChild(cai.getInstance()),this.addChild(lP.getInstance()),this.addChild(fai.getInstance()),this.addChild(tU.getInstance()),this.updateLayout()} + updateLayout(){ + const t=Xy.SAFE_AREA_TOP,i=this.children.length; + for(let s=0; + s<i; + ++s)this.children[s]!=tU.getInstance()&&(this.children[s].y=t); + $4t.getInstance().updateLayout()} + } + ; + qt(pai,"MainLayer"); + let gai=pai; + const mai=class t extends He{ + constructor(){ + super(),Xt(this,"spot",new jKt(.6)),Xt(this,"fx",new He),Xt(this,"bubble",new WKt),Xt(this,"hand",null),this.alpha=0,this.eventMode="static",this.addChild(this.spot,this.fx,this.bubble)} + static get isActive(){ + return null!==t.active} + static async run(i){ + if(0===i.length||t.active)return; + await WKt.load(); + const s=new t; + t.active=s,dqt.active=!0,gai.getInstance().addChild(s),zk.to(s,{ + alpha:1,duration:.25} + ); + try{ + for(const t of i)await s.play(t)} + finally{ + t.active=null,dqt.active=!1,await s.close()} + } + static isShown(i){ + if(Array.isArray(i))return i.some(i=>t.isShown(i)); + if(!i||i.destroyed)return!1; + for(let t=i; + ; + t=t.parent){ + if(!t.visible||t.alpha<=0)return!1; + if(!t.parent)return t===Xy.stage} + } + get screen(){ + return{ + width:640,height:Xy.stageHeight||1136} + } + async play(t){ + let i=null; + if(t.target){ + const s=await this.findTarget(t); + if(!s)return; + const e=this.rectOf(s); + i="circle"===t.shape?jKt.circleHole(e,t.pad??8):jKt.rectHole(e,t.pad??8)} + const s="action"===t.mode&&null!==i; + this.spot.focus(i),this.bubble.show(t.text,t.face??"S_SMI",i?jKt.toRect(i):null,this.screen,!s),i&&t.onShow&&t.onShow(this,jKt.toRect(i)),s?(this.showHand(i),await this.waitPress(t),this.hideHand()):await this.waitTap()} + static getter(t){ + const i=t.target; + return"function"==typeof i?i:()=>i} + async findTarget(i){ + const s=t.getter(i),e=performance.now()+(i.waitMs??t.DEFAULT_WAIT_MS); + let n=""; + for(; + ; + ){ + const i=s(); + if(t.isShown(i)){ + const t=this.rectOf(i),s=`${ + Math.round(t.x)} + ,${ + Math.round(t.y)} + ,${ + Math.round(t.width)} + ,${ + Math.round(t.height)} + `; + if(s===n)return i; + n=s} + else n=""; + if(performance.now()>e)return t.isShown(i)?i:null; + await new Promise(t=>requestAnimationFrame(t))} + } + rectOf(i){ + const s=Array.isArray(i)?i.filter(i=>t.isShown(i)):[i]; + let[e,n,h,r]=[1/0,1/0,-1/0,-1/0]; + for(const t of s){ + const i=t.getBounds(),s=this.toLocal(new _i(i.x,i.y)),o=this.toLocal(new _i(i.x+i.width,i.y+i.height)); + e=Math.min(e,s.x),n=Math.min(n,s.y),h=Math.max(h,o.x),r=Math.max(r,o.y)} + return new Di(e,n,h-e,r-n)} + waitTap(){ + this.hitArea=new Di(-5e3,-5e3,1e4,1e4); + const i=performance.now(); + return new Promise(s=>{ + const e=qt(()=>{ + performance.now()-i<t.TAP_DELAY_MS||(this.off("pointertap",e),s())} + ,"onTap"); + this.on("pointertap",e)} + )} + waitPress(i){ + const s=this.spot; + this.hitArea={ + contains:qt((t,i)=>!s.holeContains(t,i),"contains")} + ; + const e=t.getter(i),n=Xy.stage; + return new Promise(i=>{ + let h=0; + const r=qt(()=>{ + n.off("pointerup",o),zk.ticker.remove(a),i()} + ,"finish"),o=qt(t=>{ + const i=this.toLocal(t.global); + s.holeContains(i.x,i.y)&&setTimeout(r,0)} + ,"onUp"),a=qt(()=>{ + h=t.isShown(e())?0:h+1,h>30&&r()} + ,"watch"); + n.on("pointerup",o),zk.ticker.add(a)} + )} + showHand(t){ + if(!this.hand)try{ + const t=eS.getTextures("ClickHand","ClickHand"); + if(!t||0===t.length)return; + this.hand=new Kf(t),this.hand.animationSpeed=.65,this.hand.eventMode="none"} + catch{ + return} + this.hand.position.set(t.x+t.w/2,t.y+t.h/2),this.addChildAt(this.hand,this.getChildIndex(this.bubble)),this.hand.play()} + hideHand(){ + this.hand&&(this.hand.stop(),this.hand.removeFromParent())} + burst(t){ + const i=t.x+t.width/2,s=t.y+t.height/2; + for(let e=0; + e<12; + e++){ + const n=(new Ff).star(0,0,4,8,3).fill(16769674),h=2*Math.PI*e/12+.3*Math.random(),r=t.width/2+24+26*Math.random(); + n.position.set(i,s),n.scale.set(.3),this.fx.addChild(n),zk.to(n.scale,{ + x:1,y:1,duration:.25,ease:"back.out(2)"} + ),zk.to(n,{ + x:i+Math.cos(h)*r,y:s+Math.sin(h)*r*.8,rotation:1.6,alpha:0,duration:.85,ease:"power2.out",onComplete:qt(()=>n.destroy(),"onComplete")} + )} + } + close(){ + return this.hideHand(),this.bubble.hide(),new Promise(t=>{ + zk.to(this,{ + alpha:0,duration:.2,onComplete:qt(()=>{ + zk.killTweensOf(this.fx.children),this.removeFromParent(),this.destroy({ + children:!0} + ),t()} + ,"onComplete")} + )} + )} + } + ; + qt(mai,"CoachOverlay"),Xt(mai,"TAP_DELAY_MS",350),Xt(mai,"DEFAULT_WAIT_MS",800),Xt(mai,"active",null);
- const Tli=class extends pS{ - constructor(){ - super()} - } - ; - qt(Tli,"TopMenuLayer"); - let Cli=Tli; - const Ili=[{ - event:"txt_01",text:"세계의 봉인을 지키는 마지막 요새.\n<발키온>",fadeOut:13.67,ox:3,oy:-216} - ,{ - event:"txt_02",text:"심연의 군단과 끝없는 전쟁에서\n영웅들은 모두 쓰러졌고,\n발키온은 어둠속에 침묵했다.",fadeOut:13.67,ox:4,oy:127} - ,{ - event:"txt_03",text:"그런데... 어느날..\n발키온의 심장이 다시 뛰기 시작했다.",fadeOut:13.67,ox:7,oy:485} - ,{ - event:"txt_04",text:"깨어나셨군요.",fadeOut:25.67,ox:-178,oy:-448} - ,{ - event:"txt_05",text:"그래...\n다시 환생 했어..",fadeOut:25.67,ox:121,oy:-126} - ,{ - event:"txt_06",text:"영웅은 온 힘을 다해\n심연의 군단에 맞섰으나\n부족한 자신의 힘에 절망했다.",fadeOut:25.67,ox:0,oy:465} - ,{ - event:"txt_07",text:"그때, 전투의 기억을 간직한\n영웅의 훈장이 빛을 뿜었고,",fadeOut:35.33,ox:0,oy:-216} - ,{ - event:"txt_08",text:"영웅에게 다시 일어날\n강력한 힘을 부여했다.",fadeOut:35.33,ox:0,oy:140} - ,{ - event:"txt_09",text:"받으세요.\n이 훈장에는 과거...\n당신의 전투기억이 담겨있습니다.",fadeOut:47.33,ox:0,oy:-92} - ,{ - event:"txt_10",text:"그래.. 힘이 느껴져...\n이 힘이라면, 다시 싸울수 있을것 같아",fadeOut:47.33,ox:67,oy:487} - ,{ - event:"txt_11",text:"영웅이여 !\n발키온에 잠든 진짜 힘이\n깨어날때까지....\n이 성을 수호하라 !",fadeOut:55.33,ox:0,oy:431} - ]; - function Oli(){ - const t=IL.WHITE_OUTLINE_FONT_OPTION_22; - return t.align="center",t.lineHeight=30,t.wordWrap=!1,t} - qt(Oli,"createIntroTextStyle"); - const kli=class extends pS{ - constructor(){ - super(),Xt(this,"spine",null),Xt(this,"isLoaded",!1),Xt(this,"loadingStarted",!1),Xt(this,"overlay"),Xt(this,"onCompleteCallback",null),Xt(this,"activeTexts",[]),Xt(this,"textMap",new Map),Xt(this,"skipText",null),Xt(this,"introSound",null),Xt(this,"listener",{ - event:qt((t,i)=>{ - this.onSpineEvent(i.data.name)} - ,"event"),complete:qt(()=>{ - this.onAnimationComplete()} - ,"complete")} - ),this.overlay=new Ff,this.overlay.rect(0,-Xy.SAFE_AREA_TOP,640,Xy.stageHeight+Xy.SAFE_AREA_TOP),this.overlay.fill({ - color:0,alpha:1} - ),this.addChild(this.overlay); - for(const t of Ili)this.textMap.set(t.event,t); - this.visible=!1,this.eventMode="static"} - preload(){ - this.loadSpine()} - async loadSpine(){ - if(!this.loadingStarted){ - this.loadingStarted=!0; - try{ - const t=`${ - tS.getBase()} - assets/spines/scene.json`,i=`${ - tS.getBase()} - assets/spines/scene.atlas`; - if(ld.add({ - alias:"sceneAtlas",src:i} - ),ld.add({ - alias:"sceneJson",src:t} - ),await ld.load(["sceneAtlas","sceneJson"]),this.spine=qQ.from({ - skeleton:"sceneJson",atlas:"sceneAtlas"} - ),!this.spine)throw new Error("Failed to create Intro Spine"); - this.spine.x=320,this.spine.y=.5*Xy.stageHeight,this.spine.scale.set(1),this.spine.visible=!1,this.spine.autoUpdate=!1,this.addChild(this.spine),this.isLoaded=!0} - catch(t){ - } - } - } - async play(t){ - this.onCompleteCallback=t,this.isLoaded||this.loadingStarted||await this.loadSpine(); - let i=0; - for(; - !this.isLoaded&&this.loadingStarted&&i<100; - )await new Promise(t=>setTimeout(t,50)),i++; - this.isLoaded&&this.spine?(this.visible=!0,this.overlay.visible=!0,this.spine.visible=!0,this.spine.alpha=1,this.clearAllTexts(),this.spine.autoUpdate=!1,this.spine.autoUpdate=!0,this.spine.state.removeListener(this.listener),this.spine.state.addListener(this.listener),this.muteGameSounds(),this.playIntroSound(),this.spine.state.timeScale=1,this.spine.state.setAnimation(0,"scene",!1),FM.getInstance().add(this.onFrame,this),this.createSkipButton()):t()} - onSpineEvent(t){ - var i,s; - const e=this.textMap.get(t); - if(!e)return; - null==(i=this.spine)||i.skeleton.updateWorldTransform(0); - const n=null==(s=this.spine)?void 0:s.skeleton.findBone(t); - let h,r; - n?(h=this.spine.x+n.worldX,r=this.spine.y+n.worldY):(h=320+e.ox,r=.5*Xy.stageHeight+e.oy),this.showText(e,h,r)} - showText(t,i,s){ - const e=Oli(),n=sB.getText(`INTRO_${ - t.event} - `,t.text).split("\n"),h=new He; - h.x=i,h.y=s,this.addChild(h); - const r=e.lineHeight??30,o=-(n.length-1)*r/2; - n.forEach((t,i)=>{ - const s=new jg({ - text:t,style:e} - ); - s.anchor.set(.5,.5),s.y=o+i*r,s.alpha=0,h.addChild(s),setTimeout(()=>{ - s.parent&&this.fadeIn(s,.5)} - ,1e3+1e3*i)} - ),this.activeTexts.push({ - container:h,fadeOut:t.fadeOut} - )} - fadeIn(t,i){ - const s=performance.now(),e=qt(()=>{ - const n=(performance.now()-s)/1e3,h=Math.min(1,n/i); - t.alpha=h,h<1&&requestAnimationFrame(e)} - ,"tick"); - requestAnimationFrame(e)} - fadeOut(t,i,s){ - const e=performance.now(),n=t.alpha,h=qt(()=>{ - const r=(performance.now()-e)/1e3,o=Math.min(1,r/i); - t.alpha=n*(1-o),o<1?requestAnimationFrame(h):null==s||s()} - ,"tick"); - requestAnimationFrame(h)} - onFrame(){ - if(!this.spine)return; - const t=this.spine.state.getCurrent(0); - if(!t)return; - const i=t.trackTime; - for(let s=this.activeTexts.length-1; - s>=0; - s--){ - const t=this.activeTexts[s]; - i>=t.fadeOut-.67&&(this.fadeOut(t.container,.67,()=>{ - t.container.destroy()} - ),this.activeTexts.splice(s,1))} - } - playIntroSound(){ - const t=bG.getInstance(); - t.initialized&&(t.isBgmOn||t.isSfxOn)&&(this.introSound&&(this.introSound.stop(),this.introSound.unload()),this.introSound=new rG.Howl({ - src:[bG.SFX_INTRO],volume:1} - ),this.introSound.play())} - stopIntroSound(){ - this.introSound&&(this.introSound.stop(),this.introSound.unload(),this.introSound=null)} - muteGameSounds(){ - bG.getInstance().stopBGM()} - resumeGameSounds(){ - const t=bG.getInstance(); - t.isBgmOn&&t.playRandomBGM(.35)} - createSkipButton(){ - this.skipText&&this.skipText.destroy(),this.skipText=new jg({ - text:"SKIP >>",style:new Ig({ - fontFamily:"Arial, sans-serif",fontSize:18,fill:11184810} - )} - ),this.skipText.anchor.set(1,0),this.skipText.x=620,this.skipText.y=16,this.skipText.eventMode="static",this.skipText.cursor="pointer",this.skipText.on("pointertap",()=>{ - this.skip()} - ),this.addChild(this.skipText)} - skip(){ - this.spine&&(this.spine.state.removeListener(this.listener),this.spine.state.clearTracks(),this.spine.autoUpdate=!1,this.spine.visible=!1),this.stopIntroSound(),this.clearAllTexts(),FM.getInstance().remove(this.onFrame,this),this.resumeGameSounds(),this.visible=!1,this.destroySpine(),this.onCompleteCallback&&(this.onCompleteCallback(),this.onCompleteCallback=null)} - onAnimationComplete(){ - setTimeout(()=>{ - this.skip()} - ,1e3)} - destroySpine(){ - this.spine&&(this.removeChild(this.spine),this.spine.destroy(),this.spine=null),this.isLoaded=!1,this.loadingStarted=!1,ld.unload(["sceneAtlas","sceneJson"])} - clearAllTexts(){ - for(const t of this.activeTexts)t.container.destroy(); - this.activeTexts=[],this.skipText&&(this.skipText.destroy(),this.skipText=null)} - } - ; - qt(kli,"IntroLayer"); - let Rli=kli; - const xli=class extends pS{ - constructor(){ - super(),this.addChild(_U.getInstance()),this.addChild(xoi.getInstance()),this.addChild(b4t.getInstance()),this.addChild(rli.getInstance()),this.addChild(wF.getInstance()),this.addChild(OKt.getInstance()),this.addChild(Cli.getInstance()),this.addChild(uoi.getInstance()),this.addChild(nG.getInstance()),this.addChild(MD.getInstance()),this.addChild(Azt.getInstance()),this.addChild(Eci.getInstance()),this.addChild(cP.getInstance()),this.addChild(Rli.getInstance()),this.addChild(XB.getInstance()),this.updateLayout()} - updateLayout(){ - const t=Xy.SAFE_AREA_TOP,i=this.children.length; - for(let s=0; - s<i; - ++s)this.children[s]!=XB.getInstance()&&(this.children[s].y=t); - b4t.getInstance().updateLayout()} - } - ; - qt(xli,"MainLayer"); - let Pli=xli;
DayNightFx 2 hunks, 210 statements
- )),vU=class t extends pS{ + )); + var MU=(t=>(t[t.DAY=0]="DAY",t[t.DUSK=1]="DUSK",t[t.NIGHT=2]="NIGHT",t[t.DAWN=3]="DAWN",t))(MU||{ + } + ); + const AU=class t{
- super(),Xt(this,"titleBackground",null),Xt(this,"nightOverlay"),Xt(this,"colorFilter",new of),t._instance=this,window.gameFx={ + Xt(this,"overlayRoot",new He),Xt(this,"airRoot",new He),Xt(this,"overlay"),Xt(this,"torch"),Xt(this,"fireflyRoot",new He),Xt(this,"soulRoot",new He),Xt(this,"fireflies",[]),Xt(this,"souls",[]),Xt(this,"ambientTicking",!1),Xt(this,"elapsed",0),Xt(this,"phase",0),Xt(this,"realm",xB.FOREST),Xt(this,"overlayRgb",{ + r:255,g:255,b:255} + ),Xt(this,"unitRgb",{ + r:255,g:255,b:255} + ); + const i=t.FIELD,s=t.CENTER; + this.overlayRoot.eventMode="none",this.airRoot.eventMode="none",this.overlay=new je(t.buildNightTexture()),this.overlay.width=i,this.overlay.height=i,this.overlay.alpha=0,this.overlay.blendMode="multiply",this.overlayRoot.addChild(this.overlay),this.torch=new je(t.buildGlowTexture(128,"255,196,130")),this.torch.anchor.set(.5),this.torch.position.set(s,s),this.torch.width=this.torch.height=380,this.torch.alpha=0,this.torch.blendMode="add",this.overlayRoot.addChild(this.torch); + const e=t.buildGlowTexture(32,"220,255,140"); + for(let h=0; + h<t.FIREFLY_COUNT; + h++){ + const t=new je(e); + t.anchor.set(.5),t.blendMode="add"; + const n=6+4*Math.random(); + t.width=t.height=n; + const h=Math.random()*Math.PI*2,r=210+110*Math.random(),o=Math.max(20,Math.min(i-20,s+Math.cos(h)*r)),a=Math.max(20,Math.min(i-20,s+Math.sin(h)*r)); + t.position.set(o,a),this.fireflyRoot.addChild(t),this.fireflies.push({ + sprite:t,baseX:o,baseY:a,phase:Math.random()*Math.PI*2,speed:.4+.5*Math.random(),radius:12+20*Math.random()} + )} + const n=t.buildGlowTexture(32,"150,255,205"); + for(let h=0; + h<t.SOUL_COUNT; + h++){ + const i=new je(n); + i.anchor.set(.5),i.blendMode="add"; + const s=5+5*Math.random(); + i.width=s,i.height=1.5*s,this.soulRoot.addChild(i); + const e={ + sprite:i,x:0,y:0,vy:0,age:0,life:1,phase:0} + ; + t.respawnSoul(e),e.age=Math.random()*e.life,this.souls.push(e)} + this.airRoot.addChild(this.fireflyRoot,this.soulRoot),this.airRoot.alpha=0,this.airRoot.visible=!1} + static phaseOf(t){ + const i=(t-1)%10; + return i>=5?2:4===i?1:0===i&&t>1?3:0} + apply(i,s,e){ + this.phase=i,this.realm=s; + const n=t.LOOKS[s][i],h=2===i,r=e?0:t.TRANSITION; + zk.killTweensOf(this.overlay),e?this.overlay.alpha=n.overlayAlpha:zk.to(this.overlay,{ + alpha:n.overlayAlpha,duration:r,ease:"power2.inOut"} + ),t.tweenTint(this.overlayRgb,n.overlayTint,r,t=>this.overlay.tint=t); + const o=VB.getInstance(); + t.tweenTint(this.unitRgb,n.unitTint,r,t=>o.tint=t),this.setTorch(h,e); + const a=s===xB.DEAD_LAND; + this.fireflyRoot.visible=!a,this.soulRoot.visible=a,this.setAmbient(a?h?1:.65:h?1:0,e)} + setTorch(i,s){ + zk.killTweensOf(this.torch),zk.killTweensOf(this.torch.scale),i?s?(this.torch.alpha=.14,this.flickerTorch()):zk.to(this.torch,{ + alpha:.14,duration:t.TRANSITION,ease:"power2.inOut",onComplete:qt(()=>this.flickerTorch(),"onComplete")} + ):s?this.torch.alpha=0:zk.to(this.torch,{ + alpha:0,duration:t.TRANSITION,ease:"power2.inOut"} + )} + flickerTorch(){ + if(2!==this.phase)return; + const t=.15+.35*Math.random(),i=2.96875*(.97+.06*Math.random()); + zk.to(this.torch.scale,{ + x:i,y:i,duration:t,ease:"sine.inOut"} + ),zk.to(this.torch,{ + alpha:.1+.08*Math.random(),duration:t,ease:"sine.inOut",onComplete:qt(()=>this.flickerTorch(),"onComplete")} + )} + setAmbient(i,s){ + zk.killTweensOf(this.airRoot),i>0?(this.airRoot.visible=!0,this.startAmbientTick(),s?this.airRoot.alpha=i:zk.to(this.airRoot,{ + alpha:i,duration:t.TRANSITION} + )):s||!this.airRoot.visible?(this.airRoot.alpha=0,this.hideAmbient()):zk.to(this.airRoot,{ + alpha:0,duration:t.TRANSITION,onComplete:qt(()=>this.hideAmbient(),"onComplete")} + )} + hideAmbient(){ + this.airRoot.visible=!1,this.ambientTicking&&(gn.shared.remove(this.tickAmbient,this),this.ambientTicking=!1)} + startAmbientTick(){ + this.ambientTicking||(gn.shared.add(this.tickAmbient,this),this.ambientTicking=!0)} + tickAmbient(t){ + const i=t.deltaMS/1e3; + this.elapsed+=i,this.fireflyRoot.visible&&this.updateFireflies(),this.soulRoot.visible&&this.updateSouls(i)} + updateFireflies(){ + const t=this.elapsed; + for(const i of this.fireflies){ + const s=t*i.speed+i.phase; + i.sprite.x=i.baseX+Math.sin(s)*i.radius,i.sprite.y=i.baseY+Math.sin(1.7*s+1.3)*i.radius*.6; + const e=Math.sin(t*(1.2+i.speed)+3*i.phase); + i.sprite.alpha=.25+.75*Math.max(0,e)} + } + updateSouls(i){ + for(const s of this.souls){ + s.age+=i,s.age>=s.life&&t.respawnSoul(s); + const e=s.age/s.life; + s.y-=s.vy*i,s.sprite.x=s.x+5*Math.sin(1.6*s.age+s.phase),s.sprite.y=s.y,s.sprite.alpha=.9*Math.sin(Math.PI*e)} + } + static respawnSoul(i){ + const s=t.CENTER,e=Math.random()*Math.PI*2,n=170+170*Math.random(); + i.x=Math.max(12,Math.min(t.FIELD-12,s+Math.cos(e)*n)),i.y=Math.max(40,Math.min(t.FIELD-8,s+Math.sin(e)*n)),i.vy=10+14*Math.random(),i.age=0,i.life=2.5+3*Math.random(),i.phase=Math.random()*Math.PI*2} + static tweenTint(t,i,s,e){ + zk.killTweensOf(t); + const n=i>>16&255,h=i>>8&255,r=255&i; + if(s<=0)return t.r=n,t.g=h,t.b=r,void e(i); + zk.to(t,{ + r:n,g:h,b:r,duration:s,ease:"power2.inOut",onUpdate:qt(()=>e(Math.round(t.r)<<16|Math.round(t.g)<<8|Math.round(t.b)),"onUpdate")} + )} + static buildNightTexture(){ + const t=256,i=document.createElement("canvas"); + i.width=t,i.height=t; + const s=i.getContext("2d"),e=128,n=s.createRadialGradient(e,e,0,e,e,184.32); + return n.addColorStop(0,"rgb(214,190,150)"),n.addColorStop(.18,"rgb(150,150,170)"),n.addColorStop(.45,"rgb(72,88,138)"),n.addColorStop(.75,"rgb(26,36,78)"),n.addColorStop(1,"rgb(10,14,36)"),s.fillStyle=n,s.fillRect(0,0,t,t),hs.from(i)} + static buildGlowTexture(t,i){ + const s=document.createElement("canvas"); + s.width=t,s.height=t; + const e=s.getContext("2d"),n=t/2,h=e.createRadialGradient(n,n,0,n,n,n); + return h.addColorStop(0,`rgba(${ + i} + ,1)`),h.addColorStop(.35,`rgba(${ + i} + ,0.55)`),h.addColorStop(1,`rgba(${ + i} + ,0)`),e.fillStyle=h,e.fillRect(0,0,t,t),hs.from(s)} + } + ; + qt(AU,"DayNightFx"),Xt(AU,"FIELD",640),Xt(AU,"CENTER",320),Xt(AU,"TRANSITION",2),Xt(AU,"FIREFLY_COUNT",16),Xt(AU,"SOUL_COUNT",18),Xt(AU,"LOOKS",{ + [xB.FOREST]:{ + 0:{ + overlayAlpha:0,overlayTint:16777215,unitTint:16777215} + ,1:{ + overlayAlpha:.62,overlayTint:16747088,unitTint:16763040} + ,2:{ + overlayAlpha:1,overlayTint:16777215,unitTint:11582688} + ,3:{ + overlayAlpha:.5,overlayTint:16754884,unitTint:16767196} + } + ,[xB.DEAD_LAND]:{ + 0:{ + overlayAlpha:.3,overlayTint:12891391,unitTint:15261942} + ,1:{ + overlayAlpha:.6,overlayTint:16738922,unitTint:15910088} + ,2:{ + overlayAlpha:1,overlayTint:12124120,unitTint:11060416} + ,3:{ + overlayAlpha:.48,overlayTint:14199039,unitTint:15522036} + } + } + ); + let yU=AU; + const SU=class t extends He{ + constructor(){ + super(),Xt(this,"cracks",new Ff),Xt(this,"ring",new Ff),Xt(this,"flash",new Ff),Xt(this,"crackPaths",[]),Xt(this,"playing",!1),this.eventMode="none",this.visible=!1,this.cracks.blendMode="add",this.ring.blendMode="add",this.ring.circle(0,0,100).stroke({ + width:14,color:t.COLOR} + ),this.ring.position.set(t.CENTER,t.CENTER),this.flash.rect(0,0,t.FIELD,t.FIELD).fill(15269872),this.addChild(this.cracks,this.ring,this.flash)} + play(t){ + if(this.playing)return void t(); + this.playing=!0,this.visible=!0,this.buildCrackPaths(),this.cracks.alpha=1,this.flash.alpha=0,this.ring.alpha=0,this.ring.scale.set(.1); + const i={ + t:0} + ,s=zk.timeline(); + s.to(i,{ + t:1,duration:.7,ease:"power2.in",onUpdate:qt(()=>this.drawCracks(i.t),"onUpdate")} + ),s.to(this.flash,{ + alpha:1,duration:.3,ease:"power2.in"} + ),s.add(()=>{ + Promise.resolve().then(t).catch(t=>{ + } + ).finally(()=>{ + this.cracks.alpha=0,this.ring.alpha=1,zk.to(this.ring.scale,{ + x:4.5,y:4.5,duration:1,ease:"power2.out"} + ),zk.to(this.ring,{ + alpha:0,duration:1,ease:"power2.in"} + ),zk.to(this.flash,{ + alpha:0,duration:1.4,ease:"power2.out",onComplete:qt(()=>this.finish(),"onComplete")} + )} + )} + )} + finish(){ + this.cracks.clear(),this.visible=!1,this.playing=!1} + buildCrackPaths(){ + const i=t.CENTER; + this.crackPaths=[]; + for(let t=0; + t<9; + t++){ + let s=t/9*Math.PI*2+.4*Math.random(),e=i+30*Math.cos(s),n=i+30*Math.sin(s); + const h=[{ + x:e,y:n} + ]; + for(let t=30; + t<480; + t+=22+18*Math.random())s+=.5*(Math.random()-.5),e=i+Math.cos(s)*t,n=i+Math.sin(s)*t,h.push({ + x:e,y:n} + ); + this.crackPaths.push(h)} + } + drawCracks(i){ + const s=this.cracks; + s.clear(); + for(const e of this.crackPaths){ + const n=Math.max(1,Math.floor(e.length*i)); + s.moveTo(e[0].x,e[0].y); + for(let t=1; + t<=n&&t<e.length; + t++)s.lineTo(e[t].x,e[t].y); + s.stroke({ + width:3+3*i,color:t.COLOR,alpha:.9} + )} + } + } + ; + qt(SU,"RealmTransitionFx"),Xt(SU,"FIELD",640),Xt(SU,"CENTER",320),Xt(SU,"COLOR",12124120); + let TU=SU; + const CU=class t extends pS{ + constructor(){ + super(),Xt(this,"titleBackground",null),Xt(this,"dayNight",new yU),Xt(this,"realmTransition",new TU),Xt(this,"colorFilter",new of),t._instance=this,window.gameFx={
GuideBubble 1 hunks, 196 statements
+ const GKt={ + castleIntro1:["GAME_1851","성주님, 이곳이 우리가 지켜야 할 [성]이에요."],castleIntro2:["GAME_1852","몰려오는 적들로부터 성을 끝까지 지켜 주세요!"],heroTab:["GAME_1853","성을 함께 지킬 [영웅]을 불러 볼까요?"],heroRoster:["GAME_1854","[병영]에서 영웅들이 출전을 기다리고 있어요."],heroHire:["GAME_1855","[배치]를 누르면 영웅이 전장에 나가요!"],heroClose:["GAME_1856","이제 창을 닫고 영웅의 활약을 지켜봐요."],heroDrag:["GAME_1857","영웅을 꾹 눌러 끌면 원하는 자리로 옮길 수 있어요."],questGauge:["GAME_1858","[퀘스트]는 게이지가 찰 때마다 [골드]를 벌어 와요."],questLevel:["GAME_1859","레벨을 올리면 한 번에 버는 골드가 늘어나요."],questOpen1:["GAME_1860","골드가 모이면 새 퀘스트를 열어 보세요."],questOpen2:["GAME_1861","훨씬 많은 골드를 벌 수 있어요!"],reviveMedal1:["GAME_1862","괜찮아요, 성주님! 버틴 만큼 [훈장]을 받아요."],reviveMedal2:["GAME_1863","[훈장]으로 올린 힘은 환생해도 사라지지 않아요."],reviveButton:["GAME_1864","[환생]하고, 더 강해진 모습으로 다시 도전해요!"],medalTab:["GAME_1865","받은 [훈장]으로 성을 더 강하게 만들어 볼까요?"],medalShortcut:["GAME_1866","[강화]에서 훈장으로 성을 강하게 만들어요."],medalEnhance:["GAME_1867","눌러 보세요! 이 힘은 환생해도 그대로 남아요."],medalDone:["GAME_1868","좋아요! 성이 한층 더 튼튼해졌어요."],reviveAnytime1:["GAME_1869","10층부터는 언제든 직접 [환생]할 수 있어요."],reviveAnytime2:["GAME_1870","더 오르기 힘들 때 눌러서 [훈장]을 받아요!"],tapToContinue:["GAME_1871","화면을 터치해 계속"],missionQuestLevel:["GAME_1872","{ + 0} + { + 1} + 레벨 달성"],missionQuestOpen:["GAME_1873","{ + 0} + 오픈"],priest1:["GAME_1874","성주님, 새 동료 [사제]가 합류했어요!"],priest2:["GAME_1875","사제의 [신의 축복]이 발동하면 2분 동안 게임 속도가 +300% 빨라져요."],priest3:["GAME_1876","사제를 많이 배치할수록 더 자주 발동한답니다."],fairy1:["GAME_1877","이번엔 [페어리]가 힘을 보태러 왔어요!"],fairy2:["GAME_1878","페어리의 [엘프의 비술]이 발동하면 웨이브를 하나 건너뛰어요."],fairy3:["GAME_1879","페어리를 많이 배치할수록 더 빠르게 전진할 수 있어요."],darkArcher1:["GAME_1880","[다크아처]가 합류했네요! 환생할 때 특히 든든한 동료예요."],darkArcher2:["GAME_1881","다크아처를 배치해 두면 환생한 뒤 더 높은 층에서 시작해요."],darkArcher3:["GAME_1882","10명을 배치하고 1000층에서 환생하면, 500층부터 다시 시작할 수 있답니다."],secretary1:["GAME_1883","성채에 [비서]가 왔어요. 성장을 도와줄 든든한 동료예요."],secretary2:["GAME_1884","비서는 일정 시간마다 영웅·펫 조각 같은 자원을 모아 와요."],secretary3:["GAME_1885","[고급 비서]를 고용하면 훨씬 많이 모아 온답니다."]} + ; + function BKt(...t){ + return t.map(([t,i])=>nB.getText(t,i)).join("\n")} + function UKt(t,...i){ + return i.reduce((t,i,s)=>t.split(`{ + ${ + s} + } + `).join(String(i)),BKt(t))} + qt(BKt,"guideText"),qt(UKt,"guideFormat"); + const FKt={ + hl:{ + fill:16765786} + } + ; + function HKt(t,i,s){ + let e=""; + const n=[],h=/\[([^\]]+)\]/g; + let r=0; + for(let d=h.exec(t); + d; + d=h.exec(t)){ + for(const i of t.slice(r,d.index))e+=i,n.push(!1); + for(const t of d[1])e+=t,n.push(!0); + r=d.index+d[0].length} + for(const d of t.slice(r))e+=d,n.push(!1); + const o=OL.wrapTextCJK(e,i,s),a=Array.from(e); + let c="",l=!1,u=0; + for(const d of o){ + for(; + u<a.length&&d!==a[u]&&" "===a[u]; + )u++; + if(u<a.length&&d===a[u])n[u]!==l&&(c+=l?"</hl>":"<hl>",l=n[u]),c+=d,u++; + else{ + if("\n"!==d)return o; + c+=l?"</hl>\n<hl>":"\n"} + } + return l&&(c+="</hl>"),c} + qt(HKt,"highlightMarkup"); + const $Kt=class t extends He{ + constructor(){ + super(),Xt(this,"box",new Ff),Xt(this,"portrait",new je),Xt(this,"lblName",new SD("",16768324,OL.DEFAULT_OUTLINE_FONT_OPTION_17)),Xt(this,"body",new jg({ + text:"",style:{ + ...t.BODY_STYLE,fill:16777215,tagStyles:FKt} + } + )),Xt(this,"hint",new He),Xt(this,"lblHint",new SD("",13350539,{ + ...OL.DEFAULT_FONT_OPTION_18,fontSize:15,lineHeight:20} + )),Xt(this,"hintArrow",(new Ff).poly([0,0,12,0,6,8]).fill(16766826)),this.eventMode="none",this.portrait.anchor.set(.5,1),this.hint.addChild(this.lblHint,this.hintArrow),this.addChild(this.box,this.portrait,this.lblName,this.body,this.hint),this.visible=!1} + static load(){ + if(!this.loading){ + const i="ktx2"; + this.loading=eS.generateTexture(t.SHEET,i,!1).then(()=>{ + } + ).catch(()=>{ + this.loading=null} + )} + return this.loading} + show(i,s,e,n,h){ + const r=t.W,o=t.PAD,a=eS.hasSheet(t.SHEET)?eS.getTexture(t.SHEET,s):null; + this.portrait.visible=!!a; + let c=0,l=0; + if(a){ + this.portrait.texture=a; + const i=t.PORTRAIT_H/a.height; + this.portrait.scale.set(i),c=a.width*i,l=t.PORTRAIT_H} + const u=a?10+c+6:o+4,d=r-u-o-4; + this.lblName.text=nB.getText("DIALOGUE_NPC_S","정령"),this.lblName.position.set(u,o-4),this.body.text=HKt(i,t.BODY_STYLE,d),this.body.position.set(u,this.lblName.y+this.lblName.height+2),this.hint.visible=h; + let f=0; + h&&(this.lblHint.text=BKt(GKt.tapToContinue),this.hintArrow.position.set(this.lblHint.width+6,(this.lblHint.height-8)/2+1),f=this.lblHint.height+2); + const p=Math.max(this.body.y+this.body.height+f+o-2,92); + this.hint.position.set(r-o-this.hint.width,p-o+2-this.lblHint.height),this.portrait.position.set(10+c/2,p-3); + const g=Math.max(0,l-(p-3)); + let m=(n.width-r)/2,w=.42*n.height-p/2,v=null,_=0; + if(e){ + const i=e.x+e.width/2; + m=Math.max(12,Math.min(n.width-12-r,i-r/2)); + const s=e.y-22-p,h=e.y+e.height+22+g; + if(s-g>=t.TOP_LIMIT?(w=s,v="down"):h+p<=n.height-12&&(w=h,v="up"),v){ + const t="up"===v&&a?u+10:30; + _=Math.max(t,Math.min(r-30,i-m))} + } + if(this.drawBox(r,p,v,_),this.position.set(Math.round(m),Math.round(w)),zk.killTweensOf(this),zk.killTweensOf(this.pivot),zk.killTweensOf(this.portrait.scale),zk.killTweensOf(this.hintArrow),this.visible=!0,zk.fromTo(this,{ + alpha:0} + ,{ + alpha:1,duration:.2,ease:"power1.out"} + ),zk.fromTo(this.pivot,{ + y:-10} + ,{ + y:0,duration:.3,ease:"back.out(2)"} + ),a){ + const t=this.portrait.scale.x; + zk.fromTo(this.portrait.scale,{ + x:.86*t,y:.86*t} + ,{ + x:t,y:t,duration:.32,ease:"back.out(3)"} + )} + if(h){ + const t=this.hintArrow.y; + zk.fromTo(this.hintArrow,{ + y:t-2,alpha:1} + ,{ + y:t+2,alpha:.35,duration:.5,ease:"sine.inOut",yoyo:!0,repeat:-1} + )} + } + hide(){ + zk.killTweensOf(this),zk.killTweensOf(this.pivot),zk.killTweensOf(this.portrait.scale),zk.killTweensOf(this.hintArrow),this.visible=!1} + drawBox(i,s,e,n){ + const h={ + color:t.FILL,alpha:.97} + ,r={ + color:t.EDGE,width:2.5} + ,o=this.box.clear(); + o.roundRect(0,0,i,s,14).fill(h).stroke(r),o.roundRect(4,4,i-8,s-8,11).stroke({ + color:16777215,width:1.5,alpha:.07} + ),"down"===e?(o.poly([n-13,s-2,n+13,s-2,n,s+14]).fill(h),o.moveTo(n-13,s).lineTo(n,s+14).lineTo(n+13,s).stroke(r)):"up"===e&&(o.poly([n-13,2,n+13,2,n,-14]).fill(h),o.moveTo(n-13,0).lineTo(n,-14).lineTo(n+13,0).stroke(r))} + } + ; + qt($Kt,"GuideBubble"),Xt($Kt,"SHEET","Dialogue"),Xt($Kt,"W",572),Xt($Kt,"PORTRAIT_H",108),Xt($Kt,"PAD",14),Xt($Kt,"FILL",2234900),Xt($Kt,"EDGE",13215068),Xt($Kt,"TOP_LIMIT",96),Xt($Kt,"BODY_STYLE",{ + fontFamily:"Arial",fontSize:21,fontWeight:"bold",lineHeight:30} + ),Xt($Kt,"loading",null); + let WKt=$Kt; + const VKt=class t extends He{ + constructor(t=.6){ + super(),Xt(this,"dim",new Ff),Xt(this,"glow",new Ff),Xt(this,"current",null),Xt(this,"drawn",{ + x:0,y:0,w:0,h:0,r:0} + ),this.dimAlpha=t,this.eventMode="none",this.addChild(this.dim,this.glow),this.draw(null),zk.fromTo(this.glow,{ + alpha:1} + ,{ + alpha:.4,duration:.75,ease:"sine.inOut",yoyo:!0,repeat:-1} + )} + static rectHole(t,i=8,s=12){ + return{ + x:t.x-i,y:t.y-i,w:t.width+2*i,h:t.height+2*i,r:s} + } + static circleHole(t,i=8){ + const s=Math.max(t.width,t.height)/2+i; + return{ + x:t.x+t.width/2-s,y:t.y+t.height/2-s,w:2*s,h:2*s,r:s} + } + static toRect(t){ + return new Di(t.x,t.y,t.w,t.h)} + get hole(){ + return this.current} + focus(t){ + if(zk.killTweensOf(this.drawn),!t)return this.current=null,void this.draw(null); + const i=this.current?{ + ...this.drawn} + :{ + x:t.x-60,y:t.y-60,w:t.w+120,h:t.h+120,r:t.r+30} + ; + this.current=t,Object.assign(this.drawn,i),this.draw(this.drawn),zk.to(this.drawn,{ + ...t,duration:.38,ease:"power2.out",onUpdate:qt(()=>this.draw(this.drawn),"onUpdate")} + )} + reset(){ + zk.killTweensOf(this.drawn),this.current=null,this.draw(null)} + holeContains(t,i){ + const s=this.current; + return!!s&&t>=s.x&&t<=s.x+s.w&&i>=s.y&&i<=s.y+s.h} + draw(i){ + const s=t.COVER,e={ + color:0,alpha:this.dimAlpha} + ,n=this.dim.clear(); + if(this.glow.clear(),!i||i.w<=0||i.h<=0)return void n.rect(-s/2,-s/2,s,s).fill(e); + const h=Math.max(0,Math.min(i.r,i.w/2,i.h/2)),[r,o,a,c]=[i.x,i.y,i.x+i.w,i.y+i.h],[l,u,d,f]=[-s/2,-s/2,s/2,s/2]; + if(n.rect(l,u,d-l,o-u).fill(e),n.rect(l,c,d-l,f-c).fill(e),n.rect(l,o,r-l,c-o).fill(e),n.rect(a,o,d-a,c-o).fill(e),h>0){ + const t=qt((t,i,s,r,o)=>{ + const a=[s,r]; + for(let e=0; + e<=10; + e++){ + const s=o+Math.PI/2*(e/10); + a.push(t+Math.cos(s)*h,i+Math.sin(s)*h)} + n.poly(a).fill(e)} + ,"corner"); + t(r+h,o+h,r,o,Math.PI),t(a-h,o+h,a,o,1.5*Math.PI),t(a-h,c-h,a,c,0),t(r+h,c-h,r,c,.5*Math.PI)} + this.glow.roundRect(i.x-8,i.y-8,i.w+16,i.h+16,h+8).stroke({ + color:t.GOLD,width:7,alpha:.12} + ),this.glow.roundRect(i.x-4,i.y-4,i.w+8,i.h+8,h+4).stroke({ + color:t.GOLD,width:4,alpha:.3} + ),this.glow.roundRect(i.x,i.y,i.w,i.h,h).stroke({ + color:16771760,width:2.5,alpha:1} + )} + destroy(t){ + zk.killTweensOf(this.drawn),zk.killTweensOf(this.glow),super.destroy(t)} + } + ; + qt(VKt,"Spotlight"),Xt(VKt,"COVER",6e3),Xt(VKt,"GOLD",16766826); + let jKt=VKt;
TutorialController 16 hunks, 132 statements
- Xt(this,"isOpened",!0),Xt(this,"savedIndex",0),Xt(this,"tutorialIndex",0),Xt(this,"enableMissionGuide",!0),Xt(this,"bottomMenuUnlockList",[0,1,2,3,4,5]),Xt(this,"isHelpHeroPopupped",!1),Xt(this,"isHelpQuestPopupped",!1),Xt(this,"isHelpRevivePopupped",!1)} + Xt(this,"isOpened",!0),Xt(this,"savedIndex",0),Xt(this,"tutorialIndex",0),Xt(this,"enableMissionGuide",!0),Xt(this,"bottomMenuUnlockList",[0,1,2,3,4,5]),Xt(this,"isHelpHeroPopupped",!1),Xt(this,"isHelpQuestPopupped",!1),Xt(this,"isHelpRevivePopupped",!1),Xt(this,"isReviveAnytimeShown",!1)}
- this.bottomMenuUnlockList=[2],lci.getInstance().onMenuClickByIndex(2),lci.getInstance().hideLockIconsTo(this.bottomMenuUnlockList),koi.getInstance().opened=!1,TB.getInstance().stop(),PD.getInstance().stopUpdate(),Loi.getInstance().onCompleteHandler=this.onTurotial0Toast1Complete.bind(this); - const t=sB.getText("DIALOGUE_TEXT_75","윽.. 머리야.. 여긴 어디지? 뭔가 익숙한데..."); - Loi.getInstance().show("L_FRO",t)} + this.bottomMenuUnlockList=[2],qci.getInstance().onMenuClickByIndex(2),qci.getInstance().hideLockIconsTo(this.bottomMenuUnlockList),Qoi.getInstance().opened=!1,IB.getInstance().stop(),ND.getInstance().stopUpdate(),nui.getInstance().markDialogueWaveShown(1); + const t=eai.getInstance(); + t.onCompleteHandler=this.onTurotial0Toast1Complete.bind(this),t.tapToAdvance=!0,t.showDialogues(this.openingLines(),!0)} + openingLines(){ + const t=ZKt.getInstance().list; + return[[75,"L_FRO",1,"윽.. 머리야.. 여긴 어디지? 뭔가 익숙한데..."],[1,"S_SMI",1,"드디어 눈을 뜨셨군요. 발키온의 정령이 당신을 맞이합니다."],[2,"L_SUR",2,"반가워. 그런데 이상해... 네가 이 말을 할 걸 이미 알고 있었던 것 같아."],[3,"S_NEU",1,"...성과 연결되는 과정에서 겪는 일시적인 현상일 뿐입니다. 안심하세요."]].map(([i,s,e,n])=>{ + const h=t.find(t=>t.kindNum===i); + if(h)return h; + const r=new JKt; + return r.kindNum=i,r.code=s,r.position=e,r.text=n,r} + )}
- const t=BKt.getInstance().getMainList(); - t&&(oYt.getInstance().onHideHandler=this.onHelpCastlePopupHide.bind(this),oYt.getInstance().showWith(t[0].main,2,!0,!1))} - onHelpCastlePopupHide(){ + const t=nui.getInstance().getPlayer(); + wai.run([{ + target:t,shape:"circle",pad:30,face:"S_SMI",text:BKt(GKt.castleIntro1,GKt.castleIntro2)} + ]).then(()=>this.onCastleIntroDone())} + onCastleIntroDone(){
- Loi.getInstance().show("L_SUR",t)} + eai.getInstance().tapToAdvance=!0,eai.getInstance().show("L_SUR",t)}
- RKt.getInstance().show(i.x,i.y,t.width,t.height)} + qKt.getInstance().show(i.x,i.y,t.width,t.height),this.showCaptionAfterHand(BKt(GKt.heroTab))}
- this.isHelpHeroPopupped||this.tutorialIndex==t.TUTORIAL_INDEX_WAVE0&&(RKt.getInstance().hide(),setTimeout(()=>{ - const t=BKt.getInstance().getMainList(); - t&&(oYt.getInstance().onHideHandler=this.highlightHeroRosterButton.bind(this),oYt.getInstance().showWith(t[1].main,0,!0,!1),this.isHelpHeroPopupped=!0)} - ,100))} + this.isHelpHeroPopupped||this.tutorialIndex==t.TUTORIAL_INDEX_WAVE0&&(qKt.getInstance().hide(),this.isHelpHeroPopupped=!0,setTimeout(()=>this.highlightHeroRosterButton(),100))}
+ this.showCaptionAfterHand(BKt(GKt.heroRoster));
+ this.showCaptionAfterHand(BKt(GKt.heroHire),"S_SHU");
+ this.showCaptionAfterHand(BKt(GKt.heroClose));
- RKt.getInstance().hide(),TB.getInstance().start()} + qKt.getInstance().hide(),IB.getInstance().start(),ED.getInstance().npcDialogue&&eai.getInstance().show("S_SMI",BKt(GKt.heroDrag))} + showCaptionAfterHand(t,i="S_SMI"){ + requestAnimationFrame(()=>zKt.getInstance().setCaption(t,i))}
- this.isHelpQuestPopupped||setTimeout(()=>{ - const t=BKt.getInstance().getMainList(); - t&&(oYt.getInstance().onHideHandler=this.endTutorialWave3.bind(this),oYt.getInstance().showWith(t[2].main,0,!0,!1),this.isHelpQuestPopupped=!0)} - ,100)} + this.isHelpQuestPopupped||(this.isHelpQuestPopupped=!0,setTimeout(()=>{ + this.runQuestCoach()} + ,150))} + async runQuestCoach(){ + var t,i; + const{ + QuestSubView:s} + =await ti(async()=>{ + const{ + QuestSubView:t} + =await Promise.resolve().then(()=>Oci); + return{ + QuestSubView:t} + } + ,void 0),e=s.getInstance().getItemRenderers(),n=null==(t=e[0])?void 0:t.tutorialTargets,h=null==(i=e[1])?void 0:i.tutorialTargets; + await wai.run([{ + target:null==n?void 0:n.row,text:BKt(GKt.questGauge)} + ,{ + target:null==n?void 0:n.button,text:BKt(GKt.questLevel)} + ,{ + target:null==h?void 0:h.button,text:BKt(GKt.questOpen1,GKt.questOpen2),face:"S_SHU"} + ].filter(t=>t.target)),await this.endTutorialWave3()}
- if(0!=this.isOpened&&0==this.isHelpRevivePopupped){ - const t=BKt.getInstance().getMainList(); - t&&(oYt.getInstance().onHideHandler=this.endTutorialRevive.bind(this),oYt.getInstance().showWith(t[3].main,0,!0,!1),this.isHelpRevivePopupped=!0)} + if(0==this.isOpened)return; + if(this.isHelpRevivePopupped)return; + this.isHelpRevivePopupped=!0; + const{ + GameOverPopup:t} + =await ti(async()=>{ + const{ + GameOverPopup:t} + =await Promise.resolve().then(()=>_li); + return{ + GameOverPopup:t}
+ ,void 0),{ + summary:i,rebirth:s,medal:e} + =t.getInstance().tutorialTargets; + await wai.run([{ + target:i,pad:10,waitMs:1500,face:"S_SMI",text:BKt(GKt.reviveMedal1,GKt.reviveMedal2),onShow:qt(t=>t.burst(t.rectOf(e)),"onShow")} + ,{ + target:s,mode:"action",face:"S_SHU",text:BKt(GKt.reviveButton)} + ]),await this.endTutorialRevive()}
+ async startMedalGuide(){ + if(0==this.isOpened||wai.isActive)return; + const[{ + CastleSubView:t} + ,{ + CastleDetailPopup:i} + ,{ + CastleDataManager:s} + ,{ + HeroMedalEnhanceManager:e} + ]=await Promise.all([ti(()=>Promise.resolve().then(()=>Mci),void 0),ti(()=>Promise.resolve().then(()=>Lai),void 0),ti(()=>Promise.resolve().then(()=>kx),void 0),ti(()=>Promise.resolve().then(()=>oXt),void 0)]),n=s.getInstance().castleVO,h=e.getInstance().getCost(n.enhance+1); + if(h<=0||XD.medal<h)return; + const r=2===lzt.currentIndex,o=r?BKt(GKt.medalTab,GKt.medalShortcut):BKt(GKt.medalShortcut); + await wai.run([...r?[]:[{ + target:qci.getInstance().getMenu(2),mode:"action",text:BKt(GKt.medalTab)} + ],{ + target:qt(()=>t.getInstance().enhanceShortcut,"target"),mode:"action",waitMs:1500,text:o} + ,{ + target:qt(()=>i.getInstance().tutorialTargets.enhance,"target"),mode:"action",waitMs:1500,face:"S_SHU",text:BKt(GKt.medalEnhance)} + ,{ + target:qt(()=>i.getInstance().tutorialTargets.castle,"target"),waitMs:600,text:BKt(GKt.medalDone),onShow:qt((t,i)=>t.burst(i),"onShow")} + ])} + async showReviveAnytimeHint(){ + if(0==this.isOpened||this.isReviveAnytimeShown)return; + if(1!=XD.numRevive||XD.wave<10)return; + const{ + PopupLayer:t} + =await ti(async()=>{ + const{ + PopupLayer:t} + =await Promise.resolve().then(()=>rG); + return{ + PopupLayer:t} + } + ,void 0); + if(wai.isActive||t.getInstance().hasPopup)return; + const{ + TopMenu:i} + =await ti(async()=>{ + const{ + TopMenu:t} + =await Promise.resolve().then(()=>Pli); + return{ + TopMenu:t} + } + ,void 0),s=i.getInstance().reviveButton; + wai.isShown(s)&&(this.isReviveAnytimeShown=!0,"Y"!==await zy.getReviveAnytimeHinted()&&(await zy.saveReviveAnytimeHinted("Y"),await wai.run([{ + target:s,pad:4,text:BKt(GKt.reviveAnytime1,GKt.reviveAnytime2)} + ])))}
- if(t<5||t>7)return; - const i=BKt.getInstance().getMainList(); - i&&(oYt.getInstance().onHideHandler=this.endTutorialWave3.bind(this),oYt.getInstance().showWith(i[t].main,0,!0,!1))} + const i={ + 5:[[GKt.priest1,"S_SHU"],[GKt.priest2,"S_SMI"],[GKt.priest3,"S_NEU"]],6:[[GKt.fairy1,"S_SHU"],[GKt.fairy2,"S_SMI"],[GKt.fairy3,"S_NEU"]],7:[[GKt.darkArcher1,"S_SUR"],[GKt.darkArcher2,"S_SMI"],[GKt.darkArcher3,"S_NEU"]]} + ; + i[t]&&await this.playGuideDialogue(i[t],this.endTutorialWave3.bind(this))}
- if("Y"===await zy.getSecretaryHelpPopupped())return; - const t=BKt.getInstance().getMainList(); - t&&t[8]&&(oYt.getInstance().showWith(t[8].main,0,!0,!1),await zy.saveSecretaryHelpPopupped("Y"))} + "Y"!==await zy.getSecretaryHelpPopupped()&&(await zy.saveSecretaryHelpPopupped("Y"),await this.playGuideDialogue([[GKt.secretary1,"S_SMI"],[GKt.secretary2,"S_NEU"],[GKt.secretary3,"S_SMI"]]))} + async playGuideDialogue(t,i){ + const s=eai.getInstance(); + if(!ED.getInstance().npcDialogue)return void(null==i||i()); + const e=t.map(([t,i])=>{ + const s=new JKt; + return s.code=i,s.text=BKt(t),s.position=1,s} + ); + await s.showDialogues(e),i&&(s.onCompleteHandler=i)}
MiniAscentLobbyPopup 16 hunks, 129 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:24,lineHeight:32} - )),Xt(this,"hint",new yD(Rvi("RESET"),Lvi.muted,IL.DEFAULT_FONT_OPTION_16)),Xt(this,"start",new QPi("")),Xt(this,"busy",!1),Xt(this,"selectedChapter",0),Xt(this,"lastPendingChapter",0),Xt(this,"rewardLabel",new yD(Rvi("CHAPTER_STAGE_REWARDS"),Lvi.accent,{ - ...IL.DEFAULT_FONT_OPTION_16,fontSize:18,lineHeight:24} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:24,lineHeight:32} + )),Xt(this,"hint",new SD(o_i("RESET"),u_i.muted,OL.DEFAULT_FONT_OPTION_16)),Xt(this,"start",new INi("")),Xt(this,"sweep",new INi(nB.getText("COMMON_379","소탕"))),Xt(this,"busy",!1),Xt(this,"selectedChapter",0),Xt(this,"lastPendingChapter",0),Xt(this,"rewardLabel",new SD(o_i("CHAPTER_STAGE_REWARDS"),u_i.accent,{ + ...OL.DEFAULT_FONT_OPTION_16,fontSize:18,lineHeight:24}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:42,lineHeight:50} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:42,lineHeight:50}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:18,lineHeight:24} - )),Xt(this,"previousChapter",new QPi("")),Xt(this,"nextChapter",new QPi("")),Xt(this,"hardMode",!1),Xt(this,"modeNormal",new BNi(Rvi("NORMAL_MODE"))),Xt(this,"modeHard",new BNi(Rvi("HARD_MODE"))),Xt(this,"energyIcon",new je(bvi.texture("ui_energy"))),Xt(this,"energyCost",new yD("",Lvi.text,IL.DEFAULT_FONT_OPTION_16)),this.canCloseShell=()=>!this.busy,this.status.setWrapWidth(540),this.status.align="center",this.hint.setWrapWidth(540),this.hint.align="center",this.start.width=280,this.start.height=54,this.start.onClick=()=>{ + ...OL.DEFAULT_FONT_OPTION_16,fontSize:18,lineHeight:24} + )),Xt(this,"previousChapter",new INi("")),Xt(this,"nextChapter",new INi("")),Xt(this,"hardMode",!1),Xt(this,"modeSwitch",new QLi(o_i("NORMAL_MODE"),o_i("HARD_MODE"))),Xt(this,"energyIcon",new je(Xvi.texture("ui_energy"))),Xt(this,"energyCost",new SD("",u_i.text,OL.DEFAULT_FONT_OPTION_16)),Xt(this,"fx",new eDi),Xt(this,"devClear",new pLi("DEV 즉시 클리어")),Xt(this,"devEnergy",new pLi("DEV 에너지+120")),this.canCloseShell=()=>!this.busy,this.status.setWrapWidth(540),this.status.align="center",this.hint.setWrapWidth(540),this.hint.align="center",this.start.width=280,this.start.height=54,this.start.onClick=()=>{
+ ,this.sweep.width=220,this.sweep.height=54,this.sweep.onClick=()=>{ + this.sweepChapter()}
- this.previousChapter.onClick=()=>this.changeChapter(-1),this.nextChapter.onClick=()=>this.changeChapter(1); - for(const t of[this.modeNormal,this.modeHard])t.width=120,t.height=40; - this.modeNormal.onClick=()=>this.setMode(!1),this.modeHard.onClick=()=>this.setMode(!0),this.contentContainer.addChild(this.chapterPanel,this.art,this.status,this.hint,this.start,this.chapterLabel,this.waveLabel,this.previousChapter,this.nextChapter,this.rewardLabel,this.rewards,this.modeNormal,this.modeHard,this.energyIcon,this.energyCost),this.energyCost.textSize=18,this.energyIcon.width=this.energyIcon.height=24,this.energyIcon.eventMode=this.energyCost.eventMode="none"} + this.previousChapter.onClick=()=>this.changeChapter(-1),this.nextChapter.onClick=()=>this.changeChapter(1),this.modeSwitch.onSelect=t=>this.setMode(t); + for(const t of[this.devClear,this.devEnergy])t.width=136,t.height=40,t.activatedTextColor=10474495; + this.devClear.onClick=()=>{ + this.devClearChapter()} + ,this.devEnergy.onClick=()=>{ + this.devGrantEnergy()} + ,this.contentContainer.addChild(this.chapterPanel,this.art,this.status,this.hint,this.start,this.chapterLabel,this.waveLabel,this.previousChapter,this.nextChapter,this.rewardLabel,this.rewards,this.modeSwitch,this.energyIcon,this.energyCost,this.sweep,this.devClear,this.devEnergy),this.energyCost.textSize=18,this.energyIcon.width=this.energyIcon.height=24,this.energyIcon.eventMode=this.energyCost.eventMode="none"}
- var t,i,s; - const e=Zvi.getInstance(),n=this.height<760; - this.hardMode=!1; + var t,i,s,e; + const n=O_i.getInstance(),h=this.height<760,r=null==(t=n.season)?void 0:t.hard; + r||(this.hardMode=!1);
- ))?void 0:i.main)??0; - r&&r!==this.lastPendingChapter&&(this.selectedChapter=r),this.lastPendingChapter=r; - const o=h.find(t=>t.main===this.selectedChapter),a=!e.run&&!!o; - this.chapterLabel.visible=this.waveLabel.visible=this.previousChapter.visible=this.nextChapter.visible=a,this.chapterLabel.text=o?Rvi(this.hardMode?"HARD_CHAPTER_NAME":"CHAPTER_NAME",o.main):"",this.waveLabel.text=o?Rvi("CHAPTER_WAVES",o.waves):""; + ))?void 0:s.main)??0,c=n.takeLastClear(); + if(c){ + const t=c.hard===this.hardMode?o.find(t=>t.main===c.chapter+1):void 0; + t&&(this.selectedChapter=t.main)} + else a&&a!==this.lastPendingChapter&&(this.selectedChapter=a); + this.lastPendingChapter=a; + const l=o.find(t=>t.main===this.selectedChapter),u=!n.run&&!!l,d=n.run?!!n.run.hard:this.hardMode; + this.chapterLabel.textColor=d?15901582:u_i.accent,this.chapterLabel.visible=this.waveLabel.visible=this.previousChapter.visible=this.nextChapter.visible=u,this.chapterLabel.text=l?o_i(this.hardMode?"HARD_CHAPTER_NAME":"CHAPTER_NAME",l.main):"",this.waveLabel.text=l?o_i("CHAPTER_WAVES",l.waves):"";
- this.previousChapter.activated=!this.busy&&c>0,this.nextChapter.activated=!this.busy&&c>=0&&c<h.length-1,this.previousChapter.alpha=this.previousChapter.activated?1:.3,this.nextChapter.alpha=this.nextChapter.activated?1:.3,this.status.text=e.run?e.run.chapter?Rvi(e.run.hard?"HARD_CHAPTER_PROGRESS":"CHAPTER_PROGRESS",e.run.chapter,e.run.floor):Rvi("PROGRESS",e.run.floor):"",this.status.visible=!!this.status.text,this.status.position.set((this.width-this.status.width)/2,148); + this.previousChapter.activated=!this.busy&&f>0,this.nextChapter.activated=!this.busy&&f>=0&&f<o.length-1,this.previousChapter.alpha=this.previousChapter.activated?1:.3,this.nextChapter.alpha=this.nextChapter.activated?1:.3; + const p=qt(t=>{ + var i; + return!!(null==(i=t.rewards)?void 0:i.some(t=>t.claimable))} + ,"claimable"),g=qt((t,i)=>i?t.showRedDot():t.hideRedDot(),"dot"); + g(this.previousChapter,u&&o.some(t=>t.main<this.selectedChapter&&p(t))),g(this.nextChapter,u&&o.some(t=>t.main>this.selectedChapter&&p(t))),this.status.text=n.run?n.run.chapter?o_i(n.run.hard?"HARD_CHAPTER_PROGRESS":"CHAPTER_PROGRESS",n.run.chapter,n.run.floor):o_i("PROGRESS",n.run.floor):"",this.status.visible=!!this.status.text,this.status.position.set((this.width-this.status.width)/2,148);
- color:Lvi.border,width:1.5} + color:d?10506826:u_i.border,width:d?2:1.5}
- const d=!e.run&&!1; - this.modeNormal.visible=this.modeHard.visible=d,this.chapterLabel.scale.set(n?.82:1),this.chapterLabel.position.set((this.width-this.chapterLabel.width)/2,l+(n?12:22)+0),this.waveLabel.position.set((this.width-this.waveLabel.width)/2,this.chapterLabel.y+this.chapterLabel.height+(n?4:8)); + const v=!n.run&&!!r; + this.modeSwitch.visible=v,v&&(this.modeSwitch.update(this.hardMode,r.unlocked,!this.busy),this.modeSwitch.position.set((this.width-QLi.WIDTH)/2,m+10)); + const _=v?h?48:54:0; + this.chapterLabel.scale.set(h?.82:1),this.chapterLabel.position.set((this.width-this.chapterLabel.width)/2,m+(h?12:22)+_),this.waveLabel.position.set((this.width-this.waveLabel.width)/2,this.chapterLabel.y+this.chapterLabel.height+(h?4:8));
- if(this.start.text=e.run?Rvi("CONTINUE"):Rvi("RESTART"),this.start.position.set((this.width-this.start.width)/2,this.height-(n?62:76)),this.energyIcon.visible=this.energyCost.visible=!!g,g){ + this.start.text=n.run?o_i("CONTINUE"):o_i("RESTART"); + const y=u&&!!(null==l?void 0:l.cleared)&&!!M,S=this.height-(h?62:76); + if(this.sweep.visible=y,y?(this.start.width=220,this.start.position.set(this.width/2-8-this.start.width,S),this.sweep.position.set(this.width/2+8,S),this.sweep.activated=n.eventActive&&!!n.season&&!this.busy&&!A):(this.start.width=280,this.start.position.set((this.width-this.start.width)/2,S)),this.energyIcon.visible=this.energyCost.visible=!!M,M){
- const w=m?Rvi("ENERGY_SHORT",g.perRun):""; - this.hint.visible=!!w,w&&(this.hint.text=w,this.hint.scale.set(n?.85:1),this.hint.position.set((this.width-this.hint.width)/2,this.height-(n?118:142))),this.start.activated=e.eventActive&&!!e.season&&!this.busy&&!m,super.show()} + const T=A?o_i("ENERGY_SHORT",M.perRun):v&&!r.unlocked?o_i("HARD_LOCKED",r.unlockChapter):""; + this.hint.visible=!!T,T&&(this.hint.text=T,this.hint.scale.set(h?.85:1),this.hint.position.set((this.width-this.hint.width)/2,this.height-(h?118:142))),this.start.activated=n.eventActive&&!!n.season&&!this.busy&&!A; + const C=iG.getInstance().development&&!!n.season; + this.devClear.visible=C&&(!!n.run||u&&!(null==l?void 0:l.cleared)),this.devEnergy.visible=C&&!!M; + let I=this.artTop; + for(const O of[this.devClear,this.devEnergy])O.visible&&(O.position.set(this.width-40-O.width,I),O.activated=!this.busy,I+=O.height+6); + super.show()} + hideImmediately(){ + this.fx.stop(),super.hideImmediately()} + fxRect(t){ + const i=t.getBounds(),s=P_i.getInstance().fxLayer,e=s.toLocal(new _i(i.x,i.y)),n=s.toLocal(new _i(i.x+i.width,i.y+i.height)); + return new Di(e.x,e.y,n.x-e.x,n.y-e.y)} + fxCenter(t){ + const i=this.fxRect(t); + return new _i(i.x+i.width/2,i.y+i.height/2)} + fxCostRow(){ + const t=this.fxRect(this.energyIcon),i=this.fxRect(this.energyCost); + return new _i((t.x+i.x+i.width)/2,t.y+t.height/2)}
- this.busy||this.hardMode===t||t||(this.hardMode=t,this.selectedChapter=0,this.show())} + var i; + if(this.busy||this.hardMode===t)return; + const s=null==(i=O_i.getInstance().season)?void 0:i.hard; + !t||(null==s?void 0:s.unlocked)?(this.hardMode=t,this.selectedChapter=0,this.show()):s&&AH.getInstance().showMessage(o_i("HARD_LOCKED",s.unlockChapter))}
- async startRun(){ - if(!this.busy){ - this.busy=!0,this.start.activated=!1; + async sweepChapter(){ + var t,i,s,e,n,h,r; + if(this.busy)return; + const o=O_i.getInstance(),a=this.selectedChapter,c=this.hardMode; + if(o.run||!(null==(t=this.chapterList().find(t=>t.main===a))?void 0:t.cleared))return; + const l=P_i.getInstance(),u=null==(s=null==(i=o.season)?void 0:i.energy)?void 0:s.current; + l.holdHeader({ + gold:(null==(e=o.season)?void 0:e.gold)??0,energy:u} + ),this.busy=!0,this.show();
- const t=Zvi.getInstance(); - t.run||await t.start(this.selectedChapter||void 0,this.hardMode||void 0),await v_i.openBattleTab()} + const{ + goldGained:t,crystalReward:i} + =await o.sweep(a,c||void 0),s=null==(h=null==(n=o.season)?void 0:n.energy)?void 0:h.current; + await this.fx.playSweep({ + cost:this.fxCostRow(),art:this.fxCenter(this.art),goldText:`${ + nB.getText("COMMON_358","골드")} + +${ + t} + `,goldTo:(null==(r=o.season)?void 0:r.gold)??0,energySpent:void 0!==u&&void 0!==s?u-s:0,energyTo:s} + ),(null==i?void 0:i.tickets)&&(o.crystals=null,AH.getInstance().showMessage(o_i("CRYSTAL_TICKETS_GRANTED",i.tickets)))} + catch(d){ + AH.getInstance().showMessage(d.message),await o.fetchState().catch(()=>{ + } + )} + finally{ + l.releaseHeader(),this.busy=!1,this.parent&&this.show()} + } + async devClearChapter(){ + if(this.busy)return; + const t=O_i.getInstance(),i=t.run?void 0:this.selectedChapter||void 0,s=t.run?void 0:this.hardMode||void 0; + this.busy=!0,this.show(); + try{ + const e=await t.devClearChapter(i,s); + AH.getInstance().showMessage(`[DEV] ${ + e.hard?"하드 ":""} + 챕터 ${ + e.chapter} + 클리어`)} + catch(e){ + AH.getInstance().showMessage(e.message)} + finally{ + this.busy=!1,this.parent&&this.show()} + } + async devGrantEnergy(){ + if(!this.busy){ + this.busy=!0,this.show(); + try{ + await O_i.getInstance().devGrantEnergy(),AH.getInstance().showMessage("[DEV] 에너지 +120")}
+ async startRun(){ + var t,i,s,e; + if(this.busy)return; + const n=O_i.getInstance(),h=P_i.getInstance(),r=!n.run,o=null==(i=null==(t=n.season)?void 0:t.energy)?void 0:i.current; + this.busy=!0,this.start.activated=!1,r&&h.holdHeader({ + energy:o} + ); + try{ + if(r){ + await n.start(this.selectedChapter||void 0,this.hardMode||void 0); + const t=null==(e=null==(s=n.season)?void 0:s.energy)?void 0:e.current; + await this.fx.playLaunch({ + button:this.fxCenter(this.start),cost:this.fxCostRow(),energySpent:void 0!==o&&void 0!==t?o-t:0,energyTo:t} + )} + await Y_i.openBattleTab()} + catch(a){ + AH.getInstance().showMessage(a.message)} + finally{ + h.releaseHeader(),this.busy=!1,this.parent&&this.show()} + }
MiniAscentLobbyFx 1 hunks, 84 statements
+ const iDi=u_i.danger,sDi=class{ + constructor(){ + Xt(this,"root",new He),Xt(this,"ring",new Ff),Xt(this,"spend",new He),Xt(this,"spendIcon"),Xt(this,"spendLabel"),Xt(this,"amount"),Xt(this,"timeline",null),Xt(this,"settle",null),this.root.eventMode="none",this.ring.circle(0,0,40).stroke({ + width:4,color:16777215} + ),this.ring.blendMode="add",this.spendIcon=new je(Xvi.texture("ui_energy")),this.spendIcon.anchor.set(0,.5),this.spendIcon.width=this.spendIcon.height=20,this.spendLabel=new SD("",iDi,OL.DEFAULT_OUTLINE_FONT_OPTION_16),this.spendLabel.textSize=20,this.spendLabel.textColor=iDi,this.spend.addChild(this.spendIcon,this.spendLabel),this.amount=new SD("",u_i.accent,OL.DEFAULT_OUTLINE_FONT_OPTION_16),this.amount.textSize=30,this.amount.textColor=u_i.accent,this.root.addChild(this.ring,this.spend,this.amount),this.hideAll()} + playSweep(t){ + const i=P_i.getInstance(),s=this.begin(),e=this.spendEnergy(s,0,t.cost,t.energySpent,t.energyTo)?.3:0,n=e+.3; + return this.amount.text=t.goldText,this.showAmount(s,e,t.art,n+.8),s.call(()=>{ + MG.getInstance().playSFX(MG.SFX_GOLD_GOBLIN),i.rollHeader("gold",t.goldTo,.8,16773572)} + ,[],n),s.call(()=>i.pulseHeader("gold"),[],n+.8),this.finish(s)} + playLaunch(t){ + const i=this.begin(); + this.spendEnergy(i,0,t.cost,t.energySpent,t.energyTo),i.call(()=>MG.getInstance().playSFX(MG.SFX_WAVE_CALL),[],.05); + const s=this.ring; + return i.set(s,{ + visible:!0,alpha:.7,x:t.button.x,y:t.button.y,tint:u_i.accent} + ,.05),i.fromTo(s.scale,{ + x:.8,y:.8} + ,{ + x:2.1,y:2.1,duration:.4,ease:"power2.out"} + ,.05),i.to(s,{ + alpha:0,duration:.4,ease:"power1.in",onComplete:qt(()=>{ + s.visible=!1} + ,"onComplete")} + ,.05),this.finish(i,.4)} + stop(){ + var t; + null==(t=this.timeline)||t.kill(),this.timeline=null,this.hideAll(); + const i=this.settle; + this.settle=null,null==i||i()} + begin(){ + this.stop(); + const t=P_i.getInstance().fxLayer; + return this.root.parent!==t&&t.addChild(this.root),this.timeline=zk.timeline(),this.timeline} + finish(t,i){ + return new Promise(s=>{ + this.settle=s; + const e=qt(()=>{ + this.settle===s&&(this.settle=null,s())} + ,"done"); + void 0!==i&&t.call(e,[],i),t.eventCallback("onComplete",()=>{ + this.timeline=null,this.hideAll(),e()} + )} + )} + spendEnergy(t,i,s,e,n){ + if(e<=0||void 0===n)return!1; + t.call(()=>P_i.getInstance().rollHeader("energy",n,.35,iDi),[],i); + const h=this.spend,r=this.spendLabel; + r.text=`-${ + e} + `,r.position.set(this.spendIcon.width+4,-r.height/2); + const o=this.spendIcon.width+4+r.width,a=s.y-26; + return t.set(h,{ + visible:!0,alpha:0,x:s.x-o/2,y:a+6} + ,i),t.to(h,{ + alpha:1,y:a,duration:.15,ease:"power2.out"} + ,i),t.to(h,{ + y:a-10,duration:.6,ease:"power1.out"} + ,i+.15),t.to(h,{ + alpha:0,duration:.3,ease:"power1.in",onComplete:qt(()=>{ + h.visible=!1} + ,"onComplete")} + ,i+.45),!0} + showAmount(t,i,s,e){ + const n=this.amount; + n.scale.set(1),n.pivot.set(n.width/2,n.height/2),t.set(n,{ + visible:!0,alpha:0,x:s.x,y:s.y} + ,i),t.fromTo(n.scale,{ + x:1.35,y:1.35} + ,{ + x:1,y:1,duration:.22,ease:"back.out(2)"} + ,i),t.to(n,{ + alpha:1,duration:.12} + ,i),t.to(n,{ + alpha:0,y:s.y-12,duration:.3,ease:"power1.in",onComplete:qt(()=>{ + n.visible=!1} + ,"onComplete")} + ,e)} + hideAll(){ + for(const t of this.root.children)zk.killTweensOf(t),zk.killTweensOf(t.scale),t.visible=!1} + } + ; + qt(sDi,"MiniAscentLobbyFx"); + let eDi=sDi;
HelpDataManager 2 hunks, 58 statements
- const DKt=[[1,1,1,"성","성은 우리가 지켜야하는 기지입니다","HELP_TITLE_1","HELP_1"],[2,1,2,"성","성이 파괴되면, 환생하여 다시 진행해야 합니다.","HELP_TITLE_1","HELP_2"],[3,1,3,"성","신전에서 생명의 비술을 연구하면, 성이 파괴되어도 이어할 수 있습니다.","HELP_TITLE_1","HELP_4"],[4,1,4,"성","성은 훈장을 사용하여 영구히 유지되는 강화를 진행할 수 있습니다.","HELP_TITLE_1","HELP_3"],[5,2,1,"영웅","영웅은 최전방에서 성을 보호하고 적을 물리치는 아군입니다.","HELP_TITLE_2","HELP_5"],[6,2,2,"영웅","병영에서 배치를 통해 출전시킨 영웅만 전투에 나서게 됩니다. 대기중인 영웅들을 지금 출전시켜 보세요!","HELP_TITLE_2","HELP_6"],[7,2,3,"영웅","배치한 영웅은 드래그를 통해 이동시킬 수 있습니다.","HELP_TITLE_2","HELP_27"],[8,3,1,"퀘스트","퀘스트를 통해 골드를 획득할 수 있습니다.","HELP_TITLE_3","HELP_7"],[9,3,2,"퀘스트","게이지가 찰때마다 골드를 획득합니다.","HELP_TITLE_3","HELP_8"],[10,3,3,"퀘스트","레벨업을 하면, 획득하는 골드가 늘어납니다.","HELP_TITLE_3","HELP_9"],[11,3,4,"퀘스트","다음 단계 퀘스트를 오픈하면, 더 많은 골드를 획득할 수 있습니다.","HELP_TITLE_3","HELP_10"],[12,4,1,"환생","성이 파괴되면, 환생을 해야합니다.","GAME_5","HELP_11"],[13,4,2,"환생","10 wave 이상에서는 언제든 환생을 할 수 있습니다.","HELP_TITLE_4","HELP_12"],[14,4,3,"환생","환생을 하면, ( 훈장 )을 얻게 됩니다.","HELP_TITLE_4","HELP_13"],[15,4,4,"환생","( 훈장 )은 게임에서 가장 중요한 재화로, 영웅과 성을 강화하는데 사용됩니다.","HELP_TITLE_4","HELP_14"],[16,4,5,"환생","높은 웨이브에서 환생할수록 (훈장)을 더 많이 획득할 수 있습니다.","HELP_TITLE_4","HELP_15"],[17,5,1,"기사단","기사단 레벨은 최고 도달 웨이브를 기준으로 산정됩니다. (100 웨이브당 1 레벨)","HELP_TITLE_5","HELP_16"],[18,5,2,"기사단","무한랭킹전/던전 등에서 영웅의 레벨은 기사단 레벨을 기준으로 결정됩니다.","HELP_TITLE_5","HELP_17"],[19,6,1,"영웅 - 사제","사제에게는 ( 신의 은총 )이라는 스킬이 있습니다.","HELP_TITLE_6","HELP_18"],[20,6,2,"영웅 - 사제","( 신의 은총 )은 확률적으로 발동하는데, 2분 동안 게임 속도를 300% 올려줍니다.","HELP_TITLE_6","HELP_19"],[21,6,3,"영웅 - 사제","사제를 여러명 가질수록, (신의 은총) 스킬이 발동할 확률이 높아집니다.","HELP_TITLE_6","HELP_20"],[22,7,1,"영웅 - 페어리","엘프의 비술은 확률적으로 웨이브를 1씩 건너뛰는 스킬을 가지고 있습니다.","HELP_TITLE_7","HELP_21"],[23,7,2,"영웅 - 페어리","페어리는 엘프의 비술 스킬을 가지고 있습니다.","HELP_TITLE_7","HELP_22"],[24,7,3,"영웅 - 페어리","페어리를 많이 보유할수록, 웨이브를 1씩 건너뛰어 빠르게 전진할 수 있습니다.","HELP_TITLE_7","HELP_23"],[25,8,1,"영웅 - 암흑 궁병","암흑 궁병은 환생시, 시작 웨이브를 올려주는 스킬을 가지고 있습니다.","HELP_TITLE_8","HELP_24"],[26,8,2,"영웅 - 암흑 궁병","암흑 궁병을 많이 보유할수록, 환생후 높은 웨이브에서 시작할 수 있습니다.","HELP_TITLE_8","HELP_25"],[27,8,3,"영웅 - 암흑 궁병","( 암흑궁병을 10명 배치하고, 1000층에서 환생하면, 500층에서 시작합니다. )","HELP_TITLE_8","HELP_26"],[28,9,1,"비서","성 - 성채에 위치한 비서는 성장에 도움을 주는 유용한 동료입니다.","GAME_857","HELP_28"],[29,9,2,"비서","비서는 일정 시간마다 영웅과 펫 조각 등 유용한 자원을 수집해옵니다.","GAME_857","HELP_29"],[30,9,3,"비서","고급 비서를 고용하면 수집 효율이 크게 상승합니다","GAME_857","HELP_30"]],GKt=class t{ - constructor(){ - Xt(this,"items"),this.items=DKt.map(([t,i,s,e,n,h,r])=>({ - kindNum:t,main:i,sub:s,title:sB.getText(h,e),desc:sB.getText(r,n)} - ))} - static getInstance(){ - return null==this.instance&&(this.instance=new t),this.instance} - getMainList(){ - const t=new Set,i=[]; - for(const s of this.items)t.has(s.main)||(t.add(s.main),i.push(s)); - return i} - getSubsByMain(t){ - return this.items.filter(i=>i.main===t).sort((t,i)=>t.sub-i.sub)} - getIconName(t){ - return{ - 1:"Icon_Help_Castle",2:"Icon_Help_Hero",3:"Icon_Help_Quest",4:"Icon_Help_Revive",5:"Icon_Help_Knight",6:"Icon_Help_Prist",7:"Icon_Help_Pairy",8:"Icon_Help_DarkArche",9:"Icon_Help_Secretary"} - [t]??`Help_${ - t} - _1`} - getImageName(t,i){ - return`Help_${ - t} - _${ - i} - `} - } - ; - qt(GKt,"HelpDataManager"),Xt(GKt,"instance",null); - let BKt=GKt;
+ const wYt=[[1,1,1,"성","성은 우리가 지켜야하는 기지입니다","HELP_TITLE_1","HELP_1"],[2,1,2,"성","성이 파괴되면, 환생하여 다시 진행해야 합니다.","HELP_TITLE_1","HELP_2"],[3,1,3,"성","신전에서 생명의 비술을 연구하면, 성이 파괴되어도 이어할 수 있습니다.","HELP_TITLE_1","HELP_4"],[4,1,4,"성","성은 훈장을 사용하여 영구히 유지되는 강화를 진행할 수 있습니다.","HELP_TITLE_1","HELP_3"],[5,2,1,"영웅","영웅은 최전방에서 성을 보호하고 적을 물리치는 아군입니다.","HELP_TITLE_2","HELP_5"],[6,2,2,"영웅","병영에서 배치를 통해 출전시킨 영웅만 전투에 나서게 됩니다. 대기중인 영웅들을 지금 출전시켜 보세요!","HELP_TITLE_2","HELP_6"],[7,2,3,"영웅","배치한 영웅은 드래그를 통해 이동시킬 수 있습니다.","HELP_TITLE_2","HELP_27"],[8,3,1,"퀘스트","퀘스트를 통해 골드를 획득할 수 있습니다.","HELP_TITLE_3","HELP_7"],[9,3,2,"퀘스트","게이지가 찰때마다 골드를 획득합니다.","HELP_TITLE_3","HELP_8"],[10,3,3,"퀘스트","레벨업을 하면, 획득하는 골드가 늘어납니다.","HELP_TITLE_3","HELP_9"],[11,3,4,"퀘스트","다음 단계 퀘스트를 오픈하면, 더 많은 골드를 획득할 수 있습니다.","HELP_TITLE_3","HELP_10"],[12,4,1,"환생","성이 파괴되면, 환생을 해야합니다.","GAME_5","HELP_11"],[13,4,2,"환생","10 wave 이상에서는 언제든 환생을 할 수 있습니다.","HELP_TITLE_4","HELP_12"],[14,4,3,"환생","환생을 하면, ( 훈장 )을 얻게 됩니다.","HELP_TITLE_4","HELP_13"],[15,4,4,"환생","( 훈장 )은 게임에서 가장 중요한 재화로, 영웅과 성을 강화하는데 사용됩니다.","HELP_TITLE_4","HELP_14"],[16,4,5,"환생","높은 웨이브에서 환생할수록 (훈장)을 더 많이 획득할 수 있습니다.","HELP_TITLE_4","HELP_15"],[17,5,1,"기사단","기사단 레벨은 최고 도달 웨이브를 기준으로 산정됩니다. (100 웨이브당 1 레벨)","HELP_TITLE_5","HELP_16"],[18,5,2,"기사단","무한랭킹전/던전 등에서 영웅의 레벨은 기사단 레벨을 기준으로 결정됩니다.","HELP_TITLE_5","HELP_17"],[19,6,1,"영웅 - 사제","사제에게는 ( 신의 은총 )이라는 스킬이 있습니다.","HELP_TITLE_6","HELP_18"],[20,6,2,"영웅 - 사제","( 신의 은총 )은 확률적으로 발동하는데, 2분 동안 게임 속도를 300% 올려줍니다.","HELP_TITLE_6","HELP_19"],[21,6,3,"영웅 - 사제","사제를 여러명 가질수록, (신의 은총) 스킬이 발동할 확률이 높아집니다.","HELP_TITLE_6","HELP_20"],[22,7,1,"영웅 - 페어리","엘프의 비술은 확률적으로 웨이브를 1씩 건너뛰는 스킬을 가지고 있습니다.","HELP_TITLE_7","HELP_21"],[23,7,2,"영웅 - 페어리","페어리는 엘프의 비술 스킬을 가지고 있습니다.","HELP_TITLE_7","HELP_22"],[24,7,3,"영웅 - 페어리","페어리를 많이 보유할수록, 웨이브를 1씩 건너뛰어 빠르게 전진할 수 있습니다.","HELP_TITLE_7","HELP_23"],[25,8,1,"영웅 - 암흑 궁병","암흑 궁병은 환생시, 시작 웨이브를 올려주는 스킬을 가지고 있습니다.","HELP_TITLE_8","HELP_24"],[26,8,2,"영웅 - 암흑 궁병","암흑 궁병을 많이 보유할수록, 환생후 높은 웨이브에서 시작할 수 있습니다.","HELP_TITLE_8","HELP_25"],[27,8,3,"영웅 - 암흑 궁병","( 암흑궁병을 10명 배치하고, 1000층에서 환생하면, 500층에서 시작합니다. )","HELP_TITLE_8","HELP_26"],[28,9,1,"비서","성 - 성채에 위치한 비서는 성장에 도움을 주는 유용한 동료입니다.","GAME_857","HELP_28"],[29,9,2,"비서","비서는 일정 시간마다 영웅과 펫 조각 등 유용한 자원을 수집해옵니다.","GAME_857","HELP_29"],[30,9,3,"비서","고급 비서를 고용하면 수집 효율이 크게 상승합니다","GAME_857","HELP_30"]],vYt=class t{ + constructor(){ + Xt(this,"items"),this.items=wYt.map(([t,i,s,e,n,h,r])=>({ + kindNum:t,main:i,sub:s,title:nB.getText(h,e),desc:nB.getText(r,n)} + ))} + static getInstance(){ + return null==this.instance&&(this.instance=new t),this.instance} + getMainList(){ + const t=new Set,i=[]; + for(const s of this.items)t.has(s.main)||(t.add(s.main),i.push(s)); + return i} + getSubsByMain(t){ + return this.items.filter(i=>i.main===t).sort((t,i)=>t.sub-i.sub)} + getIconName(t){ + return{ + 1:"Icon_Help_Castle",2:"Icon_Help_Hero",3:"Icon_Help_Quest",4:"Icon_Help_Revive",5:"Icon_Help_Knight",6:"Icon_Help_Prist",7:"Icon_Help_Pairy",8:"Icon_Help_DarkArche",9:"Icon_Help_Secretary"} + [t]??`Help_${ + t} + _1`} + getImageName(t,i){ + return`Help_${ + t} + _${ + i} + `} + } + ; + qt(vYt,"HelpDataManager"),Xt(vYt,"instance",null); + let _Yt=vYt;
ArrowButtonDouble 1 hunks, 53 statements
- )),bci=class t extends pS{ - constructor(){ - super(),Xt(this,"spine",null),Xt(this,"isLoaded",!1),Xt(this,"loadingStarted",!1),Xt(this,"overlay"),Xt(this,"onCompleteCallback",null),Xt(this,"onEarlyCallback",null),Xt(this,"earlyFrameCount",0),Xt(this,"safetyTimer",null),Xt(this,"listener",{ - complete:qt(()=>{ - this.onAnimationComplete()} - ,"complete")} - ),this.overlay=new Ff,this.overlay.rect(0,-Xy.SAFE_AREA_TOP,640,Xy.stageHeight+Xy.SAFE_AREA_TOP),this.overlay.fill({ - color:0,alpha:.7} - ),this.addChild(this.overlay),this.visible=!1,this.eventMode="static"} - preload(){ - this.loadSpine()} - async loadSpine(){ - if(!this.loadingStarted){ - this.loadingStarted=!0; - try{ - const t=`${ - tS.getBase()} - assets/spines/Reincarnation.skel`,i=`${ - tS.getBase()} - assets/spines/Reincarnation.atlas`; - if(ld.add({ - alias:"reincarnationAtlas",src:i} - ),ld.add({ - alias:"reincarnationSkel",src:t} - ),await ld.load(["reincarnationAtlas","reincarnationSkel"]),this.spine=qQ.from({ - skeleton:"reincarnationSkel",atlas:"reincarnationAtlas"} - ),!this.spine)throw new Error("Failed to create Reincarnation Spine"); - this.spine.x=320,this.spine.y=.5*Xy.stageHeight,this.spine.scale.set(1),this.spine.visible=!1,this.spine.autoUpdate=!1,this.addChild(this.spine),this.isLoaded=!0} - catch(t){ - this.loadingStarted=!1} - } - } - async play(i,s){ - this.safetyTimer&&(clearTimeout(this.safetyTimer),this.safetyTimer=null),this.onCompleteCallback=i,this.onEarlyCallback=s??null,this.earlyFrameCount=0,this.isLoaded||this.loadingStarted||await this.loadSpine(); - let e=0; - for(; - !this.isLoaded&&this.loadingStarted&&e<100; - )await new Promise(t=>setTimeout(t,50)),e++; - if(!this.isLoaded||!this.spine)return null==s||s(),i(),this.onEarlyCallback=null,void(this.onCompleteCallback=null); - this.visible=!0,this.overlay.visible=!0,this.spine.visible=!0,this.spine.alpha=1,this.spine.autoUpdate=!1,this.spine.autoUpdate=!0,this.spine.state.removeListener(this.listener),this.spine.state.addListener(this.listener),this.spine.state.setAnimation(0,"Reincarnation",!1),this.onEarlyCallback&&(this.earlyFrameCount=0,FM.getInstance().add(this.onEarlyFrame,this)),this.safetyTimer=setTimeout(()=>this.forceFinish(),t.SAFETY_TIMEOUT_MS)} - onEarlyFrame(){ - this.earlyFrameCount++,this.earlyFrameCount>=98&&(FM.getInstance().remove(this.onEarlyFrame,this),this.overlay.visible=!1,this.onEarlyCallback&&(this.onEarlyCallback(),this.onEarlyCallback=null))} - onAnimationComplete(){ - this.spine&&(this.spine.state.removeListener(this.listener),this.spine.state.clearTracks(),this.spine.autoUpdate=!1,this.spine.visible=!1),this.visible=!1,this.onCompleteCallback&&(this.onCompleteCallback(),this.onCompleteCallback=null)} - forceFinish(){ - this.safetyTimer=null; - const t=this.onEarlyCallback,i=this.onCompleteCallback; - (t||i)&&(FM.getInstance().remove(this.onEarlyFrame,this),this.spine&&(this.spine.state.removeListener(this.listener),this.spine.state.clearTracks(),this.spine.autoUpdate=!1,this.spine.visible=!1),this.overlay.visible=!1,this.visible=!1,t&&(this.onEarlyCallback=null,t()),i&&(this.onCompleteCallback=null,i()))} - } - ; - qt(bci,"ReviveLayer"),Xt(bci,"SAFETY_TIMEOUT_MS",8e3); - let Eci=bci; - const Mci=class extends g6t{ + )),hli=class extends G6t{
MiniAscentShell 8 hunks, 48 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:26,lineHeight:32} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:26,lineHeight:32}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:14,lineHeight:18} - )),Xt(this,"chrome",new Ff),Xt(this,"navigation",new He),Xt(this,"tabButtons",[]),Xt(this,"navigating",!1),Xt(this,"countdown",new eR(1e3)),Xt(this,"activePage",null),Xt(this,"onExit",null),Xt(this,"onNavigate",null),this.width=616,this.bg.visible=this.txtTitle.visible=this.btnClose.visible=!1,this.paper.tint=Lvi.paperTint,this.paper.eventMode="static",this.paper.mask=this.clip,this.pages.mask=this.contentClip,this.clip.eventMode=this.contentClip.eventMode=this.chrome.eventMode="none",this.addChild(this.paper,this.clip,this.pages,this.contentClip,this.chrome,this.header,this.coin,this.coinText,this.seal,this.sealText,this.energy,this.energyText,this.progress,this.remaining,this.navigation,this.closeControl); + ...OL.DEFAULT_FONT_OPTION_16,fontSize:14,lineHeight:18} + )),Xt(this,"chrome",new Ff),Xt(this,"navigation",new He),Xt(this,"tabButtons",[]),Xt(this,"navigating",!1),Xt(this,"countdown",new eR(1e3)),Xt(this,"fxLayer",new He),Xt(this,"shown",{ + gold:null,energy:null} + ),Xt(this,"headerTweens",[]),Xt(this,"activePage",null),Xt(this,"onExit",null),Xt(this,"onNavigate",null),this.width=616,this.bg.visible=this.txtTitle.visible=this.btnClose.visible=!1,this.paper.tint=u_i.paperTint,this.paper.eventMode="static",this.paper.mask=this.clip,this.pages.mask=this.contentClip,this.clip.eventMode=this.contentClip.eventMode=this.chrome.eventMode="none",this.addChild(this.paper,this.clip,this.pages,this.contentClip,this.chrome,this.header,this.coin,this.coinText,this.seal,this.sealText,this.energy,this.energyText,this.progress,this.remaining,this.navigation,this.closeControl,this.fxLayer),this.fxLayer.eventMode="none",this.coin.anchor.set(.5),this.energy.anchor.set(.5);
- this.coinText.text=String(r.run&&!r.run.battleOnly&&(null==(t=this.activePage)?void 0:t.usesRunWallet)?r.run.wallet:(null==(i=r.season)?void 0:i.gold)??0),this.coinText.scale.set(1),this.coinText.scale.set(Math.min(1,48/Math.max(1,this.coinText.width))),this.coinText.position.set(62,78),this.sealText.text=String((null==(s=r.season)?void 0:s.coin)??0),this.sealText.scale.set(1),this.sealText.scale.set(Math.min(1,48/Math.max(1,this.sealText.width))),this.sealText.position.set(156,78),this.progress.text=r.run?Rvi("DEPTH",r.run.floor):Rvi("BEST",(null==(e=r.season)?void 0:e.bestFloor)??0),this.progress.scale.set(1),this.progress.scale.set(Math.min(1,130/Math.max(1,this.progress.width))),this.progress.position.set((this.width-this.progress.width)/2,78); + this.coinText.text=String(r.run&&!r.run.battleOnly&&(null==(t=this.activePage)?void 0:t.usesRunWallet)?r.run.wallet:this.shown.gold??(null==(i=r.season)?void 0:i.gold)??0),this.coinText.scale.set(1),this.coinText.scale.set(Math.min(1,48/Math.max(1,this.coinText.width))),this.coinText.position.set(62,78),this.sealText.text=String((null==(s=r.season)?void 0:s.coin)??0),this.sealText.scale.set(1),this.sealText.scale.set(Math.min(1,48/Math.max(1,this.sealText.width))),this.sealText.position.set(156,78),this.progress.text=r.run?o_i("DEPTH",r.run.floor):o_i("BEST",(null==(e=r.season)?void 0:e.bestFloor)??0),this.progress.scale.set(1),this.progress.scale.set(Math.min(1,130/Math.max(1,this.progress.width))),this.progress.position.set((this.width-this.progress.width)/2,78);
- o.current} + this.shown.energy??o.current}
- `,this.energyText.scale.set(1),this.energyText.scale.set(Math.min(1,72/Math.max(1,this.energyText.width))),this.energyText.position.set(this.width-28-this.energyText.width,78),this.energy.position.set(this.energyText.x-34,76)),this.remaining.text=t_i(null==(h=r.season)?void 0:h.endTime,cR.time>=0?cR.time:Date.now()),this.remaining.scale.set(1),this.remaining.scale.set(Math.min(1,120/Math.max(1,this.remaining.width))),this.remaining.position.set(28,29); + `,this.energyText.scale.set(1),this.energyText.scale.set(Math.min(1,72/Math.max(1,this.energyText.width))),this.energyText.position.set(this.width-28-this.energyText.width,78),this.energy.position.set(this.energyText.x-34+13,89)),this.remaining.text=k_i(null==(h=r.season)?void 0:h.endTime,cR.time>=0?cR.time:Date.now()),this.remaining.scale.set(1),this.remaining.scale.set(Math.min(1,120/Math.max(1,this.remaining.width))),this.remaining.position.set(28,29);
- this.closeControl.alpha=e?1:.35,this.pages.interactiveChildren=!this.navigating,this.coin.width=this.coin.height=26,this.coin.position.set(28,76),this.seal.width=this.seal.height=26,this.seal.position.set(122,76),this.energy.width=this.energy.height=26,this.chrome.clear().moveTo(24,112).lineTo(this.width-24,112).stroke({ + this.closeControl.alpha=e?1:.35,this.pages.interactiveChildren=!this.navigating,this.coin.width=this.coin.height=26,this.coin.position.set(41,89),this.seal.width=this.seal.height=26,this.seal.position.set(122,76),this.energy.width=this.energy.height=26,this.chrome.clear().moveTo(24,112).lineTo(this.width-24,112).stroke({
+ holdHeader(t){ + this.killHeaderTweens(),void 0!==t.gold&&(this.shown.gold=t.gold),void 0!==t.energy&&(this.shown.energy=t.energy),this.updateStatus()} + rollHeader(t,i,s,e){ + const n={ + v:this.shown[t]??i} + ,h="gold"===t?this.coinText:this.energyText; + void 0!==e&&(h.textColor=e); + const r=zk.to(n,{ + v:i,duration:s,ease:"power1.out",onUpdate:qt(()=>{ + this.shown[t]=Math.round(n.v),this.updateStatus()} + ,"onUpdate"),onComplete:qt(()=>{ + this.shown[t]=null,this.resetHeaderColors(),this.updateStatus()} + ,"onComplete")} + ); + this.headerTweens.push(r)} + resetHeaderColors(){ + this.coinText.textColor=u_i.accent,this.energyText.textColor=u_i.text} + releaseHeader(){ + this.killHeaderTweens(),this.shown={ + gold:null,energy:null} + ,this.updateStatus()} + headerAnchor(t){ + const i="gold"===t?this.coin:this.energy; + return new _i(i.x,i.y)} + pulseHeader(t){ + const i="gold"===t?this.coin:this.energy; + i.width=i.height=26; + const s=i.scale.x,e=i.scale.y; + zk.killTweensOf(i.scale); + const n=zk.fromTo(i.scale,{ + x:1.45*s,y:1.45*e} + ,{ + x:s,y:e,duration:.28,ease:"back.out(3)"} + ); + this.headerTweens.push(n)} + killHeaderTweens(){ + for(const t of this.headerTweens)t.kill(); + this.headerTweens=[],this.resetHeaderColors(),this.coin.width=this.coin.height=26,this.energy.width=this.energy.height=26}
- this.pages.removeChildren(),this.activePage=null,super.hideImmediately()} + this.releaseHeader(),this.pages.removeChildren(),this.activePage=null,super.hideImmediately()}
BaseMap 5 hunks, 39 statements
- Xt(this,"placements",[]),Xt(this,"objects",[]),Xt(this,"currentSeason",HB.SPRING)} - load(t){ - this.clear(),this.placements=this.generatePlacements(),this.spawnObjects(),this.applySeason(t,!0)} - applySeason(i,s=!1){ - if(this.currentSeason!==i||s){ - this.currentSeason=i,kB.getInstance().setSingleBackground(`images/bg/bg${ + Xt(this,"placements",[]),Xt(this,"objects",[]),Xt(this,"currentSeason",kB.SPRING),Xt(this,"currentRealm",xB.FOREST),Xt(this,"requestedRealm",xB.FOREST)} + static preloadDeadLand(){ + return t.deadBackgroundsLoaded?Promise.resolve():(t.deadLoading||(t.deadLoading=Promise.all(t.DEAD_SEASONS.map(i=>eS.getSingleTexture(`${ + t.DEAD_DIR} + /bg${ + i} + .png`))).then(()=>{ + t.deadBackgroundsLoaded=!0} + ).catch(i=>{ + throw t.deadLoading=null,i} + )),t.deadLoading)} + load(t,i=xB.FOREST){ + this.clear(),this.placements=this.generatePlacements(),this.spawnObjects(),this.applySeason(t,!0,i)} + applySeason(i,s=!1,e=this.requestedRealm){ + if(this.requestedRealm=e,this.currentSeason!==i||this.currentRealm!==e||s)return e!==xB.DEAD_LAND||t.deadBackgroundsLoaded?void this.applyLook(i,s,e):(this.applyLook(i,s,xB.FOREST),void t.preloadDeadLand().then(()=>{ + this.requestedRealm===xB.DEAD_LAND&&this.applyLook(this.currentSeason,!0,xB.DEAD_LAND)} + ).catch(t=>{ + } + ))} + applyLook(i,s,e){ + this.currentSeason=i,this.currentRealm=e,DB.getInstance().setSingleBackground(e===xB.DEAD_LAND?`${ + t.DEAD_DIR} + /bg${ + i} + .png`:`images/bg/bg${
- const e=this.placements[s],n=this.getTextureName(e.type,i); - this.objects[s].setTexture(t.GAME_SHEET,n)} + const s=this.placements[n]; + e===xB.DEAD_LAND?this.objects[n].texture=this.getDeadTexture(s.type,n,i):this.objects[n].setTexture(t.GAME_SHEET,this.getTextureName(s.type,i))}
- }
+ getRealm(){ + return this.requestedRealm} + getDeadTexture(i,s,e){ + if(4===i)return eS.getTexture(t.GAME_SHEET,t.DEAD_SMALL[s%t.DEAD_SMALL.length]); + const n=(i+s)%2+1; + return eS.getTexture(t.GAME_SHEET,`deadTree${ + e} + ${ + n} + `)}
- qt(wli,"BaseMap"),Xt(wli,"GAME_SHEET","Game"),Xt(wli,"FIELD_SIZE",640),Xt(wli,"EDGE_MARGIN",100),Xt(wli,"SAFE_RADIUS",180),Xt(wli,"NIGHT_TINT",5070984),Xt(wli,"DAY_TINT",16777215); + qt(Zli,"BaseMap"),Xt(Zli,"GAME_SHEET","Game"),Xt(Zli,"FIELD_SIZE",640),Xt(Zli,"EDGE_MARGIN",100),Xt(Zli,"SAFE_RADIUS",180),Xt(Zli,"NIGHT_TINT",7373467),Xt(Zli,"DAY_TINT",16777215),Xt(Zli,"DEAD_DIR","images/bg/deadland"),Xt(Zli,"DEAD_SEASONS",[kB.SPRING,kB.SUMMER,kB.AUTUMN,kB.WINTER]),Xt(Zli,"DEAD_SMALL",["grave1","grave2","bones1"]),Xt(Zli,"deadBackgroundsLoaded",!1),Xt(Zli,"deadLoading",null);
MiniAscentModeSwitch 1 hunks, 37 statements
+ constructor(i,s){ + super(),Xt(this,"bg",new Ff),Xt(this,"pill",new Ff),Xt(this,"segments",[]),Xt(this,"enabled",!0),Xt(this,"onSelect",null); + const e=t.WIDTH,n=t.HEIGHT,h=e/2; + this.bg.eventMode=this.pill.eventMode="none",this.addChild(this.bg,this.pill),[i,s].forEach((t,i)=>{ + const s=new He,e=new SD(t,u_i.muted,{ + ...OL.DEFAULT_FONT_OPTION_16,fontSize:19,lineHeight:24} + ),r=(new Ff).moveTo(3,8).arc(7,8,4,Math.PI,0).stroke({ + color:16777215,width:2} + ).roundRect(0,7,14,10,2).fill(16777215); + e.eventMode=r.eventMode="none",s.addChild(e,r),s.x=i*h,s.eventMode="static",s.cursor="pointer",s.hitArea=new Di(0,0,h,n),s.on("pointertap",t=>{ + var s; + t.stopPropagation(),this.enabled&&(MG.getInstance().playSFX(MG.SFX_NORMAL_CLICK),null==(s=this.onSelect)||s.call(this,1===i))} + ),this.addChild(s),this.segments.push({ + root:s,label:e,lock:r} + )} + ),this.bg.roundRect(0,0,e,n,n/2).fill({ + color:1775380,alpha:.9} + ).stroke({ + color:u_i.border,width:1.5} + )} + update(i,s,e){ + const n=t.WIDTH,h=t.HEIGHT,r=n/2; + this.enabled=e,this.alpha=e?1:.6,this.pill.clear().roundRect((i?r:0)+4,4,r-8,h-8,(h-8)/2).fill(i?7024166:u_i.surfaceSelected).stroke({ + color:i?12609626:u_i.accent,width:1.5} + ),this.segments.forEach(({ + label:t,lock:e} + ,n)=>{ + const o=1===n===i,a=1===n&&!s; + t.textColor=o?1===n?16770010:u_i.accent:a?u_i.subtle:u_i.muted,e.visible=a,e.tint=u_i.subtle; + const c=a?20:0,l=(r-(c+t.width))/2; + e.position.set(l,(h-17)/2),t.position.set(l+c,(h-t.height)/2)} + )} + } + ; + qt(JLi,"MiniAscentModeSwitch"),Xt(JLi,"WIDTH",260),Xt(JLi,"HEIGHT",44); + let QLi=JLi; + const ZLi=class t extends He{
HelpDetailPopup 8 hunks, 29 statements
- super(),Xt(this,"paperContainer",new He),Xt(this,"paperTop"),Xt(this,"paperMiddle"),Xt(this,"paperBottom"),Xt(this,"imageSprite",new je),Xt(this,"lblDesc",new yD("",3811866,IL.DEFAULT_FONT_OPTION_18)),Xt(this,"btnPrev"),Xt(this,"btnNext"),Xt(this,"btnPrevBg"),Xt(this,"btnNextBg"),Xt(this,"btnPrevIcon"),Xt(this,"btnNextIcon"),Xt(this,"btnCloseCustom",new hYt),Xt(this,"subs",[]),Xt(this,"subIndex",0),Xt(this,"hideBtnClose",!1),Xt(this,"onHideHandler",null),this.width=t.POPUP_WIDTH,this.height=t.POPUP_HEIGHT,this.bg.visible=!1,this.top.visible=!1,this.bottom.visible=!1,this.buildPaperBackground(),this.addChild(this.paperContainer),this.imageSprite.anchor.set(.5,.5),this.addChild(this.imageSprite),this.lblDesc.wordWrap=!0,this.lblDesc.wordWrapWidth=t.DESC_WRAP_WIDTH,this.lblDesc.align="center",this.addChild(this.lblDesc),this.buildNavButtons(),this.addChild(this.btnPrev),this.addChild(this.btnNext),this.btnClose.visible=!1,this.btnCloseCustom.x=t.POPUP_WIDTH-this.btnCloseCustom.width-t.CLOSE_BTN_RIGHT_PAD,this.btnCloseCustom.y=t.CLOSE_BTN_TOP_PAD,this.btnCloseCustom.onClick=()=>this.hide(),this.addChild(this.btnCloseCustom),this.bringFrontFurniture(),this.outSideClickHide=!0} + super(),Xt(this,"paperContainer",new He),Xt(this,"paperTop"),Xt(this,"paperMiddle"),Xt(this,"paperBottom"),Xt(this,"imageSprite",new je),Xt(this,"lblTitle",new SD("",t.TEXT_COLOR,{ + ...OL.DEFAULT_FONT_OPTION_18,fontSize:32,lineHeight:40} + )),Xt(this,"lblDesc",new SD("",t.TEXT_COLOR,{ + ...OL.DEFAULT_FONT_OPTION_18,fontSize:24,lineHeight:34} + )),Xt(this,"dots",new Ff),Xt(this,"lblNextOk",new SD("",16777215,OL.WHITE_OUTLINE_FONT_OPTION_22)),Xt(this,"btnPrev"),Xt(this,"btnNext"),Xt(this,"btnPrevBg"),Xt(this,"btnNextBg"),Xt(this,"btnPrevIcon"),Xt(this,"btnNextIcon"),Xt(this,"btnCloseCustom",new SYt),Xt(this,"subs",[]),Xt(this,"subIndex",0),Xt(this,"hideBtnClose",!1),Xt(this,"onHideHandler",null),this.width=t.POPUP_WIDTH,this.height=t.POPUP_HEIGHT,this.bg.visible=!1,this.top.visible=!1,this.bottom.visible=!1,this.buildPaperBackground(),this.addChild(this.paperContainer),this.txtTitle.visible=!1,this.addChild(this.lblTitle),this.imageSprite.anchor.set(.5,.5),this.addChild(this.imageSprite),this.lblDesc.wordWrap=!0,this.lblDesc.wordWrapWidth=t.DESC_WRAP_WIDTH,this.lblDesc.align="center",this.addChild(this.lblDesc),this.addChild(this.dots),this.buildNavButtons(),this.addChild(this.btnPrev),this.addChild(this.btnNext),this.btnClose.visible=!1,this.btnCloseCustom.x=t.POPUP_WIDTH-this.btnCloseCustom.width-t.CLOSE_BTN_RIGHT_PAD,this.btnCloseCustom.y=t.CLOSE_BTN_TOP_PAD,this.btnCloseCustom.onClick=()=>this.hide(),this.addChild(this.btnCloseCustom),this.bringFrontFurniture(),this.outSideClickHide=!0}
- this.btnPrev=new He,this.btnPrevBg=new je(eS.getTexture("UI_HELP","Btn_Help_01_nor")),this.btnPrevIcon=new je(eS.getTexture("UI_HELP","Icon_Help_Left")),this.btnPrev.addChild(this.btnPrevBg),this.btnPrev.addChild(this.btnPrevIcon),this.btnPrevIcon.x=.5*(this.btnPrevBg.width-this.btnPrevIcon.width),this.btnPrevIcon.y=.5*(this.btnPrevBg.height-this.btnPrevIcon.height),this.btnPrev.eventMode="dynamic",this.btnPrev.cursor="pointer",this.btnPrev.on("pointertap",()=>this.onPrev()),this.btnNext=new He,this.btnNextBg=new je(eS.getTexture("UI_HELP","Btn_Help_01_nor")),this.btnNextIcon=new je(eS.getTexture("UI_HELP","Icon_Help_Right")),this.btnNext.addChild(this.btnNextBg),this.btnNext.addChild(this.btnNextIcon),this.btnNextIcon.x=.5*(this.btnNextBg.width-this.btnNextIcon.width),this.btnNextIcon.y=.5*(this.btnNextBg.height-this.btnNextIcon.height),this.btnNext.eventMode="dynamic",this.btnNext.cursor="pointer",this.btnNext.on("pointertap",()=>this.onNext())} + this.btnPrev=new He,this.btnPrevBg=new je(eS.getTexture("UI_HELP","Btn_Help_01_nor")),this.btnPrevIcon=new je(eS.getTexture("UI_HELP","Icon_Help_Left")),this.btnPrev.addChild(this.btnPrevBg),this.btnPrev.addChild(this.btnPrevIcon),this.btnPrevIcon.x=.5*(this.btnPrevBg.width-this.btnPrevIcon.width),this.btnPrevIcon.y=.5*(this.btnPrevBg.height-this.btnPrevIcon.height),this.btnPrev.eventMode="dynamic",this.btnPrev.cursor="pointer",this.btnPrev.on("pointertap",()=>this.onPrev()),this.btnNext=new He,this.btnNextBg=new je(eS.getTexture("UI_HELP","Btn_Help_01_nor")),this.btnNextIcon=new je(eS.getTexture("UI_HELP","Icon_Help_Right")),this.btnNext.addChild(this.btnNextBg),this.btnNext.addChild(this.btnNextIcon),this.lblNextOk.text=nB.getText("COMMON_1","확인"),this.lblNextOk.x=.5*(this.btnNextBg.width-this.lblNextOk.width),this.lblNextOk.y=.5*(this.btnNextBg.height-this.lblNextOk.height),this.lblNextOk.visible=!1,this.btnNext.addChild(this.lblNextOk),this.btnNextIcon.x=.5*(this.btnNextBg.width-this.btnNextIcon.width),this.btnNextIcon.y=.5*(this.btnNextBg.height-this.btnNextIcon.height),this.btnNext.eventMode="dynamic",this.btnNext.cursor="pointer",this.btnNext.on("pointertap",()=>this.onNext())}
- const t=[this.txtTitle,this.btnCloseCustom]; + const t=[this.lblTitle,this.btnCloseCustom];
- this.subIndex<=0?this.hide():(this.subIndex--,this.applyCurrent())} + this.subIndex<=0||(this.subIndex--,this.applyCurrent())}
- this.txtTitle.text=i.title,this.txtTitle.x=.5*(t.POPUP_WIDTH-this.txtTitle.width),this.txtTitle.y=t.TITLE_Y; + this.lblTitle.text=i.title,this.lblTitle.x=.5*(t.POPUP_WIDTH-this.lblTitle.width),this.lblTitle.y=t.TITLE_LINE_Y-8-this.lblTitle.height;
- this.imageSprite.scale.set(c),this.imageSprite.x=.5*t.POPUP_WIDTH,this.imageSprite.y=n+.5*h,this.lblDesc.text=i.desc,this.lblDesc.x=.5*(t.POPUP_WIDTH-this.lblDesc.width),this.lblDesc.y=n+h+20; + this.imageSprite.scale.set(c),this.imageSprite.x=.5*t.POPUP_WIDTH,this.imageSprite.y=n+.5*h,this.lblDesc.text=i.desc,this.lblDesc.x=.5*(t.POPUP_WIDTH-this.lblDesc.width),this.lblDesc.y=n+h+18;
- this.btnPrev.x=80,this.btnPrev.y=l,this.btnNext.x=t.POPUP_WIDTH-80-this.btnNextBg.width,this.btnNext.y=l,this.btnPrev.alpha=0===this.subIndex?.4:1,this.btnNext.alpha=this.subIndex===this.subs.length-1?.4:1} + this.btnPrev.x=80,this.btnPrev.y=l,this.btnNext.x=t.POPUP_WIDTH-80-this.btnNextBg.width,this.btnNext.y=l; + const u=this.subIndex===this.subs.length-1; + this.btnPrev.alpha=0===this.subIndex?.4:1,this.btnNext.alpha=1,this.btnNextIcon.visible=!u,this.lblNextOk.visible=u,this.drawDots(l-24)} + drawDots(i){ + this.dots.clear(); + const s=this.subs.length; + if(s<2)return; + const e=.5*t.POPUP_WIDTH-20*(s-1)*.5; + for(let n=0; + n<s; + n++){ + const s=e+20*n; + n===this.subIndex?this.dots.circle(s,i,6).fill({ + color:t.TEXT_COLOR} + ):this.dots.circle(s,i,5).stroke({ + width:2,color:t.TEXT_COLOR,alpha:.5} + )} + }
- qt(rYt,"HelpDetailPopup"),Xt(rYt,"instance",null),Xt(rYt,"POPUP_WIDTH",600),Xt(rYt,"POPUP_HEIGHT",720),Xt(rYt,"IMAGE_AREA_TOP",110),Xt(rYt,"IMAGE_AREA_HEIGHT",360),Xt(rYt,"DESC_WRAP_WIDTH",500),Xt(rYt,"NAV_BTN_BOTTOM_PAD",50),Xt(rYt,"TITLE_Y",40),Xt(rYt,"CLOSE_BTN_RIGHT_PAD",20),Xt(rYt,"CLOSE_BTN_TOP_PAD",18); + qt(TYt,"HelpDetailPopup"),Xt(TYt,"instance",null),Xt(TYt,"POPUP_WIDTH",600),Xt(TYt,"POPUP_HEIGHT",720),Xt(TYt,"IMAGE_AREA_TOP",118),Xt(TYt,"IMAGE_AREA_HEIGHT",330),Xt(TYt,"DESC_WRAP_WIDTH",500),Xt(TYt,"NAV_BTN_BOTTOM_PAD",50),Xt(TYt,"TITLE_LINE_Y",72),Xt(TYt,"TEXT_COLOR",3811866),Xt(TYt,"CLOSE_BTN_RIGHT_PAD",20),Xt(TYt,"CLOSE_BTN_TOP_PAD",18);
ShopGemSubView 2 hunks, 25 statements
+ function Oqt(t,i){ + const s=nB.getText(t.getDescKey(),t.desc); + if(!i||"quest"!==i.type||"level"!==i.condType)return s; + const e=ND.getInstance().getDataByKindNum(i.targetNum); + if(!e)return s; + const n=nB.getText(e.getNameKey(),e.name); + return i.condValue<=1?UKt(GKt.missionQuestOpen,n):UKt(GKt.missionQuestLevel,n,i.condValue)} + function kqt(t){ + const i=qt((t,i)=>[Math.min(Math.max(0,t),i),i],"clamp"); + switch(t.type){ + case"quest":{ + if("level"!==t.condType||t.condValue<=1)return null; + const s=ND.getInstance().getDataByKindNum(t.targetNum); + return s?i(s.level,t.condValue):null} + case"hero":{ + const s=TR.getInstance().list.filter(t=>!!t),e=qt(i=>"enhance"===t.condType?i.enhance:i.level,"value"); + return t.targetNum<=1?i(Math.max(0,...s.map(e)),t.condValue):i(s.filter(i=>e(i)>=t.condValue).length,t.targetNum)} + case"castle":{ + if("enhance"===t.condType)return i(Cx.getInstance().castleEnhance,t.condValue); + const s=Cx.getInstance().bookList[t.targetNum-1]; + return s&&"level"===t.condType?i(s.level,t.condValue):null} + case"maxRevive":return i(XD.maxWave,t.targetNum); + default:return null} + }
- qt(lqt,"parseCondition"),qt(uqt,"checkCondition"); + qt(Oqt,"missionDesc"),qt(kqt,"conditionProgress"),qt(Rqt,"parseCondition"),qt(xqt,"checkCondition");
MiniAscentService 1 hunks, 24 statements
+ async sweep(t,i){ + return this.post(aP.MINI_ASCENT.SWEEP,{ + chapter:t,...i?{ + hard:!0} + :{ + } + } + ,!0)} + async devClearChapter(t,i){ + return this.post(aP.MINI_ASCENT.DEV_CLEAR_CHAPTER,{ + ...t?{ + chapter:t} + :{ + } + ,...i?{ + hard:!0} + :{ + } + } + ,!0)} + async devGrantEnergy(){ + return this.post(aP.MINI_ASCENT.DEV_GRANT_ENERGY,{ + } + ,!0)}
NpcDialogueToast 6 hunks, 23 statements
- super(),Xt(this,"frameLeft"),Xt(this,"frameRight"),Xt(this,"npcIcon"),Xt(this,"lblName"),Xt(this,"lblMessage"),Xt(this,"bg"),Xt(this,"timeCount",0),Xt(this,"isFadingOut",!1),Xt(this,"currentPosition",1),Xt(this,"queue",[]),Xt(this,"textureLoaded",!1),Xt(this,"onCompleteHandler",null),this.eventMode="none",this.bg=new TD,this.bg.alpha=.6,this.bg.setIndex(7),this.addChild(this.bg),this.frameLeft=new je,this.addChild(this.frameLeft),this.npcIcon=new je,this.addChild(this.npcIcon),this.lblName=new yD("",16768324,IL.DEFAULT_OUTLINE_FONT_OPTION_17),this.addChild(this.lblName),this.lblMessage=new yD("",IL.COLOR_WHITE,IL.DEFAULT_FONT_OPTION_16),this.addChild(this.lblMessage),this.frameRight=new je,this.addChild(this.frameRight)} + super(),Xt(this,"frameLeft"),Xt(this,"frameRight"),Xt(this,"npcIcon"),Xt(this,"lblName"),Xt(this,"lblMessage"),Xt(this,"bg"),Xt(this,"timeCount",0),Xt(this,"isFadingOut",!1),Xt(this,"shownFrames",0),Xt(this,"lblHint"),Xt(this,"_tapToAdvance",!1),Xt(this,"currentPosition",1),Xt(this,"queue",[]),Xt(this,"textureLoaded",!1),Xt(this,"onCompleteHandler",null),this.eventMode="none",this.bg=new CD,this.bg.alpha=.6,this.bg.setIndex(7),this.addChild(this.bg),this.frameLeft=new je,this.addChild(this.frameLeft),this.npcIcon=new je,this.addChild(this.npcIcon),this.lblName=new SD("",16768324,OL.DEFAULT_OUTLINE_FONT_OPTION_17),this.addChild(this.lblName),this.lblMessage=new jg({ + text:"",style:{ + ...t.MESSAGE_STYLE,fill:OL.COLOR_WHITE,tagStyles:FKt} + } + ),this.addChild(this.lblMessage),this.frameRight=new je,this.addChild(this.frameRight),this.lblHint=new SD("",13350539,{ + ...OL.DEFAULT_FONT_OPTION_18,fontSize:14,lineHeight:18} + ),this.lblHint.visible=!1,this.addChild(this.lblHint),this.on("pointertap",this.onTap,this)}
- async showDialogues(i){ - if(0!==i.length&&bD.getInstance().npcDialogue){ + set tapToAdvance(t){ + this._tapToAdvance=t,this.eventMode=t?"static":"none",this.hitArea=t?new Di(-3e3,-3e3,6e3,6e3):null,this.lblHint.visible=t,t&&(this.lblHint.text=BKt(GKt.tapToContinue)+" ▼"),this.parent&&this.relayout()} + onTap(){ + !this._tapToAdvance||this.timeCount<=0||this.isFadingOut||this.shownFrames<12||(this.timeCount=Math.min(this.timeCount,6),this.isFadingOut=!0)} + async showDialogues(i,s=!1){ + if(0!==i.length&&(s||ED.getInstance().npcDialogue)){
- this.npcIcon.scale.set(r),this.lblName.text=t.getNpcName(i),IL.setLabelWrapWidth(this.lblMessage,480),this.lblMessage.text=s,this.relayout(),this.alpha=0,this.timeCount=e,this.isFadingOut=!1,FM.getInstance().remove(this.onFrame,this),FM.getInstance().add(this.onFrame,this),xoi.getInstance().addChild(this)} + this.npcIcon.scale.set(r),this.lblName.text=t.getNpcName(i),this.lblMessage.text=HKt(s,t.MESSAGE_STYLE,t.MESSAGE_WIDTH),this.relayout(),this.alpha=0,this.timeCount=e,this.isFadingOut=!1,this.shownFrames=0,FM.getInstance().remove(this.onFrame,this),FM.getInstance().add(this.onFrame,this),tai.getInstance().addChild(this)}
- const i=t.PAD,s=2===this.currentPosition,e=520,n=this.lblMessage.height+2*i+16,h=this.npcIcon.scale.x,r=this.npcIcon.texture.width*h,o=this.npcIcon.texture.height*h; + const i=t.PAD,s=2===this.currentPosition,e=520,n=this.lblHint.visible?this.lblHint.height:0,h=this.lblMessage.height+2*i+16+n,r=this.npcIcon.scale.x,o=this.npcIcon.texture.width*r,a=this.npcIcon.texture.height*r;
- s?(this.npcIcon.scale.x=-Math.abs(h),this.npcIcon.x=e-i,this.npcIcon.y=a,this.lblName.x=this.npcIcon.x-r-this.lblName.width+6,this.lblName.y=-this.lblName.height-4,this.lblMessage.x=.5*(e-this.lblMessage.width),this.lblMessage.y=.5*(n-this.lblMessage.height)):(this.npcIcon.scale.x=Math.abs(h),this.npcIcon.x=i,this.npcIcon.y=a,this.lblName.x=this.npcIcon.x+r-6,this.lblName.y=-this.lblName.height-4,this.lblMessage.x=.5*(e-this.lblMessage.width),this.lblMessage.y=.5*(n-this.lblMessage.height)),this.x=.5*(Xy.stageWidth-e),this.y=460} + s?(this.npcIcon.scale.x=-Math.abs(r),this.npcIcon.x=e-i,this.npcIcon.y=c,this.lblName.x=this.npcIcon.x-o-this.lblName.width+6,this.lblName.y=-this.lblName.height-4,this.lblMessage.x=.5*(e-this.lblMessage.width),this.lblMessage.y=.5*(h-this.lblMessage.height)):(this.npcIcon.scale.x=Math.abs(r),this.npcIcon.x=i,this.npcIcon.y=c,this.lblName.x=this.npcIcon.x+o-6,this.lblName.y=-this.lblName.height-4,this.lblMessage.x=.5*(e-this.lblMessage.width),this.lblMessage.y=.5*(h-this.lblMessage.height)),this.lblHint.visible&&(this.lblMessage.y=.5*(h-n-this.lblMessage.height),this.lblHint.x=e-i-4-this.lblHint.width,this.lblHint.y=h-i-this.lblHint.height+2),this.x=.5*(Xy.stageWidth-e),this.y=460}
- nG.getInstance().hasPopup?this.visible=!1:(this.visible=!0,this.alpha<1&&!this.isFadingOut&&(this.alpha+=1/t.FADE_IN_FRAMES,this.alpha>1&&(this.alpha=1)),this.timeCount<=t.FADE_OUT_FRAMES&&!this.isFadingOut&&(this.isFadingOut=!0),this.isFadingOut&&(this.alpha-=1/t.FADE_OUT_FRAMES,this.alpha<0&&(this.alpha=0)),this.timeCount--,this.timeCount<=0&&(FM.getInstance().remove(this.onFrame,this),this.queue.length>0?this.playNext():(this.parent&&this.parent.removeChild(this),this.onCompleteHandler&&(this.onCompleteHandler(),this.onCompleteHandler=null))))} + if(hG.getInstance().hasPopup)this.visible=!1; + else if(this.visible=!0,this.shownFrames++,this.alpha<1&&!this.isFadingOut&&(this.alpha+=1/t.FADE_IN_FRAMES,this.alpha>1&&(this.alpha=1)),this.timeCount<=t.FADE_OUT_FRAMES&&!this.isFadingOut&&(this.isFadingOut=!0),this.isFadingOut&&(this.alpha-=1/t.FADE_OUT_FRAMES,this.alpha<0&&(this.alpha=0)),this.timeCount--,this.timeCount<=0)if(FM.getInstance().remove(this.onFrame,this),this.queue.length>0)this.playNext(); + else{ + this.parent&&this.parent.removeChild(this),this._tapToAdvance&&(this.tapToAdvance=!1); + const t=this.onCompleteHandler; + this.onCompleteHandler=null,t&&t()} + }
BackgroundLayer 6 hunks, 19 statements
+ var kB=(t=>(t[t.SPRING=1]="SPRING",t[t.SUMMER=2]="SUMMER",t[t.AUTUMN=3]="AUTUMN",t[t.WINTER=4]="WINTER",t))(kB||{ + } + ); + function RB(t){ + const i=(t-1)%200; + return i<50?2:i<100?3:i<150?4:1} + qt(RB,"getSeasonForWave"); + var xB=(t=>(t[t.FOREST=1]="FOREST",t[t.DEAD_LAND=2]="DEAD_LAND",t))(xB||{ + } + ); + function PB(t){ + return t>=1e4?2:1} + qt(PB,"getRealmForWave");
- super(),Xt(this,"bg"),Xt(this,"fogOverlay",null),Xt(this,"fogFilter",null),this.eventMode="none",this.bg=new je(eS.getTexture("BG","BG1")),this.addChild(this.bg),this.bg.width=640,this.bg.height=640} + super(),Xt(this,"bg"),Xt(this,"backgroundRequestId",0),Xt(this,"fogOverlay",null),Xt(this,"fogFilter",null),this.eventMode="none",this.bg=new je(eS.getTexture("BG","BG1")),this.addChild(this.bg),this.bg.width=640,this.bg.height=640}
- this.bg.texture=eS.getTexture("BG",t),this.bg.width=640,this.bg.height=640,this.applyFogEffect("Highland"===t)} + this.backgroundRequestId++,this.bg.texture=eS.getTexture("BG",t),this.bg.width=640,this.bg.height=640,this.applyFogEffect("Highland"===t)}
+ this.backgroundRequestId++;
- const e=await eS.getSingleTexture(t); - this.bg.texture=e,this.bg.width=i,this.bg.height=s,this.applyFogEffect(!1)} + const e=++this.backgroundRequestId,n=await eS.getSingleTexture(t); + e===this.backgroundRequestId&&(this.bg.texture=n,this.bg.width=i,this.bg.height=s,this.applyFogEffect(!1))}
- this.bg.texture=eS.getTexture("BG",`BG${ + this.backgroundRequestId++,this.bg.texture=eS.getTexture("BG",`BG${
MiniAscentDeployPopup 7 hunks, 19 statements
- super(),Xt(this,"usesRunWallet",!0),Xt(this,"lblTitle"),Xt(this,"lblLevel"),Xt(this,"lblHint"),Xt(this,"field",new He),Xt(this,"map",new je),Xt(this,"mapMask",new Ff),Xt(this,"fieldChrome",new Ff),Xt(this,"versus",new je),Xt(this,"tacticLines",new Ff),Xt(this,"tacticLabels",[]),Xt(this,"tactics",[]),Xt(this,"chrome",new Ff),Xt(this,"tokenScale",1),Xt(this,"slotMarks",[]),Xt(this,"lblEmpty",[]),Xt(this,"allyTokens",[]),Xt(this,"enemyTokens",[]),Xt(this,"btnStart"),Xt(this,"btnGiveUp"),Xt(this,"btnBack"),Xt(this,"btnAuto"),Xt(this,"onAuto",null),Xt(this,"fieldW",0),Xt(this,"fieldH",0),Xt(this,"vertical",!0),Xt(this,"ally",[]),Xt(this,"formation",[]),Xt(this,"dragSlot",-1),Xt(this,"dragOffX",0),Xt(this,"dragOffY",0),Xt(this,"hoverSlot",-1),Xt(this,"busy",!1),Xt(this,"onStart",null),Xt(this,"onGiveUp",null),Xt(this,"onBack",null),Xt(this,"onFormationChange",null),this.canCloseShell=()=>!this.busy&&this.dragSlot<0,this.on("removed",()=>this.detachStage()),this.chrome.eventMode="none",this.contentContainer.addChild(this.chrome),this.lblTitle=new yD("",16767332,{ - ...IL.DEFAULT_FONT_OPTION_16,fontSize:24,lineHeight:30} + super(),Xt(this,"usesRunWallet",!0),Xt(this,"lblTitle"),Xt(this,"lblLevel"),Xt(this,"lblHint"),Xt(this,"field",new He),Xt(this,"map",new je),Xt(this,"mapMask",new Ff),Xt(this,"fieldChrome",new Ff),Xt(this,"versus",new je),Xt(this,"tacticLines",new Ff),Xt(this,"tacticLabels",[]),Xt(this,"tactics",[]),Xt(this,"chrome",new Ff),Xt(this,"tokenScale",1),Xt(this,"slotMarks",[]),Xt(this,"lblEmpty",[]),Xt(this,"allyTokens",[]),Xt(this,"enemyTokens",[]),Xt(this,"btnStart"),Xt(this,"btnGiveUp"),Xt(this,"btnBack"),Xt(this,"btnAuto"),Xt(this,"btnDevClear"),Xt(this,"onAuto",null),Xt(this,"fieldW",0),Xt(this,"fieldH",0),Xt(this,"vertical",!0),Xt(this,"ally",[]),Xt(this,"formation",[]),Xt(this,"dragSlot",-1),Xt(this,"dragOffX",0),Xt(this,"dragOffY",0),Xt(this,"hoverSlot",-1),Xt(this,"busy",!1),Xt(this,"onStart",null),Xt(this,"onGiveUp",null),Xt(this,"onDevClear",null),Xt(this,"onBack",null),Xt(this,"onFormationChange",null),this.canCloseShell=()=>!this.busy&&this.dragSlot<0,this.on("removed",()=>this.detachStage()),this.chrome.eventMode="none",this.contentContainer.addChild(this.chrome),this.lblTitle=new SD("",16767332,{ + ...OL.DEFAULT_FONT_OPTION_16,fontSize:24,lineHeight:30}
- ,this.contentContainer.addChild(this.btnAuto)} + ,this.contentContainer.addChild(this.btnAuto),this.btnDevClear=new pLi("DEV 즉시 클리어"),this.btnDevClear.width=150,this.btnDevClear.height=40,this.btnDevClear.activatedTextColor=10474495,this.btnDevClear.onClick=()=>this.devClear(),this.contentContainer.addChild(this.btnDevClear)}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:16,lineHeight:20} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:16,lineHeight:20}
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:12,lineHeight:16} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:12,lineHeight:16}
- this.lblTitle.x=(t-this.lblTitle.width)/2,this.lblTitle.y=24,this.lblLevel.x=(t-this.lblLevel.width)/2,this.lblLevel.visible=!1,this.chrome.clear(); + this.lblTitle.x=(t-this.lblTitle.width)/2,this.lblTitle.y=24,this.btnDevClear.visible=iG.getInstance().development&&!!this.onDevClear,this.btnDevClear.position.set(t-24-this.btnDevClear.width,16),this.lblLevel.x=(t-this.lblLevel.width)/2,this.lblLevel.visible=!1,this.chrome.clear();
- for(const i of[this.btnStart,this.btnGiveUp,this.btnBack,this.btnAuto])i.activated=!t; + for(const i of[this.btnStart,this.btnGiveUp,this.btnBack,this.btnAuto,this.btnDevClear])i.activated=!t;
+ devClear(){ + if(this.busy||this.dragSlot>=0||!this.onDevClear)return; + const t=this.onDevClear; + this.setBusy(!0),this.detachStage(),queueMicrotask(async()=>{ + try{ + await t()} + catch(i){ + AH.getInstance().showMessage(i.message)} + finally{ + this.setBusy(!1)} + } + )}
ClickAniLayer 4 hunks, 18 statements
- super(),Xt(this,"blocker"),Xt(this,"allowRect"),Xt(this,"highlightBorder"),Xt(this,"dimParts",[]),this.createUI()} + super(),Xt(this,"blocker"),Xt(this,"allowRect"),Xt(this,"spotlight",new jKt(.6)),Xt(this,"caption",new WKt),Xt(this,"captionSeq",0),this.createUI()}
- for(let t=0; - t<4; - t++){ - const t=new Ff; - t.alpha=.5,t.rect(0,0,1,1).fill(0),this.dimParts.push(t),this.addChild(t)} - this.blocker=new Ff,this.blocker.rect(0,0,640,Xy.stageHeight).fill(0),this.blocker.alpha=0,this.blocker.eventMode="static",this.addChild(this.blocker),this.highlightBorder=new Ff,this.addChild(this.highlightBorder),this.allowRect=new Di(0,0,0,0),this.setBlockerEnabled(!1)} + this.addChild(this.spotlight),this.blocker=new Ff,this.blocker.rect(0,0,640,Xy.stageHeight).fill(0),this.blocker.alpha=0,this.blocker.eventMode="static",this.addChild(this.blocker),this.addChild(this.caption),this.allowRect=new Di(0,0,0,0),this.setBlockerEnabled(!1)}
- this.allowRect=new Di(t,i,s,e),this.updateDim(),this.blocker.hitArea={ + this.allowRect=new Di(t,i,s,e),this.spotlight.focus(jKt.rectHole(this.allowRect,6,12)),this.blocker.hitArea={
- this.blocker.eventMode=t?"static":"none"; - for(const i of this.dimParts)i.visible=t; - this.highlightBorder.visible=t} - updateDim(){ - const t=Xy.stageHeight,{ - x:i,y:s,width:e,height:n} - =this.allowRect; - this.dimParts[0].clear().rect(0,0,640,s).fill(0),this.dimParts[1].clear().rect(0,s,i,n).fill(0),this.dimParts[2].clear().rect(i+e,s,640-(i+e),n).fill(0),this.dimParts[3].clear().rect(0,s+n,640,t-(s+n)).fill(0),this.highlightBorder.clear().rect(i,s,e,n).stroke({ - color:16776960,width:3} - )} + this.blocker.eventMode=t?"static":"none",this.spotlight.visible=t,t||(this.spotlight.reset(),this.captionSeq++,this.caption.hide())} + setCaption(t,i="S_SMI"){ + const s=++this.captionSeq; + t?WKt.load().then(()=>{ + if(s!==this.captionSeq||"none"===this.blocker.eventMode)return; + const e=this.spotlight.hole,n=e?jKt.toRect(e):this.allowRect; + this.caption.show(t,i,n,{ + width:640,height:Xy.stageHeight} + ,!1),this.addChildAt(this.caption,this.getChildIndex(this.blocker)+1)} + ):this.caption.hide()}
MiniAscentDataManager 4 hunks, 16 statements
- Xt(this,"season",null),Xt(this,"run",null),Xt(this,"relics",null),Xt(this,"crystals",null),Xt(this,"lastDefeat",null),Xt(this,"eventActive",!1),Xt(this,"stateError",null),Xt(this,"viewRevision",0),Xt(this,"viewCache",new Map),Xt(this,"viewRequests",new Map)} + Xt(this,"season",null),Xt(this,"run",null),Xt(this,"relics",null),Xt(this,"crystals",null),Xt(this,"lastDefeat",null),Xt(this,"lastClear",null),Xt(this,"eventActive",!1),Xt(this,"stateError",null),Xt(this,"viewRevision",0),Xt(this,"viewCache",new Map),Xt(this,"viewRequests",new Map)}
+ takeLastClear(){ + const t=this.lastClear; + return this.lastClear=null,t}
+ async sweep(t,i){ + return this.requestUpdate(()=>i?this.api().sweep(t,!0):this.api().sweep(t))} + async devClearChapter(t,i){ + const s=await this.requestUpdate(()=>this.api().devClearChapter(t,i)); + return this.lastDefeat=null,this.lastClear={ + chapter:s.chapter,hard:!!s.hard} + ,s} + async devGrantEnergy(){ + await this.requestUpdate(()=>this.api().devGrantEnergy())}
- return await zy.removeData(zy.KEY_MINI_ASCENT_PENDING),"CLEAR"===t.result&&(this.lastDefeat=null),"LOSE"===t.result&&(this.lastDefeat={ + return await zy.removeData(zy.KEY_MINI_ASCENT_PENDING),"CLEAR"===t.result&&(this.lastDefeat=null,this.lastClear={ + chapter:t.chapter,hard:!!t.hard} + ),"LOSE"===t.result&&(this.lastDefeat={
MissionGuide 6 hunks, 15 statements
- super(),Xt(this,"onVisibilityChanged",null),Xt(this,"bg"),Xt(this,"icon"),Xt(this,"lblGem"),Xt(this,"lblDesc"),Xt(this,"lblTitle"),Xt(this,"gem"),Xt(this,"onClaim",null),this.bg=new kM({ + super(),Xt(this,"onVisibilityChanged",null),Xt(this,"bg"),Xt(this,"icon"),Xt(this,"lblGem"),Xt(this,"lblDesc"),Xt(this,"lblTitle"),Xt(this,"lblProgress"),Xt(this,"gem"),Xt(this,"onClaim",null),Xt(this,"progressText",""),Xt(this,"isDone",!1),this.bg=new kM({
- ),this.bg.x=20,this.bg.width=380,this.bg.height=60,this.bg.alpha=.3,this.addChild(this.bg),this.icon=new je(eS.getTexture("UI_Ekkorr","UI_SKILL_BASE")),this.icon.x=0,this.icon.y=0,this.addChild(this.icon),this.gem=new je(eS.getTexture("UI_Ekkorr","UI_GEM")),this.gem.x=this.icon.x+.5*(this.icon.width-this.gem.width),this.gem.y=this.icon.y+.28*(this.icon.height-this.gem.height),this.addChild(this.gem),this.lblGem=new yD("10",52377,IL.DEFAULT_OUTLINE_FONT_OPTION_16),this.lblGem.textColor=IL.COLOR_DEEP_SKYBLUE,this.lblGem.x=.5*(this.icon.width-this.lblGem.width),this.lblGem.y=this.icon.height-this.lblGem.height-12,this.addChild(this.lblGem),this.lblTitle=new yD("[ 미션 - 1 ]",52377,IL.DEFAULT_OUTLINE_FONT_OPTION_16),this.lblTitle.textColor=IL.DEFAULT_COLOR,this.lblTitle.x=this.icon.x+this.icon.width,this.lblTitle.y=9,this.addChild(this.lblTitle),this.lblDesc=new yD("1번 퀘스트 레벨 5 달성",52377,IL.DEFAULT_OUTLINE_FONT_OPTION_16),this.lblDesc.textColor=IL.DEFAULT_COLOR,this.lblDesc.x=this.lblTitle.x,this.lblDesc.y=this.lblTitle.y+this.lblTitle.height+1,this.addChild(this.lblDesc),this.activated=!1,super.visible=!1,this.eventMode="static",this.cursor="pointer",this.on("pointertap",this.onClick,this)} + ),this.bg.x=20,this.bg.width=380,this.bg.height=60,this.bg.alpha=.3,this.addChild(this.bg),this.icon=new je(eS.getTexture("UI_Ekkorr","UI_SKILL_BASE")),this.icon.x=0,this.icon.y=0,this.addChild(this.icon),this.gem=new je(eS.getTexture("UI_Ekkorr","UI_GEM")),this.gem.anchor.set(.5),this.gem.x=this.icon.x+.5*this.icon.width,this.gem.y=this.icon.y+.28*(this.icon.height-this.gem.height)+.5*this.gem.height,this.addChild(this.gem),this.lblGem=new SD("10",52377,OL.DEFAULT_OUTLINE_FONT_OPTION_16),this.lblGem.textColor=OL.COLOR_DEEP_SKYBLUE,this.lblGem.x=.5*(this.icon.width-this.lblGem.width),this.lblGem.y=this.icon.height-this.lblGem.height-12,this.addChild(this.lblGem),this.lblTitle=new SD("[ 미션 - 1 ]",52377,OL.DEFAULT_OUTLINE_FONT_OPTION_16),this.lblTitle.textColor=OL.DEFAULT_COLOR,this.lblTitle.x=this.icon.x+this.icon.width,this.lblTitle.y=9,this.addChild(this.lblTitle),this.lblDesc=new SD("1번 퀘스트 레벨 5 달성",52377,OL.DEFAULT_OUTLINE_FONT_OPTION_16),this.lblDesc.textColor=OL.DEFAULT_COLOR,this.lblDesc.x=this.lblTitle.x,this.lblDesc.y=this.lblTitle.y+this.lblTitle.height+1,this.addChild(this.lblDesc),this.lblProgress=new SD("",16765786,OL.DEFAULT_OUTLINE_FONT_OPTION_16),this.lblProgress.y=this.lblTitle.y,this.addChild(this.lblProgress),this.activated=!1,super.visible=!1,this.eventMode="static",this.cursor="pointer",this.on("pointertap",this.onClick,this)}
- const t=this.gem.getGlobalPosition(),i=Xy.stage.toLocal(t),s=i.x+.5*this.gem.width-14,e=i.y+.5*this.gem.height-20; + const t=this.gem.getGlobalPosition(),i=Xy.stage.toLocal(t),s=i.x-14,e=i.y-20;
- setData(t){ + setData(t,i){
- ]`,this.lblDesc.text=sB.getText(t.getDescKey(),t.desc)} + ]`,this.lblDesc.text=i??nB.getText(t.getDescKey(),t.desc),this.lblProgress.x=this.lblTitle.x+this.lblTitle.width+8,this.progressText="",this.lblProgress.text=""} + setProgress(t){ + const i=this.isDone?nB.getText("COMMON_319","완료")+"!":t?`${ + t[0]} + /${ + t[1]} + `:""; + i!==this.progressText&&(this.progressText=i,this.lblProgress.text=i,this.lblProgress.textColor=this.isDone?8257386:16765786)}
- 1==t?(this.bg.tint=16777215,this.icon.tint=16777215,this.gem.tint=16777215,this.lblGem.textColor=IL.COLOR_DEEP_SKYBLUE):(this.bg.tint=10066329,this.icon.tint=10066329,this.gem.tint=10066329,this.lblGem.textColor=10066329)} + this.isDone=t,zk.killTweensOf(this.gem.scale),this.gem.scale.set(1),t&&zk.to(this.gem.scale,{ + x:1.18,y:1.18,duration:.45,ease:"sine.inOut",yoyo:!0,repeat:-1} + ),this.progressText="\0",this.setProgress(null),1==t?(this.bg.tint=16777215,this.icon.tint=16777215,this.gem.tint=16777215,this.lblGem.textColor=OL.COLOR_DEEP_SKYBLUE):(this.bg.tint=10066329,this.icon.tint=10066329,this.gem.tint=10066329,this.lblGem.textColor=10066329)}
BattleController 6 hunks, 15 statements
- this.isFirstWave=!0,this.initRandom(),g0.reset(),this.map.load($B(qD.wave)),QB.getInstance().updateSeason(this.map.getSeason(),!0),_U.getInstance().setTimeOfDay(qD.wave,!0),this.reviveGoldBuff=Math.max(1,Math.min(3,1+.2*qD.numRevive)),this.player=await H3.getInstance().getUnit(Cx.getInstance().castleVO.className),this.player.battleController=this,this.player.id=0,this.player.numShot=1,Cx.getInstance().castleVO.extraLevel=Ux.getCitadelOwnershipTotalWithAwakening(GR.CastleLevelUp),this.player.setData(Cx.getInstance().castleVO),this.player.numBlock=0; + this.isFirstWave=!0,this.initRandom(),y0.reset(),this.map.load(RB(XD.wave),PB(XD.wave)),sU.getInstance().updateSeason(this.map.getSeason(),!0),IU.getInstance().setTimeOfDay(XD.wave,!0),this.reviveGoldBuff=Math.max(1,Math.min(3,1+.2*XD.numRevive)),this.player=await X3.getInstance().getUnit(Cx.getInstance().castleVO.className),this.player.battleController=this,this.player.id=0,this.player.numShot=1,Cx.getInstance().castleVO.extraLevel=Fx.getCitadelOwnershipTotalWithAwakening(GR.CastleLevelUp),this.player.setData(Cx.getInstance().castleVO),this.player.numBlock=0;
+ markDialogueWaveShown(t){ + this.shownDialogueWaves.add(t)}
- this.map.load($B(qD.wave)),QB.getInstance().updateSeason(this.map.getSeason(),!0),this.player=await H3.getInstance().getUnit(Cx.getInstance().castleVO.className),this.player.battleController=this,this.player.id=0,this.player.numShot=1,Cx.getInstance().castleVO.extraLevel=Ux.getCitadelOwnershipTotalWithAwakening(GR.CastleLevelUp),this.player.setData(Cx.getInstance().castleVO),this.player.numBlock=0,this.player.orgMaxHp=this.player.maxHp=this.player.baseMaxHp,this.player.hp=this.player.maxHp,this.player.x=this.player.xDefault=320,this.player.y=this.player.yDefault=320,this.player.initDelay=5,this.player.hasTextEffect=!1,this.friendList.push(this.player),this.player.enemyList=this.enemyList,this.player.allyList=this.friendList,BB.getInstance().addChild(this.player),Yci.getInstance().updateDay(0); + this.map.load(RB(XD.wave),PB(XD.wave)),sU.getInstance().updateSeason(this.map.getSeason(),!0),this.player=await X3.getInstance().getUnit(Cx.getInstance().castleVO.className),this.player.battleController=this,this.player.id=0,this.player.numShot=1,Cx.getInstance().castleVO.extraLevel=Fx.getCitadelOwnershipTotalWithAwakening(GR.CastleLevelUp),this.player.setData(Cx.getInstance().castleVO),this.player.numBlock=0,this.player.orgMaxHp=this.player.maxHp=this.player.baseMaxHp,this.player.hp=this.player.maxHp,this.player.x=this.player.xDefault=320,this.player.y=this.player.yDefault=320,this.player.initDelay=5,this.player.hasTextEffect=!1,this.friendList.push(this.player),this.player.enemyList=this.enemyList,this.player.allyList=this.friendList,VB.getInstance().addChild(this.player),xli.getInstance().updateDay(0);
- if(0==qD.numRevive&&Goi.getInstance().startTutorial(),qD.wave>=500)this.enemyHpRatio=1,this.enemyAtkRatio=1,this.enemyMoveSpdRatio=1; + if(0==XD.numRevive?_ai.getInstance().startTutorial():1==XD.numRevive&&XD.wave>=10&&_ai.getInstance().showReviveAnytimeHint(),XD.wave>=500)this.enemyHpRatio=1,this.enemyAtkRatio=1,this.enemyMoveSpdRatio=1;
- for(const i of this.skippedWaves)this.shownDialogueWaves.has(i)||(t.push(...LKt.getInstance().getByWave(i)),this.shownDialogueWaves.add(i)); - this.shownDialogueWaves.has(qD.wave)||(t.push(...LKt.getInstance().getByWave(qD.wave)),this.shownDialogueWaves.add(qD.wave)),t.length>0&&Loi.getInstance().showDialogues(t)} + for(const i of this.skippedWaves)this.shownDialogueWaves.has(i)||(t.push(...ZKt.getInstance().getByWave(i)),this.shownDialogueWaves.add(i)); + this.shownDialogueWaves.has(XD.wave)||(t.push(...ZKt.getInstance().getByWave(XD.wave)),this.shownDialogueWaves.add(XD.wave)),t.length>0&&eai.getInstance().showDialogues(t)}
- const s=$B(qD.wave); - this.map.applySeason(s),QB.getInstance().updateSeason(this.map.getSeason()); + const s=RB(XD.wave),e=PB(XD.wave); + XD.wave>=9950&&tui.preloadDeadLand().catch(t=>{ + } + ),e!==this.map.getRealm()?IU.getInstance().playRealmTransition(async()=>{ + await tui.preloadDeadLand().catch(()=>{ + } + ),this.map.applySeason(s,!0,e),IU.getInstance().setTimeOfDay(XD.wave,!0),sU.getInstance().updateSeason(this.map.getSeason(),!0)} + ):(this.map.applySeason(s),sU.getInstance().updateSeason(this.map.getSeason()));
MiniAscentFlow 1 hunks, 15 statements
+ ,o.onDevClear=async()=>{ + var t; + if(!this.busy&&a&&(null==(t=n.run)?void 0:t.runId)===a){ + this.busy=!0,this.stopAutoBattle(); + try{ + const t=await n.devClearChapter(); + AH.getInstance().showMessage(`[DEV] ${ + t.hard?"하드 ":""} + 챕터 ${ + t.chapter} + 클리어`),await this.backToLobby()} + finally{ + this.busy=!1} + } + }
ShopDataManager 3 hunks, 12 statements
+ static miniAscentEnergyReward(t){ + var i; + return null==(i=t.rewards)?void 0:i.find(t=>"instant"===t.type&&"miniAscentEnergy"===t.subType)}
- getRewardMessage(t){ + getRewardMessage(i,s){
- return t.includes("buff:ads")&&i.push(sB.getText("GAME_348","광고 제거 상품이 적용되었습니다.")),t.includes("buff:speed")&&i.push(sB.getText("GAME_349","2배속 상품이 적용되었습니다.")),t.includes("buff:assistant")&&i.push(sB.getText("GAME_1242","전문비서가 고용되었습니다.")),t.includes("pass")&&i.push(sB.getText("GAME_350","WAVE 패스가 활성화되었습니다.")),t.includes("mail")&&i.push(sB.getText("GAME_351","상품이 메일로 전송되었습니다.")),0==i.length&&i.push(sB.getText("GAME_347","상품이 지급되었습니다.")),i.join("\n")} + if(i.includes("buff:ads")&&e.push(nB.getText("GAME_348","광고 제거 상품이 적용되었습니다.")),i.includes("buff:speed")&&e.push(nB.getText("GAME_349","2배속 상품이 적용되었습니다.")),i.includes("buff:assistant")&&e.push(nB.getText("GAME_1242","전문비서가 고용되었습니다.")),i.includes("pass")&&e.push(nB.getText("GAME_350","WAVE 패스가 활성화되었습니다.")),i.includes("instant:miniAscentEnergy")){ + const i=void 0!==s?this.getByProductId(s):void 0,n=i?t.miniAscentEnergyReward(i):void 0; + e.push(n?nB.getText("GAME_1886","군단 도전 에너지가 바로 충전되었습니다. (+{ + 0} + )").split("{ + 0} + ").join(String(n.amount)):nB.getText("GAME_347","상품이 지급되었습니다."))} + return i.includes("mail")&&e.push(nB.getText("GAME_351","상품이 메일로 전송되었습니다.")),0==e.length&&e.push(nB.getText("GAME_347","상품이 지급되었습니다.")),e.join("\n")}
MiniAscentRelicsPage 11 hunks, 12 statements
- armyStartLevel:"RELIC_ARMY_START_LEVEL",armyAttackSpeed:"RELIC_ARMY_ATTACK_SPEED",armyMoveSpeed:"RELIC_ARMY_MOVE_SPEED",life:"RELIC_LIFE",soldierLevel:"RELIC_SOLDIER_LEVEL",heroLevel:"RELIC_HERO_LEVEL",startGold:"RELIC_START_GOLD",clearGold:"RELIC_CLEAR_GOLD",sealBonus:"RELIC_SEAL_BONUS",soldierCount:"RELIC_SOLDIER_COUNT",levelGain:"RELIC_LEVEL_GAIN",fifthLegion:"RELIC_FIFTH_LEGION",soldierChange:"RELIC_SOLDIER_CHANGE"} + armyStartLevel:"RELIC_ARMY_START_LEVEL",armyAttackSpeed:"RELIC_ARMY_ATTACK_SPEED",armyMoveSpeed:"RELIC_ARMY_MOVE_SPEED",life:"RELIC_LIFE",soldierLevel:"RELIC_SOLDIER_LEVEL",heroLevel:"RELIC_HERO_LEVEL",startGold:"RELIC_START_GOLD",clearGold:"RELIC_CLEAR_GOLD",sealBonus:"RELIC_SEAL_BONUS",soldierCount:"RELIC_SOLDIER_COUNT",levelGain:"RELIC_LEVEL_GAIN",fifthLegion:"RELIC_FIFTH_LEGION",soldierChange:"RELIC_SOLDIER_CHANGE",soldierCap:"CRYSTAL_CAPACITY"}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:e,lineHeight:e+5} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:e,lineHeight:e+5}
- soldierLevel:0,soldierCount:1,heroLevel:2,armyStartLevel:3,armyAttackSpeed:4,armyMoveSpeed:5} - ,h=[...s.items].sort((t,i)=>(n[t.effect]??6)-(n[i.effect]??6)||(t.corp??0)-(i.corp??0)),r=Math.ceil(h.length/5),o=e?188:204,a=this.height-182,c=Math.max(24,Math.floor(Math.min(96,(this.width-56-72)/5,(a-o-18*(r-1))/Math.max(1,r)))),l=r*c+18*Math.max(0,r-1),u=o+Math.max(0,(a-o-l)/2); + soldierLevel:0,soldierCount:1,soldierCap:2,heroLevel:3,armyStartLevel:4,armyAttackSpeed:5,armyMoveSpeed:6} + ,h=[...s.items].sort((t,i)=>(n[t.effect]??7)-(n[i.effect]??7)||(t.corp??0)-(i.corp??0)),r=Math.ceil(h.length/5),o=e?188:204,a=this.height-182,c=Math.max(24,Math.floor(Math.min(96,(this.width-56-72)/5,(a-o-18*(r-1))/Math.max(1,r)))),l=r*c+18*Math.max(0,r-1),u=o+Math.max(0,(a-o-l)/2);
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:18} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:18}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:20,lineHeight:22,fontWeight:"900",stroke:{ + ...OL.DEFAULT_FONT_OPTION_16,fontSize:20,lineHeight:22,fontWeight:"900",stroke:{
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:16,lineHeight:19,fontWeight:"900",stroke:{ + ...OL.DEFAULT_FONT_OPTION_16,fontSize:16,lineHeight:19,fontWeight:"900",stroke:{
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:17,lineHeight:20,fontWeight:"900",stroke:{ + ...OL.DEFAULT_FONT_OPTION_16,fontSize:17,lineHeight:20,fontWeight:"900",stroke:{
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:s,lineHeight:s+5} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:s,lineHeight:s+5}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:23} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:23}
- const s=["sealBonus","armyAttackSpeed","armyMoveSpeed"].includes(t.effect)?"%":""; + const s=["sealBonus","armyAttackSpeed","armyMoveSpeed"].includes(t.effect)?"%":"",e=t.stepChangeLevel??0,n=e<=0||i<e?i*t.step:(e-1)*t.step+(i-e+1)*(t.stepAfter??t.step);
- i*t.step} + Number.isInteger(n)?n:Math.ceil(n-1e-9)}
MenuState 2 hunks, 10 statements
+ } + ; + qt(czt,"MenuState"),Xt(czt,"currentIndex",0); + let lzt=czt; + const uzt=class{
- const DYt=class{ - } - ; - qt(DYt,"MenuState"),Xt(DYt,"currentIndex",0); - let GYt=DYt;
GameLayer 3 hunks, 9 statements
- ,this.addChild(kB.getInstance()),this.addChild(DB.getInstance()),this.nightOverlay=(new Ff).rect(0,0,640,640).fill(858677),this.nightOverlay.alpha=0,this.nightOverlay.blendMode="multiply",this.nightOverlay.eventMode="none",this.addChild(this.nightOverlay),this.addChild(xB.getInstance()),this.addChild(BB.getInstance()),this.addChild(YB.getInstance()),this.addChild(NB.getInstance()),this.addChild(KB.getInstance()),this.addChild(mU.getInstance()),this.addChild(FB.getInstance())} + ,this.addChild(DB.getInstance()),this.addChild($B.getInstance()),this.addChild(this.dayNight.overlayRoot),this.addChild(BB.getInstance()),this.addChild(VB.getInstance()),this.addChild(QB.getInstance()),this.addChild(this.dayNight.airRoot),this.addChild(FB.getInstance()),this.addChild(XB.getInstance()),this.addChild(bU.getInstance()),this.addChild(KB.getInstance()),this.addChild(this.realmTransition)}
- zk.killTweensOf(this.nightOverlay),this.nightOverlay.alpha=0,QB.getInstance().updateTimeOfDay(!1)} + this.dayNight.apply(MU.DAY,xB.FOREST,!0),sU.getInstance().setRealm(xB.FOREST),sU.getInstance().updateTimeOfDay(!1)}
- const s=(t-1)%10; - let e; - this.nightOverlay.clear(),this.nightOverlay.rect(0,0,640,640),this.nightOverlay.fill(858677),this.nightOverlay.blendMode="multiply",e=s<5?0:.65; - const n=e>0; - QB.getInstance().updateTimeOfDay(n),zk.killTweensOf(this.nightOverlay),i?this.nightOverlay.alpha=e:zk.to(this.nightOverlay,{ - alpha:e,duration:2,ease:"power2.inOut"} - )} + const s=yU.phaseOf(t),e=PB(t); + sU.getInstance().setRealm(e),sU.getInstance().updateTimeOfDay(s===MU.NIGHT,i),this.dayNight.apply(s,e,i)} + playRealmTransition(t){ + this.realmTransition.play(t)}
WaveInfoLayer 2 hunks, 8 statements
- var HB=(t=>(t[t.SPRING=1]="SPRING",t[t.SUMMER=2]="SUMMER",t[t.AUTUMN=3]="AUTUMN",t[t.WINTER=4]="WINTER",t))(HB||{ - } - ); - function $B(t){ - const i=(t-1)%200; - return i<50?2:i<100?3:i<150?4:1} - qt($B,"getSeasonForWave");
- const i=(t-1)%50==0; + const i=(t-1)%50==0&&PB(t)===xB.FOREST;
MiniAscentCardPickPopup 8 hunks, 8 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:32,lineHeight:38} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:32,lineHeight:38}
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:12,lineHeight:16} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:12,lineHeight:16}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:18,lineHeight:24} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:18,lineHeight:24}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:28,lineHeight:34} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:28,lineHeight:34}
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:13,lineHeight:18} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:13,lineHeight:18}
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:14} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:14}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:20,lineHeight:22,fontWeight:"900",stroke:{ + ...OL.DEFAULT_FONT_OPTION_16,fontSize:20,lineHeight:22,fontWeight:"900",stroke:{
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:12,lineHeight:16} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:12,lineHeight:16}
URLManager 1 hunks, 7 statements
- /minigame/ascent-pve/claimChapterReward`,RELICS:`${ + /minigame/ascent-pve/claimChapterReward`,SWEEP:`${ + t.baseURL} + /minigame/ascent-pve/sweep`,DEV_CLEAR_CHAPTER:`${ + t.baseURL} + /minigame/ascent-pve/devClearChapter`,DEV_GRANT_ENERGY:`${ + t.baseURL} + /minigame/ascent-pve/devGrantEnergy`,RELICS:`${
GameOverPopup 2 hunks, 7 statements
+ get tutorialTargets(){ + return{ + summary:[this.lblMessage1,this.lblMessage2,this.lblMedalReward],rebirth:this.btnRebirth,medal:this.lblMedalReward} + }
- Sci.getInstance().showResult(a,o),c&&c(),1===h?this.onRebirth=null:this.onRebirthBonus=null,ZKt.getInstance().getStatus(),this.notifyResearchLabIfNeeded(e),qYt.getInstance().checkEnable(),cqt.getInstance().onConditionChanged()} + ali.getInstance().showResult(a,o,0===i?()=>{ + _ai.getInstance().startMedalGuide()} + :null),c&&c(),1===h?this.onRebirth=null:this.onRebirthBonus=null,mzt.getInstance().getStatus(),this.notifyResearchLabIfNeeded(e),pqt.getInstance().checkEnable(),Iqt.getInstance().onConditionChanged()}
GoldLayer 1 hunks, 7 statements
- super()} - } - ; - qt(hli,"GoldLayer"); - let rli=hli; - const oli=class extends He{ - constructor(){
OnboardingGate 1 hunks, 7 statements
+ const vui=class t{ + static get showsBootPopups(){ + return XD.numRevive>=1&&XD.maxWave>=t.BOOT_POPUP_MIN_MAX_WAVE} + } + ; + qt(vui,"OnboardingGate"),Xt(vui,"BOOT_POPUP_MIN_MAX_WAVE",50); + let _ui=vui;
SafeAreaTopContent 4 hunks, 6 statements
- super(),Xt(this,"bg"),Xt(this,"_width",640),Xt(this,"_height",100),Xt(this,"seasonDayColor",[2849323,1731354,8022824,5933738]),Xt(this,"seasonNightColor",[731664,533516,2103304,1323088]),Xt(this,"currentSeason",HB.SPRING),Xt(this,"isNight",!1),Xt(this,"_rgb",{ + super(),Xt(this,"bg"),Xt(this,"_width",640),Xt(this,"_height",100),Xt(this,"seasonDayColor",[2849323,1731354,8022824,5933738]),Xt(this,"seasonNightColor",[731664,533516,2103304,1323088]),Xt(this,"currentSeason",kB.SPRING),Xt(this,"isNight",!1),Xt(this,"realm",xB.FOREST),Xt(this,"_rgb",{
+ setRealm(t){ + this.realm=t}
- const i=(this.isNight?this.seasonNightColor:this.seasonDayColor)[this.currentSeason-1]; - t?(zk.killTweensOf(this._rgb),this.bg.tint=i,this._rgb.r=i>>16&255,this._rgb.g=i>>8&255,this._rgb.b=255&i):this.tweenToColor(i)} + let s; + s=this.realm===xB.DEAD_LAND?this.isNight?t.DEAD_LAND_NIGHT_COLOR:t.DEAD_LAND_DAY_COLOR:(this.isNight?this.seasonNightColor:this.seasonDayColor)[this.currentSeason-1],i?(zk.killTweensOf(this._rgb),this.bg.tint=s,this._rgb.r=s>>16&255,this._rgb.g=s>>8&255,this._rgb.b=255&s):this.tweenToColor(s)}
- qt(JB,"SafeAreaTopContent"),Xt(JB,"instance"),Xt(JB,"DUNGEON_COLORS",{ + qt(iU,"SafeAreaTopContent"),Xt(iU,"instance"),Xt(iU,"DEAD_LAND_DAY_COLOR",3023936),Xt(iU,"DEAD_LAND_NIGHT_COLOR",1182748),Xt(iU,"DUNGEON_COLORS",{
GuildWarBattlePopupV3 6 hunks, 6 statements
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:9} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:9}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:11} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:11}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:9} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:9}
PetDataManager 4 hunks, 5 statements
+ hasRaidResistPieceBonus(t){ + return 2006===t}
- return this.list.filter(s=>s.grade>=5&&s.piece>=t&&s.kindNum!==i&&!this.isRaidResistPet(s.kindNum)).sort((t,i)=>i.piece-t.piece)} + return this.list.filter(s=>s.grade>=5&&s.piece>=t&&s.kindNum!==i&&!this.hasRaidResistPieceBonus(s.kindNum)).sort((t,i)=>i.piece-t.piece)}
- (null==(h=this.skillBookMap.get(u.skill1))?void 0:h.id)===a&&(c+=this.getSkill1Value(i.kindNum)*d),(null==(r=this.skillBookMap.get(u.skill2))?void 0:r.id)===a&&(c+=this.getSkill2Value(i.kindNum)*d),(null==(o=this.skillBookMap.get(u.masterSkill))?void 0:o.id)===a&&(c+=this.getSkill3Value(i.kindNum)*d); + if((null==(h=this.skillBookMap.get(u.skill1))?void 0:h.id)===a&&(c+=this.getSkill1Value(i.kindNum)*d),(null==(r=this.skillBookMap.get(u.skill2))?void 0:r.id)===a&&(c+=this.getSkill2Value(i.kindNum)*d),(null==(o=this.skillBookMap.get(u.masterSkill))?void 0:o.id)===a&&(c+=this.getSkill3Value(i.kindNum)*d),this.hasRaidResistPieceBonus(i.kindNum)){
+ }
CastleBuffSource 1 hunks, 5 statements
- const kx=class t{ + const kx=Object.freeze(Object.defineProperty({ + __proto__:null,CastleDataManager:Cx,CastleVO:Ox} + ,Symbol.toStringTag,{ + value:"Module"} + )),Rx=class t{
SoundManager 1 hunks, 5 statements
+ const rG=Object.freeze(Object.defineProperty({ + __proto__:null,PopupLayer:hG} + ,Symbol.toStringTag,{ + value:"Module"} + ));
MissionGuideController 3 hunks, 5 statements
- zYt.getInstance().visible=!0,zYt.getInstance().setData(i),zYt.getInstance().activated=t.rewardPending,this.currentSteps=t.getCurrentSteps(),this.cachedCondition=lqt(i.condition),this.startFrameCheck(),this.updatePointing()} + this.currentSteps=t.getCurrentSteps(),this.cachedCondition=Rqt(i.condition),uqt.getInstance().visible=!0,uqt.getInstance().setData(i,Oqt(i,this.cachedCondition)),uqt.getInstance().activated=t.rewardPending,uqt.getInstance().setProgress(this.cachedCondition?kqt(this.cachedCondition):null),this.startFrameCheck(),this.updatePointing()}
- if(!i.rewardPending)return this.cachedCondition&&uqt(this.cachedCondition)?(i.rewardPending=!0,zYt.getInstance().activated=!0,void this.updatePointing()):void this.updatePointing(); + if(i.rewardPending)this.updatePointing(); + else{ + if(this.cachedCondition&&uqt.getInstance().setProgress(kqt(this.cachedCondition)),this.cachedCondition&&xqt(this.cachedCondition))return i.rewardPending=!0,uqt.getInstance().activated=!0,void this.updatePointing();
+ }
TowerHeroSelectVO 1 hunks, 5 statements
- const Fqt={ + const oXt=Object.freeze(Object.defineProperty({ + __proto__:null,HeroMedalEnhanceManager:rXt} + ,Symbol.toStringTag,{ + value:"Module"} + )),aXt={
HeartInfo 1 hunks, 5 statements
- const Zoi=class t extends He{ + const Lai=Object.freeze(Object.defineProperty({ + __proto__:null,CastleDetailPopup:Nai} + ,Symbol.toStringTag,{ + value:"Module"} + )),Dai=class t extends He{
CastleSubView 1 hunks, 5 statements
+ get enhanceShortcut(){ + for(const t of this.getListItems()){ + const i=t.enhanceShortcut; + if(i)return i} + return null}
CastleView 1 hunks, 5 statements
- const Uai=class t extends wYt{ + const Mci=Object.freeze(Object.defineProperty({ + __proto__:null,CastleSubView:Eci} + ,Symbol.toStringTag,{ + value:"Module"} + )),Aci=class t extends GYt{
QuestDetailPopup 1 hunks, 5 statements
- const jai=class t extends DG{ + const Oci=Object.freeze(Object.defineProperty({ + __proto__:null,QuestSubView:Ici} + ,Symbol.toStringTag,{ + value:"Module"} + )),kci=class t extends BG{
GameSpeedPopup 1 hunks, 5 statements
- const Dci=class t extends DG{ + const _li=Object.freeze(Object.defineProperty({ + __proto__:null,GameOverPopup:mli} + ,Symbol.toStringTag,{ + value:"Module"} + )),bli=class t extends BG{
MiniAscentAssets 5 hunks, 5 statements
- soldierLevel:["relic_layer_soldiers","relic_layer_buff_level_up"],soldierCount:["relic_layer_soldiers","relic_layer_buff_count_up"],heroLevel:["relic_layer_hero","relic_layer_buff_level_up"],armyStartLevel:["relic_layer_all_legions","relic_layer_buff_level_up"],armyAttackSpeed:["relic_layer_all_legions","relic_layer_buff_attack_speed"],armyMoveSpeed:["relic_layer_all_legions","relic_layer_buff_move_speed"]} + soldierLevel:["relic_layer_soldiers","relic_layer_buff_level_up"],soldierCount:["relic_layer_soldiers","relic_layer_buff_count_up"],heroLevel:["relic_layer_hero","relic_layer_buff_level_up"],armyStartLevel:["relic_layer_all_legions","relic_layer_buff_level_up"],armyAttackSpeed:["relic_layer_all_legions","relic_layer_buff_attack_speed"],armyMoveSpeed:["relic_layer_all_legions","relic_layer_buff_move_speed"],soldierCap:["relic_layer_soldiers","relic_layer_buff_capacity"]}
- return[cvi,...avi[t]??["ui_challenge_seal"],lvi]} + return[Uvi,...Bvi[t]??["ui_challenge_seal"],Fvi]}
- ,vvi=[pvi,"crystal_effect_plate",...gvi,...mvi,...Object.values(wvi)],_vi=class{ + ,Yvi=[Vvi,"crystal_effect_plate",...jvi,...Kvi,...Object.values(zvi)],qvi=class{
- &atlas=20260926-chapter-art`,i=await fetch(tS.getAssetPath(`UI_MINI.json${ + &atlas=20260928-relic-capacity`,i=await fetch(tS.getAssetPath(`UI_MINI.json${
- for(const h of["background_map","chapter_journey","encounter_battle","encounter_elite","encounter_boss","encounter_event","encounter_shop","encounter_gambling","ui_arrow_up","ui_button_lobby_blank","ui_close","ui_coin","ui_energy","ui_challenge_seal","ui_divider","UI_VS","UI_Check1","UI_Check2",...uvi,...vvi])if(!n.textures[h])throw new Error(`UI_MINI: missing ${ + for(const h of["background_map","chapter_journey","encounter_battle","encounter_elite","encounter_boss","encounter_event","encounter_shop","encounter_gambling","ui_arrow_up","ui_button_lobby_blank","ui_close","ui_coin","ui_energy","ui_challenge_seal","ui_divider","UI_VS","UI_Check1","UI_Check2",...Hvi,...Yvi])if(!n.textures[h])throw new Error(`UI_MINI: missing ${
LocalDataManager 1 hunks, 4 statements
+ static async getReviveAnytimeHinted(){ + return await this.getData(this.getKey("rAh"))} + static async saveReviveAnytimeHinted(t){ + await this.saveData(this.getKey("rAh"),t)}
InAppPurchaseManager 3 hunks, 4 statements
- const n=t6.getInstance().getStoreProductIdByProductId(this._productId); - await SL.getInstance().shop.paymentAttempt(this._productId,e,n); + const n=c6.getInstance().getStoreProductIdByProductId(this._productId),h=await TL.getInstance().shop.paymentAttempt(this._productId,e,n); + if(c6.miniAscentEnergyReward(i)&&!0!==(null==h?void 0:h.success))return this.onPaymentCancel(),void YG.getInstance().showError(h);
- const l=t6.getInstance().getRewardMessage(o.rewardTypes); + const u=c6.getInstance().getRewardMessage(a.rewardTypes,c);
- const o=t6.getInstance().getRewardMessage(null==(s=i.body)?void 0:s.rewardTypes); + const o=c6.getInstance().getRewardMessage(null==(s=i.body)?void 0:s.rewardTypes,n);
ClickHand 2 hunks, 4 statements
- const YYt=class t extends He{ + const dqt={ + active:!1} + ,fqt=class t extends He{
- t.textures&&(this.frameCount++,this.frame+=.6,this.frame>=t.textures.length&&(this.frame=0),this.sp.texture=t.textures[Math.floor(this.frame)])} + t.textures&&(this.sp.visible=!dqt.active,this.frameCount++,this.frame+=.6,this.frame>=t.textures.length&&(this.frame=0),this.sp.texture=t.textures[Math.floor(this.frame)])}
CastleDetailPopup 1 hunks, 4 statements
+ get tutorialTargets(){ + return{ + enhance:this.btnEnhance,castle:this.castleIcon} + }
QuestItemRenderer 1 hunks, 4 statements
+ get tutorialTargets(){ + return{ + row:this.bg,progress:this.progress,button:this.btnOpen} + }
Archery2GameScene 4 hunks, 4 statements
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fill:16777215} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fill:16777215}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_20,fill:16766720} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_20,fill:16766720}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fill:16737792} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fill:16737792}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_20,fill:16777215} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_20,fill:16777215}
MiniAscentResultPopup 4 hunks, 4 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:24,lineHeight:30} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:24,lineHeight:30}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:24,lineHeight:30} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:24,lineHeight:30}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:32,lineHeight:38} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:32,lineHeight:38}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:30,lineHeight:36} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:30,lineHeight:36}
Or 3 hunks, 3 statements
- ,zst={ + ,set={
- Object.defineProperty(zst,"__esModule",{ + Object.defineProperty(set,"__esModule",{
- ),zst.polyval=zst.ghash=void 0,zst._toGHASHKey=tet; + ),set.polyval=set.ghash=void 0,set._toGHASHKey=cet;
SHA256 3 hunks, 3 statements
- ...Hgt,...Wgt,...jgt,...zgt,...Xgt,...rmt,...cmt,...dmt,...wmt} + ...Xgt,...Qgt,...tmt,...smt,...hmt,...gmt,...vmt,...Emt,...Tmt}
- ...twt,...swt} + ...cwt,...uwt}
- utf8:Pwt,"utf-8":Pwt,hex:Cwt.base16,latin1:Nwt,ascii:Nwt,binary:Nwt,...Cwt} + utf8:$wt,"utf-8":$wt,hex:Dwt.base16,latin1:Wwt,ascii:Wwt,binary:Wwt,...Dwt}
SuiProvider 3 hunks, 3 statements
- namespace:yTt.NameSpaceKeyAptos,addresses:s,methods:[...TTt.AptosMethods],extra:h} + namespace:PTt.NameSpaceKeyAptos,addresses:s,methods:[...LTt.AptosMethods],extra:h}
- namespace:PTt.NameSpaceKeyTON,addresses:o,methods:[...DTt.TONMethods],extra:a,data:{ + namespace:$Tt.NameSpaceKeyTON,addresses:o,methods:[...jTt.TONMethods],extra:a,data:{
- namespace:FTt.NameSpaceKeySui,addresses:i,methods:[...WTt.SuiMethods],extra:s} + namespace:qTt.NameSpaceKeySui,addresses:i,methods:[...QTt.SuiMethods],extra:s}
WalletPopup 3 hunks, 3 statements
- ...IL.ERROR_POPUP_LABEL_OPTION,fontSize:24,fontWeight:"bold"} + ...OL.ERROR_POPUP_LABEL_OPTION,fontSize:24,fontWeight:"bold"}
- ...IL.ERROR_POPUP_LABEL_OPTION,fontSize:16} + ...OL.ERROR_POPUP_LABEL_OPTION,fontSize:16}
- ...IL.ERROR_POPUP_LABEL_OPTION,fontSize:16} + ...OL.ERROR_POPUP_LABEL_OPTION,fontSize:16}
CastleItemRenderer 1 hunks, 3 statements
+ get enhanceShortcut(){ + const t=this.data; + return t&&1==t.kindNum&&this.btnEnhanceShortcut.visible?this.btnEnhanceShortcut:null}
RewardItem 2 hunks, 2 statements
- var n6=(t=>(t.gem="gem",t.redGem="redGem",t.gold="gold",t.medal="medal",t.honorCoin="honorCoin",t.guildPoint="guildPoint",t.guildCoin="guildCoin",t.raidCoin="raidCoin",t.runeTicket="runeTicket",t.hammer="hammer",t.hero="hero",t.instant="instant",t.ticket="ticket",t.trans="trans",t.pet="pet",t.petTicket="petTicket",t.petSelect="petSelect",t.heroGacha="heroGacha",t.heroSelect="heroSelect",t.heroTrans="heroTrans",t.treasure="treasure",t.treasureGacha="treasureGacha",t.treasureTrans="treasureTrans",t.ads="ads",t.speed="speed",t.assistant="assistant",t))(n6||{ + var f6=(t=>(t.gem="gem",t.redGem="redGem",t.gold="gold",t.medal="medal",t.honorCoin="honorCoin",t.guildPoint="guildPoint",t.guildCoin="guildCoin",t.raidCoin="raidCoin",t.runeTicket="runeTicket",t.hammer="hammer",t.hero="hero",t.instant="instant",t.ticket="ticket",t.trans="trans",t.pet="pet",t.petTicket="petTicket",t.petSelect="petSelect",t.heroGacha="heroGacha",t.heroSelect="heroSelect",t.heroTrans="heroTrans",t.treasure="treasure",t.treasureGacha="treasureGacha",t.treasureTrans="treasureTrans",t.ads="ads",t.speed="speed",t.assistant="assistant",t.dungeonTicket="dungeonTicket",t.miniAscentEnergy="miniAscentEnergy",t))(f6||{
- t==n6.gem?(r="UI_SHOP_GEM",h=.85):t==n6.redGem?(r="UI_SHOP_RED_GEM",h=.83):t==n6.gold?(r="m_gold",h=.7):t==n6.honorCoin?(r="UI_COIN_Big",h=.8):t==n6.hammer?(r="Icon_Hammer",h=1.5):"dungeonTicket"==t?(r="DungeonTick",h=.8):t==n6.hero?(this.heroIcon.setDataWithKindNum(e),this.heroIcon.visible=!0):t==n6.ticket&&n==n6.heroGacha?r="Ticket_HeroGacha":t==n6.ticket&&n==n6.heroSelect?(r="Ticket_HeroSelect",h=.85):t==n6.trans&&n==n6.hero?r=9==this._grade?"Ticket_HeroTrans2":"Ticket_HeroTrans":t==n6.pet?(this.petIcon.setPet(e,1),this.petIcon.visible=!0):t==n6.petTicket||n==n6.petTicket||t==n6.ticket&&n==n6.pet?(r="PetTick",h=.9):t==n6.petSelect||n==n6.petSelect||t==n6.ticket&&n==n6.petSelect?(r="Ticket_PetSelect",h=.9):t==n6.ticket&&n==n6.treasureGacha?(r="Ticket_TreasureGacha",h=.95):t==n6.trans&&n==n6.treasure?r=7===this._grade?"Ticket_TreasureTrans7":"Ticket_TreasureTrans6":t==n6.ads?(r="AdsRemove",h=.7):t==n6.speed?(r="UI_SHOP_SPEED2",h=.8):t==n6.assistant?(r="Package_Secretary",h=.7):t==n6.guildCoin||t==n6.guildPoint?(r="GUILD_COIN",h=1.6):t==n6.raidCoin?(r="RaidCoin_on",h=1.5):t==n6.runeTicket&&(r="RuneTicket",h=1.2),r&&(this.img.scale=h,this.img.texture=eS.getTexture("UI_Ekkorr",r),this.img.visible=!0,this.bg.visible=!0),t==n6.ads||t==n6.speed||t==n6.assistant?this.lblNum.text=`${ + t==f6.gem?(r="UI_SHOP_GEM",h=.85):t==f6.redGem?(r="UI_SHOP_RED_GEM",h=.83):t==f6.gold?(r="m_gold",h=.7):t==f6.honorCoin?(r="UI_COIN_Big",h=.8):t==f6.hammer?(r="Icon_Hammer",h=1.5):t==f6.dungeonTicket?(r="DungeonTick",h=.8):t==f6.miniAscentEnergy||n==f6.miniAscentEnergy?(r="ui_energy",h=56/30):t==f6.hero?(this.heroIcon.setDataWithKindNum(e),this.heroIcon.visible=!0):t==f6.ticket&&n==f6.heroGacha?r="Ticket_HeroGacha":t==f6.ticket&&n==f6.heroSelect?(r="Ticket_HeroSelect",h=.85):t==f6.trans&&n==f6.hero?r=9==this._grade?"Ticket_HeroTrans2":"Ticket_HeroTrans":t==f6.pet?(this.petIcon.setPet(e,1),this.petIcon.visible=!0):t==f6.petTicket||n==f6.petTicket||t==f6.ticket&&n==f6.pet?(r="PetTick",h=.9):t==f6.petSelect||n==f6.petSelect||t==f6.ticket&&n==f6.petSelect?(r="Ticket_PetSelect",h=.9):t==f6.ticket&&n==f6.treasureGacha?(r="Ticket_TreasureGacha",h=.95):t==f6.trans&&n==f6.treasure?r=7===this._grade?"Ticket_TreasureTrans7":"Ticket_TreasureTrans6":t==f6.ads?(r="AdsRemove",h=.7):t==f6.speed?(r="UI_SHOP_SPEED2",h=.8):t==f6.assistant?(r="Package_Secretary",h=.7):t==f6.guildCoin||t==f6.guildPoint?(r="GUILD_COIN",h=1.6):t==f6.raidCoin?(r="RaidCoin_on",h=1.5):t==f6.runeTicket&&(r="RuneTicket",h=1.2),r&&(this.img.scale=h,this.img.texture=eS.getTexture("UI_Ekkorr",r),this.img.visible=!0,this.bg.visible=!0),t==f6.ads||t==f6.speed||t==f6.assistant?this.lblNum.text=`${
Lr 1 hunks, 2 statements
- let set=iet; - const eet=class extends set{ + let det=uet; + const fet=class extends det{
Dr 2 hunks, 2 statements
- function het(t){ + function get(t){
- qt(het,"Dr"),zst.ghash=het((t,i)=>new set(t,i)),zst.polyval=het((t,i)=>new net(t,i)),Object.defineProperty(Kst,"__esModule",{ + qt(get,"Dr"),set.ghash=get((t,i)=>new det(t,i)),set.polyval=get((t,i)=>new pet(t,i)),Object.defineProperty(iet,"__esModule",{
ShopPayItemRenderer 1 hunks, 2 statements
- gem:0,honorCoin:1,hammer:2,dungeonTicket:3,hero:4,petTicket:5,ticket:6,pet:7,trans:8,runeTicket:9,ads:1e3,speed:1001,assistant:1002} - ,h=(t.rewards??[]).map((t,i,s)=>"instant"!==t.type||"dungeonTicket"!==t.subType&&"petTicket"!==t.subType?"buff"===t.type&&s.length>1?{ + miniAscentEnergy:-1,gem:0,honorCoin:1,hammer:2,dungeonTicket:3,hero:4,petTicket:5,ticket:6,pet:7,trans:8,runeTicket:9,ads:1e3,speed:1001,assistant:1002} + ,h=(t.rewards??[]).map((t,i,s)=>"instant"!==t.type||"dungeonTicket"!==t.subType&&"petTicket"!==t.subType&&"miniAscentEnergy"!==t.subType?"buff"===t.type&&s.length>1?{
QuestSubView 1 hunks, 2 statements
+ getItemRenderers(){ + return this.list.getItemList()}
TopMenu 1 hunks, 2 statements
+ get reviveButton(){ + return this.btnRevive}
GuildBarrackRowItemRenderer 2 hunks, 2 statements
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:14} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:14}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13}
GuildWarBattleReadyPopup 2 hunks, 2 statements
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i}
GuildWarSquadsPopup 2 hunks, 2 statements
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:14} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:14}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i}
GuildWarTierAssignPopup 2 hunks, 2 statements
- const i=[...JL.memberList??[]].sort((t,i)=>i.roleLevel!==t.roleLevel?i.roleLevel-t.roleLevel:(i.wave??0)-(t.wave??0)); + const i=[...QL.memberList??[]].sort((t,i)=>i.roleLevel!==t.roleLevel?i.roleLevel-t.roleLevel:(i.wave??0)-(t.wave??0));
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i}
CapacitorBridge 2 hunks, 2 statements
- l=this.isSubscriptionProduct(h)?await r.getInstance().subscription.confirmApple(n,c.receipt,1):await r.getInstance().shop.confirmApplePayment(n,c.transactionId,c.receipt,h,1),(null==l?void 0:l.success)&&(await mKt.finishTransaction(c.transactionId),"COMPLETED"===(null==(t=null==l?void 0:l.body)?void 0:t.status)&&((null==(s=null==(i=null==l?void 0:l.body)?void 0:i.rewardTypes)?void 0:s.length)??0)>0&&(e=!0,a.getInstance().trackPurchase(n,c.transactionId)))} + l=this.isSubscriptionProduct(h)?await r.getInstance().subscription.confirmApple(n,c.receipt,1):await r.getInstance().shop.confirmApplePayment(-1,c.transactionId,c.receipt,h,1),(null==l?void 0:l.success)&&(await SKt.finishTransaction(c.transactionId),"COMPLETED"===(null==(t=null==l?void 0:l.body)?void 0:t.status)&&((null==(s=null==(i=null==l?void 0:l.body)?void 0:i.rewardTypes)?void 0:s.length)??0)>0&&(e=!0,a.getInstance().trackPurchase(n,c.transactionId)))}
- l=this.isSubscriptionProduct(h)?await r.getInstance().subscription.confirmGoogle(n,h,c.purchaseToken,1):await r.getInstance().shop.confirmGooglePayment(n,c.purchaseToken,h,1),(null==l?void 0:l.success)&&"COMPLETED"===(null==(t=null==l?void 0:l.body)?void 0:t.status)&&((null==(s=null==(i=null==l?void 0:l.body)?void 0:i.rewardTypes)?void 0:s.length)??0)>0&&(e=!0,a.getInstance().trackPurchase(n,c.orderId))} + l=this.isSubscriptionProduct(h)?await r.getInstance().subscription.confirmGoogle(n,h,c.purchaseToken,1):await r.getInstance().shop.confirmGooglePayment(-1,c.purchaseToken,h,1),(null==l?void 0:l.success)&&"COMPLETED"===(null==(t=null==l?void 0:l.body)?void 0:t.status)&&((null==(s=null==(i=null==l?void 0:l.body)?void 0:i.rewardTypes)?void 0:s.length)??0)>0&&(e=!0,a.getInstance().trackPurchase(n,c.orderId))}
MiniAscentBattleController 2 hunks, 2 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:14,lineHeight:18} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:14,lineHeight:18}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:14,lineHeight:18} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:14,lineHeight:18}
MiniAscentCorpsPanel 2 hunks, 2 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:i,lineHeight:i+4} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:i,lineHeight:i+4}
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:16,lineHeight:20} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:16,lineHeight:20}
MiniAscentCorpsPage 2 hunks, 2 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:22,lineHeight:28} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:22,lineHeight:28}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:14,lineHeight:19} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:14,lineHeight:19}
MiniAscentChapterRewardItem 2 hunks, 2 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:14} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:14}
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:15} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:15}
VersionManager 1 hunks, 1 statements
- qt(Jy,"VersionManager"),Xt(Jy,"gameId","ef2"),Xt(Jy,"appVersion","1.14.88"); + qt(Jy,"VersionManager"),Xt(Jy,"gameId","ef2"),Xt(Jy,"appVersion","1.14.97");
AutoTogglePill 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:t.FONT_SIZE,lineHeight:t.PILL_H} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:t.FONT_SIZE,lineHeight:t.PILL_H}
Sr 1 hunks, 1 statements
- ...t,...Pst(i)} + ...t,...$st(i)}
Fr 1 hunks, 1 statements
- const ret=R9,oet=zst,aet=k9,cet=16,uet=new Uint8Array(cet); + const met=F9,wet=set,vet=U9,_et=16,bet=new Uint8Array(_et);
Zr 1 hunks, 1 statements
- )(),get=pet.map((t,i)=>pet.indexOf(i)),met=qt(t=>t<<24|t>>>8,"Vr"),wet=qt(t=>t<<8|t>>>24,"Gr"),vet=qt(t=>t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255,"Yr"); + )(),yet=Aet.map((t,i)=>Aet.indexOf(i)),Tet=qt(t=>t<<24|t>>>8,"Vr"),Cet=qt(t=>t<<8|t>>>24,"Gr"),Iet=qt(t=>t<<24&4278190080|t<<8&16711680|t>>>8&65280|t>>>24&255,"Yr");
Pi 1 hunks, 1 statements
- const bet=_et(pet,t=>fet(t,3)<<24|t<<16|t<<8|fet(t,2)),Eet=_et(get,t=>fet(t,11)<<24|fet(t,13)<<16|fet(t,9)<<8|fet(t,14)),Met=(()=>{ + const ket=Oet(Aet,t=>Met(t,3)<<24|t<<16|t<<8|Met(t,2)),Ret=Oet(yet,t=>Met(t,11)<<24|Met(t,13)<<16|Met(t,9)<<8|Met(t,14)),xet=(()=>{
Ma 1 hunks, 1 statements
- ...Krt,coercer:qt((t,i)=>nrt(t,zrt)?Krt.coercer(Yrt(t,i),i):Krt.coercer(t,i),"coercer")} + ...iot,coercer:qt((t,i)=>frt(t,sot)?iot.coercer(eot(t,i),i):iot.coercer(t,i),"coercer")}
Yp 1 hunks, 1 statements
- const e=126,n=[71,73,70,56,55,97,...i,246,0,0,255,255,255,...Ipt(381,0),44,0,0,0,0,...i,0,7],h=Math.floor(s.length/e); + const e=126,n=[71,73,70,56,55,97,...i,246,0,0,255,255,255,...Gpt(381,0),44,0,0,0,0,...i,0,7],h=Math.floor(s.length/e);
SuiStandardProvider 1 hunks, 1 statements
- namespace:UMt.NameSpaceKeyEip155,addresses:i,methods:[...$Mt.Eip55Methods],extra:s} + namespace:YMt.NameSpaceKeyEip155,addresses:i,methods:[...JMt.Eip55Methods],extra:s}
AppReadyEvent 1 hunks, 1 statements
- return lyt||(lyt=[...nyt]),lyt} + return _yt||(_yt=[...fyt]),_yt}
SolProvider 1 hunks, 1 statements
- namespace:gTt.NameSpaceKeySOL,addresses:i,methods:[..._Tt.SOLANAMethods],extra:s} + namespace:yTt.NameSpaceKeySOL,addresses:i,methods:[...ITt.SOLANAMethods],extra:s}
OkxwalletInjectConnector 1 hunks, 1 statements
- namespace:zTt.NameSpaceKeyBtc,addresses:i,methods:[...qTt.BtcMethods],extra:s} + namespace:sCt.NameSpaceKeyBtc,addresses:i,methods:[...nCt.BtcMethods],extra:s}
TcRootElement 1 hunks, 1 statements
- return WGt()||(t.push(new hgt.OKXAppConnector),t.push(new hgt.OKXWalletAppConnector)),HGt()&&t.push(new hgt.OkxwalletInjectConnector),t.push(...jGt()),t} + return QGt()||(t.push(new pgt.OKXAppConnector),t.push(new pgt.OKXWalletAppConnector)),XGt()&&t.push(new pgt.OkxwalletInjectConnector),t.push(...tBt()),t}
WalletSelectPopup 1 hunks, 1 statements
- ...IL.ERROR_POPUP_LABEL_OPTION,fontSize:18} + ...OL.ERROR_POPUP_LABEL_OPTION,fontSize:18}
BaseShopProductPopup 1 hunks, 1 statements
- const h=t6.getInstance().getRewardMessage(null==(t=i.body)?void 0:t.rewardTypes); + const h=c6.getInstance().getRewardMessage(null==(t=i.body)?void 0:t.rewardTypes,s);
FavoritePetSubView 1 hunks, 1 statements
- const t=[...$D.getInstance().favoritePets].sort((t,i)=>{ + const t=[...WD.getInstance().favoritePets].sort((t,i)=>{
GuildBarracksRaceView 1 hunks, 1 statements
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i}
GuildMainSubView 1 hunks, 1 statements
- const i=[...JL.guildList].sort((t,i)=>{ + const i=[...QL.guildList].sort((t,i)=>{
GuildRaidBattleReadyPopup 1 hunks, 1 statements
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:13}
GuildWarHistoryItemRenderer 1 hunks, 1 statements
- ...IL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i} + ...OL.DEFAULT_OUTLINE_FONT_OPTION_16,fontSize:i}
GuildWarTournamentRewardGuidePopup 1 hunks, 1 statements
- let e=[...JL.rewardBattleList.sort((t,i)=>i.kindNum-t.kindNum)].concat([...JL.rewardBattleLostList.sort((t,i)=>i.kindNum-t.kindNum)]); + let e=[...QL.rewardBattleList.sort((t,i)=>i.kindNum-t.kindNum)].concat([...QL.rewardBattleLostList.sort((t,i)=>i.kindNum-t.kindNum)]);
AttendanceAutoTrigger 1 hunks, 1 statements
+ if(!_ui.showsBootPopups)return void ddi();
GuildWarCombatLogItemRenderer 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:14} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:14}
GuildWarMemberStatusItemRenderer 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:14} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:14}
GuildWarTargetMarkerItemRenderer 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_15,fontSize:14} + ...OL.DEFAULT_FONT_OPTION_15,fontSize:14}
MiniAscentBattleProgress 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:20,lineHeight:26,align:"center"} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:20,lineHeight:26,align:"center"}
Delay 1 hunks, 1 statements
- ...Uyi(),[i]:s} + ...gSi(),[i]:s}
NetworkTimeout 1 hunks, 1 statements
- ...cSi,...i} + ...USi,...i}
RecaptchaVerifier 1 hunks, 1 statements
- ...VOi} + ...bki}
BrowserPopupRedirectResolver 1 hunks, 1 statements
- ...Yki,width:e.toString(),height:n.toString(),top:h,left:r} + ...yRi,width:e.toString(),height:n.toString(),top:h,left:r}
MiniAscentCardsPage 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:s,lineHeight:s+6} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:s,lineHeight:s+6}
MiniAscentCrystalRowRenderer 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:20,fontWeight:"900"} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:20,fontWeight:"900"}
MiniAscentCrystalsPage 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:n,lineHeight:n+5,fontWeight:"bold"} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:n,lineHeight:n+5,fontWeight:"bold"}
MiniAscentTextButton 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:15,lineHeight:20} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:15,lineHeight:20}
MiniAscentRoutePopup 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:f,lineHeight:f+2} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:f,lineHeight:f+2}
MiniAscentCrystalRewardPopup 1 hunks, 1 statements
- ...IL.DEFAULT_FONT_OPTION_16,fontSize:s,lineHeight:s+5} + ...OL.DEFAULT_FONT_OPTION_16,fontSize:s,lineHeight:s+5}




