From a18eca3d8c4269b771ab3a152cd369c5d459f113 Mon Sep 17 00:00:00 2001 From: Hepatica Date: Sun, 31 Mar 2024 07:24:35 +0200 Subject: [PATCH] Add stable version of double --- .../css/PagesStyles/games-pages/double.css | 68 ++++++- .../css/PagesStyles/games-pages/jackpot.css | 7 +- .../HistoryRectangleBlackDouble.png | Bin 0 -> 1373 bytes .../HistoryRectangleGreenDouble.png | Bin 0 -> 1389 bytes .../double-game/HistoryRectangleRedDouble.png | Bin 0 -> 1395 bytes luckydiamond/src/assets/js/chat/ChatLogic.js | 2 +- .../src/assets/js/games/double/DoubleApi.js | 22 +++ luckydiamond/src/main.js | 10 ++ .../src/pages/games-pages/DoublePage.vue | 167 ++++++++++++++---- 9 files changed, 225 insertions(+), 51 deletions(-) create mode 100644 luckydiamond/src/assets/icons-games/double-game/HistoryRectangleBlackDouble.png create mode 100644 luckydiamond/src/assets/icons-games/double-game/HistoryRectangleGreenDouble.png create mode 100644 luckydiamond/src/assets/icons-games/double-game/HistoryRectangleRedDouble.png create mode 100644 luckydiamond/src/assets/js/games/double/DoubleApi.js diff --git a/luckydiamond/src/assets/css/PagesStyles/games-pages/double.css b/luckydiamond/src/assets/css/PagesStyles/games-pages/double.css index 707c1f3..896cb9d 100644 --- a/luckydiamond/src/assets/css/PagesStyles/games-pages/double.css +++ b/luckydiamond/src/assets/css/PagesStyles/games-pages/double.css @@ -7,27 +7,83 @@ height: 32vh; border: 1px solid #262C55; margin: 2.6%; + margin-top: 0px; } -.double-game-main-box{ +.double-game { + z-index: 1; + border-radius: 20px; + width: 69%; + height: 94%; +} + +.double-game-main-box { border-radius: 10px; border: 1px solid #262C55; - padding-top: 7vh; - padding-bottom: 7vh; + padding-top: 4vh; + padding-bottom: 4vh; padding-left: 0vh !important; padding-right: 0vh !important; background: #1A1F37; - + margin-bottom: 1vh !important; } .double-carousel { z-index: 1; position: relative; - border-radius: 10px; background: #2E2D37; box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25); width: 100%; margin-top: 1px; - border: 1px solid #262C55; + border: 1vh solid #2E2D37; + border-right: 0vh !important; + border-left: 0vh !important; height: 95%; +} + +.container-double-history-text { + display: flex; +} + +.double-history-text { + background-color: #728DF8; + border: none; + color: #0E1220; + padding-right: 1vh; + padding-left: 1vh; + font-size: 16px; + margin: 4px 2px; + border-radius: 5px; + box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2); + font-size: 18px; + font-family: Montserrat; + font-weight: bold; +} + +.double-carousel-arrow { + position: absolute; + bottom: -3vh; + left: 50%; + transform: translateX(-50%); + color: #728DF8; + font-size: 24px; +} + +.double-carousel-arrow-upper { + position: absolute; + top: -3vh; + left: 50%; + transform: translateX(-50%) rotate(180deg); + color: #728DF8; + font-size: 24px; +} + +.double-game-history-main-box { + border-radius: 20px; + border: 1px solid #262C55; + padding-top: 1vh; + padding-bottom: 0vh; + padding-left: 1vh; + padding-right: 0vh; + background: #1A1F37; } \ No newline at end of file diff --git a/luckydiamond/src/assets/css/PagesStyles/games-pages/jackpot.css b/luckydiamond/src/assets/css/PagesStyles/games-pages/jackpot.css index a3bce2b..a503d61 100644 --- a/luckydiamond/src/assets/css/PagesStyles/games-pages/jackpot.css +++ b/luckydiamond/src/assets/css/PagesStyles/games-pages/jackpot.css @@ -47,17 +47,12 @@ .carousel-arrow { position: absolute; bottom: -20px; - /* Регулируйте положение стрелки относительно нижнего края карусели */ left: 50%; - /* Центрирование стрелки по горизонтали */ transform: translateX(-50%); - /* Дополнительное центрирование, чтобы точка указывала точно на центр */ color: #728DF8; - /* Цвет стрелки */ font-size: 24px; - /* Размер стрелки */ - /* Добавьте любые дополнительные стили, такие как цвет фона, границы и т.д. */ } + .jackpot-useringame-list{ margin-top: 3.5%; overflow-y: auto; diff --git a/luckydiamond/src/assets/icons-games/double-game/HistoryRectangleBlackDouble.png b/luckydiamond/src/assets/icons-games/double-game/HistoryRectangleBlackDouble.png new file mode 100644 index 0000000000000000000000000000000000000000..534865b6b2a5c95019da7ad014007ec6f5b9217f GIT binary patch literal 1373 zcmV-j1)}LK!-I2$|HR#woK0f}Qw3P=Z7$D*71My#b;-djH z@C7vS6Ey)C)rez2J6Nx;uW#V_KptQ6Wn7QP<4;abPX1*>8AyVL+1uMAL*Gbz#1kFR z`3xlqJ55lt)S!VsP=6+I;wA7Y>XEmjTm#a&v27q+*z&C1G3(rUF5i65jf+1c4~zN?&2 z@(q+0qR>AQF%X4TQN2bPpp2cwx3;$2;KIU!#ExdO>4XlNO<4mUNv?svC1OAWPvk)Z z!z5S(Dgju@1i=#~BvZ1z*wF9yUGzcVv1&p@y1cyHz+fA7)Fy;=U=?)s@%R=Dj5Lh8 z)Z*^$PGSe?WbLiS8lOt56EDObM$gaBpFq$(Q4RS1%6PK3l6*76Y?MEYsqCo2IsjPs zY5o8wb{aT1IB*@gZ^R7>8D>I17cqhB0EAuaWL6@G-hMw%&9q!w86XjA%A$=)~nr zFIM<r=PObjIAQPa?;A}e3Jpj#oVXCS zuEdpE2YkX=2)tfe0;rZ(=v$Kr0owiw5>8uWqduK>aW%`b-y~lA$sdGKO(pVmz?mx3@o((&-|Z6C5qtv$L}dk2izC;JZen@vTIJ;c)ol_4V~DJZ7F& zcH8`P%NQP*@@TP%@-a$lb#?V=nxUYU3iW#3;G=@tqE^Q*Qd=plBc=C?ah*ToI|UCIA7h+^zLi|+ zl>Qsv9y+m;03}S$ z2J`dtZ@|bMXmSU-zW?ExHJpSs;hrzT_WKA~v^VEC@P{7$z!iD0#iC$b-*L98@3Bt{ z+wi4{Hfs>qXaAJ%y8rgXQ|iOr-QBT-=|o8o#dT}9+pYC_y;Sd{z)Z~_tU427Joc+% z@eSQi1gm8+h7%80>+vPqcrMI|b9Ek{VG$Yrf8?dDQqPolA3g1?OngV`qHpZ3rsRC*TFZ^U~XEPTMLBu|3Tull!lxckx5@n$hdA%WqOLPL1Wsp fDb1UpLuTMV=6AH`^;$5d00000NkvXXu0mjf-^7$x literal 0 HcmV?d00001 diff --git a/luckydiamond/src/assets/icons-games/double-game/HistoryRectangleGreenDouble.png b/luckydiamond/src/assets/icons-games/double-game/HistoryRectangleGreenDouble.png new file mode 100644 index 0000000000000000000000000000000000000000..b79ba1d53dccf7dba4c896f6b3e35db17d3163ed GIT binary patch literal 1389 zcmV-z1(N!SP)w9rnYTwzu^GGSBXHJ{Z)(pD&(al@QWU|feI$bS}6VmOwU)=o+wB-k< z7y#kud*g%GKjdngJVHR>JA0q+eT|)9DA^IifOMd~@&1h$b(HMW)k{8)<7!lU>Gr3$ z|3O0-2%Ls$x7$jGlaI+i;(_|<#px!~8n~U(z)q;Gt*wx`d6hgx5URIOF%zQhDFf1A zgj}wZzqm#zjbOqET~vtdKt!Hnd3iaeRPe@Qx+;X<-ZRkYbUtnGe9S5t2NpLF3XMSpn^agkNEw<5N@?3Jf{8bbNH(fq#Q99m zSJ*g!^FSJj9UCYDU;`!>f-&d45ETGM*tJ^C(4F0{P;p>{jRaIuiEIa`7)G24TOx6x z;($#!Gl56B5TKGIc^m}68hMChlKkq}sm`)dn@$_QI_{6YCr^=#^e?D!{6(E5bJn8G z_B_~o^o>sR8F>cKba?;p%Un8bBC%$RCcaw4VL9pi);T#l?0!O?q5t>btA{^5d<+^v ztL@gt6)_XIFfDVbaCx3f_4=Ey+*(|%zQ-(9=?cM;@1Ff}x_$qLpTFbgnJqAcA(x4= zxtwY?oAJTH!2);IP~tdVsJ~oqTzl<>ccXIL49j7Yo*^dV$)D%P=Rf|w`{3I_XYki( zGy>6GTW~NQaY@7l!I)(i;HPS(QmHZ=4xi)S*@Hq9MQS`A6W5w+F?{z%W6GuF=4a!w ze$ICUn#U(R4nof|$YIVZe;^nI;fFvi+COtnMO?2}4Y**XuoYSjak1{Zrv0eGzb3zY|E{%yH<;D00000NkvXXu0mjfuDF=7 literal 0 HcmV?d00001 diff --git a/luckydiamond/src/assets/icons-games/double-game/HistoryRectangleRedDouble.png b/luckydiamond/src/assets/icons-games/double-game/HistoryRectangleRedDouble.png new file mode 100644 index 0000000000000000000000000000000000000000..490524a47082b248be5d2bce10ecc36713e96e39 GIT binary patch literal 1395 zcmV-(1&sQMP)K68POr9uq8KC zU^!JB2{%D5BH1{0vgh-C?d1Jt=Z)t!cTv*Bvp;EWc0P9Ry*KY`W)!^yPnMS(lq7da zsZUAkCcQ~0b)VAoKE?4`V{`M7Qc91UHlnQ=bb9;t9e!Hpc7v`Krzz3eyIWg7fVTYL z5Cb3_eW$l>eaZDYg@iQytg*fQ3s!=mWJL@E(t-NFn>XLTrqnK7z2x&aO-iK?=I`Bm zf`%{E{7&W7D5aAdH~!{HA5(x}DL;B=YwJUP>{~s` zR>0~$PzsfJfF=AMS0yeHbRJ!zLSzTZ6gXyPW@5@z-*`;XCuKW>XW;nw7&MloT{s3P zBVKHlBG|&x(vq5+n~Q3-T14RkG)5~cE5>%qR{w>gqA)-k8ym3W%!n5k7tP4j)D(q| zYPD*F%`_wOX58%VBJh%GwOWb-$NBlWsX;RWaOA~+LV&eoh~Oa=q7m6%Xb>%7$D_rF z4bii+v$_Z>gcSgtJ3BjBB(`qUq!yxIAp>-xwpyc2;IiD94k`%5@rd6q4B=Kwvds*# zQT)KCqN50LfT7u5vxi(9fQ3`&fRK-lj$GTN4xFY+lq(EeAcGg;G?m63U4#U@n1^B6YrBbPOyWO|=*OTfp?OCU@L z9YYAcj8T4=v#T@^d)w~OWr>CbYXJ=no|K&BS{}RW9E+#e_jTXBs=$kQ| ziHV7X|G*Tw)J0c#T;>>Em3iosf_4-|Lv7SdTnqgpzH9#55)Y~OR##UCZ^oynV=_@?{5q1M|?w@2B(g z^O}8rpLbs=OI~wH=~W6W9{~UW002ovPDHLkV1lt` Bm#_c; literal 0 HcmV?d00001 diff --git a/luckydiamond/src/assets/js/chat/ChatLogic.js b/luckydiamond/src/assets/js/chat/ChatLogic.js index baa1da5..c49f0b5 100644 --- a/luckydiamond/src/assets/js/chat/ChatLogic.js +++ b/luckydiamond/src/assets/js/chat/ChatLogic.js @@ -31,7 +31,7 @@ export function ConnectToChat() { if (dataObject.MessageType == 'DoubleGameState') { eventBus.emit('doubleGame', event.data) - console.log('data') + console.log(event.data) return; } diff --git a/luckydiamond/src/assets/js/games/double/DoubleApi.js b/luckydiamond/src/assets/js/games/double/DoubleApi.js new file mode 100644 index 0000000..5797c4d --- /dev/null +++ b/luckydiamond/src/assets/js/games/double/DoubleApi.js @@ -0,0 +1,22 @@ +import { BackendApiUrl } from '@/properties/Сonfig.js'; + +export async function GetNewestDoubleGames() { + try { + const response = await fetch(`${BackendApiUrl}/GameDouble/GetNewestDoubleGames`, { + method: 'POST', + headers: { + 'Content-Type': 'application/json' + }, + redirect: 'follow' + }) + + if (!response.ok) { + console.log('Fetch error:', response.status) + } + + return await response + } + catch (error) { + console.log('Fetch error') + } +} \ No newline at end of file diff --git a/luckydiamond/src/main.js b/luckydiamond/src/main.js index 11a6fff..bd12f6a 100644 --- a/luckydiamond/src/main.js +++ b/luckydiamond/src/main.js @@ -13,6 +13,16 @@ export const eventBus = mitt() const app = createApp(App) +app.config.warnHandler = (msg) => { + // Intercept specific warning message and suppress it + if (msg.includes('Property or method "clickedBtn" is not defined on the instance but referenced during render.')) { + // You can simply return to ignore it, or even better, log it somewhere if you have a logging system + return; + } + + // Log or handle other warnings as you see fit + }; + app.use(router) app.mixin(Mixins) diff --git a/luckydiamond/src/pages/games-pages/DoublePage.vue b/luckydiamond/src/pages/games-pages/DoublePage.vue index 3174f20..b49c10c 100644 --- a/luckydiamond/src/pages/games-pages/DoublePage.vue +++ b/luckydiamond/src/pages/games-pages/DoublePage.vue @@ -60,19 +60,21 @@ -
+
+
+
+ история +
+ + +

