feat: 重构战报弹窗与模拟器视图,优化UI与逻辑

重构BattleReportDialog和BattleSimulatorView相关静态资源,替换旧版JS/CSS文件,提升界面一致性和交互体验。新增和优化空状态、滚动区域等通用UI组件,移除部分冗余composable,完善多语言内容。引入导弹逻辑,补充版本检测工具,提升整体代码结构和可维护性。
This commit is contained in:
谦君
2025-12-15 20:04:40 +08:00
parent 9b9fda0400
commit 59dd7bfd05
126 changed files with 3944 additions and 1487 deletions

View File

@@ -33,13 +33,19 @@ export default {
viewRequirements: 'View Requirements',
requirementsNotMet: 'Requirements Not Met',
current: 'Current',
level: 'Level'
level: 'Level',
gmModeActivated: 'GM Mode Activated! Check the navigation menu.'
},
errors: {
requirementsNotMet: 'Requirements not met',
insufficientResources: 'Insufficient resources',
insufficientFleetStorage: 'Insufficient fleet storage',
shieldDomeLimit: 'Shield dome limit reached',
missileSiloLimit: 'Missile silo capacity exceeded',
insufficientMissiles: 'Insufficient interplanetary missiles',
invalidMissileCount: 'Invalid missile count',
targetOutOfRange: 'Target out of range',
cannotAttackOwnPlanet: 'Cannot attack your own planet',
fleetMissionsFull: 'Fleet mission slots full',
insufficientFleet: 'Insufficient fleet',
insufficientFuel: 'Insufficient fuel',
@@ -164,8 +170,8 @@ export default {
darkMatterCollector: 'Collects rare dark matter resources',
darkMatterTank: 'Increases dark matter storage capacity',
missileSilo: 'Stores and launches missiles, 10 missiles per level',
terraformer: 'Terraforms planet surface, adds 5 available space per level',
lunarBase: 'Increases available space on the moon, +5 space per level',
terraformer: 'Terraforms planet surface, adds 30 available space per level',
lunarBase: 'Increases available space on the moon, +30 space per level',
sensorPhalanx: 'Detects fleet activities in surrounding systems',
jumpGate: 'Instantly transfers fleets to other moons',
planetDestroyerFactory: 'Constructs ultimate weapons capable of destroying planets'
@@ -283,7 +289,7 @@ export default {
impulseDrive: 'Intermediate propulsion technology',
hyperspaceDrive: 'Advanced propulsion technology',
darkMatterTechnology: 'Research into dark matter properties and applications',
terraformingTechnology: 'Research planet terraforming technology, adds 3 available space to all planets per level',
terraformingTechnology: 'Research planet terraforming technology, adds 30 available space to all planets per level',
planetDestructionTech: 'Terrifying technology for destroying entire planets'
},
officers: {
@@ -364,6 +370,7 @@ export default {
},
shipyard: {
attack: 'Attack',
missileAttack: 'Missile Attack',
shield: 'Shield',
armor: 'Armor',
speed: 'Speed',
@@ -381,6 +388,7 @@ export default {
title: 'Shipyard',
fleetStorage: 'Fleet Storage',
attack: 'Attack',
missileAttack: 'Missile Attack',
shield: 'Shield',
speed: 'Speed',
cargoCapacity: 'Cargo Capacity',
@@ -395,6 +403,7 @@ export default {
},
defense: {
attack: 'Attack',
missileAttack: 'Missile Attack',
shield: 'Shield',
armor: 'Armor',
buildCost: 'Build Cost',
@@ -408,6 +417,7 @@ export default {
defenseView: {
title: 'Defense',
attack: 'Attack',
missileAttack: 'Missile Attack',
shield: 'Shield',
armor: 'Armor',
buildTime: 'Build Time',
@@ -417,6 +427,7 @@ export default {
totalCost: 'Total Cost',
build: 'Build',
shieldDomeBuilt: 'Shield dome already built',
missileCapacity: 'Missile Capacity',
inputError: 'Input Error',
inputErrorMessage: 'Please enter build quantity!',
buildFailed: 'Build Failed',
@@ -429,6 +440,7 @@ export default {
flightMissions: 'Flight Missions',
currentPlanetFleet: 'Current Planet Fleet',
attack: 'Attack',
missileAttack: 'Missile Attack',
shield: 'Shield',
armor: 'Armor',
speed: 'Speed',
@@ -525,26 +537,37 @@ export default {
selectSystem: 'Select System',
view: 'View',
myPlanet: 'My Planet',
myPlanets: 'My Planets',
myPlanets: 'View My Systems',
npcPlanets: 'NPC Planets',
selectPlanetToView: 'Select planet to view',
selectPlanetToView: 'Select planet to view its system',
totalPositions: '10 planet positions total',
mine: 'Mine',
hostile: 'Hostile',
emptySlot: 'Empty - Colonizable',
scout: 'Scout',
attack: 'Attack',
missileAttack: 'Missile Attack',
colonize: 'Colonize',
switch: 'Switch',
recycle: 'Recycle',
debrisField: 'Debris Field',
scoutPlanetTitle: 'Scout Planet',
attackPlanetTitle: 'Attack Planet',
missileAttackTitle: 'Missile Attack',
colonizePlanetTitle: 'Colonize Planet',
recyclePlanetTitle: 'Recycle Debris',
scoutPlanetMessage:
'Are you sure you want to send espionage probes to scout planet [{coordinates}]?\n\nPlease go to the fleet page to select ships and send.',
attackPlanetMessage: 'Are you sure you want to attack planet [{coordinates}]?\n\nPlease go to the fleet page to select ships and send.',
missileAttackMessage: 'Launch interplanetary missiles to attack planet [{coordinates}]',
missileCount: 'Missile Count',
availableMissiles: 'Available Missiles',
missileRange: 'Missile Range',
systems: 'systems',
distance: 'Distance',
flightTime: 'Flight Time',
launchMissile: 'Launch',
cancel: 'Cancel',
colonizePlanetMessage:
'Are you sure you want to colonize position [{coordinates}]?\n\nPlease go to the fleet page to send a colony ship.',
recyclePlanetMessage:
@@ -697,10 +720,24 @@ export default {
gamePaused: 'Game paused',
gameResumed: 'Game resumed',
playerName: 'Player Name',
gameSpeed: 'Game Speed',
gameSpeedDesc: 'Current game speed multiplier',
gameSpeed: 'Resource Production Speed',
gameSpeedDesc: 'Current resource production speed multiplier',
speedChanged: 'Resource production speed changed to {speed}x',
speedReset: 'Resource production speed reset to 1x',
reset: 'Reset',
about: 'About',
version: 'Version',
latestVersion: 'Latest Version',
checkUpdate: 'Check Update',
checking: 'Checking...',
newVersionAvailable: 'New version {version} available',
upToDate: 'Already up to date',
checkUpdateCooldown: 'Please try again later (5 minute cooldown)',
checkUpdateFailed: 'Failed to check for updates, please check your network connection',
viewUpdate: 'View Update',
updateAvailable: 'A new version is available. Click to view release notes.',
download: 'Download',
goToDownload: 'Go to Download',
buildDate: 'Build Date',
community: 'Community',
github: 'GitHub Repository',
@@ -739,12 +776,22 @@ export default {
testSpy: 'Test Spy',
testAttack: 'Test Attack',
testSpyAndAttack: 'Test Spy & Attack',
testSpyMessage: 'Click confirm to accelerate the spy mission',
testAttackMessage: 'Click confirm to accelerate the attack mission',
testSpyAndAttackMessage: 'Click confirm to accelerate the missions',
initializeFleet: 'Initialize NPC Fleet',
accelerateMissions: 'Accelerate All Missions (5s)',
selectNPCFirst: 'Please select an NPC first',
npcNoProbes: 'NPC has no spy probes',
npcNoSpyReport: 'NPC needs to spy first',
npcMissionFailed: 'Failed to create mission',
npcNoPlanets: 'NPC has no planets',
npcWillSpyIn5s: '{npcName} will spy in 5 seconds',
npcWillAttackIn5s: '{npcName} will attack in 5 seconds',
npcWillSpyAndAttack: '{npcName} will spy in 5s and attack in 10s',
acceleratedMissions: 'Accelerated {count} missions to 5 seconds',
npcFleetInitialized: '{npcName} fleet initialized',
npcFleetDetails: '100 Spy Probes\n500 Light Fighters\n300 Heavy Fighters\n200 Cruisers\n100 Battleships\n50 Bombers\n30 Destroyers\n20 Battlecruisers',
dangerZone: 'Danger Zone',
dangerZoneDesc: 'The following operations are irreversible',
resetGame: 'Reset Game',
@@ -796,9 +843,32 @@ export default {
events: {
gift: 'Sent Gift',
attack: 'Attack',
missileAttack: 'Missile Attack',
allyAttacked: 'Ally Attacked',
spy: 'Espionage',
stealDebris: 'Debris Stolen'
},
reports: {
giftedResources: 'Gifted {metal}M {crystal}C {deuterium}D',
receivedGiftFromPlayer: 'Received gift from player',
giftedToNpc: 'You gifted resources to {npcName}. Reputation +{reputation}',
rejectedPlayerGift: 'Rejected player\'s gift',
npcRejectedGift: '{npcName} rejected your gift. Reputation {reputation}',
attackedNpc: 'Attacked {npcName}',
wasAttackedByPlayer: 'Was attacked by player',
youAttackedNpc: 'You attacked {npcName}',
playerAttackedAlly: 'Player attacked ally {allyName}',
allyDispleased: '{allyName} is displeased that you attacked their ally {targetName}',
wasSpiedByPlayer: 'Was spied by player (detected: {detected})',
spyDetected: 'Your espionage was detected by {npcName}',
stoleDebrisFromTerritory: 'Stole debris from {npcName}\'s territory',
playerStoleDebris: 'Player stole debris from territory',
recycledDebrisNearNpc: 'You recycled debris near {npcName}\'s planet. They are displeased.',
giftedResourcesToPlayer: 'Gifted resources to player',
receivedGiftFromNpc: 'Received gift from {npcName}',
acceptedGiftFromNpc: 'You accepted a gift from {npcName}: {metal}M {crystal}C {deuterium}D',
playerRejectedGift: 'Player rejected gift',
rejectedGiftFromNpc: 'You rejected a gift from {npcName}. Reputation {reputation}'
}
},
pagination: {
@@ -807,5 +877,10 @@ export default {
first: 'First',
last: 'Last',
page: 'Page {page}'
},
notFound: {
title: 'Page Not Found',
description: 'Sorry, the page you are looking for does not exist',
goHome: 'Go Home'
}
}