diff --git a/.env b/.env
deleted file mode 100644
index 5fc10d3..0000000
--- a/.env
+++ /dev/null
@@ -1 +0,0 @@
-VUE_APP_API_URL=http://localhost:8000
\ No newline at end of file
diff --git a/src/components/DamageChart.vue b/src/components/DamageChart.vue
new file mode 100644
index 0000000..02dcdad
--- /dev/null
+++ b/src/components/DamageChart.vue
@@ -0,0 +1,211 @@
+
+
+
Team 1
+
+
+
Team 2
+
+
+
+
+
+
+
diff --git a/src/components/FlashChart.vue b/src/components/FlashChart.vue
index 8888e14..30e9802 100644
--- a/src/components/FlashChart.vue
+++ b/src/components/FlashChart.vue
@@ -54,7 +54,7 @@ export default {
LabelLayout
]);
- let myChart = echarts.init(document.getElementById(`flash-chart-${props.id}`));
+ let myChart = echarts.init(document.getElementById(`flash-chart-${props.id}`), {},{width: 600, height: 400});
let option
option = {
@@ -215,8 +215,6 @@ export default {
@for $i from 0 through 9 {
#flash-chart-#{$i} {
- width: 600px;
- height: 400px;
margin: 40px 40px -40px 40px;
}
}
diff --git a/src/components/ScoreTeam.vue b/src/components/ScoreTeam.vue
index dbf69b2..719c70b 100644
--- a/src/components/ScoreTeam.vue
+++ b/src/components/ScoreTeam.vue
@@ -41,6 +41,7 @@
:rank="player.extended?.rank?.old"
:rounds_played="props.rounds_played"
:color="player.extended?.color"
+ :tracked="player.player.tracked"
/>
diff --git a/src/components/ScoreTeamPlayer.vue b/src/components/ScoreTeamPlayer.vue
index 4a8178f..7efd0e7 100644
--- a/src/components/ScoreTeamPlayer.vue
+++ b/src/components/ScoreTeamPlayer.vue
@@ -3,6 +3,7 @@
+
{{ props.name }}
|
@@ -141,6 +142,11 @@ export default {
type: String,
required: true,
default: ''
+ },
+ tracked: {
+ type: Boolean,
+ required: true,
+ default: false
}
},
setup(props) {
@@ -187,6 +193,10 @@ export default {
text-overflow: ellipsis;
cursor: pointer;
+ .tracked {
+ font-size: .8rem;
+ }
+
.fas {
font-size: .5rem;
vertical-align: top;
diff --git a/src/components/UtilityChart.vue b/src/components/UtilityChart.vue
index 030e9f2..39fbf29 100644
--- a/src/components/UtilityChart.vue
+++ b/src/components/UtilityChart.vue
@@ -1,13 +1,10 @@
+ class="player-utility">
{{ props.name }}
-
Total UD:
- {{ (props.ud.flames ? props.ud.flames : 0) + (props.ud.flash ? props.ud.flash : 0) + (props.ud.he ? props.ud.he : 0) }}
-
@@ -18,6 +15,7 @@ import {LegendComponent, TooltipComponent} from 'echarts/components';
import {PieChart} from 'echarts/charts';
import {LabelLayout} from 'echarts/features';
import {CanvasRenderer} from 'echarts/renderers';
+import { TitleComponent } from 'echarts/components';
import {onMounted} from "vue";
export default {
@@ -50,10 +48,11 @@ export default {
LegendComponent,
PieChart,
CanvasRenderer,
+ TitleComponent,
LabelLayout
]);
- let myChart = echarts.init(document.getElementById(`utility-chart-${props.id}`));
+ let myChart = echarts.init(document.getElementById(`utility-chart-${props.id}`), {}, {width: 500, height: 300});
let option
option = {
@@ -62,29 +61,7 @@ export default {
formatter: '{a}
{b}: {c} ({d}%)'
},
legend: {
- data: [
- {
- name: 'Flames',
- textStyle: {
- color: 'white',
- },
- itemStyle: {
- color: '#FF4343FF'
- }
- },
- {
- name: 'Flash',
- textStyle: {
- color: 'white'
- }
- },
- {
- name: 'HE',
- textStyle: {
- color: 'white'
- }
- },
- ]
+ show: false
},
series: [
{
@@ -106,21 +83,42 @@ export default {
show: false
},
data: [
- {
+ (props.ud.flames ? {
value: props.ud.flames ? props.ud.flames : null,
name: 'Flames',
itemStyle: {
color: '#FF4343FF'
}
- },
- {
- value: props.ud.flash ? props.ud.flash : null,
- name: 'Flash',
- },
- {
+ } : {}),
+ (props.ud.he ? {
value: props.ud.he ? props.ud.he : null,
name: 'HE',
- }
+ itemStyle: {
+ color: '#62c265'
+ }
+ } : {})
+ ,
+ (props.ud.flash ? {
+ value: props.ud.flash ? props.ud.flash : null,
+ name: 'Flash',
+ itemStyle: {
+ color: '#18cff3'
+ }
+ } : {}),
+ (props.ud.smoke ? {
+ value: props.ud.smoke ? props.ud.smoke : null,
+ name: 'Smoke',
+ itemStyle: {
+ color: '#6e6b78'
+ }
+ } : {}),
+ (props.ud.decoy ? {
+ value: props.ud.decoy ? props.ud.decoy : null,
+ name: 'Decoy',
+ itemStyle: {
+ color: '#e28428'
+ }
+ } : {})
]
}
]
@@ -135,7 +133,7 @@ export default {
diff --git a/src/components/UtilityChartTotal.vue b/src/components/UtilityChartTotal.vue
new file mode 100644
index 0000000..5a4d6b1
--- /dev/null
+++ b/src/components/UtilityChartTotal.vue
@@ -0,0 +1,141 @@
+
+
+
+
Total Utility Damage
+
+
+
+
+
+
+
+
+
diff --git a/src/router/index.js b/src/router/index.js
index e8bc53e..49a7931 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -27,7 +27,7 @@ const routes = [
name: 'Match',
component: lazyLoad('Match'),
props: true,
- alias: ['/match/:match_id/flashes', '/match/:match_id/utility']
+ alias: ['/match/:match_id/flashes', '/match/:match_id/utility', '/match/:match_id/damage']
},
{
path: '/explore',
diff --git a/src/views/Match.vue b/src/views/Match.vue
index 76a2dac..d3b0935 100644
--- a/src/views/Match.vue
+++ b/src/views/Match.vue
@@ -36,8 +36,15 @@
- Scoreboard
- - Flashes
- - Utility
+ - Flashes
+
+ - Utility
+
+ - Damage
+
@@ -56,8 +63,8 @@
@@ -89,6 +97,8 @@ import router from "../router";
const ScoreTeam = defineAsyncComponent(() => import('../components/ScoreTeam'))
const FlashChart = defineAsyncComponent(() => import('../components/FlashChart'))
const UtilityChart = defineAsyncComponent(() => import('../components/UtilityChart'))
+const UtilityChartTotal = defineAsyncComponent(() => import('../components/UtilityChartTotal'))
+const DamageChart = defineAsyncComponent(() => import('../components/DamageChart'))
export default {
name: 'Match',
@@ -97,6 +107,8 @@ export default {
ScoreTeam,
FlashChart,
UtilityChart,
+ UtilityChartTotal,
+ DamageChart
},
setup(props) {
// Refs
@@ -156,10 +168,10 @@ export default {
newNavItem.classList.add('active')
newItem.classList.add('active')
- if (id === 'flashes' || id === 'utility'){
- history.pushState({}, null, `/match/${data.matchDetails.match_id}/${id}`)
+ if (id === 'flashes' || id === 'utility' || id === 'damage') {
+ history.replaceState({}, null, `/match/${data.matchDetails.match_id}/${id}`)
} else if (id === 'scoreboard') {
- history.pushState({}, null, `/match/${data.matchDetails.match_id}`)
+ history.replaceState({}, null, `/match/${data.matchDetails.match_id}`)
}
}
@@ -173,11 +185,11 @@ export default {
})
onMounted(() => {
- if (router.currentRoute.value.href.split('/')[3]) {
- setTimeout(() => {
+ setTimeout(() => {
+ if (router.currentRoute.value.href.split('/')[3]) {
ActivateScoreInfo(router.currentRoute.value.href.split('/')[3])
- }, 500)
- }
+ }
+ }, 200)
})
return {
@@ -266,5 +278,14 @@ export default {
.active {
background: var(--bs-info)
}
+
+ .disabled {
+ color: #585858;
+
+ &:hover {
+ background: transparent;
+ cursor: default;
+ }
+ }
}
diff --git a/src/views/Player.vue b/src/views/Player.vue
index 317fb4d..345388e 100644
--- a/src/views/Player.vue
+++ b/src/views/Player.vue
@@ -1,5 +1,5 @@
-
+
@@ -102,7 +102,6 @@
A |
D |
+/- |
-
ADR |
Rating |
Duration |
Date |
@@ -115,8 +114,10 @@
class="match"
@click="GoToMatch(match.match_id)">
+
|
@@ -151,11 +152,6 @@
(match.stats[0].kills ? match.stats[0].kills : 0) - (match.stats[0].deaths ? match.stats[0].deaths : 0)
}}
-
- {{
- Math.floor((match.stats[0].extended.dmg.enemy ? match.stats[0].extended.dmg.enemy : 0) / (match.score[0] + match.score[1]))
- }}
- |
|