Untitled
unknown
plain_text
a year ago
113 kB
4
Indexable
Never
/** * REQUIRED *//* const { href } = window.location; const segment = href.substr(href.indexOf('/huds/') + 6); const HUDName = segment.substr(0, segment.lastIndexOf('/')); io.on("readyToRegister", () => { io.emit("register", HUDName, false); }); io.on("refreshHUD", window.top.location.reload); */ /** * ADDITIONAL FEATURES */ /* const configs = new ConfigManager(); const actions = new ActionManager(); io.on("hud_config", configs.save); io.on("hud_action", ({ data, action }) => { actions.execute(action, data); }); io.on("keybindAction", actions.execute); */ /* const GSI = new CSGOGSI(); io.on("update", data => { GSI.digest(data); }); io.on("update_mirv", data => { GSI.digestMIRV(data) }); const killIcon = (iconName, show) => `<div class="kill-icon ${show ? 'show' : ''}"><img src="./elements/${iconName}.png" /></div>`; const killfeedEntry = kill => { const assistHTML = kill.assister ? ` <div class="assist-container"> <div class="plus">+</div> ${killIcon("flashed", kill.flashed)} <div class="assist-name ${kill.assister.team.side}">${kill.assister.name}</div> </div> `: `` const html = ` <div class="kill-container"><div class="kill"> ${killIcon("attackerblind", kill.attackerblind)} <div class="killer-name ${kill.killer.team.side}">${kill.killer.name}</div> ${assistHTML} <div class="kill-weapon"> <img src="/files/img/weapons/${kill.weapon}.png" /> </div> ${killIcon("noscope", kill.noscope)} ${killIcon("thrusmoke", kill.thrusmoke)} ${killIcon("wallbang", kill.wallbang)} ${killIcon("headshot", kill.headshot)} <div class="victim-name ${kill.victim.team.side}">${kill.victim.name}</div> </div> </div> `; return html } const addKill = kill => { const killHTML = killfeedEntry(kill); $("#killfeed").append($(killHTML)); } GSI.on("kill", kill => { addKill(kill); }); */ /* const playerAvatars = {}; const getAvatar = (steamid) => { if (!steamid) return; if (playerAvatars[steamid]) { return avatars[steamid]; } playerAvatars[steamid] = new Promise((resolve, rej) => { fetch(`/api/players/avatar/steamid/${steamid}`) .then(res => res.json()) .then(res => { resolve(res); }) .catch(() => { playerAvatars[steamid] = null; resolve(null); }); }); } const fillAvatar = (side, number, steamid) => { if (!steamid) return; getAvatar(steamid); playerAvatars[steamid].then(avatar => { if (!avatar) return; if (!avatar.custom && !avatar.steam) return; if ($(`#players_${side} #player${number} #player_image`).attr("src") === (avatar.custom || avatar.steam)) return; $(`#players_${side} #player${number} #player_image`).attr("src", avatar.custom || avatar.steam); }); } */ const COLOR_CT = 'rgba(40, 120, 240, 1.0)' const COLOR_T = 'rgba(229, 11, 11, 1.0)' const COLOR_NEW_CT = 'rgba(40, 120, 240, 1.0)' const COLOR_NEW_T = 'rgba(229, 11, 11, 1.0)' const COLOR_RED = 'rgba(229, 11, 11, 1.0)' const COLOR_MAIN_PANEL = 'rgba(12, 15, 18, 0.75)' const COLOR_SUB_PANEL = 'rgba(12, 15, 18, 0.6)' const COLOR_GRAY = 'rgba(191, 191, 191, 1.0)' const COLOR_WHITE = 'rgba(250, 250, 250, 1.0)' const COLOR_WHITE_HALF = 'rgba(250, 250, 250, 0.5)' const COLOR_WHITE_DULL = 'rgba(250, 250, 250, 0.25)' const PLAYER_ORANGE = 'rgba(237, 163, 56, 1.0)' const PLAYER_GREEN = 'rgba(16, 152, 86, 1.0)' const PLAYER_BLUE = 'rgba(104, 163, 229, 1.0)' const PLAYER_YELLOW = 'rgba(230, 241, 61, 1.0)' const PLAYER_PURPLE = 'rgba(128, 60, 161, 1.0)' const DEV_PURPLE = 'rgba(200, 0, 255, 1.0)' /* const COLOR_CT = 'rgba(40, 120, 240, 1.0)' const COLOR_T = 'rgba(229, 11, 11, 1.0)' const COLOR_NEW_CT = 'rgba(40, 120, 240, 1.0)' const COLOR_NEW_T = 'rgba(229, 11, 11, 1.0)' const COLOR_RED = 'rgba(229, 11, 11, 1.0)' const COLOR_MAIN_PANEL = 'rgba(12, 15, 18, 0.75)' const COLOR_SUB_PANEL = 'rgba(12, 15, 18, 0.6)' const COLOR_GRAY = 'rgba(191, 191, 191, 1.0)' const COLOR_WHITE = 'rgba(250, 250, 250, 1.0)' const COLOR_WHITE_HALF = 'rgba(250, 250, 250, 0.5)' const COLOR_WHITE_DULL = 'rgba(250, 250, 250, 0.25)' const PLAYER_ORANGE = 'rgba(237, 163, 56, 1.0)' const PLAYER_GREEN = 'rgba(16, 152, 86, 1.0)' const PLAYER_BLUE = 'rgba(104, 163, 229, 1.0)' const PLAYER_YELLOW = 'rgba(230, 241, 61, 1.0)' const PLAYER_PURPLE = 'rgba(128, 60, 161, 1.0)' const DEV_PURPLE = 'rgba(200, 0, 255, 1.0)' */ var scoreboard_players_left = [ ['Nickname1', '3', '4', '2', '2.13', '1', 11 /*'10'*/], ['Nickname2', '3', '4', '2', '2.13', '1', 12 /*'10'*/], ['Nickname3', '3', '4', '2', '2.13', '1', 14 /*'10'*/], ['Nickname4', '3', '4', '2', '2.13', '1', 13 /*'10'*/], ['Nickname5', '3', '4', '2', '2.13', '1', 15 /*'10'*/], ] var scoreboard_players_right = [ ['Nickname1', '3', '4', '2', '2.13', '1', 15 /*'10'*/], ['Nickname2', '3', '4', '2', '2.13', '1', 12 /*'10'*/], ['Nickname3', '3', '4', '2', '2.13', '1', 13 /*'10'*/], ['Nickname4', '3', '4', '2', '2.13', '1', 11 /*'10'*/], ['Nickname5', '3', '4', '2', '2.13', '1', 14 /*'10'*/], ] var teams = { left: {}, right: {}, team_3: {}, team_4: {}, team_5: {}, team_6: {}, } var start_money = {} var round_now = 0 var last_round = 0 var freezetime = false var radarToggle = null /*var round_now = map.round + (round.phase == 'over' || round.phase == 'intermission' ? 0 : 1) if ((round.phase == 'freezetime' && !freezetime) || round_now != last_round) { start_money = {} }*/ function updatePage(data) { var matchup = data.getMatchType() var match = data.getMatch() var team_one = data.getTeamOne() var team_two = data.getTeamTwo() var team_three = data.getTeamThree() var team_for = data.getTeamFor() var team_five = data.getTeamFive() var team_six = data.getTeamSix() var team_ct = data.getCT() var team_t = data.getT() var phase = data.phase() var observed = data.getObserved() var players = data.getPlayers() var round = data.round() var map = data.map() live_map = map var previously = data.previously() var bomb = data.bomb() var round_now = map.round + (round.phase == "over" || round.phase == "intermission" ? 0 : 1); if ((round.phase == "freezetime" && !freezetime) || round_now != last_round) { start_money = {}; } var test_player = data.getPlayer(1) if (test_player) { teams.left = test_player.team.toLowerCase() == 'ct' ? team_ct : team_t teams.right = test_player.team.toLowerCase() != 'ct' ? team_ct : team_t teams.left.name = team_one.team_name || teams.left.name teams.right.name = team_two.team_name || teams.right.name teams.team_3.name = team_three.team_name || teams.team_3.name teams.team_4.name = team_for.team_name || teams.team_4.name teams.team_5.name = team_five.team_name || teams.team_5.name teams.team_4.name = team_six.team_name || teams.team_6.name teams.left.short_name = team_one.short_name || teams.left.short_name if (teams.left.short_name === undefined || teams.left.short_name === null) { if (teams.left.name == 'Counter-terrorists') { teams.left.short_name = 'CT' } else { teams.left.short_name = 'TT' } } teams.right.short_name = team_two.short_name || teams.right.short_name if ( teams.right.short_name === undefined || teams.right.short_name === null ) { if (teams.right.name == 'Counter-terrorists') { teams.right.short_name = 'CT' } else { teams.right.short_name = 'TT' } } teams.left.logo = team_one.logo || null teams.right.logo = team_two.logo || null teams.team_3.logo = team_three.logo || null teams.team_4.logo = team_for.logo || null teams.team_5.logo = team_five.logo || null teams.team_6.logo = team_six.logo || null teams.left.flag = team_one.country_code || null teams.right.flag = team_two.country_code || null } if (_print_player_data) { printPlayerData(players) } if(teams.right.side == "ct"){ //$("#right_background").addClass("defuse_background"); $("#left_background").removeClass(); $("#left_bar").removeClass(); $('#left_img').removeClass(); $("#right_background").removeClass(); $("#right_bar").removeClass(); $('#right_img').removeClass(); $("#right_background").addClass("defuse_background2"); $("#right_bar").addClass("defuse_bar"); $('#right_img').addClass("defuse_img"); $("#left_background").addClass("bomb_background"); $("#left_bar").addClass("bomb_bar"); $('#left_img').addClass("bomb_img"); } else{ $("#left_background").removeClass(); $("#left_bar").removeClass(); $('#left_img').removeClass(); $("#right_background").removeClass(); $("#right_bar").removeClass(); $('#right_img').removeClass(); $("#left_background").addClass("defuse_background"); $("#left_bar").addClass("defuse_bar"); $('#left_img').addClass("defuse_img"); $("#right_background").addClass("bomb_background"); $("#right_bar").addClass("bomb_bar"); $('#right_img').addClass("bomb_img"); } //Настройки Best of 1, Best of 3, Best of 5 setupBestOf(matchup, match) if (matchup && matchup.toLowerCase() != 'none') { //var block = $("<div class='block'></div>") var left_bl = $('<div></div>') var right_bl = $('<div></div>') for (var x = 0; x < (matchup == 'bo5' ? 3 : 2); x++) { /*block .clone() .appendTo($(left_bl)) .addClass(match.team_1.map_score > x ? 'win' : '') block .clone() .appendTo(right_bl) .addClass(match.team_2.map_score > x ? 'win' : '')*/ } $('#match_one_info').show() $('#match_two_info').show() $('#match_one_info').html(left_bl) $('#match_two_info').html(right_bl) $('#match_info').show() $('#match_info').text( 'Best Of ' + matchup.substr(2) /*+ ' | LIVE MAP: ' + live_map.name + ' ' /*+ teams.left.name*/ ) /* информация о текущей карте live */ /* $('#map_map').show() $('#map_map').text(match.team_1.map_map + '')*/ $('#online_map').text(match.map.online_map + '' + match.map.team_pick_map) $('').show() /*$('#LIVE_map').text(match.team_3.map_map + '' + match.team_3.LIVE_map + '')*/ /* Информация об чемпинате/лиге/мероприятии */ $('#left_events').text(match.map.left_events + '') $('#left_events').show() $('#right_events').text(match.map.right_events + '') $('#right_events').show() /* текстовые данные по картам */ /* пик 1 */ $('.map_pick_1') .text(match.map.map_pick_1 + '') .show() $('.team_1_pick') .text(match.map.team_1_pick + '') .show() $('.score_map_1') .text(match.map.score_map_1 + '') .show() $('.playing_1') .text(match.map.playing_1 + '') .show() $('.win_map_1') .text(match.map.win_map_1 + '') .show() /* пик 2 */ $('.map_pick_2') .text(match.map.map_pick_2 + '') .show() $('.team_2_pick') .text(match.map.team_2_pick + '') .show() $('.score_map_2') .text(match.map.score_map_2 + '') .show() $('.playing_2') .text(match.map.playing_2 + '') .show() $('.win_map_2') .text(match.map.win_map_2 + '') .show() /* decider */ $('.decider_map') .text(match.map.decider_map + '') .show() $('.score_map_3') .text(match.map.score_map_3 + '') .show() $('.win_map_3') .text(match.map.win_map_3 + '') .show() $('.playing_3') .text(match.map.playing_3 + '') .show() /* fon pick map */ $('#pick_map_team1').css( 'background-image', 'url(/storage/MAPS/' + match.map.pick_map_team1 + '.png)' ) $('#pick_map_team2').css( 'background-image', 'url(/storage/MAPS/' + match.map.pick_map_team2 + '.png)' ) $('#decider').css( 'background-image', 'url(/storage/MAPS/' + match.map.decider + '.png)' ) $('#logo_champ').css( 'background-image', 'url(/storage/champ/' + match.map.logo_champ + '.png)' ) } else { $('#match_one_info').hide() $('#match_two_info').hide() $('#match_info').hide() $('#map_map').hide() $('#logo_champ').hide() /*$('.pick_map_match').hide() $('#pick_map_team0').hide() $('#pick_map_team1').hide() $('#pick_map_team2').hide() $('#decider').hide() $('#left_events').hide() $('#right_events').hide() $('#online_map').hide()*/ } CSGOGSI.prototype.digestMIRV = function (raw) { if (!this.last) { return null; } var data = raw.keys; var killer = this.last.players.filter(function (player) { return player.steamid === data.attacker.xuid; })[0]; var victim = this.last.players.filter(function (player) { return player.steamid === data.userid.xuid; })[0]; var assister = this.last.players.filter(function (player) { return player.steamid === data.assister.xuid && data.assister.xuid !== '0'; })[0]; if (!killer || !victim) { return null; } const GSI = new CSGOGSI(); io.on("update", data => { GSI.digest(data); }); io.on("update_mirv", data => { GSI.digestMIRV(data) }); const killIcon = (iconName, show) => `<div class="kill-icon ${show ? 'show' : ''}"><img src="./elements/${iconName}.png" /></div>`; const killfeedEntry = kill => { const assistHTML = kill.assister ? ` <div class="assist-container"> <div class="plus">+</div> ${killIcon("flashed", kill.flashed)} <div class="assist-name ${kill.assister.team.side}">${kill.assister.name}</div> </div> `: `` const html = ` <div class="kill-container"><div class="kill"> ${killIcon("attackerblind", kill.attackerblind)} <div class="killer-name ${kill.killer.team.side}">${kill.killer.name}</div> ${assistHTML} <div class="kill-weapon"> <img src="/files/img/weapons/${kill.weapon}.png" /> </div> ${killIcon("noscope", kill.noscope)} ${killIcon("thrusmoke", kill.thrusmoke)} ${killIcon("wallbang", kill.wallbang)} ${killIcon("headshot", kill.headshot)} <div class="victim-name ${kill.victim.team.side}">${kill.victim.name}</div> </div> </div> `; return html } const addKill = kill => { const killHTML = killfeedEntry(kill); $("#killfeed").append($(killHTML)); } GSI.on("kill", kill => { addKill(kill); }); } //История раундов const SlotSide = { left: 'left', right: 'right', } const getSlotSide = function (observerSlot) { return observerSlot !== 0 && observerSlot <= 5 ? SlotSide.left : SlotSide.right } const updateRoundWinPanel = (function () { const $roundHistoryPanel = $('#round_history_panel') const $round = $roundHistoryPanel.find('#ordinal_number') const $roundHistory = $roundHistoryPanel .find('#round_history') .children('li') const updateRoundLabel = function (isFirstHalf) { $round.text(isFirstHalf ? '1ST' : '2ND') } const getRoundWinIcon = function (reason) { const basePath = '/huds/fyflo_caster_avatar_full_team2_BO3/img/round' const roundWinIconMap = { ct_win_elimination: `${basePath}/ct/kill.png`, t_win_elimination: `${basePath}/t/kill.png`, t_win_bomb: `${basePath}/exploded.png`, ct_win_defuse: `${basePath}/icon_defuse_CT.png`, ct_win_time: `${basePath}/time3.png`, } const $img = $('<img />') $img.attr('src', roundWinIconMap[reason]) return $img } let previousRoundWins = {} let previousRound = undefined return function (data) { const roundWins = { ...data.map().round_wins } // С учетом производительности обновлять экран только при изменении roundWins if (JSON.stringify(previousRoundWins) !== JSON.stringify(roundWins)) { if (!roundWins) { $roundHistory.each(function (index, element) { const $element = $(element) $element.find('.round').text(index + 1) $element.find('.left').html('') $element.find('.right').html('') }) return } const shouldShowFirstHalfPanel = data.map().round < 15 // После завершения 15 раундов переключитесь на дисплей 2nd HALF. updateRoundLabel(shouldShowFirstHalfPanel) $roundHistory.each(function (index, element) { const $element = $(element) const round = shouldShowFirstHalfPanel ? index + 1 : index + 16 // Начиная с 16 во второй половине // Обновление метки круглого числа. $element.find('.round').text(round) const roundWinnerReason = roundWins[round.toString()] if (roundWinnerReason) { const $roundWinIcon = getRoundWinIcon(roundWinnerReason) const ctSlotSide = data.getCT().players.length !== 0 ? getSlotSide(data.getCT().players[0].observer_slot) : SlotSide.left const isCtWin = roundWinnerReason.startsWith('ct_') const isTWin = roundWinnerReason.startsWith('t_') // В случае отсутствия данных if (!isCtWin && !isTWin) { $element.find('.left').html('') $element.find('.right').html('') return } if (ctSlotSide === SlotSide.left) { $element.find('.left').html(isCtWin ? $roundWinIcon : '') $element.find('.right').html(isCtWin ? '' : $roundWinIcon) } else if (ctSlotSide === SlotSide.right) { $element.find('.left').html(isCtWin ? '' : $roundWinIcon) $element.find('.right').html(isCtWin ? $roundWinIcon : '') } } else { // Если нет информации о победителе раунда, например, раунд, который еще не был сыгран $element.find('.left').html('') $element.find('.right').html('') } }) } previousRoundWins = roundWins previousRound = data.map().round } })() //история updateTopPanel() updatekMapTeam() updateLeague() updateRoundNow(round, map) updateScoreboard() updateRoundState(phase, round, map, previously, bomb, players) updateObserved(observed) updatePlayers(players, observed, phase, previously) updateTeamValues(teams.left, teams.right) countNades(teams.left, teams.right) freezetime = round.phase == 'freezetime' last_round = round_now updateRoundWinPanel(data) //handleKillFeed(data, players, observed, phase, previously) //fonMapPick() //backgrounds() } /* killfeed */ /* $(function() { var tKillNames = data.getPlayer(1);;//вы можете добавить или удалить здесь больше "напарников" var ctKillNames = data.getPlayer(6);; //можно добавить сюда еще "врагов" var weapons = ["ssg", "ak47", "deagle", "awp", "g3sg1", "m4a4"]; //вы можете добавить или удалить здесь больше изображений оружия здесь var $killFeedContainer = $('.kill-feed'); var $killFeedElement = $('.kill-feed > div').hide(); function handleKillFeed() { var $newFeedElement = $killFeedElement.clone(); $newFeedElement.find('.weapons img:first-child').attr('src', './images/' + weapons[Math.floor(Math.random() * weapons.length)] + '.png'); //рисование оружия $player.find('.t').text(tKillNames[Math.floor(Math.random() * tKillNames.length)]); //рисование «напарника» $player.find('.ct').text(ctKillNames[Math.floor(Math.random() * ctKillNames.length)]);//рисуем "врага" $killFeedContainer.append($player.show().delay(2000).fadeOut(1000, function() { //рисование контейнера $(this).remove() })) } $(document).on("contextmenu", function(e) { e.preventDefault() }); window.setInterval(handleKillFeed, 450)// время между убийствами }); */ /* killfeed */ function setupBestOf(matchup, match) { if (matchup && matchup.toLowerCase() != 'none') { if (matchup == 'bo1') { $('#left_team .block2') .css('opacity', '1') .css('background-color', match.team_1.map_score >= 1 ? COLOR_WHITE : '') $('#right_team .block2') .css('opacity', '1') .css('background-color', match.team_2.map_score >= 1 ? COLOR_WHITE : '') } else if (matchup == 'bo3') { $('#left_team .block4') .css('opacity', '1') .css('background-color', match.team_1.map_score >= 1 ? COLOR_WHITE : '') $('#left_team .block5') .css('opacity', '1') .css('background-color', match.team_1.map_score >= 2 ? COLOR_WHITE : '') $('#right_team .block4') .css('opacity', '1') .css('background-color', match.team_2.map_score >= 1 ? COLOR_WHITE : '') $('#right_team .block5') .css('opacity', '1') .css('background-color', match.team_2.map_score >= 2 ? COLOR_WHITE : '') } else if (matchup == 'bo5') { $('#left_team .block1') .css('opacity', '1') .css('background-color', match.team_1.map_score >= 1 ? COLOR_WHITE : '') $('#left_team .block2') .css('opacity', '1') .css('background-color', match.team_1.map_score >= 2 ? COLOR_WHITE : '') $('#left_team .block3') .css('opacity', '1') .css('background-color', match.team_1.map_score >= 3 ? COLOR_WHITE : '') $('#right_team .block1') .css('opacity', '1') .css('background-color', match.team_2.map_score >= 1 ? COLOR_WHITE : '') $('#right_team .block2') .css('opacity', '1') .css('background-color', match.team_2.map_score >= 2 ? COLOR_WHITE : '') $('#right_team .block3') .css('opacity', '1') .css('background-color', match.team_2.map_score >= 3 ? COLOR_WHITE : '') } } } function updatekMapTeam() { $('#team_1_pick_map_1').attr( 'src', '/storage/' + teams.team_3.logo /*+ '.png'*/ ) $('#team_1_pick_map_1_win_1').attr( 'src', '/storage/' + teams.team_4.logo /*+ '.png'*/ ) $('#team_2_pick_map_2').attr( 'src', '/storage/' + teams.team_5.logo /*+ '.png'*/ ) $('#team_2_pick_map_2_win_2').attr( 'src', '/storage/' + teams.team_6.logo /*+ '.png'*/ ) } /*//fon pick map function fonMapPick () { $('#pick_map_team1').css( 'background-image', 'url(/storage/MAPS/' + match.map.pick_map_team1 + '.png)' $('#pick_map_team1').attr( 'src', '/storage/MAPS/' + match.map.pick_map_team1 + '.png') })*/ function updateTopPanel() { //#region Team Name $('#left_team #main') .text(teams.left.name.toUpperCase()) .css('color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) $('#right_team #main') .text(teams.right.name.toUpperCase()) .css('color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) //#endregion //#region Team Score $('#left_team #score') .text(teams.left.score) .css('color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) $('#right_team #score') .text(teams.right.score) .css('color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) //#endregion //#region Poles $('#left_team .bar').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#right_team .bar').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) //цвет фон кейтов и бомбы /*$('#players_left #player_bomb_kit2').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_right #player_bomb_kit3').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T )*/ /* $('#players_left .player_bomb_kit4 ').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_right #player_bomb_kit4 ').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T )*/ /* $(' #players_left #player_bomb_kit_image2').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $(' #players_right #player_bomb_kit_image3').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T )*/ //цвет фон кейтов и бомбы // Цвет фона камеры $('#players_left #player_spec_bar').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_right #player_spec_bar').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_left #player_spec_bar_bg').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_right #player_spec_bar_bg').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_left #player_spec_bar_bg2').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_right #player_spec_bar_bg2').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) // Цвет фона камеры // $('#left_team #alert #alert_pole_right').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#right_team #alert #alert_pole_left').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#match_pole_1').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#match_pole_2').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) //#endregion //#region Team Logos if (!teams.left.logo) { teams.left.logo = 'logo_' + teams.left.side.toLowerCase() + '_default.png' } if (!teams.right.logo) { teams.right.logo = 'logo_' + teams.right.side.toLowerCase() + '_default.png' } $('#left_team #team_logo').attr('src', '/storage/' + teams.left.logo) $('#right_team #team_logo').attr('src', '/storage/' + teams.right.logo) //#region Team Flag if (teams.left.flag && disp_team_flags) { $('#left_team #team_flag').css( 'background-image', 'url(/files/img/flags-50/' + teams.left.flag + '.png)' ) } else { $('#left_team #team_flag').css('background-image', '') } if (teams.right.flag && disp_team_flags) { $('#right_team #team_flag').css( 'background-image', 'url(/files/img/flags-50/' + teams.right.flag + '.png)' ) } else { $('#right_team #team_flag').css('background-image', '') } //#endregion } function updateLeague() { if (_displayRadar && radarToggle == null) { toggleRadar(true) } if (_displayOnlyMainImage) { $('#players_left #box_image').css('width', '405px') $('#players_left #box_image').css('height', '85px') $('#players_left #box_image').css('top', '0px') $('#players_left #box_image').css('right', '-5px') $('#players_left #box_image').css('top', '-5px') $('#players_left #box_image').attr('src', _leftOneImage) $('#players_left #box_image').css('border', 'none') $('#players_left #box_image2').css('opacity', 0) $('#players_left #box_image3').css('opacity', 0) } else { $('#players_left #box_image').attr('src', _left_image) $('#players_left #box_image2').attr('src', _left_image2) $('#players_left #box_image3').attr('src', _left_image3) } $('#players_left #main_primary').text(_left_primary) $('#players_left #main_secondary').text(_left_secondary) $('#players_right #box_image').attr('src', _right_image) $('#players_right #main_primary').text(_right_primary) $('#players_right #main_secondary').text(_right_secondary) } function updateRoundNow(round, map) { /*//оригинальный счетчит раундов и времени round_now = map.round + (round.phase == "over" || round.phase == "intermission" ? 0 : 1); $("#round_number").text("Round " + round_now + "/30"); if ((round.phase == "freezetime" && !freezetime) || round_now != last_round) { start_money = {}; }*/ //2 не оригинальный счетчит раундов и времени var ot_length = 0; var ot_count = 0; var run_once = 0; var round_now = map.round + (round.phase == "over" || round.phase == "intermission" ? 0 : 1); //esea fix if((teams.left.score + teams.right.score) > 14 && round_now <16){ round_now = round_now + 15 } //OT Count //Played more than 30 rounds //Add one to the OT counter //Add only once per OT //console.log(run_once) if ((round_now - 30) > 0){ if(((round_now - 36) % ot_length == 0 && run_once == 0 && round.phase == "freezetime") || round_now != last_round){ ot_count++ run_once = 1; } if(run_once == 1 && round.phase == 'Match is live'){ run_once = 0; } $("#round_number").html("ОТ Round " + (round_now - 30 - ((ot_count-1) * ot_length)) + "/6"); // if ((round_now - 37) % ot_length == 0 && run_once == 0){ // run_once = 1 // ot_count++ // } // if (round.phase == "over"){ // run_once = 0 // } if(ot_count > 0){ if((teams.left.score + teams.right.score) > 30 && round_now <30){ round_now = round_now + 1 $("#round_number").css("font-size", "10px") $("#round_number").html("OT: " + ot_count + " Round " + (round_now - 30 - ((ot_count-1) * ot_length)) + "/6") } } } else{ $("#round_number").html("Round " + round_now + "/30"); } } //не оригинальный счетчит раундов и времени /* var ot_length = 0; var round_now = map.round //esea fix if((teams.left.score + teams.right.score) > 14 && round_now <14){ round_now = round_now + 15 } //OT Count //Played more than 30 rounds //Add one to the OT counter //Add only once per OT console.log(run_once) if ((round_now - 30) > 0){ if((round_now - 37) % ot_length == 0 && run_once == 0 && round.phase == "freezetime"){ ot_count++ run_once = 1; } if(run_once == 1 && round.phase == 'Match is live'){ run_once = 0; } $("#round_number").html("Round " + (round_now - 30 - ((ot_count-1) * ot_length)) + "/6"); // if ((round_now - 37) % ot_length == 0 && run_once == 0){ // run_once = 1 // ot_count++ // } // if (round.phase == "over"){ // run_once = 0 // } if(ot_count > 0){ $("#round_number").css("font-size", "10px") $("#round_number").html("OT: " + ot_count + " Round " + (round_now - 30 - ((ot_count-1) * ot_length)) + "/6") } } else{ $("#round_number").html("Round " + round_now + "/30"); } }*/ function updateRoundState(phase, round, map, previously, bomb, players) { //console.log(phase.phase); // * freezetime/live/over/bomb/defuse/paused/timeout_t/timeout_ct // console.log(round.bomb); // * exploded/defused/planted NULL // console.log(round.win_team); // * CT/T //количество выживших родной /* var left_alive = checkAlivePlayers(teams.left.players) var right_alive = checkAlivePlayers(teams.right.players) $('#players_alive_bottom_left') .text(left_alive) .css('color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) $('#players_alive_bottom_right') .text(right_alive) .css('color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) if (left_alive == 1 || right_alive == 1) { $('#player_counter').find('#player_counter_text').text('Clutch Situation') } else { $('#player_counter').find('#player_counter_text').text('Players Alive') } $('#radar_border').css( 'border-image', teams.left.side == 'ct' ? 'linear-gradient(to right, ' + COLOR_NEW_CT + ', ' + COLOR_NEW_T + ') 1' : 'linear-gradient(to right, ' + COLOR_NEW_T + ', ' + COLOR_NEW_CT + ') 1' ) */ //количество выживших не родной var left_alive = checkAlivePlayers(teams.left.players) var right_alive = checkAlivePlayers(teams.right.players) $('#player_counter') .find('#player_counter_numbers') .find('#left_number') .text(left_alive) .css('color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) $('#player_counter') .find('#player_counter_numbers') .find('#right_number') .text(right_alive) .css('color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) if (left_alive == 1 || right_alive == 1) { $('#player_counter').find('#player_counter_text').text('Clutch Situation') } else { $('#player_counter').find('#player_counter_text').text('Players Alive') } switch (phase.phase) { case 'warmup': updateStateWarmup(phase) break case 'freezetime': updateStateFreezetime(phase, previously) break case 'live': updateStateLive(phase, bomb, players, previously) break case 'over': updateStateOver(phase, map, round, previously) break case 'bomb': updateStatePlanted(phase, round, previously) break case 'defuse': updateStateDefuse(phase, bomb, players) break case 'paused': updateStatePaused(phase, 'paused', previously) break case 'timeout_t': updateStatePaused(phase, 'timeout_t', previously) break case 'timeout_ct': updateStatePaused(phase, 'timeout_ct', previously) break } } function sortFunctionScoreboard(a, b) { if (a[6] === b[6]) { return 0 } else { return a[6] > b[6] ? -1 : 1 } } function toggleScoreboard(toggle) { if (toggle == true) { if ($('#live_page').hasClass('animated fadeIn')) { $('#live_page').removeClass('animated fadeIn') } $('#live_page').addClass('animated fadeOut') if ($('#scoreboard').hasClass('animated fadeOut')) { $('#scoreboard').removeClass('animated fadeOut') } $('#scoreboard').addClass('animated fadeIn') $('#scoreboard').css('opacity', 1) } else { if ($('#live_page').hasClass('animated fadeOut')) { $('#live_page').removeClass('animated fadeOut') $('#live_page').addClass('animated fadeIn') } if ($('#scoreboard').hasClass('animated fadeIn')) { $('#scoreboard').removeClass('animated fadeIn') } $('#scoreboard').addClass('animated fadeOut') } } function toggleRadar(toggle) { if (toggle == true) { radarToggle = true $('#radar_border').css('opacity', 1) } else { radarToggle = false $('#radar_border').css('opacity', 0) } } function updateScoreboard() { var today = new Date() var date = today.getFullYear() + '-' + (today.getMonth() + 1) + '-' + today.getDate() var time = today.getHours() + ':' + today.getMinutes() + ':' + today.getSeconds() var dateTime = date + ' ' + time $('#s_top_datetime').text(dateTime) $('#s_top_left #s_top_team').text( teams.left.name /*+ ' [' + teams.left.short_name.toUpperCase() + ']'*/ ) $('#s_top_right #s_top_team').text( teams.right.name /*+ ' [' + teams.right.short_name.toUpperCase() + ']'*/ ) $('#s_top_mid #s_top_map').text(live_map.name) $('#s_top_left #s_top_score') .text(teams.left.score) .css('color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) $('#s_top_right #s_top_score') .text(teams.right.score) .css('color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T) $('#s_top_left #s_team_logo').css( 'background-image', 'url(' + '/storage/' + teams.left.logo + ')' ) $('#s_top_right #s_team_logo').css( 'background-image', 'url(' + '/storage/' + teams.right.logo + ')' ) if (teams.left.side == 'ct') { $('#s_team #s_player1').css('background-color', 'rgba(40, 120, 240, 0.35)') $('#s_team #s_player3').css('background-color', 'rgba(40, 120, 240, 0.35)') $('#s_team #s_player5').css('background-color', 'rgba(40, 120, 240, 0.35)') $('#s_team2 #s_player1').css('background-color', 'rgba(229, 11, 11, 0.35)') $('#s_team2 #s_player3').css('background-color', 'rgba(229, 11, 11, 0.35)') $('#s_team2 #s_player5').css('background-color', 'rgba(229, 11, 11, 0.35)') } else { $('#s_team #s_player1').css('background-color', 'rgba(229, 11, 11, 0.35)') $('#s_team #s_player3').css('background-color', 'rgba(229, 11, 11, 0.35)') $('#s_team #s_player5').css('background-color', 'rgba(229, 11, 11, 0.35)') $('#s_team2 #s_player1').css('background-color', 'rgba(40, 120, 240, 0.35)') $('#s_team2 #s_player3').css('background-color', 'rgba(40, 120, 240, 0.35)') $('#s_team2 #s_player5').css('background-color', 'rgba(40, 120, 240, 0.35)') } scoreboard_players_left.sort(sortFunctionScoreboard) scoreboard_players_right.sort(sortFunctionScoreboard) if (teams.left.players) { for (var i = 0; i < 5; i++) { if (i >= teams.left.players.length) { let $scoreboard = $( '#scoreboard ' + '#s_teams ' + '#s_team' + ' #s_player' + (i + 1) ) $scoreboard.find('#s_p_nickname').text('UNCONNECTED') $scoreboard.css('color', 'rgb(169,169,169)') } else { let $scoreboard = $( '#scoreboard ' + '#s_teams ' + '#s_team' + ' #s_player' + (i + 1) ) $scoreboard.find('#s_p_nickname').text(scoreboard_players_left[i][0]) $scoreboard.find('#s_p_kills').text(scoreboard_players_left[i][1]) $scoreboard.find('#s_p_assists').text(scoreboard_players_left[i][2]) $scoreboard.find('#s_p_deaths').text(scoreboard_players_left[i][3]) $scoreboard.find('#s_p_killdeath').text(scoreboard_players_left[i][4]) $scoreboard.find('#s_p_mvps').text(scoreboard_players_left[i][5]) $scoreboard.find('#s_p_score').text(scoreboard_players_left[i][6]) //$scoreboard.find('#s_p_adr').text(scoreboard_players_left[i][7]) $scoreboard.css('color', 'white') } } } if (teams.right.players) { for (var i = 0; i < 5; i++) { if (i >= teams.right.players.length) { let $scoreboard = $( '#scoreboard ' + '#s_teams ' + '#s_team2' + ' #s_player' + (i + 1) ) $scoreboard.find('#s_p_nickname').text('UNCONNECTED') $scoreboard.css('color', 'rgb(169,169,169)') } else { let $scoreboard = $( '#scoreboard ' + '#s_teams ' + '#s_team2' + ' #s_player' + (i + 1) ) $scoreboard.find('#s_p_nickname').text(scoreboard_players_right[i][0]) $scoreboard.find('#s_p_kills').text(scoreboard_players_right[i][1]) $scoreboard.find('#s_p_assists').text(scoreboard_players_right[i][2]) $scoreboard.find('#s_p_deaths').text(scoreboard_players_right[i][3]) $scoreboard.find('#s_p_killdeath').text(scoreboard_players_right[i][4]) $scoreboard.find('#s_p_mvps').text(scoreboard_players_right[i][5]) $scoreboard.find('#s_p_score').text(scoreboard_players_right[i][6]) $scoreboard.css('color', 'white') } } } } function updateStateWarmup(phase) { if (phase) { forceRemoveAlerts() for (let x = 1; x <= 5; x++) { $( '#players_left #player_section #player' + x + ' .player_stats_holder' ).css('opacity', 0) $( '#players_right #player_section #player' + x + ' .player_stats_holder' ).css('opacity', 0) } if (!$('#round_timer_text').hasClass('round_warmup')) animateRoundTimer('round_warmup', true) } } function updateStateFreezetime(phase, previously) { if (phase) { removeRoundTimeGraphics() resetBomb() showPlayerStats(phase) $('#players_left #box_utility').slideDown(500) $('#players_right #box_utility').slideDown(500) $('#players_left #box_monetary').slideDown(500) $('#players_right #box_monetary').slideDown(500) $('.loss_bonus_left').slideDown(500) $('.loss_bonus_right').slideDown(500) $('.pick_map_match').slideDown(500) $('#pick_map_team0').slideDown(500) //$('#pick_map_match').addClass('fadeInDown') $('.left_value').slideDown(500) $('.right_value').slideDown(500) $('.player_stats2').css('opacity', 1) $('.player_stats3').css('opacity', 1) //$('#player_counter').slideUp(500) //$('#pick_map_team0').slideDown(500) //$('#pick_map_team1').slideDown(500) //$('#pick_map_team2').slideDown(500) //$('#decider').slideDown(500) $('#freezetime_hud').slideDown(500) //$('#round_history').slideDown(80) //$('#round_history_panel').slideDown(500) $('#round_timer_text').css('color', COLOR_GRAY) if (previously.hasOwnProperty('round')) { if (previously.round.hasOwnProperty('win_team')) { if (previously.round.win_team == 'CT') { if (teams.left.side == 'ct') { // * CT alert on Left hideAlertSlide('#left_team') } else { // * CT alert on Right hideAlertSlide('#right_team') } } else if (previously.round.win_team == 'T') { if (teams.left.side == 't') { // * T alert on Left hideAlertSlide('#left_team') } else { // * T alert on Right hideAlertSlide('#right_team') } } } } else if (checkPrev(previously, 'paused')) { $('#alert_middle').removeClass() animateElement('#alert_middle', 'fadeOutDown', function () { $('#alert_middle').css('opacity', 0).removeClass() }) $('#pause').removeClass() animateElement('#pause', 'fadeOutDown', function () { $('#pause').css('opacity', 0).removeClass() }) } else if ( checkPrev(previously, 'timeout_t') || checkPrev(previously, 'timeout_ct') ) { $('#alert_middle').removeClass() animateElement('#alert_middle', 'fadeOutDown', function () { $('#alert_middle').css('opacity', 0).removeClass() }) $('#pause').removeClass() animateElement('#pause', 'fadeOutDown', function () { $('#pause').css('opacity', 0).removeClass() }) hideAlert('#left_team') hideAlert('#right_team') } if (phase.phase_ends_in) { var clock_time = Math.abs(Math.ceil(phase.phase_ends_in)) var count_minute = Math.floor(clock_time / 60) var count_seconds = clock_time - count_minute * 60 if (count_seconds < 10) { count_seconds = '0' + count_seconds } $('#round_timer_text').text(count_minute + ':' + count_seconds) } } } function updateStateOver(phase, map, round, previously) { if (phase) { round_now = map.round + (round.phase == 'over' || round.phase == 'intermission' ? 0 : 1) if (_displayScoreboard) { if (round_now % 8 === 0) { toggleScoreboard(true) } } $('#round_timer_text').css('color', COLOR_GRAY) //#region Which Team Won if (round.win_team == 'CT') { if (teams.left.side == 'ct') { // * CT alert on Left showAlertSlide('#left_team', COLOR_NEW_CT, 'WINS THE ROUND') $('#left_team #logo #team_logo').addClass('animated fadeIn') } else { // * CT alert on Right showAlertSlide('#right_team', COLOR_NEW_CT, 'WINS THE ROUND') $('#right_team #logo #team_logo').addClass('animated fadeIn') } } else if (round.win_team == 'T') { if (teams.left.side == 't') { // * T alert on Left showAlertSlide('#left_team', COLOR_NEW_T, 'WINS THE ROUND') $('#left_team #logo #team_logo').addClass('animated fadeIn') if (checkPrev(previously, 'defuse')) { $('#right_team #alert').css('opacity', 0).removeClass() } } else { // * T alert on Right showAlertSlide('#right_team', COLOR_NEW_T, 'WINS THE ROUND') $('#right_team #logo #team_logo').addClass('animated fadeIn') if (checkPrev(previously, 'defuse')) { $('#left_team #alert').css('opacity', 0).removeClass() } } } //#endregion resetBomb() if (round.bomb == null) { if (round.win_team == 'T') { if (checkPrev(previously, 'live') || checkPrev(previously, 'bomb')) { if ($('#round_timer_text').hasClass('animated')) $('#round_timer_text').removeClass('animated') if ($('#round_timer_text').hasClass('flash')) $('#round_timer_text').removeClass('flash') animateRoundTimer('players_eliminated_T', false) } } else if (round.win_team == 'CT') { //var t_alive = checkAliveTerrorists(team_t.players); var t_alive = checkAliveTerrorists( teams.left.side == 't' ? teams.left.players : teams.right.players ) if (checkPrev(previously, 'live')) if (t_alive) { // * CT RUN OUT THE CLOCK if (!$('#round_timer_text').hasClass('players_eliminated_CT')) { if ($('#round_timer_text').hasClass('animated')) $('#round_timer_text').removeClass('animated') if ($('#round_timer_text').hasClass('flash')) $('#round_timer_text').removeClass('flash') animateRoundTimer('round_time_reached', false) } } else if (!t_alive) { // * CT ELIMINATE T animateRoundTimer('players_eliminated_CT', false) } } } else if (round.bomb == 'planted') { if (checkPrev(previously, 'live')) animateRoundTimer('players_eliminated_T', false) if (checkPrev(previously, 'defuse')) { if ($('#round_timer_text').hasClass('animated')) $('#round_timer_text').removeClass('animated') if ($('#round_timer_text').hasClass('flash')) $('#round_timer_text').removeClass('flash') animateRoundTimer('players_eliminated_T', false) } } else if (round.bomb == 'exploded') { if (checkPrev(previously, 'bomb')) { if ($('#round_timer_text').hasClass('animated')) $('#round_timer_text').removeClass('animated') if ($('#round_timer_text').hasClass('flash')) $('#round_timer_text').removeClass('flash') animateRoundTimer('bomb_exploded', true) $('#round_timer_text') .css('animation-duration', '0.25s') .css('animation-iteration-count', '1') } } else if (round.bomb == 'defused') { if (checkPrev(previously, 'defuse')) { let _side = teams.left.side == 'ct' ? '#left_team' : '#right_team' animateElement(_side + ' #alert #alert_text', 'flash', function () { $(_side + ' #alert #alert_text').removeClass('animated flash') }) animateRoundTimer('bomb_defused', true) $('#timers #defuse_bar').css('opacity', 0) $('#timers2 #defuse_bar2').css('opacity', 0) /*$('#left_container').css('opacity', 0) $('#bomb_bar2').css('opacity', 0)*/ $('#left_team #bomb_defuse #icon').css('opacity', 0) $('#left_team #bomb_defuse #kit_bar').css('opacity', 0) $('#right_team #bomb_defuse #icon').css('opacity', 0) $('#right_team #bomb_defuse #kit_bar').css('opacity', 0) } } } } function updateStatePlanted(phase, round, previously) { if (phase) { if (round.bomb == 'planted') { if (checkPrev(previously, 'live')) { $('#players_left #box_utility').slideDown(500) $('#players_right #box_utility').slideDown(500) } if (checkPrev(previously, 'defuse')) { // Fake Defuse or killed let defuse_side = teams.left.side == 'ct' ? '#left_team' : '#right_team' hideAlertSlide(defuse_side) } if (phase.phase_ends_in <= 35) { $('#players_left #box_utility').slideUp(500) $('#players_right #box_utility').slideUp(500) } if (checkPrev(previously, 'live')) { let side = teams.left.side == 't' ? '#left_team' : '#right_team' hideAlertSlide(side) if ($('#round_timer_text').hasClass('animated')) $('#round_timer_text').removeClass('animated') if ($('#round_timer_text').hasClass('flash')) $('#round_timer_text').removeClass('flash') animateRoundTimer('bomb_active', false) /*showMiddleAlert(COLOR_NEW_T, COLOR_NEW_T, 'BOMB PLANTED', COLOR_NEW_T) var wait = setTimeout(function () { $('#alert_middle') .css('opacity', 0) .removeClass('animated fadeOutDown') }, 5000)*/ } if (phase.phase_ends_in <= 2) { $('#round_timer_text') .css('animation-duration', '0.5s') .css('animation-iteration-count', 'infinite') } else if (phase.phase_ends_in <= 5) { $('#round_timer_text') .css('animation-duration', '1s') .css('animation-iteration-count', 'infinite') } else if (phase.phase_ends_in <= 10) { $('#round_timer_text') .addClass('animated flash') .css('animation-duration', '2s') .css('animation-iteration-count', 'infinite') } bomb(parseFloat(phase.phase_ends_in)) $('#timers #defuse_bar').css('opacity', 0) $('#timers2 #defuse_bar2').css('opacity', 0) $('#left_team #bomb_defuse #icon').css('opacity', 0) $('#left_team #bomb_defuse #kit_bar').css('opacity', 0) $('#right_team #bomb_defuse #icon').css('opacity', 0) $('#right_team #bomb_defuse #kit_bar').css('opacity', 0) } } } //разминирование function updateStateDefuse(phase, bomb, players) { if (phase) { $("#timers #timers2").css("color", (phase.phase == "live" || phase.phase == "over" || phase.phase == "warmup" || (phase.phase == "freezetime" && phase.phase_ends_in > 10)) ? "white" : "red"); if(teams.right.side == "ct"){ $("#right_container").css("display", phase.phase == "defuse" ? "block" : "none"); } else { $("#left_container").css("display", phase.phase == "defuse" ? "block" : "none"); } if (phase.phase == 'defuse') { let side = teams.left.side == 't' ? '#left_team' : '#right_team' if (!isDefusing) { // * Checks for Kit ONCE if (parseFloat(phase.phase_ends_in) > 5) { defuse_seconds = 10 divider = 1 hasKit = false } else { defuse_seconds = 5 divider = 2 hasKit = true } isDefusing = true } var defuse_timer_css = { opacity: 1, width: (181 / divider) * (parseFloat(phase.phase_ends_in) / defuse_seconds) + //25 '%', } var defuse_timer_css2 = { opacity: 1, width: (110 / divider) * (parseFloat(phase.phase_ends_in) / defuse_seconds) + //25 '%', } let defusing_side = teams.right.side == 't' ? '#left_team' : '#right_team' $(defusing_side + ' #bomb_defuse #icon').css('opacity', hasKit ? 1 : 0) $(defusing_side + ' #bomb_defuse #kit_bar') .css('background-color', COLOR_NEW_CT) .css('opacity', hasKit ? 1 : 0) $('#timers #defuse_bar').css(defuse_timer_css) $('#timers2 #defuse_bar2').css(defuse_timer_css2) $('#defuse_bar2').css("float", "right") if (bomb != null) { if (bomb.state == 'defusing') { player = bomb.player players.forEach(function (_player) { if (_player.steamid == player) { defuser = _player } }) // 13 characters for name showAlertSlide( defusing_side, COLOR_NEW_CT, defuser.name + ' defuse bomb' ) } } } } } function updateStateLive(phase, bomb, players, previously) { if (phase) { if (_displayScoreboard) { toggleScoreboard(false) } removeRoundTimeGraphics() forceRemoveAlerts() resetBomb() hidePlayerStats(phase, previously) if (checkPrev(previously, 'freezetime')) { $('#players_left #box_monetary').slideUp(500) $('#players_right #box_monetary').slideUp(500) $('.loss_bonus_left').slideUp(500) $('.loss_bonus_right').slideUp(500) $('.pick_map_match').slideUp(500) $('.left_value').slideUp(500) $('.right_value').slideUp(20) $('.player_stats2').css('opacity', 0) $('.player_stats3').css('opacity', 0) //$('#player_counter').slideDown(2000) //$('#pick_map_team0').slideUp(500) //$('#pick_map_team1').slideUp(500) //$('#pick_map_team2').slideUp(500) //$('#decider').slideUp(500) $('#freezetime_hud').slideUp(500) //$('#round_history').slideUp(80) //$('#round_history_panel').slideUp(500) //$('#left_team #main').slideUp(500) } if (phase.phase_ends_in <= 109.9) { $('#players_left #box_utility').slideUp(500) $('#players_right #box_utility').slideUp(500) } if (phase.phase_ends_in <= 5) { $('#round_timer_text') .addClass('animated flash') .css('animation-duration', '2s') .css('animation-iteration-count', 'infinite') } $('#round_timer_text').css( 'color', phase.phase_ends_in <= 10 ? COLOR_RED : COLOR_WHITE ) if (phase.phase_ends_in) { var clock_time = Math.abs(Math.ceil(phase.phase_ends_in)) var count_minute = Math.floor(clock_time / 60) var count_seconds = clock_time - count_minute * 60 if (count_seconds < 10) { count_seconds = '0' + count_seconds } $('#round_timer_text').text(count_minute + ':' + count_seconds) } if (bomb != null) { if (bomb.state == 'planting') { let side = teams.left.side == 't' ? '#left_team' : '#right_team' player = bomb.player players.forEach(function (_player) { if (_player.steamid == player) { planter = _player } }) // 13 characters for name var bufor = planter.name if (bufor.length >= 20) { bufor = bufor.substring(0, 20) + '...' } showAlertSlide(side, COLOR_NEW_T, bufor + ' ' + 'planting bomb') } } } } function updateStatePaused(phase, type, previously) { removeRoundTimeGraphics() resetBomb() $('#players_left #box_utility').slideDown(500) $('#players_right #box_utility').slideDown(500) $('#alert_middle #alert_text_middle #pole_1_middle_img').css( 'background-image', 'url(/files/img/elements/timer2.png)' ) $('#alert_middle').removeClass() $('#pause').removeClass() if (type == 'paused') { if ( checkPrev(previously, 'freezetime') || checkPrev(previously, 'live') || checkPrev(previously, 'defuse') || checkPrev(previously, 'bomb') ) animateRoundTimer('pause_active', false) $('#alert_middle #pole_1_middle').css( 'background-color', teams.left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#alert_middle #pole_2_middle').css( 'background-color', teams.right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#alert_middle #alert_text_middle #alert_text_middle_2') .text('MATCH PAUSED') .css('color', COLOR_WHITE) $('#pause') .text('MATCH PAUSED') .css('color', COLOR_WHITE) } else if (type == 'timeout_t') { if (phase.phase_ends_in) { var clock_time = Math.abs(Math.ceil(phase.phase_ends_in)) var count_minute = Math.floor(clock_time / 60) var count_seconds = clock_time - count_minute * 60 if (count_seconds < 10) { count_seconds = '0' + count_seconds } $('#round_timer_text') .text(count_minute + ':' + count_seconds) .css('color', COLOR_NEW_T) } $('#alert_middle #pole_1_middle').css('background-color', COLOR_NEW_T) $('#alert_middle #pole_2_middle').css('background-color', COLOR_NEW_T) $('#alert_middle #alert_text_middle_2_middle').css( 'background-color', COLOR_NEW_T ) $('#alert_middle #alert_text_middle #pole_1_middle_img').css( 'background-image', 'url(/files/img/elements/icon_timer_default.png)' ) /*$('#alert_middle #alert_text_middle #alert_text_middle_2') //оригинал тайм аутов .text( teams.left.side == 't' ? ' TIMEOUT: ' + '' + teams.left.short_name.toUpperCase() + ' use:' + ' ' + teams.left.timeouts_remaining + '' : ' TIMEOUT: ' + '' + teams.right.short_name.toUpperCase() + ' use:' + ' ' + teams.right.timeouts_remaining + '' ) .css('color', COLOR_NEW_T)*/ $('#alert_middle #alert_text_middle #alert_text_middle_2') .text( teams.left.side == 't' ? ' TIMEOUT: ' : ' TIMEOUT: ' ) .css('color', COLOR_NEW_T) $('#alert_text_middle_2_2') .text( teams.left.side == 't' ? teams.left.short_name.toUpperCase() : teams.right.short_name.toUpperCase() ) .css('color', COLOR_NEW_T) $('#alert_text_middle_2_3') .text( teams.left.side == 't' ? ' use:' + '' + teams.left.timeouts_remaining + '/4' : ' use:' + '' + teams.right.timeouts_remaining + '/4' ) .css('color', COLOR_NEW_T) /* отображение количества timeout*/ /*showAlertSlide( '#left_team', teams.left.side == 't' ? COLOR_NEW_T : COLOR_NEW_CT, 'Timeouts Remaining: ' + teams.left.timeouts_remaining ) showAlertSlide( '#right_team', teams.right.side == 't' ? COLOR_NEW_T : COLOR_NEW_CT, 'Timeouts Remaining: ' + teams.right.timeouts_remaining )*/ } else if (type == 'timeout_ct') { if (phase.phase_ends_in) { var clock_time = Math.abs(Math.ceil(phase.phase_ends_in)) var count_minute = Math.floor(clock_time / 60) var count_seconds = clock_time - count_minute * 60 if (count_seconds < 10) { count_seconds = '0' + count_seconds } $('#round_timer_text') .text(count_minute + ':' + count_seconds) .css('color', COLOR_NEW_CT) } $('#alert_middle #pole_1_middle').css('background-color', COLOR_NEW_CT) $('#alert_middle #pole_2_middle').css('background-color', COLOR_NEW_CT) $('#alert_middle #alert_text_middle #pole_1_middle_img').css( 'background-image', 'url(/files/img/elements/icon_timer_default.png)' ) $('#alert_middle #pole_2_middle').css('background-color', COLOR_NEW_CT) /*$('#alert_middle #alert_text_middle #alert_text_middle_2') // оригинал информации об таймаутах .text( teams.left.side == 'ct' ? ' TIMEOUT: ' + '' + teams.left.short_name.toUpperCase() + ' | use:' + ' ' + teams.left.timeouts_remaining + '/4' : ' TIMEOUT2: ' + '' + teams.right.short_name.toUpperCase() + ' | use:' + ' ' + teams.right.timeouts_remaining + '/4' )*/ $('#alert_middle #alert_text_middle #alert_text_middle_2') .text( teams.left.side == 'ct' ? ' TIMEOUT: ' : ' TIMEOUT: ' ) .css('color', COLOR_NEW_CT) //название команды $('#alert_text_middle_2_2') .text( teams.left.side == 'ct' ? teams.left.short_name.toUpperCase() : teams.right.short_name.toUpperCase() ) .css('color', COLOR_NEW_CT) //заюзанных перерывов $('#alert_text_middle_2_3') .text( teams.left.side == 'ct' ? ' use:' + teams.left.timeouts_remaining + '/4' : ' use:' + teams.right.timeouts_remaining + '/4' ) .css('color', COLOR_NEW_CT) /* отображение количества timeout*/ /*showAlertSlide( '#left_team', teams.left.side == 't' ? COLOR_NEW_T : COLOR_NEW_CT, 'Timeouts Remaining: ' + teams.left.timeouts_remaining ) showAlertSlide( '#right_team', teams.right.side == 't' ? COLOR_NEW_T : COLOR_NEW_CT, 'Timeouts Remaining: ' + teams.right.timeouts_remaining )*/ } $('#alert_middle').css('opacity', 1).addClass('animated fadeInUp') $('#pause').css('opacity', 1).addClass('animated fadeInUp') } function updateObserved(observed) { if (observed && observed.steamid != 1 && observed.getStats()) { $('#observed').css('opacity', 1) fillObserved(observed) } else { $('#observed').css('opacity', 0) } } function fillObserved(obs) { let stats = obs.getStats() let weapons = obs.weapons team_color = obs.team == 'CT' ? COLOR_NEW_CT : COLOR_NEW_T /* // загрузка авки из стим loadAvatar(obs.steamid, function () { $('#obs_img').attr('src', '/files/avatars/' + obs.steamid + '.png') }) */ //#region Poles $('#obs_lane3_left_pole').css('background-color', team_color) $('#obs_lane3_right_pole').css('background-color', team_color) //#endregion var bufor = obs.name if (bufor.length >= 13) { bufor = bufor.substring(0, 13) + '...' } $('#obs_alias_text').text(bufor/*.toUpperCase()*/) $('#obs_alias_text').css('color', COLOR_WHITE/*team_color*/) if (obs.real_name && obs.real_name != obs.name) { $('#obs_realname_text').text(obs.real_name) } else { $('#obs_realname_text').text('') } // Logic for Team Image if (obs.team == 'CT') { if (teams.left.side == 'ct') { _img = teams.left.logo } else { _img = teams.right.logo } } else if (obs.team == 'T') { if (teams.left.side == 't') { _img = teams.left.logo } else { _img = teams.right.logo } } if (disp_avatars) { if (disp_player_avatars) { if (obs.hasOwnProperty('avatar')) { // Custom Set Avatar if (obs.avatar) $('#obs_img').attr('src', '/storage/' + obs.avatar) } else { // Just Use Team Logo $('#obs_img').attr('src', '/storage/' + _img) //$('#obs_img').attr('src', '/files/avatars/' + obs.steamid + '.png') } } else { loadAvatar(obs.steamid, function () { $('#obs_img').attr('src', '/av/' + obs.steamid) }) } } else { $('#obs_avatar').css('opacity', 0) } // Team Logo and Flags $('#obs_team_img').attr('src', '/storage/' + _img) /*$('#team_3').attr('src', '/storage/' + _img)*/ //!!!!!!!!!!!!!!!!!!!!!!!!!!!! if (disp_player_flags) { if (obs.hasOwnProperty('teamData')) { if (obs.teamData.hasOwnProperty('country_code')) { $('#obs_country_img').attr( 'src', '/files/img/flags-50/' + obs.country_code + '.png' ) $('#obs_country_img').css('opacity', 1) } else { $('#obs_country_img').css('opacity', 0) } } else { $('#obs_country_img').css('opacity', 0) } } else { $('#obs_country_img').css('opacity', 0) } $('#obs_health_text').text(stats.health) $('#obs_health_img').removeClass() if (stats.health <= 20) { $('#obs_health_img').addClass('health_' + obs.team) $('#obs_health_text').css('color', COLOR_RED) } else if (stats.health > 20) { $('#obs_health_img').addClass('health_full_' + obs.team) $('#obs_health_text').css('color', COLOR_WHITE) } $('#obs_armor_text').text(stats.armor) $('#obs_armor_img').removeClass() if (stats.helmet) { if (stats.armor == 0) { $('#obs_armor_img').addClass('armor_none_' + obs.team) } else if (stats.armor <= 30) { $('#obs_armor_img').addClass('armor_half_helm_' + obs.team) } else if (stats.armor <= 100) { $('#obs_armor_img').addClass('armor_helm_' + obs.team) } } else { if (stats.armor == 0) { $('#obs_armor_img').addClass('armor_none_' + obs.team) } else if (stats.armor <= 30) { $('#obs_armor_img').addClass('armor_half_' + obs.team) } else if (stats.armor <= 100) { $('#obs_armor_img').addClass('armor_kev_' + obs.team) } } $('#obs_kills_k').css('color', team_color) $('#obs_kills_text').text(stats.kills) $('#obs_assists_a').css('color', team_color) $('#obs_assists_text').text(stats.assists) $('#obs_deaths_d').css('color', team_color) $('#obs_deaths_text').text(stats.deaths) $('#obs_kd_kd').css('color', team_color) if (stats.deaths == 0) { $('#obs_kd_text').text(stats.kills.toFixed(1)) } else { $('#obs_kd_text').text(Math.floor((stats.kills / stats.deaths).toFixed(2) * 100) / 100) } //$('#obs_adr_text').text(Math.round((stats.adr[player.steamid] || 0))) //Math.round((adr[player.steamid] || 0) //$('#obs_rt_rt').css('color', team_color) //$('#obs_rt_text').text(Math.floor(stats.round_totaldmg / 1,2 * round_now)) //$('#obs_rt_text').text(Math.round((adr[player.steamid]))) //$('#obs_rt_text').text(stats.round_totaldmg) //$('#DMG_round_text').text(stats.round_totaldmg) //$('#obs_adr_text').text(stats.demage) $('#obs_reserve').css('color', team_color) $('#obs_nade1').removeClass() $('#obs_nade2').removeClass() $('#obs_nade3').removeClass() $('#obs_nade4').removeClass() $('#obs_bomb_kit').removeClass() $('#obs_bullets_section').removeClass() $('#obs_bullets_section').addClass('bullets_' + obs.team) let grenades_list = [] for (let key in weapons) { let weapon = weapons[key] if (weapon.type == 'Grenade') { for (let x = 0; x < weapon.ammo_reserve; x++) { grenades_list.push(weapon.name) } } if (weapon.type == 'C4') { $('#obs_bomb_kit').addClass('obs_bomb') } if (weapon.state == 'active' || weapon.state == 'reloading') { if ( weapon.type == 'Grenade' || weapon.type == 'C4' || weapon.type == 'Knife' || stats.health == 0 ) { $('#obs_clip').css('color', COLOR_WHITE) $('#obs_clip').text('-') $('#obs_reserve').text('/-') } else { $('#obs_clip').text(weapon.ammo_clip) if (weapon.ammo_clip <= 3) { $('#obs_clip').css('color', COLOR_RED) } else { $('#obs_clip').css('color', COLOR_WHITE) } $('#obs_reserve').text('/' + weapon.ammo_reserve) } } } for (let x = 0; x < grenades_list.length; x++) { $('#obs_nade' + (x + 1)).addClass('nade_' + grenades_list[x].substr(7)) } if (stats.defusekit) { $('#obs_bomb_kit').addClass('obs_kit') } skull_color = obs.team == 'CT' ? 'CT' : 'T' $('#obs_round_kills #obs_skull').removeClass() if (stats.round_kills > 0) { $('#obs_round_kills #obs_skull').addClass('obs_skull_' + skull_color) $('#obs_round_kills #obs_round_kills_text').text(stats.round_kills) } else { $('#obs_round_kills #obs_round_kills_text').text('') } } function updatePlayers(players, observed, phase, previously) { if (players) { fillPlayers(teams, observed, phase, previously) } } function fillPlayers(teams, observed, phase, previously) { if (teams.left.players) { for (var i = 0; i < 5; i++) { if (i >= teams.left.players.length) { $('#players_left #player_section') .find('#player' + (i + 1)) .css('opacity', '0') } else { fillPlayer( teams.left.players[i], i, 'players_left', observed, phase, previously ) $('#players_left #player_section') .find('#player' + (i + 1)) .css('opacity', '1') } } } if (teams.right.players) { for (var i = 0; i < 5; i++) { if (i >= teams.right.players.length) { $('#players_right #player_section') .find('#player' + (i + 1)) .css('opacity', '0') } else { fillPlayer( teams.right.players[i], i, 'players_right', observed, phase, previously ) $('#players_right #player_section') .find('#player' + (i + 1)) .css('opacity', '1') } } } } function fillPlayer(player, nr, side, observed, phase, previously) { let slot = player.observer_slot let stats = player.getStats() let weapons = player.getWeapons() let steamid = player.steamid let team = player.team.toLowerCase() let obs_slot = observed.observer_slot let dead = stats.health == 0 let health_color = stats.health <= 20 ? COLOR_RED : team == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T let alt_health_color = stats.health <= 20 ? COLOR_RED : team == 'ct' ? COLOR_CT : COLOR_T let side_color = team == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T let $player = $('#live_page ' + '#' + side).find('#player' + (nr + 1)) $player .find('.player_side_bar') .css('background-color', dead ? COLOR_MAIN_PANEL : side_color) //let $top = $player.find('.player_section_top') let $top = $player.find('.player_section_top').css('width', '325px') let $top2 = $player.find('.player_section_top2').css('width', '70px') let $top3 = $player.find('.player_section_top3').css('width', '70px') let $bottom = $player.find('.player_section_bottom').css('width', '325px', 'left', '129.6px') let $bottom2 = $player.find('.player_section_bottom2').css('width', '30px', 'left', '129.6px') let $bottom3 = $player.find('.player_section_bottom3').css('width', '30px', 'right', '129.6px') //let $bottom = $player.find('.player_section_bottom').css('left', '129.6px') let $kda_money = $player.find('.player_stats_holder') let $kda_money2 = $player.find('.player_kda_stile_esl') let $kda_money3 = $player.find('.player_kda_stile_esl2') let $kda_money4 = $player.find('.player_stats2') let $kda_money5 = $player.find('.player_stats3') // avatars //оригинал /* $player.find("#player_image").removeClass("dead"); if (disp_player_avatars) { if (player.hasOwnProperty("avatar")) { // Custom Set Avatar if (player.avatar) $player .find("#player_image") .attr("src", "/storage/" + player.avatar) .addClass(dead ? "dead" : ""); } else { // Just Use Team Logo if (team == "ct") { if (teams.left.side == "ct") { _img = teams.left.logo; } else { _img = teams.right.logo; } } else if (team == "t") { if (teams.left.side == "t") { _img = teams.left.logo; } else { _img = teams.right.logo; } } $player .find("#player_image") .attr("src", "/storage/" + _img) .addClass(dead ? "dead" : ""); } } else { loadAvatar(steamid, function () { $player .find("#player_image") .attr("src", "/av/" + steamid) .addClass(dead ? "dead" : ""); }); }*/ //не оригинал $player.find('#player_image').removeClass('dead') if (disp_player_avatars) { if (player.hasOwnProperty('avatar')) { // Custom Set Avatar if (player.avatar) $player .find('#player_image') .attr('src', '/storage/' + player.avatar) //Фотографии игроков //.attr('src', '/av/' + steamid) //аватарки из стим .addClass(dead ? 'dead' : '') } else { // Аватарки из лого команды // Just Use Team Logo if (team == "ct") { if (teams.left.side == "ct") { _img = teams.left.logo; } else { _img = teams.right.logo; } } else if (team == "t") { if (teams.left.side == "t") { _img = teams.left.logo; } else { _img = teams.right.logo; } } // авки из стим за место лого команды для ESEA $player .find('#player_image') //.attr('src', '/storage/' + player.avatar) //Фотографии игроков .attr('src', '/av/' + steamid) //аватарки из стим .addClass(dead ? 'dead' : '') } } /*else { // авки из стим за место лого команды для ESEA loadAvatar(steamid, function () { $player .find('#player_image') //.attr('src', '/storage/' + player.avatar) //Фотографии игроков .attr('src', '/av/' + steamid) //аватарки из стим .addClass(dead ? 'dead' : '') }) }*/ // scoreboard if (side == 'players_left') { scoreboard_players_left[nr][0] = player.name.toUpperCase() scoreboard_players_left[nr][1] = stats.kills scoreboard_players_left[nr][2] = stats.assists scoreboard_players_left[nr][3] = stats.deaths if (stats.deaths == 0) { scoreboard_players_left[nr][4] = stats.kills.toFixed(1) } else { scoreboard_players_left[nr][4] = (stats.kills / stats.deaths).toFixed(1) } scoreboard_players_left[nr][5] = stats.mvps scoreboard_players_left[nr][6] = stats.score //scoreboard_players_left[nr][7] = stats.damage } else { scoreboard_players_right[nr][0] = player.name.toUpperCase() scoreboard_players_right[nr][1] = stats.kills scoreboard_players_right[nr][2] = stats.assists scoreboard_players_right[nr][3] = stats.deaths if (stats.deaths == 0) { scoreboard_players_right[nr][4] = stats.kills.toFixed(1) } else { scoreboard_players_right[nr][4] = (stats.kills / stats.deaths).toFixed(1) } scoreboard_players_right[nr][5] = stats.mvps scoreboard_players_right[nr][6] = stats.score } $top .find('#player_alias_text') .css('color', dead ? COLOR_WHITE_HALF : COLOR_WHITE) $top .find('#DMG_round') .css('color', dead ? COLOR_WHITE_HALF : COLOR_WHITE) if (slot >= 1 && slot <= 5) { $top.find('#player_alias_text').text(player.name/*.toUpperCase()*/) } else { if (slot == 10) { $top.find('#player_alias_text').text(player.name/*.toUpperCase()*/) } else { $top.find('#player_alias_text').text(player.name/*.toUpperCase()*/) } } $top .find('.DMG_round') .css('color', dead ? COLOR_WHITE_HALF : COLOR_WHITE) $kda_money.find('#player_kills_k').css('color', side_color) $kda_money.find('#player_kills_text').text(stats.kills) $kda_money2.find('#player_kills_text2').text(stats.kills) $kda_money3.find('#player_kills_text3').text(stats.kills) $player.find('#player_dead_kills_text').text(stats.kills) $player.find('#player_dead_kills_text').text(stats.kills) $player.find('#DMG_round_text').text(stats.round_totaldmg) $player.find('#DMG_round_text2').text(stats.round_totaldmg) //$player.find('#ADR_m_text2').text(Math.floor((round_totaldmg / round).toFixed(2) * 100) / 100) //$player.find('#KD_team_text2').text(Math.floor((stats.kills / stats.deaths).toFixed(2) * 100) / 100) //$player.find('#ADR_m_text2').text(stats.damagePrRound) /*$kda_money2.find('#player_kills_text_live2').text(stats.kills)*/ $player.find('#player_dead_kills_text_live').text(stats.kills) $kda_money.find('#player_assists_a').css('color', side_color) $kda_money.find('#player_assists_text').text(stats.assists) $player.find('#player_dead_assists_text').text(stats.assists) $kda_money.find('#player_deaths_d').css('color', side_color) $kda_money.find('#player_deaths_text').text(stats.deaths) $kda_money2.find('#player_deaths_text2').text(stats.deaths) $kda_money3.find('#player_deaths_text3').text(stats.deaths) $player.find('#player_dead_deaths_text').text(stats.deaths) $player.find('#player_deaths_text_live').text(stats.deaths) $player.find('#player_dead_deaths_text_live').text(stats.deaths) // отображение игрока после смерти // //width: 1100px; if (dead) { $bottom.find('#player_bomb_kit_image').css('opacity', 0) $bottom2.find('#player_bomb_kit_image2').css('opacity', 0) $bottom2.find('#player_bomb_kit_bg').css('opacity', 0) $bottom2.find('#player_bomb_kit_bg2').css('opacity', 0) $bottom2.find('#player_bomb_kit2').css('opacity', 0) $bottom2.find('#player_bomb_kit_image3').css('opacity', 0) $bottom3.find('#player_bomb_kit4').css('opacity', 0) $bottom3.find('#player_bomb_kit_image3').css('opacity', 0) $bottom3.find('.player_bomb_kit_image3_fon').css('opacity', 0) $bottom3.find('#player_bomb_kit_bg2').css('opacity', 0) $bottom3.find('#player_kit2').css('opacity', 0) $bottom.find('#player_armor_image').css('opacity', 0) $bottom2.find('#player_armor_image2').css('opacity', 0) $bottom3.find('#player_armor_image3').css('opacity', 0) $top.find('#player_health_text').css('opacity', 0, ) $top2.find('#player_health_text2').css('opacity', 0, ) $top3.find('#player_health_text3').css('opacity', 0, ) $top.find('#player_health_img').css('opacity', 0) $player.find('.player_dead').css('opacity', 1) //$player.find('.player_section_top').css('width', '200px') //$player.find('.player_section_bottom').css('width', '200px') if (side.substr(8) == 'left') { $player.find('#player_alias_text').css('left', '0px') //-35 $player.find('#DMG_round_text2').css('left', '0px') //-35 $player.find('#player_current_money_text').css('left', '-55px') //-55px $player.find('#player_current_money_text').css('top', '0px') //-55px $player.find('#player_current_money_text').css('font-size', '12px') //-55px $player.find('#player_current_money_text2').css('left', '-55px') $player.find('#player_skull').css('left', '0px') //'-55px' $player.find('#player_round_kills_text').css('left', '16px') //'-35px' $player.find('.player_section_top').css('width', '200px') $player.find('.player_section_top2').css('width', '70px') $player.find('.player_section_top3').css('width', '70px') $player.find('.player_section_bottom').css('width', '200px') $player.find('.player_section_bottom2').css('width', '30px') $player.find('.player_section_bottom3').css('width', '30px') } else if (side.substr(8) == 'right') { $player.find('#player_alias_text').css('right', '0px') //-35 $player.find('#DMG_round_text2').css('right', '0px') //-35 $player.find('#player_current_money_text').css('left', '-48px') //-55px $player.find('#player_current_money_text').css('top', '0px') //-55px $player.find('#player_current_money_text').css('font-size', '12px') //-55px $player.find('#player_current_money_text2').css('left', '-66px') //65 //'70px' $player.find('#player_skull').css('right', '82px') //'-55px' $player.find('#player_round_kills_text').css('right', '73px') //'-35px' $player.find('.player_section_top').css('width', '200px') $player.find('.player_section_top2').css('width', '70px') $player.find('.player_section_top3').css('width', '70px') $player.find('.player_section_bottom').css('width', '200px') $player.find('.player_section_bottom').css('left', '129.6px') $player.find('.player_section_bottom2').css('width', '30px') $player.find('.player_section_bottom2').css('left', '129.6px') $player.find('.player_section_bottom3').css('width', '30px') $player.find('.player_section_bottom3').css('left', '0px') } } else { $bottom.find('#player_bomb_kit_image').css('opacity', 1) $bottom2.find('#player_bomb_kit_image2').css('opacity', 1) $bottom2.find('#player_bomb_kit_bg').css('opacity', 1) $bottom2.find('#player_bomb_kit_bg2').css('opacity', 1) $bottom2.find('#player_bomb_kit2').css('opacity', 1) $bottom2.find('#player_bomb_kit_image3').css('opacity', 1) $bottom3.find('#player_bomb_kit4').css('opacity', 1) $bottom3.find('#player_bomb_kit_image3').css('opacity', 1) /*$bottom3.find('.player_bomb_kit_image3_fon').css('opacity', 1)*/ $bottom3.find('#player_kit2').css('opacity', 1) $bottom3.find('#player_bomb_kit_bg2').css('opacity', 1) $bottom.find('#player_armor_image').css('opacity', 1) $bottom2.find('#player_armor_image2').css('opacity', 1) $bottom3.find('#player_armor_image3').css('opacity', 1) $top.find('#player_health_text').css('opacity', 1) $top2.find('#player_health_text2').css('opacity', 1) $top3.find('#player_health_text3').css('opacity', 1) $top.find('#player_health_img').css('opacity', 1) $player.find('.player_dead').css('opacity', 0) if (side.substr(8) == 'left') { $player.find('#player_alias_text').css('left', '0px') $player.find('#player_current_money_text').css('left', '1px') $player.find('#player_current_money_text').css('top', '0px') //-55px $player.find('#player_current_money_text').css('font-size', '15px') //-55px $player.find('#player_current_money_text2').css('left', '1px') $player.find('#player_skull').css('left', '0px') $player.find('#player_round_kills_text').css('left', '16px') } else if (side.substr(8) == 'right') { $player.find('#player_alias_text').css('right', '0px') $player.find('#player_current_money_text').css('left', '7px') $player.find('#player_current_money_text').css('top', '0px') //-55px $player.find('#player_current_money_text').css('font-size', '15px') //-55px $player.find('#player_current_money_text2').css('left', '7px') $player.find('#player_skull').css('right', '82px') $player.find('#player_round_kills_text').css('right', '73px') //$player.find('.player_section_bottom').css('width', '200px') $player.find('.player_section_bottom').css('left', '5px') $player.find('.player_section_bottom2').css('left', '5px') $player.find('.player_section_bottom3').css('left', '0px') } } if (stats.burning > 0 && !dead) { $player.find('.burning').css('display', 'block') $player.find('#burning_level').addClass('burnt') $player.find('#burning_level').css('opacity', stats.burning / 255) } else { $player.find('#burning_level').removeClass('burnt') $player.find('.burning').css('display', 'none') } if (stats.flashed > 0 && !dead) { $player.find('.flashed').css('display', 'block') $player.find('#flashed_level').addClass('blind') $player.find('#flashed_level').css('opacity', stats.flashed / 255) } else { $player.find('#flashed_level').removeClass('blind') $player.find('.flashed').css('display', 'none') } if (slot == obs_slot) { $player .find('#player_spec_bar') //.css('background-color', side_color) .css('opacity', 1) } else { $player.find('#player_spec_bar').css('opacity', 0) } if (slot == obs_slot) { $player .find('#player_spec_bar2') //.css('background-color', side_color) .css('opacity', 1) } else { $player.find('#player_spec_bar2').css('opacity', 0) } if (slot == obs_slot) { $player .find('#player_spec_bar_bg') //.css('background-color', side_color) .css('opacity', 1) } else { $player.find('#player_spec_bar_bg').css('opacity', 0) } if (slot == obs_slot) { $player .find('#player_spec_bar_bg2') //.css('background-color', side_color) .css('opacity', 1) } else { $player.find('#player_spec_bar_bg2').css('opacity', 0) } //let desired = "linear-gradient(to " + side.substr(8) + ", " + health_color + ", " + alt_health_color + ")"; // ! gradient_double works in browser but not on the overlay let gradient_double = 'linear-gradient(to ' + side.substr(8) + ', rgba(0,0,0,0) ' + (100 - stats.health) + '%, ' + alt_health_color + ' ' + (100 - stats.health) + '%)' // ! gradient_single works in browser and on the overlay //let gradient_single = "linear-gradient(to " + side.substr(8) + ", rgba(0,0,0,0) " + (100 - stats.health) + "%, " + alt_health_color + " " + (100 - stats.health) + "%)"; $top.find('.player_health_bar').css('background', gradient_double) $top.find('#player_health_text').text(stats.health) $top2.find('#player_health_text2').text(stats.health) $top3.find('#player_health_text3').text(stats.health) $top.find('#player_health_img').removeClass() if (stats.health < 40) { $top.find('#player_health_img').addClass('health_' + team) } else if (stats.health > 40) { $top.find('#player_health_img').addClass('health_full_' + team) } let armor_icon = $bottom.find('#player_armor_image') armor_icon.removeClass() if (stats.helmet) { if (stats.armor == 0) { armor_icon.addClass('armor_none_default') } else if (stats.armor <= 50) { armor_icon.addClass('armor_half_helm_default') } else if (stats.armor <= 100) { armor_icon.addClass('armor_helm_default') } } else { if (stats.armor == 0) { armor_icon.addClass('armor_none_default') } else if (stats.armor <= 50) { armor_icon.addClass('armor_half_default') } else if (stats.armor <= 100) { armor_icon.addClass('armor_kev_default') } } let armor_icon2 = $bottom2.find('#player_armor_image2') armor_icon2.removeClass() if (stats.helmet) { if (stats.armor == 0) { armor_icon2.addClass('armor_none_default') } else if (stats.armor <= 50) { armor_icon2.addClass('armor_half_helm_default') } else if (stats.armor <= 100) { armor_icon2.addClass('armor_helm_default') } } else { if (stats.armor == 0) { armor_icon2.addClass('armor_none_default') } else if (stats.armor <= 50) { armor_icon2.addClass('armor_half_helm_default') } else if (stats.armor <= 100) { armor_icon2.addClass('armor_kev_default') } } let armor_icon3 = $bottom3.find('#player_armor_image3') armor_icon3.removeClass() if (stats.helmet) { if (stats.armor == 0) { armor_icon3.addClass('armor_none_default') } else if (stats.armor <= 50) { armor_icon3.addClass('armor_half_helm_default') } else if (stats.armor <= 100) { armor_icon3.addClass('armor_helm_default') } } else { if (stats.armor == 0) { armor_icon3.addClass('armor_none_default') } else if (stats.armor <= 50) { armor_icon3.addClass('armor_half_helm_default') } else if (stats.armor <= 100) { armor_icon3.addClass('armor_kev_default') } } $bottom.find('#player_bomb_kit_image').removeClass() if (stats.defusekit) { $bottom.find('#player_bomb_kit_image').addClass('player_kit') } $bottom .find('#player_current_money_text') .css('color', dead ? COLOR_WHITE_HALF : '#a7d32e') $bottom.find('#player_current_money_text').text('$' + stats.money) if (!start_money[steamid]) { start_money[steamid] = stats.money; } $kda_money.find("#player_spent_text").text("-$" + (start_money[steamid] - stats.money)); $bottom2.find('#player_bomb_kit_image2').removeClass() if (stats.defusekit) { $bottom2.find('#player_bomb_kit_image2').addClass('player_kit2') } $bottom2.find('#player_bomb_kit_bg').removeClass() if (stats.defusekit) { $bottom2.find('#player_bomb_kit_bg') .addClass('player_kit') } $bottom3.find('#player_bomb_kit_image2').removeClass() if (stats.defusekit) { $bottom3.find('#player_bomb_kit_image2').addClass('player_kit2') } $bottom3.find('#player_bomb_kit_bg').removeClass() if (stats.defusekit) { $bottom3.find('#player_bomb_kit_bg') .addClass('player_kit') } // отображение бомбы справа и слева у терров очиска фона // $bottom2.find('#player_bomb_kit_image3').removeClass() $bottom3.find('#player_bomb_kit_image3').removeClass() $bottom2.find('#player_bomb_kit_bg2').removeClass() $bottom3.find('#player_bomb_kit_bg2').removeClass() // отображение бомбы справа и слева у терров очиска фона // $bottom3.find('#player_bomb_kit3').removeClass() if (stats.defusekit) { $bottom3.find('#player_bomb_kit3').addClass('player_bomb_kit4') } $kda_money4.find("#player_spent_text2").text("$" + (start_money[steamid] - stats.money)); $kda_money5.find("#player_spent_text3").text("$" + (start_money[steamid] - stats.money)); /*$bottom .find('#player_current_money_text2') .css('color', dead ? COLOR_WHITE_HALF : '#a7d32e') $bottom.find('#player_current_money_text2').text('$' + stats.money)*/ $bottom.find('#player_skull').removeClass() $bottom.find('#player_round_kills_text').text('') $bottom.find('#player_round_kills_text2').text('') if (stats.round_kills > 0) { $bottom.find('#player_skull').addClass('player_skull_default') $bottom.find('#player_round_kills_text').text(stats.round_kills) $bottom.find('#player_round_kills_text2').text(stats.round_kills) } $top.find('#player_weapon_primary_img').attr('src', '').removeClass() $bottom.find('#player_weapon_secondary_img').attr('src', '').removeClass() $bottom.find('#player_nade1').removeClass() $bottom.find('#player_nade2').removeClass() $bottom.find('#player_nade3').removeClass() $bottom.find('#player_nade4').removeClass() let grenades = [] for (let key in weapons) { let weapon = weapons[key] let name = weapon.name.replace('weapon_', '') let state = weapon.state let view = '' let type = weapon.type if (type != 'C4' && type != 'Knife') { view += state == 'active' ? 'checked' : 'holstered' if (type == 'Grenade') { for (let x = 0; x < weapon.ammo_reserve; x++) { let nade = { weapon: weapon.name.substr(7), state: view, } grenades.push(nade) } } else if (type) { view += side.substr(8) == 'right' ? ' img-hor' : '' if (type == 'Pistol') { $bottom .find('#player_weapon_secondary_img') .attr('src', '/files/img/weapons/' + name + '.png') .addClass('invert') .addClass(view) } else { $top .find('#player_weapon_primary_img') .attr('src', '/files/img/weapons/' + name + '.png') .addClass('invert') .addClass(view) } } } if (type == 'C4') { view = weapon.state == 'active' ? 'player_bomb_selected' : 'player_bomb' $bottom.find('#player_bomb_kit_image').addClass(view) } //отображение бомбы слева // if (type == 'C4') { view = weapon.state == 'active' ? 'player_bomb_selected2' : 'player_bomb2' $bottom2.find('#player_bomb_kit_image3').addClass(view) } if (type == 'C4') { view = weapon.state == 'active' ? 'player_bomb_selected2' : 'player_bomb_kit_image3_fon' //.player_bomb_kit_image3_fon $bottom2.find('#player_bomb_kit_bg2').addClass(view) } //отображение бомбы слева // //отображение бомбы справа // if (type == 'C4') { view = weapon.state == 'active' ? 'player_bomb_selected2' : 'player_bomb2' $bottom3.find('#player_bomb_kit_image3').addClass(view) } if (type == 'C4') { view = weapon.state == 'active' ? 'player_bomb_selected2' : 'player_bomb_kit_image3_fon' //.player_bomb_kit_image3_fon $bottom3.find('#player_bomb_kit_bg2').addClass(view) } //отображение бомбы справа // if (!checkGuns(weapons)) { view += side.substr(8) == 'right' ? ' img-hor' : '' $top .find('#player_weapon_primary_img') .attr('src', '/files/img/weapons/' + name + '.png') .addClass('invert') .addClass(view) } } if (team == 'ct') { if (teams.left.side == 'ct') { grenades = grenades.reverse() } } else if (team == 't') { if (teams.left.side == 't') { grenades = grenades.reverse() } } for (let x = 0; x < grenades.length; x++) { $bottom .find('#player_nade' + (x + 1)) .addClass('player_nade_' + grenades[x].weapon) $bottom.find('#player_nade' + (x + 1)).addClass(grenades[x].state) } } function removeRoundTimeGraphics() { $('#round_timer_text').removeClass('bomb_active') $('#round_timer_text').removeClass('bomb_exploded') $('#round_timer_text').removeClass('bomb_defused') $('#round_timer_text').removeClass('pause_active') $('#round_timer_text').removeClass('pause_active_T') $('#round_timer_text').removeClass('pause_active_CT') $('#round_timer_text').removeClass('players_eliminated_T') $('#round_timer_text').removeClass('players_eliminated_CT') $('#round_timer_text').removeClass('round_time_reached') $('#round_timer_text').removeClass('round_warmup') } //оригинальный таймер бомбы и разминирование var isDefusing = false var bomb_time, bomb_timer, bomb_timer_css, bomb_container_css bomb_time = 0 function bomb(time) { if (Math.pow(time - bomb_time, 2) > 1) { clearInterval(bomb_timer) bomb_time = parseFloat(time) if (bomb_time > 0) { bomb_timer = setInterval(function () { bomb_container_css = { display: "block" } bomb_timer_css = { opacity: 1, width: (bomb_time * 100) / 40 + '%', } if (teams.right.side == 't') { $('#timers #bomb_bar').css(bomb_timer_css) $("#right_container").css(bomb_container_css); $("#right_bar").css(bomb_timer_css); $("#right_bar").css("float", "right") } else { $('#timers2 #bomb_bar2').css(bomb_timer_css) $("#left_container").css(bomb_container_css); $("#left_bar").css(bomb_timer_css); $("#left_bar").css("float", "left") $('#bomb_bar2').css("float", "right") } bomb_time = bomb_time - 0.01 }, 10) } else { clearInterval(bomb_timer) } } } // не оригинальный таймер и разминирование function resetBomb() { clearInterval(bomb_timer) if(teams.right.side == "t"){ $("#right_container").css("display", "none"); $("#left_container").css("display", "none"); $("#left_background").removeClass(); $("#left_bar").removeClass(); $('#left_img').removeClass(); $("#right_bar").css("display", "none"); $("#defuse_bar").css("display", "none"); } else{ $("#right_container").css("display", "none"); $("#left_container").css("display", "none"); $("#left_background").removeClass(); $("#right_background").removeClass(); $("#right_bar").removeClass(); $('#right_img').removeClass(); $("#right_bar").css("display", "none"); $("#defuse_bar2").css("display", "none"); } } /* // не оригинальный таймер и разминирование var isDefusing = false var bomb_time, bomb_timer, bomb_timer_css, bomb_container_css bomb_time = 0 function bomb(time) { if (Math.pow(time - bomb_time, 2) > 1) { clearInterval(bomb_timer) bomb_time = parseFloat(time) if (bomb_time > 0) { bomb_timer = setInterval(function () { bomb_container_css = { display: 'block', } bomb_timer_css = { display: 'block', width: (bomb_time * 90) / 40 + '%', } if (teams.right.side == 't') { $('#right_container').css(bomb_container_css) $('#right_bar').css(bomb_timer_css) $('#right_bar').css('float', 'right') } else { $('#left_container').css(bomb_container_css) $('#left_bar').css(bomb_timer_css) $('#left_bar').css('float', 'left') } bomb_time = bomb_time - 0.01 }, 10) } else { clearInterval(bomb_timer) } } } function resetBomb() { clearInterval(bomb_timer) if (teams.right.side == 't') { $('#right_container').css('display', 'none') $('#right_bar').css('display', 'none') } else { $('#left_container').css('display', 'none') $('#left_bar').css('display', 'none') } } */ function executeAnim(element, animationNameIn, length, animationNameOut) { $(element).css('opacity', 1) $(element).addClass('animated') $(element).addClass(animationNameIn) var wait = setTimeout(function () { $(element).removeClass(animationNameIn) $(element).addClass(animationNameOut) }, length) $(element).removeClass(animationNameOut) } function animateElement(element, animationName, callback) { const node = document.querySelector(element) node.classList.add('animated', animationName) function handleAnimationEnd() { node.removeEventListener('animationend', handleAnimationEnd) if (typeof callback === 'function') callback() } node.addEventListener('animationend', handleAnimationEnd) } function showAlert(side, color, text) { $(side + ' #alert #pole_1').css('background-color', color) $(side + ' #alert #pole_2').css('background-color', color) $(side + ' #alert #alert_text') .text(text) .css('color', color) $(side + ' #alert') .css('opacity', 1) .addClass('animated fadeInUp') } //регулировка слайдера об победители function showAlertSlide(side, color, text) { $(side + ' #alert #pole_1').css('background-color', color) $(side + ' #alert #pole_2').css('background-color', color) $(side + ' #alert #alert_text') .text(text) .css('color', color) if (side == '#left_team') { $(side + ' #alert') .css('opacity', 1) .addClass('animated fadeInRight') } else if (side == '#right_team') { $(side + ' #alert') .css('opacity', 1) .addClass('animated fadeInLeft') } } /* опускание слайдера по timeout */ /* function hideAlert(side) { let element = side + ' #alert' $(element).removeClass('animated fadeInUp') animateElement(element, 'fadeOutDown', function () { $(element).css('opacity', 0).removeClass('animated fadeOutDown') }) }*/ function hideAlertSlide(side) { let element = side + ' #alert' if (side == '#left_team') { $(element).removeClass('animated fadeInRight') } else if (side == '#right_team') { $(element).removeClass('animated fadeInLeft') } if (side == '#left_team') { anim = 'fadeOutRight' } else if (side == '#right_team') { anim = 'fadeOutLeft' } animateElement(element, anim, function () { $(element) .css('opacity', 0) .removeClass('animated') .removeClass(side == '#left_team' ? 'fadeOutRight' : 'fadeOutLeft') }) } function showMiddleAlert(pole_left_color, pole_right_color, text, text_color) { $('#alert_middle #alert_text_middle #pole_1_middle_img').css( 'background-image', 'url(/files/img/elements/bomb2.png)' ) $('#alert_middle #pole_1_middle').css('background-color', pole_left_color) $('#alert_middle #pole_2_middle').css('background-color', pole_right_color) $('#alert_middle #alert_text_middle #alert_text_middle_2') .text(text) .css('color', text_color) executeAnim('#alert_middle', 'fadeInUp', 3000, 'fadeOut') /*executeAnim('#pause', 'fadeInUp', 3000, 'fadeOut')*/ } function forceRemoveAlerts() { if ($('#left_team #alert').css('opacity') == 1) { $('#left_team #alert').css('opacity', 0).removeClass() } if ($('#right_team #alert').css('opacity') == 1) { $('#right_team #alert').css('opacity', 0).removeClass() } if ($('#alert_middle').css('opacity') == 1) { $('#alert_middle').css('opacity', 0).removeClass() } if ($('#pause').css('opacity') == 1) { $('#pause').css('opacity', 0).removeClass() } } function animateRoundTimer(_class, remove_graphics) { $('#round_timer_text') .css('animation-duration', '0.25s') .css('animation-iteration-count', '1') animateElement('#round_timer_text', 'fadeOut', function () { $('#round_timer_text').removeClass('animated fadeOut') if (remove_graphics) removeRoundTimeGraphics() $('#round_timer_text').text('').addClass(_class) animateElement('#round_timer_text', 'fadeIn', function () { $('#round_timer_text').removeClass('animated fadeIn') }) }) } function checkAliveTerrorists(players) { for (i = 0; i < players.length; i++) { if (players[i].state.health > 0) { return true } } return false } function checkAlivePlayers(players) { var j = 0 for (i = 0; i < players.length; i++) { if (players[i].state.health > 0) { j = j + 1 } } return j } function checkPrev(previously, state) { if (previously.hasOwnProperty('phase_countdowns')) { if ( previously.phase_countdowns.hasOwnProperty('phase') && previously.phase_countdowns.phase == state ) { return true } } return false } function hidePlayerStats(phase, previously) { if (phase.phase == 'live') { if (previously.hasOwnProperty('phase_countdowns')) { if (previously.phase_countdowns.hasOwnProperty('phase_ends_in')) { if ( previously.phase_countdowns.phase_ends_in >= 110 && phase.phase_ends_in <= 109.9 ) { for (let x = 1; x <= 5; x++) { animateElement( '#players_left #player_section #player' + x + ' .player_stats_holder', 'fadeOutLeft', function () { $( '#players_left #player_section #player' + x + ' .player_stats_holder' ) .css('opacity', 0) .removeClass('animated fadeOutLeft') } ) animateElement( '#players_right #player_section #player' + x + ' .player_stats_holder', 'fadeOutRight', function () { $( '#players_right #player_section #player' + x + ' .player_stats_holder' ) .css('opacity', 0) .removeClass('animated fadeOutRight') } ) } } else if (phase.phase_ends_in <= 109) { for (let x = 1; x <= 5; x++) { if ( $( '#players_left #player_section #player' + x + ' .player_stats_holder' ).css('opacity') !== 0 ) $( '#players_left #player_section #player' + x + ' .player_stats_holder' ).css('opacity', 0) if ( $( '#players_right #player_section #player' + x + ' .player_stats_holder' ).css('opacity') !== 0 ) $( '#players_right #player_section #player' + x + ' .player_stats_holder' ).css('opacity', 0) } } } } } } function showPlayerStats(phase) { if (phase.phase == 'freezetime') { for (let x = 1; x <= 5; x++) { if ( $( '#players_left #player_section #player' + x + ' .player_stats_holder' ).css('opacity') == 0 ) { $( '#players_left #player_section #player' + x + ' .player_stats_holder' ).css('opacity', 1) animateElement( '#players_left #player_section #player' + x + ' .player_stats_holder', 'fadeInLeft', function () { $( '#players_left #player_section #player' + x + ' .player_stats_holder' ).removeClass('animated fadeInLeft') } ) } if ( $( '#players_right #player_section #player' + x + ' .player_stats_holder' ).css('opacity') == 0 ) { $( '#players_right #player_section #player' + x + ' .player_stats_holder' ).css('opacity', 1) animateElement( '#players_right #player_section #player' + x + ' .player_stats_holder', 'fadeInRight', function () { $( '#players_right #player_section #player' + x + ' .player_stats_holder' ).removeClass('animated fadeInRight') } ) } } } } function checkGuns(weapons) { for (let key in weapons) { if ( weapons[key].type == 'Pistol' || weapons[key].type == 'Rifle' || weapons[key].type == 'SniperRifle' || weapons[key].type == 'Submachine Gun' ) { return true } } return false } function updateTeamValues(left, right) { let left_color = left.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T let right_color = right.side == 'ct' ? COLOR_NEW_CT : COLOR_NEW_T $('#players_left #money_text').css('color', left_color) $('#players_left #money_value').text('$' + left.team_money) $('#players_right #money_text').css('color', right_color) $('#players_right #money_value').text('$' + right.team_money) $('#players_left #equip_text').css('color', left_color) $('#players_left #equip_value').text('$' + left.equip_value) $('#players_right #equip_text').css('color', right_color) $('#players_right #equip_value').text('$' + right.equip_value) $('#players_left .loss_1').css('background-color', COLOR_WHITE_DULL) $('#players_left .loss_2').css('background-color', COLOR_WHITE_DULL) $('#players_left .loss_3').css('background-color', COLOR_WHITE_DULL) $('#players_left .loss_4').css('background-color', COLOR_WHITE_DULL) $('.loss_1_left').css('background-color', COLOR_WHITE_DULL) $('.loss_2_left').css('background-color', COLOR_WHITE_DULL) $('.loss_3_left').css('background-color', COLOR_WHITE_DULL) $('.loss_4_left').css('background-color', COLOR_WHITE_DULL) $('#players_right .loss_1').css('background-color', COLOR_WHITE_DULL) $('#players_right .loss_2').css('background-color', COLOR_WHITE_DULL) $('#players_right .loss_3').css('background-color', COLOR_WHITE_DULL) $('#players_right .loss_4').css('background-color', COLOR_WHITE_DULL) $('.loss_1_right').css('background-color', COLOR_WHITE_DULL) $('.loss_2_right').css('background-color', COLOR_WHITE_DULL) $('.loss_3_right').css('background-color', COLOR_WHITE_DULL) $('.loss_4_right').css('background-color', COLOR_WHITE_DULL) if (left.consecutive_round_losses == 0) { left_loss = 1400 } else if (left.consecutive_round_losses == 1) { left_loss = 1900 $('#players_left .loss_1').css('background-color', left_color) $('.loss_1_left').css('background-color', left_color) } else if (left.consecutive_round_losses == 2) { left_loss = 2400 $('#players_left .loss_1').css('background-color', left_color) $('#players_left .loss_2').css('background-color', left_color) $('.loss_1_left').css('background-color', left_color) $('.loss_2_left').css('background-color', left_color) } else if (left.consecutive_round_losses == 3) { left_loss = 2900 $('#players_left .loss_1').css('background-color', left_color) $('#players_left .loss_2').css('background-color', left_color) $('#players_left .loss_3').css('background-color', left_color) $('.loss_1_left').css('background-color', left_color) $('.loss_2_left').css('background-color', left_color) $('.loss_3_left').css('background-color', left_color) } else if (left.consecutive_round_losses >= 4) { left_loss = 3400 $('#players_left .loss_1').css('background-color', left_color) $('#players_left .loss_2').css('background-color', left_color) $('#players_left .loss_3').css('background-color', left_color) $('#players_left .loss_4').css('background-color', left_color) $('.loss_1_left').css('background-color', left_color) $('.loss_2_left').css('background-color', left_color) $('.loss_3_left').css('background-color', left_color) $('.loss_4_left').css('background-color', left_color) } if (right.consecutive_round_losses == 0) { right_loss = 1400 } else if (right.consecutive_round_losses == 1) { right_loss = 1900 $('#players_right .loss_1').css('background-color', right_color) $('.loss_1_right').css('background-color', right_color) } else if (right.consecutive_round_losses == 2) { right_loss = 2400 $('#players_right .loss_1').css('background-color', right_color) $('#players_right .loss_2').css('background-color', right_color) $('.loss_1_right').css('background-color', right_color) $('.loss_2_right').css('background-color', right_color) } else if (right.consecutive_round_losses == 3) { right_loss = 2900 $('#players_right .loss_1').css('background-color', right_color) $('#players_right .loss_2').css('background-color', right_color) $('#players_right .loss_3').css('background-color', right_color) $('.loss_1_right').css('background-color', right_color) $('.loss_2_right').css('background-color', right_color) $('.loss_3_right').css('background-color', right_color) } else if (right.consecutive_round_losses >= 4) { right_loss = 3400 $('#players_right .loss_1').css('background-color', right_color) $('#players_right .loss_2').css('background-color', right_color) $('#players_right .loss_3').css('background-color', right_color) $('#players_right .loss_4').css('background-color', right_color) $('.loss_1_right').css('background-color', right_color) $('.loss_2_right').css('background-color', right_color) $('.loss_3_right').css('background-color', right_color) $('.loss_4_right').css('background-color', right_color) } $('#players_left #loss_text').css('color', left_color) $('#players_left #loss_value').text('$' + left_loss) $('#loss_value_left').css('color', left_color) $('#loss_value_left').text('$' + left_loss) $('#players_right #loss_text').css('color', right_color) $('#players_right #loss_value').text('$' + right_loss) $('#loss_value_right').css('color', right_color) $('#loss_value_right').text('$' + right_loss) } function countNades(left, right) { var count_left_smokegrenade = 0, count_left_incgrenade = 0, count_left_molotov = 0, count_left_flashbang = 0, count_left_hegrenade = 0 var count_right_smokegrenade = 0, count_right_incgrenade = 0, count_right_molotov = 0, count_right_flashbang = 0, count_right_hegrenade = 0 let side_left = left.side.toUpperCase() let side_right = right.side.toUpperCase() for (let key in left.players) { let player = left.players[key] let weapons = player.getWeapons() for (let key2 in weapons) { let weapon = weapons[key2] let name = weapon.name.replace('weapon_', '') let type = weapon.type if (type == 'Grenade') { switch (name) { case 'smokegrenade': count_left_smokegrenade += 1 break case 'incgrenade': count_left_incgrenade += 1 break case 'molotov': count_left_molotov += 1 break case 'flashbang': count_left_flashbang += 1 break case 'hegrenade': count_left_hegrenade += 1 break } } } } for (let key in right.players) { let player = right.players[key] let weapons = player.getWeapons() for (let key2 in weapons) { let weapon = weapons[key2] let name = weapon.name.replace('weapon_', '') let type = weapon.type if (type == 'Grenade') { switch (name) { case 'smokegrenade': count_right_smokegrenade += weapon.ammo_reserve break case 'incgrenade': count_right_incgrenade += weapon.ammo_reserve break case 'molotov': count_right_molotov += weapon.ammo_reserve break case 'flashbang': count_right_flashbang += weapon.ammo_reserve break case 'hegrenade': count_right_hegrenade += weapon.ammo_reserve break } } } } $('#players_left #util_nade_1').removeClass() $('#players_left #util_nade_2').removeClass() $('#players_left #util_nade_3').removeClass() $('#players_left #util_nade_4').removeClass() $('#players_right #util_nade_1').removeClass() $('#players_right #util_nade_2').removeClass() $('#players_right #util_nade_3').removeClass() $('#players_right #util_nade_4').removeClass() let total_left = count_left_smokegrenade + count_left_incgrenade + count_left_molotov + count_left_flashbang + count_left_hegrenade let total_right = count_right_smokegrenade + count_right_incgrenade + count_right_molotov + count_right_flashbang + count_right_hegrenade if (total_left == 0) { $('#players_left #box_heading_subtext') .text(' - None') .css('color', '#f21822') } else if (total_left <= 5) { $('#players_left #box_heading_subtext') .text(' - Poor') .css('color', '#f25618') } else if (total_left <= 9) { $('#players_left #box_heading_subtext') .text(' - Low') .css('color', '#f29318') } else if (total_left <= 14) { $('#players_left #box_heading_subtext') .text(' - Good') .css('color', '#8ef218') } else if (total_left >= 15) { $('#players_left #box_heading_subtext') .text(' - Great') .css('color', '#32f218') } else if (total_left == 20) { $('#players_left #box_heading_subtext') .text(' - Full') .css('color', '#22f222') } if (total_right == 0) { $('#players_right #box_heading_subtext') .text('- None') .css('color', '#f21822') } else if (total_right <= 5) { $('#players_right #box_heading_subtext') .text('- Poor') .css('color', '#f25618') } else if (total_right <= 9) { $('#players_right #box_heading_subtext') .text('- Low') .css('color', '#f29318') } else if (total_right <= 14) { $('#players_right #box_heading_subtext') .text('- Good') .css('color', '#8ef218') } else if (total_right >= 15) { $('#players_right #box_heading_subtext') .text('- Great') .css('color', '#32f218') } else if (total_right == 20) { $('#players_right #box_heading_subtext') .text('- Full') .css('color', '#22f222') } $('#players_left #box_heading_text').css( 'color', side_left == 'CT' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_right #box_heading_text').css( 'color', side_right == 'CT' ? COLOR_NEW_CT : COLOR_NEW_T ) $('#players_left #util_nade_1_count').text('x' + count_left_smokegrenade) $('#players_left #util_nade_1').addClass('util_smokegrenade_' + side_left) $('#players_left #util_nade_2_count').text( 'x' + (count_left_incgrenade + count_left_molotov) ) $('#players_left #util_nade_2').addClass( side_left == 'CT' ? 'util_incgrenade_CT' : 'util_molotov_T' ) $('#players_left #util_nade_3_count').text('x' + count_left_flashbang) $('#players_left #util_nade_3').addClass('util_flashbang_' + side_left) $('#players_left #util_nade_4_count').text('x' + count_left_hegrenade) $('#players_left #util_nade_4').addClass('util_hegrenade_' + side_left) $('#players_right #util_nade_4_count').text('x' + count_right_smokegrenade) $('#players_right #util_nade_4').addClass('util_smokegrenade_' + side_right) $('#players_right #util_nade_3_count').text( 'x' + (count_right_incgrenade + count_right_molotov) ) $('#players_right #util_nade_3').addClass( side_right == 'CT' ? 'util_incgrenade_CT' : 'util_molotov_T' ) $('#players_right #util_nade_2_count').text('x' + count_right_flashbang) $('#players_right #util_nade_2').addClass('util_flashbang_' + side_right) $('#players_right #util_nade_1_count').text('x' + count_right_hegrenade) $('#players_right #util_nade_1').addClass('util_hegrenade_' + side_right) } printed_player_data = true // Включите, чтобы получить SteamID игроков в игре, полезно для создания игроков в БД function printPlayerData(players) { if (!printed_player_data) { players_data = [] players.forEach(function (player) { data = { name: player.name, steamid: player.steamid, } players_data.push(data) }) console.log(players_data) printed_player_data = true } }