From 7d647512e3564e781488dfce961587e8f6f6dd14 Mon Sep 17 00:00:00 2001 From: Alec Maier Date: Mon, 9 Sep 2019 23:52:45 -0400 Subject: [PATCH] Added art for villager and werwolf cards, updated footer --- assets/images/roles/Villager.png | Bin 0 -> 3112 bytes assets/images/roles/Werewolf.png | Bin 0 -> 3738 bytes static/game.js | 5 ++++ static/styles.css | 42 ++++++++++++++++++++++++++++--- views/index.html | 10 ++++++-- 5 files changed, 51 insertions(+), 6 deletions(-) create mode 100644 assets/images/roles/Villager.png create mode 100644 assets/images/roles/Werewolf.png diff --git a/assets/images/roles/Villager.png b/assets/images/roles/Villager.png new file mode 100644 index 0000000000000000000000000000000000000000..9bc99612a552c9911aaeebda406d90e9c7fbc231 GIT binary patch literal 3112 zcmZWr30M=?7LK(--N5RzNGyU#X6Bna_x|_%=lti~bK?x| znYp=@<-Fp0ah> zZxi^w`TJ8BB499$X4SQ!HLM5^4(=zNI8U+(5AY)egW*7g!(dx)+1nm-`;U)g$hRoqtd9C0+T~xj(Dr<)f6eXQjoq8fG?%`6(StX_ znC<^`>{pcL?sIdA*?Ip}>S37oHJzFBcej0f%q1yx({&W{`1QHpZNAV*a4-;IBz^PK zecZq-ib5%=U$Ds04Ds5g7_9ALMKp5evnmx9AAx47e&iz=%B>HtNQa^t?wn5=C(9G<~)uc;o!TW{jGK-87I4P z!gNA#??1qDmj|$qZz+sjr4iaoK&YuH2=g9IKc89SY7wzS63FsTaLMa3S^|XsgJR`w z@t1zvUnO<_(40dcma8=LAO>5=*zoe!-z;%#7cE~BJ~VNMq$QnA3G0otPVXMo#n7kmEz!g>?C9QNyaV-*J6(m&ql2zpY(BQp^Tv9# z+G@&oqFM7bkzZ2E4BE2L5ePcG`t#ZYbU2z74*`C-*U-gNo$=g~H8_aQxNS3C8?+Lu z)6vwv=2Des(X5|SXS7^B4H+f%`K&k`!G^HLL`5j8{STo{WG&{f>B6 zMK(4-!?W6teE@f#6zc3-E8uMlP0&e6MnIww+JSxqN-qi#-FoJ&TMc!kYVXqgr;&sZzDskNdDGL}I$v&O`bYsf0sfui5Vz}&` zK~V3LnfY|KbCOHqt|5LZnq|0;_B9DAIJ%d?HxEW47S@admW#Je$X`%xlyi8x?g(#2IE17R{kdQrLjYhq8)>^Q^P zG5_g{takC`VCl_wK>QGga`1*y$#pSwy-Epu!LJxL8i^h?3#t%>t@4###Zrv?_=kbO z?|(dbF)d}TRo!Dc^8&W!?UFpaQQ4Qf$Gmr4Vp>Y>H|Vq#e}2=~x;K*vi!XOk zu!)3qqcWyP1ahA-W6ZZ&1;IJt6a{arW+sybU|F%gj+eJC@G6FN7aN$dx{jO*Bf@EA ztfzGt4j@33+82pTr%s*?s$fmf=AHgMXL)W)npjIx3xEvjvZvn-a8;4^H#bygw=HO2n2=fJLHcss& z4m>SXrA@VrS;6Q(TGn}Q>~-7g)t2<`iwB}xcMd&B-PhQ(;ul`I!l4VG$sYNDu~~A) z0YFk^ou}_Rk7oD_3!F#CALlsa_sKMVp9OID`GmvPSNDU}g*yETMNI8neYGnJoHJFJ z4JL&;byb2QIu5aHts8!$7<*6Q<0N`(#kR5|tKDO9#V)~TG#$hH>@j@B)fSC3#PQybC-gR;L?35-4T4{n{IFm zQ1uuf=4f}*)l%VCBj!EV*I5*^E2l*J*b4x!o#JaxRdT!KyfMNX{iQ6dPWxPlrV#L2wn;v2Dm7ZV~~;KgXTRkMox2!sSPxHrCc6!pzIyc)8y6$ zDZ%6DNC}piYsp%sBKJOgakw+fJ=IK(D}Q$$=;U%vzKoMYO7tx# z;sUU)V>B^2c7U1$U(@~Sp>SSQbQed!LNXT3a-S0w_Eb0blfOczali%#3GK=>%G?ue z0@3L#$mnKPvnT1}BW3??;{8)i}}wAlI_$t?p_C5 fYliP_Ihnky&T7{`D0?}{Q;pf5z}a$+U;Ob;mh{+B literal 0 HcmV?d00001 diff --git a/assets/images/roles/Werewolf.png b/assets/images/roles/Werewolf.png new file mode 100644 index 0000000000000000000000000000000000000000..40357eb425ef16e3066aed2669c17d13301c731a GIT binary patch literal 3738 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 PJ{uZz?30?qG2i?Lk-$}{ literal 0 HcmV?d00001 diff --git a/static/game.js b/static/game.js index ac17d15..7a560c9 100644 --- a/static/game.js +++ b/static/game.js @@ -1,6 +1,7 @@ import {utility} from './util.js' const socket = io(); +const finishedArtArray = ["Villager", "Werewolf"]; let clock; let currentGame = null; let cardFlippedOver = false; @@ -129,6 +130,9 @@ function renderGame() { function renderPlayerCard(player) { const card = player.card; + const cardArt = finishedArtArray.includes(card.role) ? + "" + card.role + "" + : "
"; const cardClass = player.card.team === "good" ? "game-card-inner village" : "game-card-inner wolf"; const playerCard = document.createElement("div"); playerCard.setAttribute("id", "game-card"); @@ -137,6 +141,7 @@ function renderPlayerCard(player) { "
" + "
" + "

" + card.role + "

" + + cardArt + "

" + card.description + "

" + "

Click to flip

" + "
" + diff --git a/static/styles.css b/static/styles.css index 1a448c5..eefcead 100644 --- a/static/styles.css +++ b/static/styles.css @@ -191,20 +191,32 @@ html, body { #footer { position: absolute; bottom: 0; + margin: 0 0 1.5em 0; width: 100%; height: 5rem; + font-size: 0.75em; text-align: center; align-items: center; display: flex; + flex-direction: column; justify-content: center; } +#footer div { + display: flex; + align-items: center; +} + +#footer p { + margin: 0 0 0 1em; + color: gray; +} + #footer a { - font-size: 0.9em; color: #bd2a2a; text-decoration: #bd2a2a; cursor: pointer; - margin-left: 1em; + margin: 0 0 0 1em; } #footer a:hover { @@ -412,7 +424,11 @@ button { #create-game-container, #join-game-container { display: inline-block; text-align: left; - margin: 3em 1em; + margin: 3em 0.5em; +} + +#create-game-container button { + margin-right: 1em; } #game-size { @@ -570,6 +586,15 @@ label { transform-style: preserve-3d; } +#game-card img { + width: 160px; +} + +.placeholder { + width: 160px; + height: 160px; +} + .village h2 { color: #171469; } @@ -590,12 +615,14 @@ label { } #game-card h2 { - font-size: 2em; + font-size: 1.7em; font-family: 'diavlo', sans-serif; + margin: 0.3em; } #game-card p { padding: 0.5em; + font-size: 0.7em; } .game-container { @@ -630,6 +657,12 @@ label { transform: rotateY(180deg); } +.game-card-front p:first-of-type { + margin: 0.7em; + border: 1px solid gray; + border-radius: 3px; +} + .killed-btn { border-radius: 5px; width: 13em; @@ -652,6 +685,7 @@ label { #flip-instruction { color: gray; + margin: 0; } #game-header { diff --git a/views/index.html b/views/index.html index 245b079..c606959 100644 --- a/views/index.html +++ b/views/index.html @@ -27,8 +27,14 @@