From 932d8675051fcc5505255619e300f97c712a6647 Mon Sep 17 00:00:00 2001 From: aurinex Date: Mon, 21 Jul 2025 15:17:21 +0500 Subject: [PATCH] paint buttons / minor change --- assets/images/heart.svg | 22 ++++++-- src/main/minecraft-launcher.ts | 2 +- src/renderer/components/CapeCard.tsx | 10 ++++ src/renderer/components/TopBar.tsx | 75 ++++++++++++++++++++++++++-- src/renderer/pages/Marketplace.tsx | 13 ++++- src/renderer/pages/Profile.tsx | 38 ++++++++++++-- src/renderer/pages/Shop.tsx | 9 ++-- 7 files changed, 150 insertions(+), 19 deletions(-) diff --git a/assets/images/heart.svg b/assets/images/heart.svg index 0262800..a450b1c 100644 --- a/assets/images/heart.svg +++ b/assets/images/heart.svg @@ -1,11 +1,23 @@ - - - + + + + + + + + + + + + diff --git a/src/main/minecraft-launcher.ts b/src/main/minecraft-launcher.ts index 2689dc9..d9e3ed7 100644 --- a/src/main/minecraft-launcher.ts +++ b/src/main/minecraft-launcher.ts @@ -281,7 +281,7 @@ export async function findJava(): Promise { }); // Предпочитаем Java 21 или 17 для совместимости с authlib-injector - const preferredVersions = [21, 17, 11]; + const preferredVersions = [24, 21, 17, 11]; for (const preferredVersion of preferredVersions) { const preferred = javaVersions.find( diff --git a/src/renderer/components/CapeCard.tsx b/src/renderer/components/CapeCard.tsx index 3b24527..d03dd3c 100644 --- a/src/renderer/components/CapeCard.tsx +++ b/src/renderer/components/CapeCard.tsx @@ -107,6 +107,16 @@ export default function CapeCard({ color={actionButton.color as 'primary' | 'success' | 'error'} onClick={() => onAction(capeId)} disabled={actionDisabled} + sx={{ + borderRadius: '20px', + p: '5px 25px', + color: 'white', + backgroundColor: 'rgb(0, 134, 0)', + '&:hover': { + backgroundColor: 'rgba(0, 134, 0, 0.5)', + }, + fontFamily: 'Benzin-Bold', + }} > {actionButton.text} diff --git a/src/renderer/components/TopBar.tsx b/src/renderer/components/TopBar.tsx index 8a3898f..3e93800 100644 --- a/src/renderer/components/TopBar.tsx +++ b/src/renderer/components/TopBar.tsx @@ -34,6 +34,7 @@ export default function TopBar({ onRegister, username }: TopBarProps) { const navigate = useNavigate(); const [coins, setCoins] = useState(0); const [value, setValue] = useState(0); + const [activePage, setActivePage] = useState('versions'); const handleChange = (event: React.SyntheticEvent, newValue: number) => { setValue(newValue); @@ -60,7 +61,18 @@ export default function TopBar({ onRegister, username }: TopBarProps) { return 'Запуск'; } if (isVersionsExplorerPage) { - return 'Версии'; + if (activePage === 'versions') { + return 'Версии'; + } + if (activePage === 'profile') { + return 'Профиль'; + } + if (activePage === 'shop') { + return 'Магазин'; + } + if (activePage === 'marketplace') { + return 'Рынок'; + } } return 'Неизвестная страница'; }; @@ -122,7 +134,6 @@ export default function TopBar({ onRegister, username }: TopBarProps) { {(isLaunchPage || isRegistrationPage) && ( )} {!isLaunchPage && !isRegistrationPage && !isLoginPage && ( - + { + setActivePage('versions'); + }} sx={{ color: 'white', fontFamily: 'Benzin-Bold', fontSize: '0.7em', + '&.Mui-selected': { + color: 'rgba(255, 77, 77, 1)', + }, + '&:hover': { + color: 'rgb(199, 199, 199)', + }, + transition: 'all 0.3s ease', }} /> { + setActivePage('profile'); + }} sx={{ color: 'white', fontFamily: 'Benzin-Bold', fontSize: '0.7em', + '&.Mui-selected': { + color: 'rgba(255, 77, 77, 1)', + }, + '&:hover': { + color: 'rgb(199, 199, 199)', + }, + transition: 'all 0.3s ease', }} /> { + setActivePage('shop'); + }} sx={{ color: 'white', fontFamily: 'Benzin-Bold', fontSize: '0.7em', + '&.Mui-selected': { + color: 'rgba(255, 77, 77, 1)', + }, + '&:hover': { + color: 'rgb(199, 199, 199)', + }, + transition: 'all 0.3s ease', }} /> { + setActivePage('marketplace'); + }} sx={{ color: 'white', fontFamily: 'Benzin-Bold', fontSize: '0.7em', + '&.Mui-selected': { + color: 'rgba(255, 77, 77, 1)', + }, + '&:hover': { + color: 'rgb(199, 199, 199)', + }, + transition: 'all 0.3s ease', }} /> @@ -193,7 +257,10 @@ export default function TopBar({ onRegister, username }: TopBarProps) { WebkitAppRegion: 'drag', }} > - + {getPageTitle()} diff --git a/src/renderer/pages/Marketplace.tsx b/src/renderer/pages/Marketplace.tsx index e3e6496..b9f4edc 100644 --- a/src/renderer/pages/Marketplace.tsx +++ b/src/renderer/pages/Marketplace.tsx @@ -221,9 +221,18 @@ export default function Marketplace() { diff --git a/src/renderer/pages/Profile.tsx b/src/renderer/pages/Profile.tsx index c176ed2..c505be7 100644 --- a/src/renderer/pages/Profile.tsx +++ b/src/renderer/pages/Profile.tsx @@ -167,7 +167,9 @@ export default function Profile() { display: 'flex', flexDirection: 'row', alignItems: 'center', - gap: 2, + gap: '100px', + width: '100%', + justifyContent: 'center', }} > {loading ? ( @@ -185,6 +187,20 @@ export default function Profile() { }} > {/* Используем переработанный компонент SkinViewer */} + + {username} + - + - Shop {loading ? ( Загрузка... ) : ( @@ -93,9 +94,11 @@ export default function Shop() { sx={{ display: 'flex', flexDirection: 'column', + flexWrap: 'wrap', + alignContent: 'flex-start', + width: '90%', + height: '80%', gap: '2vw', - justifyContent: 'center', - alignItems: 'center', }} > Доступные плащи