Blame view

public/main.js 1.31 KB
ea5a9738   Geoffrey PREUD'HOMME   Scoreboard : coté...
1
2
3
  $(function() {
      var socket = io();
      var scores = [];
e704c732   Geoffrey PREUD'HOMME   Avancement web
4
      var list = $('#scores ol');
ea5a9738   Geoffrey PREUD'HOMME   Scoreboard : coté...
5
6
  
      socket.emit('getScores');
e704c732   Geoffrey PREUD'HOMME   Avancement web
7
  
ea5a9738   Geoffrey PREUD'HOMME   Scoreboard : coté...
8
9
10
11
12
      socket.on('scores', function(newScores) {
          scores = newScores;
          redrawScores();
      });
  
e704c732   Geoffrey PREUD'HOMME   Avancement web
13
14
15
16
17
18
19
20
      socket.on('newScore', function addScore(obj) {
          scores.push(obj);
          redrawScores();
      });
  
      socket.on('msg', function(msg) {
          $('#sub').text(msg);
      });
ea5a9738   Geoffrey PREUD'HOMME   Scoreboard : coté...
21
22
  
      function redrawScores() {
e704c732   Geoffrey PREUD'HOMME   Avancement web
23
24
          var sortable = [];
          scores.sort(function(b, a) {return a.score - b.score})
ba814e44   Geoffrey PREUD'HOMME   GUI revue
25
          var list = $('#scores ol');
ea5a9738   Geoffrey PREUD'HOMME   Scoreboard : coté...
26
          list.empty();
e704c732   Geoffrey PREUD'HOMME   Avancement web
27
          for (i in scores) {
ba814e44   Geoffrey PREUD'HOMME   GUI revue
28
29
30
31
              if (i < 15) {
                  var obj = scores[i];
                  list.append($('<li>').text(obj.score + ' - ' + obj.name));
              }
ea5a9738   Geoffrey PREUD'HOMME   Scoreboard : coté...
32
33
34
          }
      }
  
e704c732   Geoffrey PREUD'HOMME   Avancement web
35
36
37
      function rainbowColor(el) {
          var hue = Math.floor(Math.random()*360);
          el.css('filter', 'hue-rotate('+hue+'deg)');
ea5a9738   Geoffrey PREUD'HOMME   Scoreboard : coté...
38
39
      }
  
e704c732   Geoffrey PREUD'HOMME   Avancement web
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
      var logo = $('#logo');
  
      setInterval(function rainbowLogo() {
          rainbowColor(logo);
      }, 500);
  
      (function anim() {
          var now = Date.now()/1000;
  
          // Logo
          var scale = (Math.sin(now*5) + 1)/5 + 0.7;
          var rot = Math.sin(now*10)/10;
          logo.css('transform', 'rotate(' + rot + 'rad) scale(' + scale + ')');
          requestAnimationFrame(anim);
  
      })();
  
  
ea5a9738   Geoffrey PREUD'HOMME   Scoreboard : coté...
58
  });