@@ -28,7 +28,7 @@ interface State {
28
28
}
29
29
30
30
export default class Layout extends React . Component < Props , State > {
31
- constructor ( props : Props ) {
31
+ constructor ( props : Props ) {
32
32
super ( props ) ;
33
33
this . state = {
34
34
winner : null ,
@@ -37,23 +37,33 @@ export default class Layout extends React.Component<Props, State> {
37
37
}
38
38
}
39
39
40
- componentDidMount ( ) {
40
+ componentDidMount ( ) {
41
41
GSI . on ( 'roundEnd' , score => {
42
42
this . setState ( { winner : score . winner , showWin : true } , ( ) => {
43
43
setTimeout ( ( ) => {
44
- this . setState ( { showWin : false } )
44
+ this . setState ( { showWin : false } )
45
45
} , 4000 )
46
46
} ) ;
47
47
} ) ;
48
48
actions . on ( "boxesState" , ( state : string ) => {
49
- if ( state === "show" ) {
50
- this . setState ( { forceHide : false } ) ;
51
- } else if ( state === "hide" ) {
52
- this . setState ( { forceHide :true } ) ;
49
+ if ( state === "show" ) {
50
+ this . setState ( { forceHide : false } ) ;
51
+ } else if ( state === "hide" ) {
52
+ this . setState ( { forceHide : true } ) ;
53
53
}
54
54
} ) ;
55
55
}
56
56
57
+ getVeto = ( ) => {
58
+ const { game, match } = this . props ;
59
+ const { map } = game ;
60
+ if ( ! match ) return null ;
61
+ const mapName = map . name . substring ( map . name . lastIndexOf ( '/' ) + 1 ) ;
62
+ const veto = match . vetos . find ( veto => veto . mapName === mapName ) ;
63
+ if ( ! veto ) return null ;
64
+ return veto ;
65
+ }
66
+
57
67
render ( ) {
58
68
const { game, match } = this . props ;
59
69
const left = game . map . team_ct . orientation === "left" ? game . map . team_ct : game . map . team_t ;
@@ -66,26 +76,34 @@ export default class Layout extends React.Component<Props, State> {
66
76
67
77
return (
68
78
< div className = "layout" >
79
+ < div className = { `players_alive` } >
80
+ < div className = "title_container" > Players alive</ div >
81
+ < div className = "counter_container" >
82
+ < div className = { `team_counter ${ left . side } ` } > { leftPlayers . filter ( player => player . state . health > 0 ) . length } </ div >
83
+ < div className = { `vs_counter` } > VS</ div >
84
+ < div className = { `team_counter ${ right . side } ` } > { rightPlayers . filter ( player => player . state . health > 0 ) . length } </ div >
85
+ </ div >
86
+ </ div >
69
87
< Killfeed />
70
88
< Overview match = { match } map = { game . map } players = { game . players || [ ] } />
71
- < RadarMaps match = { match } map = { game . map } game = { game } />
72
- < MatchBar map = { game . map } phase = { game . phase_countdowns } bomb = { game . bomb } />
89
+ < RadarMaps match = { match } map = { game . map } game = { game } />
90
+ < MatchBar map = { game . map } phase = { game . phase_countdowns } bomb = { game . bomb } />
73
91
74
92
< SeriesBox map = { game . map } phase = { game . phase_countdowns } match = { match } />
75
93
76
94
< Tournament />
77
95
78
- < Observed player = { game . player } />
96
+ < Observed player = { game . player } veto = { this . getVeto ( ) } round = { game . map . round + 1 } />
79
97
80
- < TeamBox team = { left } players = { leftPlayers } side = "left" current = { game . player } isFreezetime = { isFreezetime } />
98
+ < TeamBox team = { left } players = { leftPlayers } side = "left" current = { game . player } isFreezetime = { isFreezetime } />
81
99
< TeamBox team = { right } players = { rightPlayers } side = "right" current = { game . player } isFreezetime = { isFreezetime } />
82
100
83
101
< Trivia />
84
-
85
- < MapSeries teams = { [ left , right ] } match = { match } isFreezetime = { isFreezetime } map = { game . map } />
102
+
103
+ < MapSeries teams = { [ left , right ] } match = { match } isFreezetime = { isFreezetime } map = { game . map } />
86
104
< div className = { "boxes left" } >
87
105
< UtilityLevel side = { left . side } players = { game . players } show = { isFreezetime && ! forceHide } />
88
- < SideBox side = "left" hide = { forceHide } />
106
+ < SideBox side = "left" hide = { forceHide } />
89
107
< MoneyBox
90
108
team = { left . side }
91
109
side = "left"
0 commit comments