From dc90cf94489bc6b8834d0e92d8d5fae56488344e Mon Sep 17 00:00:00 2001 From: misterkirill Date: Wed, 18 Jun 2025 23:58:20 +0500 Subject: [PATCH] feat: add basic upgrades functionality --- assets/css/style.css | 6 +-- assets/img/upgrades/calm_music.png | Bin 0 -> 3632 bytes assets/img/upgrades/mood_lifter.png | Bin 2072 -> 4154 bytes assets/img/upgrades/saves.png | Bin 0 -> 2986 bytes index.html | 6 +-- js/game.js | 61 ++++++++++++++++++++++++---- 6 files changed, 60 insertions(+), 13 deletions(-) create mode 100644 assets/img/upgrades/calm_music.png create mode 100644 assets/img/upgrades/saves.png diff --git a/assets/css/style.css b/assets/css/style.css index 0d13179..5ac1044 100644 --- a/assets/css/style.css +++ b/assets/css/style.css @@ -89,7 +89,7 @@ a { margin-bottom: 1rem; } -.upgrades { +#upgrades { display: flex; align-items: center; gap: 0.8rem; @@ -99,7 +99,7 @@ a { padding: 0; width: 3.6rem; height: 3.6rem; - border: 2px solid var(--color-light); + border: none; border-radius: 8px; overflow: hidden; cursor: pointer; @@ -110,7 +110,7 @@ a { height: 100%; } .upgrade:hover { - transform: scale(1.05); + transform: scale(1.08); } .upgrade:active { transform: scale(0.95); diff --git a/assets/img/upgrades/calm_music.png b/assets/img/upgrades/calm_music.png new file mode 100644 index 0000000000000000000000000000000000000000..b62bcc3fb6c5f1caba77909de5927c253cf6ba10 GIT binary patch literal 3632 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 D7*%{y literal 0 HcmV?d00001 diff --git a/assets/img/upgrades/mood_lifter.png b/assets/img/upgrades/mood_lifter.png index 3fa3d95acefc827a509c7f9c6ea96df1aa9dced4..b552d7d1e61ec0bd82567942982a5c130e82048d 100644 GIT binary patch literal 4154 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 TjFEUC^|{PUF5*gzog)4VNXKnF literal 2072 zcmaJ?dpHvc8=nkgd>FY#b2mgTp>o?Yx9GS#W1AFm$(c2mGMD4JEq6;Uks9jYm@!ey zOpZ08lscK68KNU}jPgGdlwTU}aOLXkof zyb*HWtMg1MppQIqjP;~xMfzl`{{`FQF9tR?x=%tq)2=G?OAeVV=e2gT2 zP|~aVx{Q^b-MP2@8DaMnE-}>d)PZS+!&MgHR&5_te;(P~OnTSe91pLq4)0Ho<@5R8 zoTI6$b?Ta$@tZ?4l~D4hg%RqF7|N-%?ez$wIGXTcy(5uN)IumV`}p`s6qYpG1YMcP z$-DeuXlM7U@OqL$&a8?ePYPjSW@a;yQ3=s^l|A-OG+bp-pwky#=|OD7HrlK?))frV zeV8jHKi1%!B{S{UTU1g~JKo@2$idN;FN>OrSSNf1s*?-*Ofe{wrH`(CRkNS$z`myO zrgkcoddm|SHoUjkq<(C~k&ad9Q8J%3zF!NznK*15uZU@OiTWNCU3b83E ze4Bg(9Auqgnm85c%w;eh>dbw}8R5V#VpJNJ-?E8ke(?(X$B5m7cRjTX^G~a!*;ai^ zhD?ybtWw!Gka~S8*U%i5orgdAjMbq`Joxh3c>t!;jQ7OXhso>YP zFGeWFqXG&Vnl~;lx*TeEx>(cBTRrpJ?o#@}wsL`8?2~zol{y7ih&Wnr!=A4b_(KYn{yZ(Z@NfOIWiRoh20o%T!j zW5S^+g0iixWIQky<@>Ds=BoT0I;OXx1nNJ0nHV!498>cYEv^M`Du4c>OJfD>LMegT znml?Q2-mL)N>vOu6A#-nN0DvTyUR-S{{ENj{jNJ`9ZN=z%@Gfna#M?5@n#=5+%5EP zl14|9@>x(lcx9Pd0-YF+kfO&vjjoDf+QRNz1gL7k>EWE!UGd;`%dZE+4yjQ;3N&O) zJU|87xOJT%Q?D7n{qA>`0sJJ61nZeaB2NV&r+C0lk`S})c3nQ4XEmXJlDy)u%5~89 zi~fmsyDmMTRU#}F!?1NV-2}`f_5Ox`n{6lDji>`N3&3rMYL4hTncM+R6Hkqh<*=m!1p8YOHHo7U4y?xw&Jhf`}wpIk`&g zG{LbR|M5l34bE+0baeC(vADEUYG(9p$NBYrBogU$opdMR2AAmMYSJt=BOSs&xWbJL z1R}h|Q`O=&koCNyTh%t6y=N9Edrm62o|hqo$YCQ&{^%d9L{%ge#xc?_KKh~b&1SMT zof&6&c`$}=F_zF7fuFniQ+jvzT|JcQg(f-G=+Tp&g#oA-rHnp=9<+a|P}QQ(yquvG zvfm3e`f7Umkb{wY=b{Bz;#2+umBH7d&kPFvSPF7#%X_8JYaFu7l- z``v|eJ1`1w=G%24p;oV*3|5Bp5?qqfmB?{Mf+q6xS?o?xJjNn%PSN|?K^rOpjXEGF|2B^9YzQE{|J?RG^| zFRfX_&e^Wx*`M>S?&k*c!|-Q;V#LA1<c5UcqIIDS6*yZv2 zS4dir|NF*<4I4KF7g@Jp%;4dinZ8R@lpBUCQw&)!2A#-54*j{@c=q$0xI+znwYB`A z%mwB9??*Y?> zQjFTB?s(^1yiqU~#Kpd6{zZjKtec%N1zgqHGXk=86Xqn(ECX82yMA!oGmFxPUnvLr ixj|gjJr({N>`IsqJHGBBYY0U`4)8>ta-}0q=lly3m&#-S diff --git a/assets/img/upgrades/saves.png b/assets/img/upgrades/saves.png new file mode 100644 index 0000000000000000000000000000000000000000..92ed41a614bbc4a90d92271d079ba85294d05226 GIT binary patch literal 2986 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 -
-