forked from rse/huds-hud-training
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
103 lines (100 loc) · 5.37 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
<!DOCTYPE html>
<!--
/*
** HUDS ~~ Head-Up-Display Server (HUDS)
** Copyright (c) 2020-2021 Dr. Ralf S. Engelschall <[email protected]>
**
** Permission is hereby granted, free of charge, to any person obtaining
** a copy of this software and associated documentation files (the
** "Software"), to deal in the Software without restriction, including
** without limitation the rights to use, copy, modify, merge, publish,
** distribute, sublicense, and/or sell copies of the Software, and to
** permit persons to whom the Software is furnished to do so, subject to
** the following conditions:
**
** The above copyright notice and this permission notice shall be included
** in all copies or substantial portions of the Software.
**
** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
** EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
** MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
** IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
** CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
** TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
** SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
-->
<html>
<head>
<title>HUD</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" href="data:image/x-icon;base64,AAABAAEAAQEAAAEAGAAsAAAAFgAAACgAAAABAAAAAgAAAAEAGAAAAAAACAAAACgAAAAoAAAAAAAAAAAAAADwgEEAAAAAAA==">
<script type="text/javascript" src="huds"></script>
<script type="text/javascript" src="@vue/dist/vue.min.js"></script>
<script type="text/javascript" src="@http-vue-loader/src/httpVueLoader.js"></script>
<script type="text/javascript" src="@vue-resize/dist/vue-resize.min.js"></script>
<link rel="stylesheet" type="text/css" href="@vue-resize/dist/vue-resize.css">
<script type="text/javascript" src="@mousetrap/mousetrap.min.js"></script>
<script type="text/javascript" src="@animejs/lib/anime.min.js"></script>
<script type="text/javascript" src="@howler/dist/howler.min.js"></script>
<script>less = { env: "production", logLevel: 0 };</script>
<script type="text/javascript" src="@less/dist/less.min.js"></script>
<script type="text/javascript" src="@@svgdotjs/svg.js/dist/svg.min.js"></script>
<script type="text/javascript" src="@@svgdotjs/svg.filter.js/dist/svg.filter.min.js"></script>
<script type="text/javascript" src="@svg.path.js/svg.path.js"></script>
<script type="text/javascript" src="@svg.easing.js/dist/svg.easing.min.js"></script>
<script type="text/javascript" src="@svg.screenbbox.js/dist/svg.screenbbox.min.js"></script>
<link rel="stylesheet" type="text/css" href="@@fortawesome/fontawesome-free/css/all.min.css">
<script type="text/javascript" src="@@fortawesome/fontawesome-free/js/all.min.js"></script>
<link rel="stylesheet" type="text/css" href="@typopro-web/web/TypoPRO-FiraSans/TypoPRO-FiraSans.css">
<link rel="stylesheet" type="text/css" href="@typopro-web/web/TypoPRO-DejaVu/TypoPRO-DejaVu.css">
<script type="text/javascript" src="@hashtag-similarity/lib/hashtag-similarity.browser.js"></script>
<script type="text/javascript" src="@@rse/soundfx/soundfx.browser.js"></script>
<script type="text/javascript" src="@@rse/soundlp/soundlp.browser.js"></script>
<script type="text/javascript" src="@moment/min/moment.min.js"></script>
<script type="text/javascript" src="@canvas-confetti/dist/confetti.browser.js"></script>
</head>
<body>
<div id="index">
<index></index>
</div>
<style type="text/css">
html {
margin: 0;
padding: 0;
}
body {
margin: 0;
padding: 0;
width: 100vw;
height: 100vh;
position: relative;
}
</style>
<script>
/* initialize backend communication */
huds = new HUDS()
huds.on("open", () => { console.log("HUDS: WebSocket: open") })
huds.on("close", () => { console.log("HUDS: WebSocket: close") })
huds.on("error", (error) => { console.log("HUDS: WebSocket: error", error) })
huds.connect()
/* initialize sound effects */
let sfx = new SoundFX({ basedir: "@@rse/soundfx" })
soundfx = new Howl({ ...sfx.config(), volume: 0.20, preload: true })
/* initialize sound loops */
let slp = new SoundLP({ basedir: "@@rse/soundlp" })
soundlp = new Howl({ ...slp.config(), volume: 0.40, preload: true })
/* initialize user interface */
let vars = huds.config({ flat: true, sep: "-" })
for (const key of Object.keys(vars))
if (typeof vars[key] === "string")
vars[key] = vars[key].replace(/'/g, "\\'")
httpVueLoader.langProcessor.less = (lessText) =>
less.render(lessText, { globalVars: vars }).then((result) => result.css)
Vue.use(httpVueLoader)
Vue.use(VueResize)
vm = new Vue({ el: "#index", components: { "index": "url:index.vue" }})
</script>
</body>
</html>