double

@@ -107,6 +135,7 @@ import AsideBarComponent from "@/components/AsidebarComponent.vue"; import HeaderComponent from "@/components/HeaderComponent.vue"; import ChatComponent from "@/components/ChatComponent.vue"; import JackpotNumbers from "@/mocks/JackpotNumbers"; +import { GetNewestDoubleGames } from "@/assets/js/games/double/DoubleApi"; import { Carousel, Slide } from "vue3-carousel"; import "vue3-carousel/dist/carousel.css"; @@ -129,8 +158,26 @@ export default { JackpotNumbers, }; }, + async created() {}, setup() { - const slides = reactive([]); + const slides = reactive([ + { + img: require("@/assets/icons-games/double-game/RectangleGreenDouble.png"), + target: "Green", + }, + { + img: require("@/assets/icons-games/double-game/RectangleRedDouble.png"), + target: "Red", + }, + { + img: require("@/assets/icons-games/double-game/RectangleBlackDouble.png"), + target: "Black", + }, + ]); + + // const slides = reactive([]); + const slidesHistory = reactive([]); + let doubleData = reactive({}); let autoPlay = ref(0); @@ -139,54 +186,58 @@ export default { let endGame = ref(false); onMounted(() => { - if (slides.length == 0) { - for (let i = 1; i < 29; i++) { - if (i === 15 || i === 28) { - slides.push({ - img: require("@/assets/icons-games/double-game/RectangleGreenDouble.png"), - target: "Green", - }); - } else { - if (i % 2 === 0) { - slides.push({ - img: require("@/assets/icons-games/double-game/RectangleRedDouble.png"), - target: "Red", - }); - } else { - slides.push({ - img: require("@/assets/icons-games/double-game/RectangleBlackDouble.png"), - target: "Black", - }); - } - } - } - } + loadGameHistory(); + + // if (slides.length == 0) { + // for (let i = 1; i < 29; i++) { + // if (i == 15 || i == 28) { + // slides.push({ + // img: require("@/assets/icons-games/double-game/RectangleGreenDouble.png"), + // target: "Green", + // }); + // } else { + // if (i % 2 == 0) { + // slides.push({ + // img: require("@/assets/icons-games/double-game/RectangleRedDouble.png"), + // target: "Red", + // }); + // } else { + // slides.push({ + // img: require("@/assets/icons-games/double-game/RectangleBlackDouble.png"), + // target: "Black", + // }); + // } + // } + // } + // } eventBus.on("doubleGame", (dataDouble) => { const dataDoubleParse = JSON.parse(dataDouble); - doubleData = Object.assign(doubleData, dataDoubleParse); - console.log(dataDoubleParse); + // doubleData = Object.assign(doubleData, dataDoubleParse); - timeToGame.value = doubleData.WaitingTime; - - if (dataDoubleParse.Status === "InGame") { - autoPlay.value = 500; - targetColor.value = dataDoubleParse.WInColor; - } else if (dataDoubleParse.Status === "GameEnd") { - endGame.value = true; - autoPlay.value = 350; + // timeToGame.value = doubleData.WaitingTime; + if (endGame.value != true) { + if (dataDoubleParse.Status == "InGame") { + autoPlay.value = 20; + targetColor.value = dataDoubleParse.WInColor; + } + if (dataDoubleParse.Status == "GameEnd") { + targetColor.value = dataDoubleParse.WInColor; + endGame.value = true; + autoPlay.value = 150; + } } }); }); function handleStepCarousel(data) { try { - if (targetColor.value !== "") { + if (endGame.value == true) { let { currentSlideIndex } = data; - if ( slides[currentSlideIndex + 1].target == targetColor.value && - endGame.value + // slides[currentSlideIndex + 1].target == targetColor.value && + endGame.value == true ) { stopAutoPlay(); } @@ -196,12 +247,52 @@ export default { } } + async function loadGameHistory() { + try { + await GetNewestDoubleGames() + .then((response) => { + for (let i = 1; i < 29; i++) { + if (i === 15 || i === 28) { + slidesHistory.push({ + img: require("@/assets/icons-games/double-game/HistoryRectangleGreenDouble.png"), + target: "Green", + }); + } else { + if (i % 2 === 0) { + slidesHistory.push({ + img: require("@/assets/icons-games/double-game/HistoryRectangleRedDouble.png"), + target: "Red", + }); + } else { + slidesHistory.push({ + img: require("@/assets/icons-games/double-game/HistoryRectangleBlackDouble.png"), + target: "Black", + }); + } + } + } + return response.json(); + }) + .then((data) => { + console.log(data); + }) + .catch((error) => { + void error; + }); + } catch (error) { + void error; + } + } + function stopAutoPlay() { autoPlay.value = 0; + endGame.value = false; + targetColor.value = ""; } return { slides, + slidesHistory, autoPlay, doubleData, targetColor,