Wip..
[NgWiz.git] / game / index.htm
1 <!DOCTYPE html>
2 <html>
3
4 <head>
5     <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
6     <script src="/src/DstEng.js"></script>
7     <script src="/src/Wizznic.js"></script>
8 </head>
9
10 <body>
11     <center>
12         <br>
13         <canvas id="screen" style="cursor: none;">You need WebGL, get a proper browser</canvas>
14     </center>
15     <pre id="log"></pre>
16 </body>
17
18 <script>
19     var eng;
20
21     function inspectObj(obj, r) {
22         var out = '';
23
24         var len = Object.keys(obj).length;
25         var cur = 0;
26
27         for (key in obj) {
28             var val = obj[key];
29             var typ = typeof(val);
30
31             if (r > 0) {
32                 out += key + ':';
33             }
34             out += ' ';
35
36             if (Array.isArray(val)) {
37                 out += '[' + val.join() + ']';
38             } else if (typ === 'object') {
39
40
41                 if (r < 1) {
42                     out += '{' + inspectObj(val, ++r) + '}';
43                 } else {
44                     out += '{..}';
45                 }
46             } else if (typ === 'function') {
47                 out += '(function ' + val.name + ')';
48             } else if (typ === 'string' && r > 0) {
49                 out += '\'' + val + '\'';
50             } else {
51                 out += val;
52             }
53             if (++cur != len && r > 0) {
54                 out += ', ';
55             }
56         }
57
58         return (out);
59     }
60
61     function log() {
62         $('#log').append(inspectObj(arguments, 0) + '<br>');
63
64     }
65
66     var exampleSocket = new WebSocket("ws://localhost:3000/");
67     exampleSocket.onopen = function(event) {
68         exampleSocket.send("new connection");
69     };
70
71     function reload() {
72         log('Reloading in 500 ms...');
73         setTimeout(function() {
74             location.reload();
75         }, 500);
76     }
77     exampleSocket.onclose = function(event) {
78         log('Socket closed.');
79      /*   if (status) {
80             eng.stop(reload);
81         } else {
82             reload();
83         }*/
84     };
85
86     function rdyCb(status) {
87
88         if (!status) {
89             log('Init went wrong:', new Error("trace"));
90         } else {
91             log('DstEng init Ok');
92             new Wizznic(eng);
93         }
94
95     }
96
97     var config = {
98         screen: document.getElementById('screen'),
99         width: 800,
100         height: 600,
101         readyCallback: rdyCb
102     };
103
104     DstEng.prototype.log = log;
105     eng = new DstEng(config);
106 </script>
107
108 </html>