mirror of
https://github.com/setube/ogame-vue-ts.git
synced 2026-05-12 16:05:12 +08:00
重构BattleReportDialog和BattleSimulatorView相关静态资源,替换旧版JS/CSS文件,提升界面一致性和交互体验。新增和优化空状态、滚动区域等通用UI组件,移除部分冗余composable,完善多语言内容。引入导弹逻辑,补充版本检测工具,提升整体代码结构和可维护性。
1 line
8.1 KiB
JavaScript
1 line
8.1 KiB
JavaScript
import{$t as e,En as t,On as n,Rn as r,_t as ee,ar as i,cn as te,cr as a,dn as o,fn as s,gt as c,ln as l,on as u,ot as ne,pn as d,rn as f,rr as p,sn as m,st as re,un as h,vt as ie,zn as ae}from"./game-logic-BBFCPVtv.js";import"./vendor-pinia-L_8CmDWM.js";import"./vendor-crypto-CQM8pryk.js";import"./game-i18n-BC9uiVvf.js";import"./vendor-others-Bce0hM6h.js";import"./vendor-reka-ui-DR3m_AkV.js";import"./vendor-utils-BlvnUqQX.js";import"./vendor-vueuse-Djj-oRw9.js";import{t as oe}from"./CardDescription-DduF5EVY.js";import"./game-config-DRP-gbpS.js";import{$ as se,J as g,K as _,L as v,X as y,_ as b,b as ce,c as x,d as S,f as C,g as w,h as le,m as T,o as E,p as D,v as O,y as k}from"./index-B4KMqZ_y.js";import{t as A}from"./useGameConfig-DLqfPHtW.js";import{i as j,n as M,r as N,t as P}from"./TabsTrigger-BnZOhHbD.js";var F={key:0,class:`container mx-auto p-4 sm:p-6 space-y-4 sm:space-y-6`},I={class:`text-center`},L={class:`text-2xl sm:text-3xl font-bold mb-1 sm:mb-2 flex items-center justify-center gap-2`},R={class:`text-xs sm:text-sm text-muted-foreground`},z={key:0,class:`mt-2`},B={key:1,class:`mt-2`},V={class:`flex items-center gap-2`},H={class:`space-y-4`},U={class:`flex items-center gap-2 mb-2`},W={class:`font-semibold`},ue={key:0,class:`ml-6 space-y-1 text-sm`},de={class:`text-muted-foreground`},fe={class:`text-green-600 dark:text-green-400`},pe={key:1,class:`flex justify-between`},G={class:`text-muted-foreground`},me={class:`text-green-600 dark:text-green-400`},he={class:`text-muted-foreground ml-4`},ge={class:`flex justify-between font-semibold pt-1 border-t mt-1`},_e={class:`text-green-600 dark:text-green-400`},ve={class:`space-y-2`},ye={key:0,class:`text-muted-foreground`},be={key:1,class:`text-red-600 dark:text-red-400`},xe={key:0,class:`flex justify-between font-semibold pt-2 border-t`},Se={class:`text-red-600 dark:text-red-400`},Ce={key:1,class:`text-sm text-muted-foreground text-center py-2`},we={class:`grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 gap-3 sm:gap-4`},Te={class:`text-xs sm:text-sm text-muted-foreground`},Ee={class:`text-lg sm:text-xl font-bold`},K=d({__name:`OverviewView`,setup(d){let K=se(),{t:q}=y(),{SHIPS:De}=A(),J=u(()=>K.currentPlanet),Oe=u(()=>J.value?re(J.value,K.player.officers):null),Y=u(()=>J.value?ne(J.value,K.player.officers):null),ke=u(()=>J.value?ee(J.value):0),X=u(()=>J.value?ie(J.value,K.player.officers,Date.now()):null),Z=u(()=>J.value?c(J.value):null),Q=[{key:`metal`},{key:`crystal`},{key:`deuterium`},{key:`energy`},{key:`darkMatter`}],Ae=[{key:`metalMine`},{key:`crystalMine`},{key:`deuteriumSynthesizer`}],$=u(()=>!J.value||J.value.isMoon?null:je(J.value.id)),je=e=>K.player.planets.find(t=>t.isMoon&&t.parentPlanetId===e)||null,Me=()=>{$.value&&(K.currentPlanetId=$.value.id)},Ne=()=>{J.value?.parentPlanetId&&(K.currentPlanetId=J.value.parentPlanetId)};return(ee,c)=>J.value?(t(),h(`div`,F,[m(`div`,I,[m(`h1`,L,[o(a(J.value.name)+` `,1),J.value.isMoon?(t(),te(p(_),{key:0,variant:`secondary`},{default:r(()=>[o(a(p(q)(`planet.moon`)),1)]),_:1})):l(``,!0)]),m(`p`,R,a(p(q)(`planet.position`))+`: [`+a(J.value.position.galaxy)+`:`+a(J.value.position.system)+`:`+a(J.value.position.position)+`] `,1),!J.value.isMoon&&$.value?(t(),h(`div`,z,[s(p(g),{onClick:Me,variant:`outline`,size:`sm`},{default:r(()=>[c[0]||=m(`span`,{class:`mr-2`},`🌙`,-1),o(` `+a(p(q)(`planet.switchToMoon`)),1)]),_:1})])):l(``,!0),J.value.isMoon?(t(),h(`div`,B,[s(p(g),{onClick:Ne,variant:`outline`,size:`sm`},{default:r(()=>[o(a(p(q)(`planet.backToPlanet`)),1)]),_:1})])):l(``,!0)]),s(p(T),null,{default:r(()=>[s(p(C),null,{default:r(()=>[s(p(S),null,{default:r(()=>[o(a(p(q)(`overview.resourceOverview`)),1)]),_:1})]),_:1}),s(p(D),null,{default:r(()=>[s(p(j),{"default-value":`overview`,class:`w-full`},{default:r(()=>[s(p(M),{class:`grid w-full grid-cols-3`},{default:r(()=>[s(p(P),{value:`overview`},{default:r(()=>[...c[1]||=[o(`概览`,-1)]]),_:1}),s(p(P),{value:`production`},{default:r(()=>[...c[2]||=[o(`产量详情`,-1)]]),_:1}),s(p(P),{value:`consumption`},{default:r(()=>[...c[3]||=[o(`消耗详情`,-1)]]),_:1})]),_:1}),s(p(N),{value:`overview`,class:`mt-4`},{default:r(()=>[s(p(ce),null,{default:r(()=>[s(p(le),null,{default:r(()=>[s(p(b),null,{default:r(()=>[s(p(w),null,{default:r(()=>[o(a(p(q)(`common.resourceType`)),1)]),_:1}),s(p(w),{class:`text-right`},{default:r(()=>[o(a(p(q)(`resources.current`)),1)]),_:1}),s(p(w),{class:`text-right`},{default:r(()=>[o(a(p(q)(`resources.max`)),1)]),_:1}),s(p(w),{class:`text-right`},{default:r(()=>[o(a(p(q)(`resources.production`))+a(p(q)(`resources.perHour`)),1)]),_:1}),s(p(w),{class:`text-right`},{default:r(()=>[o(a(p(q)(`resources.consumption`))+a(p(q)(`resources.perHour`)),1)]),_:1})]),_:1})]),_:1}),s(p(k),null,{default:r(()=>[(t(),h(f,null,n(Q,e=>s(p(b),{key:e.key},{default:r(()=>[s(p(O),{class:`font-medium`},{default:r(()=>[m(`div`,V,[s(v,{type:e.key,size:`sm`},null,8,[`type`]),o(` `+a(p(q)(`resources.${e.key}`)),1)])]),_:2},1024),s(p(O),{class:i([`text-right`,p(x)(J.value.resources[e.key],Y.value?.[e.key]||1/0)])},{default:r(()=>[o(a(p(E)(J.value.resources[e.key])),1)]),_:2},1032,[`class`]),s(p(O),{class:`text-right text-muted-foreground`},{default:r(()=>[o(a(p(E)(Y.value?.[e.key]||0)),1)]),_:2},1024),s(p(O),{class:`text-right text-green-600 dark:text-green-400`},{default:r(()=>[o(` +`+a(p(E)(Oe.value?.[e.key]||0)),1)]),_:2},1024),s(p(O),{class:`text-right text-red-600 dark:text-red-400`},{default:r(()=>[e.key===`energy`?(t(),h(f,{key:0},[o(`-`+a(p(E)(ke.value)),1)],64)):(t(),h(f,{key:1},[o(`-`)],64))]),_:2},1024)]),_:2},1024)),64))]),_:1})]),_:1})]),_:1}),s(p(N),{value:`production`,class:`mt-4`},{default:r(()=>[m(`div`,H,[(t(),h(f,null,n(Q,e=>m(`div`,{key:e.key,class:`border-b last:border-b-0 pb-4 last:pb-0`},[m(`div`,U,[s(v,{type:e.key,size:`sm`},null,8,[`type`]),m(`span`,W,a(p(q)(`resources.${e.key}`)),1)]),X.value?(t(),h(`div`,ue,[e.key===`energy`&&X.value.energy.sources?(t(!0),h(f,{key:0},n(X.value.energy.sources,(e,n)=>(t(),h(`div`,{key:n,class:`flex justify-between`},[m(`span`,de,[o(a(p(q)(e.name))+` `,1),e.name.startsWith(`buildings.`)?(t(),h(f,{key:0},[o(`(`+a(p(q)(`common.level`))+` `+a(e.level)+`)`,1)],64)):(t(),h(f,{key:1},[o(`(`+a(e.level)+`)`,1)],64))]),m(`span`,fe,` +`+a(p(E)(Math.floor(e.production)))+`/`+a(p(q)(`resources.hour`)),1)]))),128)):(t(),h(`div`,pe,[m(`span`,G,a(p(q)(X.value[e.key].buildingName))+` (`+a(p(q)(`common.level`))+` `+a(X.value[e.key].buildingLevel)+`) `,1),m(`span`,me,` +`+a(p(E)(Math.floor(X.value[e.key].baseProduction)))+`/`+a(p(q)(`resources.hour`)),1)])),(t(!0),h(f,null,n(X.value[e.key].bonuses,(e,n)=>(t(),h(`div`,{key:n,class:`flex justify-between`},[m(`span`,he,a(p(q)(e.name))+` (`+a(e.percentage>0?`+`:``)+a(e.percentage)+`%) `,1),m(`span`,{class:i(e.value>0?`text-green-600 dark:text-green-400`:`text-red-600 dark:text-red-400`)},a(e.value>0?`+`:``)+a(p(E)(Math.floor(e.value)))+`/`+a(p(q)(`resources.hour`)),3)]))),128)),m(`div`,ge,[m(`span`,null,a(p(q)(`overview.totalProduction`)),1),m(`span`,_e,` +`+a(p(E)(Math.floor(X.value[e.key].finalProduction)))+`/`+a(p(q)(`resources.hour`)),1)])])):l(``,!0)])),64))])]),_:1}),s(p(N),{value:`consumption`,class:`mt-4`},{default:r(()=>[m(`div`,ve,[(t(),h(f,null,n(Ae,n=>ae(m(`div`,{key:n.key,class:`flex justify-between text-sm`},[Z.value?(t(),h(`span`,ye,a(p(q)(Z.value[n.key].buildingName))+` (`+a(p(q)(`common.level`))+` `+a(Z.value[n.key].buildingLevel)+`) `,1)):l(``,!0),Z.value?(t(),h(`span`,be,` -`+a(p(E)(Math.floor(Z.value[n.key].consumption)))+`/`+a(p(q)(`resources.hour`)),1)):l(``,!0)]),[[e,Z.value&&Z.value[n.key].buildingLevel>0]])),64)),Z.value?(t(),h(`div`,xe,[m(`span`,null,a(p(q)(`overview.totalConsumption`)),1),m(`span`,Se,` -`+a(p(E)(Math.floor(Z.value.total)))+`/`+a(p(q)(`resources.hour`)),1)])):l(``,!0),Z.value&&Z.value.total===0?(t(),h(`div`,Ce,a(p(q)(`overview.noConsumption`)),1)):l(``,!0)])]),_:1})]),_:1})]),_:1})]),_:1}),s(p(T),null,{default:r(()=>[s(p(C),null,{default:r(()=>[s(p(S),null,{default:r(()=>[o(a(p(q)(`overview.fleetInfo`)),1)]),_:1}),s(p(oe),null,{default:r(()=>[o(a(p(q)(`overview.currentShips`)),1)]),_:1})]),_:1}),s(p(D),null,{default:r(()=>[m(`div`,we,[(t(!0),h(f,null,n(J.value.fleet,(e,n)=>(t(),h(`div`,{key:n},[m(`p`,Te,a(p(De)[n].name),1),m(`p`,Ee,a(e),1)]))),128))])]),_:1})]),_:1})])):l(``,!0)}});export{K as default}; |