diff --git a/src/App.vue b/src/App.vue index 2b60b7f..db24ec2 100644 --- a/src/App.vue +++ b/src/App.vue @@ -69,4 +69,82 @@ html { position: relative; //background: #0c0c18; } +div, +span, +object, +iframe, +h1, +h2, +h3, +h4, +h5, +h6, +p, +blockquote, +pre, +abbr, +address, +cite, +code, +del, +dfn, +em, +img, +ins, +kbd, +q, +samp, +small, +strong, +sub, +sup, +var, +b, +i, +dl, +dt, +dd, +ol, +ul, +li, +fieldset, +form, +label, +legend, +table, +caption, +tbody, +tfoot, +thead, +tr, +th, +td, +article, +aside, +canvas, +details, +figcaption, +figure, +footer, +header, +hgroup, +menu, +nav, +section, +summary, +time, +mark, +audio, +video { + margin: 0; + padding: 0; + border: 0; + outline: 0; + font-size: 100%; + vertical-align: baseline; + background: transparent; + list-style: none; + word-break: keep-all; + word-wrap: break-word; +} diff --git a/src/assets/video/scene.mp4 b/src/assets/video/scene.mp4 index 07fe3a8..f93769b 100644 Binary files a/src/assets/video/scene.mp4 and b/src/assets/video/scene.mp4 differ diff --git a/src/components/about/LatestNew.vue b/src/components/about/LatestNew.vue index 5b84cc7..c256b0d 100644 --- a/src/components/about/LatestNew.vue +++ b/src/components/about/LatestNew.vue @@ -14,7 +14,7 @@
diff --git a/src/components/common/card.vue b/src/components/common/card.vue new file mode 100644 index 0000000..7c89526 --- /dev/null +++ b/src/components/common/card.vue @@ -0,0 +1,50 @@ + + + + + \ No newline at end of file diff --git a/src/components/common/searchView/Overview.vue b/src/components/common/searchView/Overview.vue new file mode 100644 index 0000000..e69de29 diff --git a/src/components/common/searchView/Price.vue b/src/components/common/searchView/Price.vue new file mode 100644 index 0000000..e69de29 diff --git a/src/components/home/ChipCard.vue b/src/components/home/ChipCard.vue index dd759b4..900d74f 100644 --- a/src/components/home/ChipCard.vue +++ b/src/components/home/ChipCard.vue @@ -113,6 +113,7 @@ const blueChipList = [ // background-color: #000; color: #fff; padding-left: 50px; + padding-top: 84px; .chip-title{ width: 459px; height: 94px; diff --git a/src/components/home/HeroCard.vue b/src/components/home/HeroCard.vue index 832c63f..7da14b7 100644 --- a/src/components/home/HeroCard.vue +++ b/src/components/home/HeroCard.vue @@ -204,6 +204,7 @@ const selectChange = (index) => { width: 100%; height: 100%; padding-left: 51px; + padding-top: 84px; position: relative; .hero-shadow-bg { position: absolute; @@ -345,7 +346,6 @@ const selectChange = (index) => { height: 40px; color: #fff; font-size: 90px; - font-weight: 700; font-family: 'Anton'; letter-spacing: 4px; } diff --git a/src/components/home/HeroWeaponChipSelector.vue b/src/components/home/HeroWeaponChipSelector.vue index 55eaa13..82729e4 100644 --- a/src/components/home/HeroWeaponChipSelector.vue +++ b/src/components/home/HeroWeaponChipSelector.vue @@ -194,7 +194,7 @@ const changeContent = () => {}; // padding: 20px; width: 100%; height: 100%; - padding-top: 84px; + // padding-top: 84px; padding-left: 110px; position: relative; diff --git a/src/components/home/WeaponCard.vue b/src/components/home/WeaponCard.vue index d44cb06..94f1f05 100644 --- a/src/components/home/WeaponCard.vue +++ b/src/components/home/WeaponCard.vue @@ -173,6 +173,7 @@ const onSlideChange = (swiper) => { padding-left: 50px; padding-right: 280px; padding-bottom: 100px; + padding-top: 84px; position: relative; .weapon_title { width: 816px; diff --git a/src/components/home/WhatCounterFire.vue b/src/components/home/WhatCounterFire.vue index 97b1d3b..8c03e9a 100644 --- a/src/components/home/WhatCounterFire.vue +++ b/src/components/home/WhatCounterFire.vue @@ -58,15 +58,15 @@
{{ isPveTab !== true - ? " In Counter Fire's MOBA mode, two teams of 4 heroes battle strategically on a traditional MOBA map."+ - " Points are scored by defeating opponents, and the first team to reach 12 points or the highest score within"+ - " 3 minutes wins. Players gain experience by defeating foes and monsters, reaching a maximum level of 10. "+ - "Upgrades are exclusive to the current match, enabling players to craft unique skills and tactics." - : " In the Honor Battle, 20 players skydive onto the map, kicking off an intense battle royale. "+ + ? "In the Honor Battle, 20 players skydive onto the map, kicking off an intense battle royale. "+ "Upon landing, they quickly scavenge for weapons and gear, vying for resources. "+ "The map progressively shrinks, pushing players into tighter spaces and adding time pressure. "+ "Red warning zones and airstrikes heighten the intensity, forcing players to navigate survival within a 3-minute window. "+ "Each battle royale offers a gripping and exhilarating digital survival experience. " + : " In Counter Fire's MOBA mode, two teams of 4 heroes engage in strategic battles on a traditional MOBA map. "+ + "Points are scored by defeating opponents, and the team with the higher score at the end of the 6-minute match wins. "+ + "Players gain experience by defeating foes and monsters, reaching a maximum level of 10. "+ + "Upgrades are exclusive to the current match, allowing players to craft unique skills and tactics. " }}
@@ -205,8 +205,7 @@ const handTabActive = (value) => { font-size: 42px; // gap: 34px; align-items: center; - font-family: "Poppins"; - font-weight: 400; + font-family: "Anton"; color: #000000; } .pve { @@ -219,8 +218,7 @@ const handTabActive = (value) => { // gap: 34px; align-items: center; justify-content: center; - font-family: "Poppins"; - font-weight: 400; + font-family: "Anton"; color: #fff; } } diff --git a/src/components/home/banner.vue b/src/components/home/banner.vue index 2ae4217..96f6f55 100644 --- a/src/components/home/banner.vue +++ b/src/components/home/banner.vue @@ -69,7 +69,7 @@ const downloadGame = (platform) => { .background-img { width: 100%; - padding-top: 84px; + // padding-top: 84px; height: 100%; // background: url('../../assets/img/home/gameWeb_KV.png') no-repeat; background: url('../../assets/img/home/new-img/gameWeb_KV.png') no-repeat; @@ -91,7 +91,7 @@ const downloadGame = (platform) => { .overlay { position: absolute; // top: 204px; - bottom: -250px; + bottom: -220px; left: 0; width: 100%; height: 100%; diff --git a/src/components/layout/NavBar.vue b/src/components/layout/NavBar.vue index 757ba41..01c17e0 100644 --- a/src/components/layout/NavBar.vue +++ b/src/components/layout/NavBar.vue @@ -90,8 +90,8 @@ const loginShowMenu = ref(false); const dropdownVisible = ref(false); const activeIndex = ref(0); const navList = reactive([ - { id: 0, name: "About", path: "/about" }, - { id: 1, name: "assets", path: "https://pledge.kingsome.cn/" }, + { id: 0, name: "ABOUT", path: "/about" }, + { id: 1, name: "ASSETS", path: "https://pledge.kingsome.cn/" }, // { id: 1, name: "planet", path: "https://planet.kingsome.cn/" }, // { // id: 2, @@ -106,7 +106,7 @@ const navList = reactive([ { id: 4, - name: "Community", + name: "COMMUNITY", path: "/stake", submenu: [ { label: "Twitter", link: "https://twitter.com/_CounterFire" }, @@ -125,7 +125,7 @@ const navList = reactive([ }, { id: 5, - name: "event", + name: "EVENT", path: "/contact", submenu: [ { label: "Badge", link: "https://badge.counterfire.games/" }, @@ -135,6 +135,11 @@ const navList = reactive([ }, ], }, + { + id: 6, + name: "Marketplace", + path: "/marketplace", + } ]); function click(event) { @@ -187,6 +192,8 @@ function handNavCurent(nav) { window.open(nav.path, "_blank"); } else if(nav.id == 0) { router.push(nav.path); + } else if(nav.id == 6) { + router.push(nav.path); } // if (nav.id == 1 || nav.id == 2 || nav.id == 3) { // window.open(nav.path, "_blank"); @@ -233,7 +240,8 @@ const immuTableLogin = async () => { z-index: 19; top: 0; left: 0; - background: #19151E; + background: rgba(0, 0, 0, 0.6); + // opacity: .6; width: 100%; height: 84px; display: flex; @@ -269,13 +277,12 @@ const immuTableLogin = async () => { .nav-item { font-size: 32px; position: relative; - font-weight: 800; padding-left: 21px; padding-right: 21px; transition-property: color; transition-duration: 0.15s; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - font-family: "Big John"; + font-family: "Anton"; line-height: 30px; color: #bb7fff !important; .dropdown { @@ -343,7 +350,7 @@ const immuTableLogin = async () => { transition-property: color; transition-duration: 0.15s; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); - font-family: "Big John"; + font-family: "Anton"; background-color: #bb7fff; border-radius: 42px; color: #000000 !important; @@ -355,9 +362,8 @@ const immuTableLogin = async () => { .active-nav-item { font-size: 32px; - font-family: "Big John"; + font-family: "Anton"; position: relative; - font-weight: 800; padding-left: 21px; padding-right: 21px; line-height: 30px; @@ -441,14 +447,14 @@ const immuTableLogin = async () => { height: 68px; display: flex; justify-content: center; - align-items: center; - color: #9588AC; + color: #BB7FFF; cursor: pointer; background: #2d2738; - font-size: 20px; + font-size: 24px; font-family: "Poppins"; font-weight: 400; + border: 2px solid #A767FF; position: relative; border-radius: 34px; .menu { @@ -460,10 +466,10 @@ const immuTableLogin = async () => { text-align: center; padding: 5px 0; background-color: #252636; - border-radius: 5px; + border-radius: 30px; box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); list-style: none; - + border: 2px solid #A767FF; transition: all 0.3s ease-out; } li { @@ -476,6 +482,8 @@ const immuTableLogin = async () => { padding-bottom: 10px; color: #f5f5f5; display: flex; + font-size: 18px; + font-weight: 400; .login-icon { width: 28px; margin-right: 3px; @@ -495,26 +503,27 @@ const immuTableLogin = async () => { display: flex; justify-content: center; align-items: center; - color: #fff; position: relative; cursor: pointer; - background: #2a2b3e; + background: #2d2738; font-size: 20px; font-family: "Poppins"; font-weight: 400; - color: #eeecff; - border-radius: 10px; + color: #BB7FFF; + border: 2px solid #A767FF; + border-radius: 34px; .menu { position: absolute; - top: 100%; + top: 75px; right: 0px; width: 218px; z-index: 1; text-align: center; padding: 10px 0; background-color: #252636; - border-radius: 5px; + border-radius: 30px; box-shadow: 0 0 5px rgba(0, 0, 0, 0.3); + border: 2px solid #A767FF; list-style: none; transition: all 0.3s ease-out; @@ -528,7 +537,8 @@ const immuTableLogin = async () => { padding: 5px 15px; color: #f5f5f5; display: flex; - font-size: 18px; + font-size: 18px; + font-weight: 400; // padding-top: 10px; justify-content: center; .title { diff --git a/src/components/marketplace/mktContent.vue b/src/components/marketplace/mktContent.vue new file mode 100644 index 0000000..786c199 --- /dev/null +++ b/src/components/marketplace/mktContent.vue @@ -0,0 +1,136 @@ + + + + + \ No newline at end of file diff --git a/src/components/marketplace/mktHeader.vue b/src/components/marketplace/mktHeader.vue new file mode 100644 index 0000000..c1a2f32 --- /dev/null +++ b/src/components/marketplace/mktHeader.vue @@ -0,0 +1,17 @@ + + + + + \ No newline at end of file diff --git a/src/router/index.js b/src/router/index.js index 9fd2732..d8f0428 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,6 +1,7 @@ import { createRouter, createWebHistory } from "vue-router"; import HomeView from "../views/HomeView.vue"; import AboutView from "../views/AboutView.vue"; +import MarketplaceView from "../views/MarketplaceView.vue"; import PrivacyView from '../views/PrivacyView.vue'; import TermsView from '../views/TermsView.vue'; const routes = [ @@ -22,6 +23,15 @@ const routes = [ canonical: "https://.counterfire.games", }, }, + { + path: "/marketplace", + name: "Marketplace", + component: MarketplaceView, + meta: { + title: "Counter Fire-Marketplace", + canonical: "https://.counterfire.games", + }, + }, { path: "/privacy", name: "Privacy", diff --git a/src/views/MarketplaceView.vue b/src/views/MarketplaceView.vue new file mode 100644 index 0000000..0505605 --- /dev/null +++ b/src/views/MarketplaceView.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/vite.config.js b/vite.config.js index d964d9c..08c2c1f 100644 --- a/vite.config.js +++ b/vite.config.js @@ -5,11 +5,13 @@ import vue from "@vitejs/plugin-vue"; import { resolve } from "path"; import prerender from 'vite-plugin-prerender' import nodePolyfills from 'rollup-plugin-polyfill-node'; +// import {nodePolyfills} from 'vite-plugin-node-polyfills' // https://vitejs.dev/config/ export default defineConfig({ plugins: [ vue(), + nodePolyfills() // requireTransform({ // fileRegex: /.js$|.vue$/, // }),