|
@ -1,36 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Roller Derby Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="res/style.css">
|
||||
</head>
|
||||
<body>
|
||||
<h1>LADD Scoreboard</h1>
|
||||
|
||||
<p>
|
||||
Having problems? Try something other than Internet Explorer!
|
||||
Chrome and Firefox have both been tested extensively.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><a href="scoreboard.html">Normal layout</a>, or <a href="classic.html">with team names</a></li>
|
||||
<li><a href="crg.html">CRG-style layout</a>, or <a href="crg-nologo.html">CRG without logos</a></li>
|
||||
<li><a href="highvis.html">High-visibility</a></li>
|
||||
<li><a href="micro.html">Timers-only</a></li>
|
||||
<li>Flags: <a href="flag-us.html">USA</a> <a href="flag-ca.html">Canada</a> <a href="flag-mx.html">Mexico</a></li>
|
||||
</ul>
|
||||
|
||||
<h1>Documentation</h1>
|
||||
<ul>
|
||||
<li><a href="http://youtu.be/MXOzmmnHqXU">operation tutorial</a></li>
|
||||
<li><a href="http://youtu.be/lH1VZ2kFatY">installation tutorial</a></li>
|
||||
<li><a href="res/usage.html">Text documentation</a></li>
|
||||
</ul>
|
||||
|
||||
<address>
|
||||
Neale Pickett <<a href="mailto:neale@woozle.org">neale@woozle.org</a>>
|
||||
</address>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,2 @@
|
|||
* chrome.fileSystem.retainEntry?
|
||||
* use chrome.power to keep the display on
|
|
@ -0,0 +1,48 @@
|
|||
{
|
||||
"appName": {
|
||||
"message": "Woozle Roller Derby Scoreboard",
|
||||
"description": "Application name"
|
||||
},
|
||||
"appShortName": {
|
||||
"message": "Woozle Scoreboard",
|
||||
"description": "Short application name"
|
||||
},
|
||||
"appDesc": {
|
||||
"message": "Roller Derby Scoreboard for WFTDA, USARS, RDCL, MADE, and JRDA",
|
||||
"description": "Application description for app store listing"
|
||||
},
|
||||
|
||||
"period1": {
|
||||
"message": "Period 1",
|
||||
"description": "Name of first period"
|
||||
},
|
||||
"period2": {
|
||||
"message": "Period 2",
|
||||
"description": "Name of second period"
|
||||
},
|
||||
"halftime": {
|
||||
"message": "Halftime",
|
||||
"description": "The name of the break between periods"
|
||||
},
|
||||
"timeToGame": {
|
||||
"message": "To Derby",
|
||||
"description": "Text shown after countdown to start of game"
|
||||
},
|
||||
|
||||
"jam": {
|
||||
"message": "Jam",
|
||||
"description": "Time during the game when skaters are actively playing"
|
||||
},
|
||||
"lineup": {
|
||||
"message": "Lineup",
|
||||
"description": "Time between active play, when skaters are positioning themselves"
|
||||
},
|
||||
"timeout": {
|
||||
"message": "Timeout",
|
||||
"description": "Time when game is suspended: period clock stops counting down"
|
||||
},
|
||||
"setup": {
|
||||
"message": "Setup",
|
||||
"description": "Software state allowing logos and times to be adjusted"
|
||||
}
|
||||
}
|
100
classic.html
|
@ -1,100 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="res/scoreboard.css">
|
||||
<style type="text/css">
|
||||
#name-a, #name-b {
|
||||
font-family: PermanentMarker, monospace, sans-serif;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
font-size: 75%;
|
||||
}
|
||||
|
||||
#name-a {
|
||||
left: 0;
|
||||
}
|
||||
|
||||
#name-b {
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.logo {
|
||||
margin-top: 1em;
|
||||
max-height: 1.5em;
|
||||
}
|
||||
|
||||
#score-a, #score-b {
|
||||
position: absolute;
|
||||
font-size: 90%;
|
||||
top: auto;
|
||||
bottom: 0em;
|
||||
}
|
||||
|
||||
#jammer-a, #jammer-b {
|
||||
bottom: 1.5em;
|
||||
}
|
||||
#timeouts-a, #timeouts-b {
|
||||
bottom: 3em;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript" src="logos/logos.js"></script>
|
||||
<script type="text/javascript" src="res/scoreboard.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<!--
|
||||
HTML5 says not to use tables for layout. Since this is
|
||||
a highly-styled page, it looks awful without CSS. Sorry.
|
||||
-->
|
||||
<div id="scoreboard">
|
||||
<p class="left">
|
||||
<span class="name" id="name-a" onclick="handle(event);">Home</span>
|
||||
<img class="logo" src="" alt="A" id="logo-a" onclick="handle(event);">
|
||||
<span class="timeouts" id="timeouts-a" onclick="handle(event);">0</span>
|
||||
<span class="jammer" id="jammer-a" onclick="handle(event);">★</span>
|
||||
<span class="score" id="score-a" onclick="handle(event);">-</span>
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<span id="period" onclick="handle(event);">--:--</span>
|
||||
<span id="periodtext" onclick="handle(event);"></span>
|
||||
<span id="jam" onclick="handle(event);">-:--.-</span>
|
||||
<span id="jamtext" onclick="handle(event);"></span>
|
||||
<span id="jamno" onclick="handle(event);">0</span>
|
||||
</p>
|
||||
|
||||
<p class="right">
|
||||
<span class="name" id="name-b" onclick="handle(event);">Vis</span>
|
||||
<img class="logo" src="" alt="B" id="logo-b" onclick="handle(event);">
|
||||
<span class="timeouts" id="timeouts-b" onclick="handle(event);">0</span>
|
||||
<span class="jammer" id="jammer-b" onclick="handle(event);">★</span>
|
||||
<span class="score" id="score-b" onclick="handle(event);">-</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="notice">
|
||||
<div id="notice-1">Power Jam</div>
|
||||
<div id="notice-2">Grand Slam</div>
|
||||
<div id="notice-3">Ouch</div>
|
||||
<div id="notice-4">OMG</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
192
crg-nologo.html
|
@ -1,192 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<style type="text/css">
|
||||
html {
|
||||
height: 100%;
|
||||
background: #000000; /* Old browsers */
|
||||
background: -moz-linear-gradient(top, #000000 0%, #888888 100%); /* FF3.6+ */
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#000000), color-stop(100%,#888888)); /* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, #000000 0%,#888888 100%); /* Chrome10+,Safari5.1+ */
|
||||
background: -o-linear-gradient(top, #000000 0%,#888888 100%); /* Opera 11.10+ */
|
||||
background: -ms-linear-gradient(top, #000000 0%,#888888 100%); /* IE10+ */
|
||||
background: linear-gradient(to bottom, #000000 0%,#888888 100%); /* W3C */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#888888',GradientType=0 ); /* IE6-9 */
|
||||
|
||||
font-family: arial, "Numbus Sans L Bold", sans-serif;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.button {
|
||||
background: rgb(242,245,246); /* Old browsers */
|
||||
background: -moz-linear-gradient(top, rgba(242,245,246,1) 0%, rgba(227,234,237,1) 37%, rgba(200,215,220,1) 100%); /* FF3.6+ */
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(242,245,246,1)), color-stop(37%,rgba(227,234,237,1)), color-stop(100%,rgba(200,215,220,1))); /* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, rgba(242,245,246,1) 0%,rgba(227,234,237,1) 37%,rgba(200,215,220,1) 100%); /* Chrome10+,Safari5.1+ */
|
||||
background: -o-linear-gradient(top, rgba(242,245,246,1) 0%,rgba(227,234,237,1) 37%,rgba(200,215,220,1) 100%); /* Opera 11.10+ */
|
||||
background: -ms-linear-gradient(top, rgba(242,245,246,1) 0%,rgba(227,234,237,1) 37%,rgba(200,215,220,1) 100%); /* IE10+ */
|
||||
background: linear-gradient(to bottom, rgba(242,245,246,1) 0%,rgba(227,234,237,1) 37%,rgba(200,215,220,1) 100%); /* W3C */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f5f6', endColorstr='#c8d7dc',GradientType=0 ); /* IE6-9 */
|
||||
|
||||
border-radius: 0.3em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
#scoreboard *[id] {
|
||||
cursor: pointer;
|
||||
-moz-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
#team-a {
|
||||
position: absolute;
|
||||
left: 25%;
|
||||
width: 3em;
|
||||
margin-left: -1.5em;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
#team-b {
|
||||
position: absolute;
|
||||
right: 25%;
|
||||
width: 3em;
|
||||
margin-right: -1.5em;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
img, p {
|
||||
margin: 0.1em;
|
||||
}
|
||||
|
||||
.name {
|
||||
color: white;
|
||||
font-size: 50%;
|
||||
height: 4em;
|
||||
}
|
||||
|
||||
.score {
|
||||
position: relative;
|
||||
top: -0.3em;
|
||||
width: 2.2em;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
|
||||
#timeouts {
|
||||
font-size: 30%;
|
||||
position: absolute;
|
||||
top: 6.2em;
|
||||
left: 50%;
|
||||
width: 4.5em;
|
||||
margin-left: -2.25em;
|
||||
}
|
||||
|
||||
.label {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
.to {
|
||||
margin: 1em 0;
|
||||
width: 2em;
|
||||
}
|
||||
#timeouts-a {
|
||||
float: left;
|
||||
}
|
||||
#timeouts-b {
|
||||
float: right;
|
||||
}
|
||||
|
||||
#pcol {
|
||||
font-size: 66%;
|
||||
position: absolute;
|
||||
left: 25%;
|
||||
width: 5em;
|
||||
margin-left: -2.5em;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
.text {
|
||||
width: 6em;
|
||||
font-size: 50%;
|
||||
margin: 0.1em auto;
|
||||
}
|
||||
|
||||
.timer {
|
||||
width: 4em;
|
||||
margin: 0.1em auto;
|
||||
}
|
||||
|
||||
#jcol {
|
||||
font-size: 66%;
|
||||
position: absolute;
|
||||
right: 25%;
|
||||
width: 5em;
|
||||
margin-right: -2.5em;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
</style>
|
||||
<script type="text/javascript" src="res/scoreboard.js"></script>
|
||||
<script type="text/javascript">
|
||||
longnames = true;
|
||||
tenths = false;
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<!--
|
||||
HTML5 says not to use tables for layout. Since this is
|
||||
a highly-styled page, it looks awful without CSS. Sorry.
|
||||
-->
|
||||
<div id="scoreboard">
|
||||
<div id="team-a">
|
||||
<p class="name" id="name-a" onclick="handle(event);">Home</p>
|
||||
<p class="score button" id="score-a" onclick="handle(event);">-</p>
|
||||
</div>
|
||||
|
||||
<div id="timeouts">
|
||||
<p class="label button">Timeouts</p>
|
||||
<p class="to button" id="timeouts-a" onclick="handle(event);">0</p>
|
||||
<p class="to button" id="timeouts-b" onclick="handle(event);">0</p>
|
||||
</div>
|
||||
|
||||
<div id="team-b">
|
||||
<p class="name" id="name-b" onclick="handle(event);">Home</p>
|
||||
<p class="score button" id="score-b" onclick="handle(event);">-</p>
|
||||
</div>
|
||||
|
||||
<div id="pcol">
|
||||
<p class="text button" id="periodtext" onclick="handle(event);"></p>
|
||||
<p class="timer button"><span id="period" onclick="handle(event);">--:--</span></p>
|
||||
</div>
|
||||
|
||||
<div id="jcol">
|
||||
<p class="text button" id="jtxt">
|
||||
<span id="jamtext" onclick="handle(event);"></span>
|
||||
<span id="jamno" onclick="handle(event);">0</span>
|
||||
</p>
|
||||
<p class="timer button"><span id="jam" onclick="handle(event);">-:--</span></p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
199
crg.html
|
@ -1,199 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<style type="text/css">
|
||||
html {
|
||||
height: 100%;
|
||||
background: #000000; /* Old browsers */
|
||||
background: -moz-linear-gradient(top, #000000 0%, #888888 100%); /* FF3.6+ */
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#000000), color-stop(100%,#888888)); /* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, #000000 0%,#888888 100%); /* Chrome10+,Safari5.1+ */
|
||||
background: -o-linear-gradient(top, #000000 0%,#888888 100%); /* Opera 11.10+ */
|
||||
background: -ms-linear-gradient(top, #000000 0%,#888888 100%); /* IE10+ */
|
||||
background: linear-gradient(to bottom, #000000 0%,#888888 100%); /* W3C */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#000000', endColorstr='#888888',GradientType=0 ); /* IE6-9 */
|
||||
|
||||
font-family: arial, "Numbus Sans L Bold", sans-serif;
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.button {
|
||||
background: rgb(242,245,246); /* Old browsers */
|
||||
background: -moz-linear-gradient(top, rgba(242,245,246,1) 0%, rgba(227,234,237,1) 37%, rgba(200,215,220,1) 100%); /* FF3.6+ */
|
||||
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(242,245,246,1)), color-stop(37%,rgba(227,234,237,1)), color-stop(100%,rgba(200,215,220,1))); /* Chrome,Safari4+ */
|
||||
background: -webkit-linear-gradient(top, rgba(242,245,246,1) 0%,rgba(227,234,237,1) 37%,rgba(200,215,220,1) 100%); /* Chrome10+,Safari5.1+ */
|
||||
background: -o-linear-gradient(top, rgba(242,245,246,1) 0%,rgba(227,234,237,1) 37%,rgba(200,215,220,1) 100%); /* Opera 11.10+ */
|
||||
background: -ms-linear-gradient(top, rgba(242,245,246,1) 0%,rgba(227,234,237,1) 37%,rgba(200,215,220,1) 100%); /* IE10+ */
|
||||
background: linear-gradient(to bottom, rgba(242,245,246,1) 0%,rgba(227,234,237,1) 37%,rgba(200,215,220,1) 100%); /* W3C */
|
||||
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f2f5f6', endColorstr='#c8d7dc',GradientType=0 ); /* IE6-9 */
|
||||
|
||||
border-radius: 0.3em;
|
||||
color: black;
|
||||
}
|
||||
|
||||
#scoreboard *[id] {
|
||||
cursor: pointer;
|
||||
-moz-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
#team-a {
|
||||
position: absolute;
|
||||
left: 25%;
|
||||
width: 3em;
|
||||
margin-left: -1.5em;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
#team-b {
|
||||
position: absolute;
|
||||
right: 25%;
|
||||
width: 3em;
|
||||
margin-right: -1.5em;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
img, p {
|
||||
margin: 0.1em;
|
||||
}
|
||||
|
||||
.name {
|
||||
color: white;
|
||||
font-size: 30%;
|
||||
height: 2em;
|
||||
}
|
||||
|
||||
.logo {
|
||||
height: 1em;
|
||||
}
|
||||
|
||||
.score {
|
||||
position: relative;
|
||||
top: -0.3em;
|
||||
width: 2.2em;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
|
||||
#timeouts {
|
||||
font-size: 30%;
|
||||
position: absolute;
|
||||
top: 6.2em;
|
||||
left: 50%;
|
||||
width: 5em;
|
||||
margin-left: -2.5em;
|
||||
}
|
||||
|
||||
.label {
|
||||
font-size: 80%;
|
||||
}
|
||||
|
||||
.to {
|
||||
margin: 1em 0;
|
||||
width: 2em;
|
||||
}
|
||||
#timeouts-a {
|
||||
float: left;
|
||||
}
|
||||
#timeouts-b {
|
||||
float: right;
|
||||
}
|
||||
|
||||
#pcol {
|
||||
font-size: 66%;
|
||||
position: absolute;
|
||||
left: 25%;
|
||||
width: 5em;
|
||||
margin-left: -2.5em;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
.text {
|
||||
width: 6em;
|
||||
font-size: 50%;
|
||||
margin: 0.1em auto;
|
||||
}
|
||||
|
||||
.timer {
|
||||
width: 4em;
|
||||
margin: 0.1em auto;
|
||||
}
|
||||
|
||||
#jcol {
|
||||
font-size: 66%;
|
||||
position: absolute;
|
||||
right: 25%;
|
||||
width: 5em;
|
||||
margin-right: -2.5em;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
</style>
|
||||
<script type="text/javascript" src="logos/logos.js"></script>
|
||||
<script type="text/javascript" src="res/scoreboard.js"></script>
|
||||
<script type="text/javascript">
|
||||
longnames = true;
|
||||
tenths = false;
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<!--
|
||||
HTML5 says not to use tables for layout. Since this is
|
||||
a highly-styled page, it looks awful without CSS. Sorry.
|
||||
-->
|
||||
<div id="scoreboard">
|
||||
<div id="team-a">
|
||||
<p class="name" id="name-a" onclick="handle(event);">Home</p>
|
||||
<img class="logo" src="" alt="A" id="logo-a" onclick="handle(event);">
|
||||
<p class="score button" id="score-a" onclick="handle(event);">-</p>
|
||||
</div>
|
||||
|
||||
<div id="timeouts">
|
||||
<p class="label button">Timeouts</p>
|
||||
<p class="to button" id="timeouts-a" onclick="handle(event);">0</p>
|
||||
<p class="to button" id="timeouts-b" onclick="handle(event);">0</p>
|
||||
</div>
|
||||
|
||||
<div id="team-b">
|
||||
<p class="name" id="name-b" onclick="handle(event);">Home</p>
|
||||
<img class="logo" src="" alt="B" id="logo-b" onclick="handle(event);">
|
||||
<p class="score button" id="score-b" onclick="handle(event);">-</p>
|
||||
</div>
|
||||
|
||||
<div id="pcol">
|
||||
<p class="text button" id="periodtext" onclick="handle(event);"></p>
|
||||
<p class="timer button"><span id="period" onclick="handle(event);">--:--</span></p>
|
||||
</div>
|
||||
|
||||
<div id="jcol">
|
||||
<p class="text button" id="jtxt">
|
||||
<span id="jamtext" onclick="handle(event);"></span>
|
||||
<span id="jamno" onclick="handle(event);">0</span>
|
||||
</p>
|
||||
<p class="timer button"><span id="jam" onclick="handle(event);">-:--</span></p>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,4 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html style="background: black;"><head><title>flag</title></head>
|
||||
<body><img style="max-width: 100%; max-height: 100%;" src="res/Flag_of_Canada.svg" alt="Flag"></body>
|
||||
<html>
|
|
@ -1,4 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html style="background: black;"><head><title>flag</title></head>
|
||||
<body><img style="max-width: 100%; max-height: 100%;" src="res/Flag_of_Mexico.svg" alt="Flag"></body>
|
||||
<html>
|
|
@ -1,4 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html style="background: black;"><head><title>flag</title></head>
|
||||
<body><img style="max-width: 100%; max-height: 100%;" src="res/Flag_of_the_United_States.svg" alt="Flag"></body>
|
||||
<html>
|
99
highvis.html
|
@ -1,99 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="res/scoreboard.css">
|
||||
<style type="text/css">
|
||||
body {
|
||||
background: black;
|
||||
color: white;
|
||||
text-align: center;
|
||||
}
|
||||
#scoreboard {
|
||||
font-size: 1.4em;
|
||||
width: 100%;
|
||||
}
|
||||
#jam, #period, #score-a, #score-b, #jammer-a.lead, #jammer-b.lead {
|
||||
color: white;
|
||||
}
|
||||
#score-a, #score-b {
|
||||
position: absolute;
|
||||
top: 1.4em;
|
||||
}
|
||||
#jammer-a, #jammer-b {
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
}
|
||||
#jamtext {
|
||||
font-family: monospace;
|
||||
}
|
||||
#score-a, #jammer-a {
|
||||
left: 10px;
|
||||
}
|
||||
#score-b, #jammer-b {
|
||||
right: 10px;
|
||||
}
|
||||
html, p {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
#notice {
|
||||
position: absolute;
|
||||
top: 10px;
|
||||
left: 20%;
|
||||
width: 60%;
|
||||
background: white;
|
||||
color: black;
|
||||
font-family: sans-serif;
|
||||
font-weight: bold;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript" src="res/scoreboard.js"></script>
|
||||
<script type="text/javascript">
|
||||
window.onkeypress = key;
|
||||
jamtext = ["J", "L", "T", "Setup"];
|
||||
tenths = true;
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="scoreboard">
|
||||
<p>
|
||||
<span id="period" onclick="handle(event);">--:--</span>
|
||||
</p>
|
||||
<p>
|
||||
<span id="score-a" onclick="handle(event);">-</span>
|
||||
<span id="jammer-a" onclick="handle(event);">★</span>
|
||||
<span id="jamtext">-</span>
|
||||
<span id="jammer-b" onclick="handle(event);">★</span>
|
||||
<span id="score-b" onclick="handle(event);">-</span>
|
||||
</p>
|
||||
<p>
|
||||
<span id="jam" onclick="handle(event);">-:--.-</span>
|
||||
</p>
|
||||
<div id="notice">
|
||||
<div id="notice-1">Power Jam</div>
|
||||
<div id="notice-2">Grand Slam</div>
|
||||
<div id="notice-3">Ouch!</div>
|
||||
<div id="notice-4">OMG</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
152
index.html
|
@ -1,152 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Roller Derby Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="res/style.css">
|
||||
</head>
|
||||
<body>
|
||||
<h1>LADD Roller Derby Scoreboard</h1>
|
||||
|
||||
<p>
|
||||
This is a free WFTDA-rules scoreboard, created with ease-of-use
|
||||
in mind. It is known to work on PC, Mac, Android, iOS, or Linux, using any
|
||||
common web browser.
|
||||
</p>
|
||||
|
||||
<p id="screenshot">
|
||||
<img src="res/screenshot.png">
|
||||
<br>
|
||||
<a href="scoreboard.html">Try it right now</a>: click on things
|
||||
to make them change.
|
||||
</p>
|
||||
|
||||
<h1>Features</h1>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Free to use, share, and change (GPLv3)
|
||||
</li>
|
||||
<li>
|
||||
No Internet connection required
|
||||
</li>
|
||||
<li>
|
||||
Easy mouse-driven (with hotkeys) setup and operation
|
||||
</li>
|
||||
<li>
|
||||
No complicated installation procedure: just open a web page
|
||||
</li>
|
||||
<li>
|
||||
Looks <em>good</em>, with colors tuned for high-visibility
|
||||
on projectors
|
||||
</li>
|
||||
<li>
|
||||
Appearance can be customized in HTML and CSS; comes with
|
||||
several pre-written themes
|
||||
</li>
|
||||
<li>
|
||||
Runs on practically anything, including older computers,
|
||||
smartphones, and tablets
|
||||
</li>
|
||||
<li>
|
||||
Ships with <a href="logos/logos.html">an ever-expanding set of
|
||||
team logos</a>
|
||||
</li>
|
||||
<li>
|
||||
The <b>only</b> scoreboard conforming to 9.1.5.4, requiring
|
||||
<a href="penalties.html">penalty tracking</a>.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h1>Themes</h1>
|
||||
<ul>
|
||||
<li><a href="scoreboard.html">Normal layout</a> similar to most
|
||||
other roller derby scoreboards</li>
|
||||
<li><a href="crg.html">CRG-style layout</a>, or <a href="crg-nologo.html">CRG without logos</a></li>
|
||||
<li><a href="penalties.html">Penalty tracking</a> layout</li>
|
||||
<li><a href="highvis.html">High-visibility</a> for
|
||||
low-power projectors or outdoor bouts</li>
|
||||
<li><a href="micro.html">Timers-only</a> if you track
|
||||
scores some other way</li>
|
||||
<li><a href="flag.html">US Flag</a> in case you need it</li>
|
||||
<li>Build your own using only HTML5 and CSS</li>
|
||||
</ul>
|
||||
|
||||
<h1>Documentation</h1>
|
||||
<p>
|
||||
Watch a <a href="http://youtu.be/MXOzmmnHqXU">5-minute video
|
||||
tutorial</a> or read the
|
||||
<a href="res/usage.html">Full documentation</a> which comes bundled with the
|
||||
download.
|
||||
</p>
|
||||
|
||||
|
||||
<h1>Download</h1>
|
||||
<p>
|
||||
<a href="http://woozle.org/~neale/g.cgi/scoreboard/snapshot/scoreboard-5.2.zip">Download
|
||||
version 5.2</a> to your hard drive to run a scoreboard
|
||||
without Internet access (<strong>recommended</strong>:
|
||||
<a href="http://youtu.be/lH1VZ2kFatY">watch how</a>). This
|
||||
includes the documentation.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
If your scoreboard computer has an Internet connection, you don't
|
||||
need to download anything at all. Just load up
|
||||
the <a href="scoreboard.html">full-screen version</a> from this
|
||||
page and you're all set.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
You can
|
||||
also <a href="http://woozle.org/~neale/g.cgi/scoreboard">browse
|
||||
the source tree</a> or clone it with git:
|
||||
<pre>git clone http://woozle.org/~neale/projects/scoreboard</pre>
|
||||
</p>
|
||||
|
||||
<h1>Other Derby Stuff By Me</h1>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
I have several other software packages for NSOs and skaters at
|
||||
<a href="http://woozle.org/derby/">woozle.org</a>
|
||||
</li>
|
||||
<li>
|
||||
I also keep a <a href="res/others.html">list of other free
|
||||
scoreboard programs</a>. If the LADD scoreboard isn't
|
||||
right for you, try one of these!
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h1>Contact Me</h1>
|
||||
|
||||
<p>
|
||||
If you'd like me to add your team logo, have an idea for improvement,
|
||||
or just want to say hi, please send me an email. I especially
|
||||
like hearing from people who are using the software: I love knowing
|
||||
I'm able to help people out.
|
||||
</p>
|
||||
|
||||
<address>
|
||||
Neale Pickett <<a href="mailto:neale@woozle.org">neale@woozle.org</a>>
|
||||
</address>
|
||||
|
||||
</body>
|
||||
</html>
|
BIN
logos/4crg.png
Before Width: | Height: | Size: 46 KiB |
BIN
logos/animas.png
Before Width: | Height: | Size: 58 KiB |
BIN
logos/aurora.png
Before Width: | Height: | Size: 94 KiB |
BIN
logos/bbdd.png
Before Width: | Height: | Size: 140 KiB |
Before Width: | Height: | Size: 49 KiB |
BIN
logos/black.png
Before Width: | Height: | Size: 9.7 KiB |
BIN
logos/blue.png
Before Width: | Height: | Size: 8.3 KiB |
BIN
logos/bombs.png
Before Width: | Height: | Size: 191 KiB |
Before Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 59 KiB |
Before Width: | Height: | Size: 14 KiB |
BIN
logos/chupas.png
Before Width: | Height: | Size: 26 KiB |
BIN
logos/dcd.png
Before Width: | Height: | Size: 475 KiB |
BIN
logos/dia.png
Before Width: | Height: | Size: 125 KiB |
Before Width: | Height: | Size: 188 KiB |
Before Width: | Height: | Size: 38 KiB |
Before Width: | Height: | Size: 33 KiB |
BIN
logos/fdd.png
Before Width: | Height: | Size: 158 KiB |
BIN
logos/green.png
Before Width: | Height: | Size: 7.8 KiB |
BIN
logos/hobots.png
Before Width: | Height: | Size: 230 KiB |
Before Width: | Height: | Size: 30 KiB |
|
@ -1,74 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Roller Derby Logos</title>
|
||||
<link rel="stylesheet" type="text/css" href="../res/style.css">
|
||||
<style type="text/css">
|
||||
#gallery {
|
||||
}
|
||||
#gallery div {
|
||||
margin:2px;
|
||||
height:auto;
|
||||
width:auto;
|
||||
display: inline-block;
|
||||
text-align:center;
|
||||
max-width: 12em;
|
||||
}
|
||||
#gallery img
|
||||
{
|
||||
background: url(../res/checkerboard.png) #282;
|
||||
display:inline;
|
||||
float: none;
|
||||
margin:3px;
|
||||
border:3px solid black;
|
||||
max-width: 10em;
|
||||
max-height: 10em;
|
||||
}
|
||||
#gallery a:hover img
|
||||
{
|
||||
border-color: yellow;
|
||||
}
|
||||
a {
|
||||
color: yellow;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript" src="logos.js"></script>
|
||||
<script type="text/javascript">
|
||||
function gallery() {
|
||||
var g = document.getElementById("gallery");
|
||||
|
||||
for (tn in teams) {
|
||||
var team = teams[tn];
|
||||
var d = document.createElement("div");
|
||||
var a = document.createElement("a");
|
||||
var i = document.createElement("img");
|
||||
|
||||
i.setAttribute("src", team[1]);
|
||||
i.setAttribute("alt", team[0] + " logo");
|
||||
|
||||
a.setAttribute("href", team[1]);
|
||||
a.appendChild(i);
|
||||
a.appendChild(document.createElement("br"));
|
||||
a.appendChild(document.createTextNode(team[2] + " (" + team[0] + ")"));
|
||||
|
||||
d.appendChild(a);
|
||||
|
||||
g.appendChild(d);
|
||||
}
|
||||
}
|
||||
|
||||
window.onload = gallery;
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Roller Derby Logo Gallery</h1>
|
||||
|
||||
<p>
|
||||
Here are the logos currently shipping with the
|
||||
free <a href="../index.html">LADD Scoreboard</a>. If you'd like
|
||||
yours added, email your team name, preferred short name, and logo
|
||||
to <a href="mailto:neale@woozle.org">neale@woozle.org</a>.
|
||||
</p>
|
||||
<div id="gallery"></div>
|
||||
</body>
|
||||
</html>
|
|
@ -1,52 +0,0 @@
|
|||
teams = [
|
||||
["LA", "bombs.png", "Los Alamos M'Atom Bombs"],
|
||||
["ARG", "animas.png", "Animas Valley Roller Girls"],
|
||||
["Taos", "taos.png", "Taos Whiplashes"],
|
||||
["RIP", "rip.png", "Rollergirls In Pagosa"],
|
||||
["4CRG", "4crg.png", "4 Corners Roller Girls"],
|
||||
["DRG", "durango.png", "Durango Roller Girls"],
|
||||
["SFe", "brawlers.png", "Disco Brawlers"],
|
||||
["HCRD", "aurora.png", "High City Derby Divas"],
|
||||
["Moab", "moab.png", "Moab Roller Derby"],
|
||||
["Bots", "hobots.png", "Albuquerque Ho-Bots"],
|
||||
["HNR", "hustlen.png", "HCDD Hustle N' Rollers"],
|
||||
["DD", "doubledown.png", "HCDD Double Down"],
|
||||
["DCD", "dcd.png", "Duke City Derby"],
|
||||
["RMRG", "rmrg.png", "Rocky Mountain Roller Girls"],
|
||||
["DD", "doomsdames.png", "Albuquerque Doomsdames"],
|
||||
["TEX", "texpistols.png", "El Paso Tex Pistols"],
|
||||
["PWH", "pistol.png", "El Paso Pistol Whip-Hers"],
|
||||
["MT", "minorthreat.png", "Minor Threat"],
|
||||
["CCR", "choicecity.png", "Choice City Rebels"],
|
||||
["DIA", "dia.png", "Derby Intelligence Agency"],
|
||||
["TRD", "tucson.png", "Tucson Roller Derby"],
|
||||
["TST", "saddletramps.jpg","Tucson Saddle Tramps"],
|
||||
["TC", "tallcity.png", "Tall City Roller Betties"],
|
||||
["SS", "ssdd.png", "South Side Derby Dames"],
|
||||
["WTRD", "wtrd.png", "West Texas Roller Dollz"],
|
||||
["FDD", "fdd.png", "Faultline Derby Devilz"],
|
||||
["CHPA", "chupas.png", "New Mexico Chupacabras"],
|
||||
["TKRD", "tulare-kings.png", "Tulare Kings Roller Derby"],
|
||||
["CHRY", "cherries.png", "Los Alamos Cherry Bombs"],
|
||||
["PLG", "plague.png", "Zombie Plague"],
|
||||
["BDB", "bd-betties.png", "Black Diamond Betties"],
|
||||
["SKS", "sirens.png", "Sea to Sky Sirens"],
|
||||
["BBDD", "bbdd.png", "Battle Born Derby Demons"],
|
||||
["OKVD", "okvd.png", "Oklahoma Victory Dolls"],
|
||||
["MM", "munecas.png", "Muñecas Muertas"],
|
||||
["MARI", "marionettes.png", "Albuquerque Marionettes"],
|
||||
["QSDD", "qsdd.png", "Quad Skate Derby Dames"],
|
||||
["BWBS", "bwbs.png", "Backwoods Bombshells"]
|
||||
["CRH", "redhots.png", "Chicago Red Hots"],
|
||||
["HCRG", "campers.png", "Happy Camper Rollergirls"]
|
||||
];
|
||||
teams.sort();
|
||||
|
||||
// Add special teams at the beginning
|
||||
teams.splice(0, 0,
|
||||
["Blk", "black.png", "Black Team"],
|
||||
["Wht", "white.png", "White Team"],
|
||||
["Grn", "green.png", "Green Team"],
|
||||
["Rng", "orange.png", "Orange Team"],
|
||||
["Blu", "blue.png", "Blue Team"]
|
||||
);
|
Before Width: | Height: | Size: 141 KiB |
Before Width: | Height: | Size: 26 KiB |
BIN
logos/moab.png
Before Width: | Height: | Size: 51 KiB |
Before Width: | Height: | Size: 235 KiB |
BIN
logos/okvd.png
Before Width: | Height: | Size: 124 KiB |
BIN
logos/orange.png
Before Width: | Height: | Size: 9.3 KiB |
BIN
logos/pistol.png
Before Width: | Height: | Size: 38 KiB |
BIN
logos/plague.png
Before Width: | Height: | Size: 22 KiB |
BIN
logos/rip.png
Before Width: | Height: | Size: 16 KiB |
BIN
logos/rmrg.png
Before Width: | Height: | Size: 13 KiB |
Before Width: | Height: | Size: 11 KiB |
BIN
logos/sirens.png
Before Width: | Height: | Size: 77 KiB |
BIN
logos/skate.png
Before Width: | Height: | Size: 17 KiB |
BIN
logos/ssdd.png
Before Width: | Height: | Size: 46 KiB |
Before Width: | Height: | Size: 149 KiB |
BIN
logos/taos.png
Before Width: | Height: | Size: 41 KiB |
Before Width: | Height: | Size: 94 KiB |
BIN
logos/tucson.png
Before Width: | Height: | Size: 12 KiB |
Before Width: | Height: | Size: 6.4 KiB |
BIN
logos/wftda.png
Before Width: | Height: | Size: 12 KiB |
BIN
logos/white.png
Before Width: | Height: | Size: 10 KiB |
BIN
logos/wtrd.png
Before Width: | Height: | Size: 372 KiB |
|
@ -0,0 +1,27 @@
|
|||
{
|
||||
"manifest_version": 2,
|
||||
|
||||
"name": "BETA Woozle Scoreboard",
|
||||
"short_name": "BETA Scoreboard",
|
||||
"icons": {"128": "res/icon-plaid.png"},
|
||||
|
||||
"_name": "__MSG_appName__",
|
||||
"_short_name": "__MSG_appShortName__",
|
||||
"_icons": {"128": "res/icon.png"},
|
||||
|
||||
"description": "__MSG_appDesc__",
|
||||
"author": "Neale Pickett <neale@woozle.org>",
|
||||
"version": "7.0.2",
|
||||
"app": {
|
||||
"background": {
|
||||
"scripts": ["res/background.js"]
|
||||
}
|
||||
},
|
||||
"permissions": [
|
||||
"storage",
|
||||
"fileSystem",
|
||||
"fullscreen"
|
||||
],
|
||||
"default_locale": "en",
|
||||
"offline_enabled": true
|
||||
}
|
71
micro.html
|
@ -1,71 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="res/scoreboard.css">
|
||||
<style type="text/css">
|
||||
body {
|
||||
background: black;
|
||||
}
|
||||
#scoreboard {
|
||||
font-size: 2em;
|
||||
text-align: center;
|
||||
}
|
||||
#jam, #period {
|
||||
position: inherit;
|
||||
margin: inherit;
|
||||
width: inherit;
|
||||
left: inherit;
|
||||
color: white;
|
||||
}
|
||||
#jamtext {
|
||||
font-family: inherit;
|
||||
font-size: 50%;
|
||||
margin: inherit;
|
||||
width: inherit;
|
||||
|
||||
position: inherit;
|
||||
bottom: 0em;
|
||||
left: 0em;
|
||||
}
|
||||
html, p {
|
||||
padding: 0;
|
||||
margin: 0;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript" src="res/scoreboard.js"></script>
|
||||
<script type="text/javascript">
|
||||
jamtext = ["J", "L", "T", "S"];
|
||||
tenths = false;
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="scoreboard">
|
||||
<p>
|
||||
<span id="period" onclick="handle(event);">--:--</span>
|
||||
</p>
|
||||
<p>
|
||||
<span id="jamtext">S</span>
|
||||
<span id="jam" onclick="handle(event);">-:--</span>
|
||||
</p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
140
penalties.html
|
@ -1,140 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="res/scoreboard.css">
|
||||
<style type="text/css">
|
||||
#jam {
|
||||
bottom: auto;
|
||||
top: 2em;
|
||||
}
|
||||
#jamtext {
|
||||
bottom: auto;
|
||||
top: 1.5em;
|
||||
}
|
||||
#jamno {
|
||||
bottom: auto;
|
||||
top: 3em;
|
||||
}
|
||||
.timeouts {
|
||||
margin: 0em 6em;
|
||||
}
|
||||
.jammer {
|
||||
margin: 0em 3em;
|
||||
}
|
||||
|
||||
/*
|
||||
* Penalties
|
||||
*/
|
||||
#penalties-a, #penalties-b {
|
||||
position: absolute;
|
||||
font-size: 13%;
|
||||
bottom: 2px;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
#penalties-a {
|
||||
left: 0;
|
||||
}
|
||||
#penalties-b {
|
||||
right: 0;
|
||||
}
|
||||
|
||||
#penalties td {
|
||||
cursor: pointer;
|
||||
border: 1px solid rgba(255, 255, 255, 0.075);
|
||||
padding: 0;
|
||||
vertical-align: bottom;
|
||||
}
|
||||
|
||||
#penalties .minors td {
|
||||
height: 3em;
|
||||
}
|
||||
#penalties .majors td {
|
||||
height: 8em;
|
||||
}
|
||||
#penalties .minors div {
|
||||
background-color: #880;
|
||||
color: black;
|
||||
}
|
||||
#penalties .majors div {
|
||||
background-color: #800;
|
||||
}
|
||||
#penalties .sk8ers td {
|
||||
font-family: sans-serif;
|
||||
vertical-align: top;
|
||||
width: 1em;
|
||||
line-height: 75%;
|
||||
}
|
||||
</style>
|
||||
<script type="text/javascript" src="logos/logos.js"></script>
|
||||
<script type="text/javascript" src="res/scoreboard.js"></script>
|
||||
<script type="text/javascript" src="res/penalties.js"></script>
|
||||
<script type="text/javascript">
|
||||
tenths = true;
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="scoreboard">
|
||||
<p class="left">
|
||||
<img class="logo" id="logo-a" src="" alt="A" onclick="handle(event);">
|
||||
<span class="timeouts" id="timeouts-a" onclick="handle(event);">0</span>
|
||||
<span class="jammer" id="jammer-a" onclick="handle(event);">★</span>
|
||||
<span class="score" id="score-a" onclick="handle(event);">-</span>
|
||||
</p>
|
||||
|
||||
<p class="center">
|
||||
<span id="period" onclick="handle(event);">--:--</span>
|
||||
<span id="jam" onclick="handle(event);">-:--.-</span>
|
||||
<span id="jamtext" onclick="handle(event);"></span>
|
||||
<span id="jamno" onclick="handle(event);">0</span>
|
||||
</p>
|
||||
|
||||
<p class="right">
|
||||
<img class="logo" id="logo-b" src="" alt="B" onclick="handle(event);">
|
||||
<span class="timeouts" id="timeouts-b" onclick="handle(event);">0</span>
|
||||
<span class="jammer" id="jammer-b" onclick="handle(event);">★</span>
|
||||
<span class="score" id="score-b" onclick="handle(event);">-</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="penalties">
|
||||
<table id="penalties-a">
|
||||
<tr class="majors"></tr>
|
||||
<tr class="sk8ers"></tr>
|
||||
</table>
|
||||
|
||||
<!-- Right here would be an excellent place for a sponsor logo -->
|
||||
|
||||
<table id="penalties-b">
|
||||
<tr class="majors"></tr>
|
||||
<tr class="sk8ers"></tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="notice">
|
||||
<div id="notice-1">Power Jam</div>
|
||||
<div id="notice-2">Grand Slam</div>
|
||||
<div id="notice-3">Ouch</div>
|
||||
<div id="notice-4">OMG</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
BIN
res/BadGirl.swf
|
@ -1 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" width="1000" height="500"><rect width="1000" height="500" fill="#f00"/><rect width="500" height="500" fill="#fff" x="250"/><path fill="#ff0000" d="m 499.99228,46.875 -34.11312,63.62529 c -3.87086,6.91501 -10.80627,6.27363 -17.74169,2.41138 l -24.69699,-12.78858 18.40705,97.72711 c 3.87086,17.85419 -8.54859,17.85419 -14.67765,10.13435 l -43.10105,-48.25099 -6.99738,24.503 c -0.80692,3.21777 -4.35481,6.59744 -9.67748,5.79261 l -54.50177,-11.45912 14.31524,52.04475 c 3.06451,11.58054 5.4549,16.37528 -3.09375,19.42959 l -19.42619,9.13025 93.82127,76.20838 c 3.7135,2.88151 5.58971,8.067 4.26768,12.7621 l -8.21136,26.94707 c 32.30405,-3.72371 61.24898,-9.32594 93.56939,-12.77619 2.85323,-0.30459 7.62988,4.40408 7.61029,7.71058 l -4.28024,98.72342 15.70639,0 -2.47237,-98.5117 c -0.0197,-3.3065 4.31372,-8.22689 7.16695,-7.9223 32.32041,3.45026 61.26538,9.05248 93.56942,12.77619 l -8.21134,-26.94707 c -1.32203,-4.6951 0.55417,-9.88059 4.26767,-12.7621 l 93.82125,-76.20838 -19.42617,-9.13025 c -8.54867,-3.05431 -6.15828,-7.84905 -3.09377,-19.42959 l 14.31527,-52.04475 -54.5018,11.45912 c -5.32267,0.80483 -8.87056,-2.57484 -9.6775,-5.79261 l -6.99737,-24.503 -43.10103,48.25099 c -6.12908,7.71984 -18.54854,7.71984 -14.67768,-10.13435 l 18.40702,-97.72711 -24.69694,12.78858 c -6.93559,3.86225 -13.87083,4.50363 -17.7417,-2.41138"/></svg>
|
Before Width: | Height: | Size: 1.4 KiB |
Before Width: | Height: | Size: 338 KiB |
|
@ -1,12 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="1235" height="650">
|
||||
<defs>
|
||||
<polygon id="pt" points="-0.1624598481164531,0 0,-0.5 0.1624598481164531,0" transform="scale(0.0616)" fill="#FFF"/>
|
||||
<g id="star"><use xlink:href="#pt" transform="rotate(-144)"/><use xlink:href="#pt" transform="rotate(-72)"/><use xlink:href="#pt"/><use xlink:href="#pt" transform="rotate(72)"/><use xlink:href="#pt" transform="rotate(144)"/></g>
|
||||
<g id="s5"><use xlink:href="#star" x="-0.252"/><use xlink:href="#star" x="-0.126"/><use xlink:href="#star"/><use xlink:href="#star" x="0.126"/><use xlink:href="#star" x="0.252"/></g>
|
||||
<g id="s6"><use xlink:href="#s5" x="-0.063"/><use xlink:href="#star" x="0.315"/></g>
|
||||
<g id="x4"><use xlink:href="#s6"/><use xlink:href="#s5" y="0.054"/><use xlink:href="#s6" y="0.108"/><use xlink:href="#s5" y="0.162"/></g>
|
||||
<g id="u"><use xlink:href="#x4" y="-0.216"/><use xlink:href="#x4"/><use xlink:href="#s6" y="0.216"/></g>
|
||||
<rect id="stripe" width="1235" height="50" fill="#B22234"/>
|
||||
</defs>
|
||||
<rect width="1235" height="650" fill="#FFF"/><use xlink:href="#stripe"/><use xlink:href="#stripe" y="100"/><use xlink:href="#stripe" y="200"/><use xlink:href="#stripe" y="300"/><use xlink:href="#stripe" y="400"/><use xlink:href="#stripe" y="500"/><use xlink:href="#stripe" y="600"/><rect width="494" height="350" fill="#3C3B6E"/><use xlink:href="#u" transform="translate(247,175) scale(650)"/></svg>
|
Before Width: | Height: | Size: 1.5 KiB |
BIN
res/HolyShot.swf
BIN
res/Magenta.woff
BIN
res/Ouch.swf
BIN
res/Pow.swf
BIN
res/Zounds.swf
|
@ -1,30 +0,0 @@
|
|||
var advert_num = 100
|
||||
var advert_itimer
|
||||
|
||||
function adverterror() {
|
||||
if (advert_num > 1) {
|
||||
advert_num = 1
|
||||
rotate_advert()
|
||||
} else {
|
||||
var e = document.getElementById("advert")
|
||||
clearInterval(advert_itimer)
|
||||
e.style.visibility = "hidden"
|
||||
}
|
||||
}
|
||||
|
||||
function rotate_advert() {
|
||||
var e = document.getElementById("advert")
|
||||
var sn
|
||||
|
||||
if (advert_num < 10) {
|
||||
sn = "0" + advert_num
|
||||
} else {
|
||||
sn = advert_num
|
||||
}
|
||||
|
||||
e.src = "ads/ad" + sn + ".jpg"
|
||||
|
||||
advert_num = advert_num + 1
|
||||
}
|
||||
|
||||
advert_itimer = setInterval(rotate_advert, 15000)
|
|
@ -0,0 +1,5 @@
|
|||
chrome.app.runtime.onLaunched.addListener(function() {
|
||||
chrome.app.window.create('res/scoreboard.html', {
|
||||
'state': 'fullscreen'
|
||||
})
|
||||
})
|
Before Width: | Height: | Size: 187 B |
After Width: | Height: | Size: 8.1 KiB |
|
@ -1,160 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) by Marsupilami -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.0"
|
||||
width="1024"
|
||||
height="729"
|
||||
viewBox="-187.819908 -187.819908 9320.639816 6636.303416"
|
||||
id="svg10326"
|
||||
inkscape:version="0.48.3.1 r9886"
|
||||
sodipodi:docname="hellokitty.svg"
|
||||
inkscape:export-filename="/home/neale/src/scoreboard/logos/black.png"
|
||||
inkscape:export-xdpi="18.299999"
|
||||
inkscape:export-ydpi="18.299999">
|
||||
<metadata
|
||||
id="metadata18">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="729"
|
||||
inkscape:window-height="580"
|
||||
id="namedview16"
|
||||
showgrid="false"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:zoom="0.84499314"
|
||||
inkscape:cx="300.50256"
|
||||
inkscape:cy="346.15303"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="16"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg10326" />
|
||||
<defs
|
||||
id="defs10328" />
|
||||
<path
|
||||
style="fill:#707070;stroke:#000000;stroke-width:22;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;fill-opacity:1"
|
||||
d="m 124.26136,401.18669 c -17.1599,297.63555 336.09741,293.4935 384.61851,292.31006 48.5211,-1.18344 415.97971,0.59172 386.98539,-299.41071 C 852.66964,147.33848 667.08313,156.66702 518.3474,156.21428 363.67452,155.74347 146.15503,188.75893 124.26136,401.18669 z"
|
||||
id="path3836"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
sodipodi:nodetypes="czcac" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccczcc"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none"
|
||||
id="path2995"
|
||||
d="m 2371.3064,4114.3702 c 0,0 37,241 193,290 0,0 73,22 147,-7 0,0 72,-28 119,-93 0,0 45,-63 54,-158 0,0 7,-66 -3,-173 0,0 -15,-74 -54,-134 0,0 -44,-68 -106,-96 0,0 -469.1426,-162.9385 -512.9158,-114.6523 -43.7732,48.2862 299.5961,136.972 251.5961,161.972 0,0 -114.6803,86.6803 -88.6803,323.6803" />
|
||||
<path
|
||||
d="M 4783.9999,4890.7568 C 4783.9999,4890.7568 4664.9999,4970.7568 4497.9999,4964.7568 C 4497.9999,4964.7568 4348.9999,4959.7568 4209.9999,4891.7568 C 4209.9999,4891.7568 4137.9999,4855.7568 4104.9999,4782.7568 C 4104.9999,4782.7568 4072.9998,4712.7568 4083.9998,4625.7568 C 4083.9998,4625.7568 4092.9998,4559.7568 4125.9999,4505.7568 C 4125.9999,4505.7568 4163.9999,4446.7568 4221.9999,4417.7568 C 4221.9999,4417.7568 4333.9999,4343.7568 4491.9999,4346.7568 C 4491.9999,4346.7568 4645.9999,4349.7568 4764.9999,4420.7568 C 4764.9999,4420.7568 4820.9999,4446.7568 4858.9999,4501.7568 C 4858.9999,4501.7568 4895.9999,4555.7568 4903.9999,4619.7568 C 4903.9999,4619.7568 4913.9999,4702.7568 4881.9999,4773.7568 C 4881.9999,4773.7568 4850.9999,4844.7568 4783.9999,4890.7568"
|
||||
id="path9508"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||
<path
|
||||
d="M 4523.9999,4514.7568 C 4523.9999,4514.7568 4626.9999,4522.7568 4681.9999,4587.7568 C 4681.9999,4587.7568 4701.9999,4602.7568 4709.9999,4629.7568 L 4719.9999,4679.7568 C 4719.9999,4679.7568 4718.9999,4709.7568 4696.9999,4735.7568 C 4696.9999,4735.7568 4676.9999,4759.7568 4647.9999,4772.7568 C 4647.9999,4772.7568 4570.9999,4811.7568 4472.9999,4806.7568 C 4472.9999,4806.7568 4371.9999,4802.7568 4303.9999,4752.7568 C 4303.9999,4752.7568 4244.9999,4696.7568 4265.9999,4642.7568 C 4265.9999,4642.7568 4272.9999,4613.7568 4295.9999,4584.7568 C 4295.9999,4584.7568 4317.9999,4556.7568 4344.9999,4541.7568 C 4344.9999,4541.7568 4434.9999,4506.7568 4523.9999,4514.7568"
|
||||
id="path9510"
|
||||
style="fill:#d35f5f;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1" />
|
||||
<path
|
||||
d="m 6503.9998,4119.7568 c 0,0 -37,241 -193,290 0,0 -73,22 -147,-7 0,0 -72,-28 -119,-93 0,0 -45,-63 -54,-158 0,0 -7,-66 3,-173 0,0 15,-74 54,-134 0,0 44,-68 106,-96 0,0 469.1426,-162.9385 512.9158,-114.6523 43.7732,48.2862 -299.5961,136.972 -251.5961,161.972 0,0 114.6803,86.6803 88.6803,323.6803"
|
||||
id="path9512"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccczcc" />
|
||||
<path
|
||||
style="fill:#2e2e2c;stroke:none;stroke-width:22;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;fill-opacity:1"
|
||||
d="m 179.88312,276.92532 0,137.27923 -82.840912,0 C 139.6461,-80.47402 873.37987,-85.207794 938.46915,396.45292 l -87.57467,0 -2.36688,-111.2435 c -81.65747,34.31981 -519.53084,31.95291 -668.64448,-8.2841 z"
|
||||
id="path3062"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
sodipodi:nodetypes="ccccccc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:22;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 853.26136,488.76136 c 26.03572,1.18345 92.30844,11.83442 113.61039,17.75163"
|
||||
id="path3838"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:22;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 818.94156,564.50162 c 24.85227,1.18344 92.30844,30.76949 121.89448,47.33767"
|
||||
id="path3840"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:22;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 840.24351,421.30519 c 34.31981,-10.65097 132.54545,-14.20129 153.8474,-10.65097"
|
||||
id="path3842"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:22;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 228.40422,569.23539 c -27.21916,5.91721 -88.75812,37.87013 -121.89448,67.45617"
|
||||
id="path3844"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:22;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 188.16721,508.87987 c -30.76948,2.36688 -86.39124,10.65097 -111.243509,22.48539"
|
||||
id="path3846"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:22;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="M 183.43344,435.50649 C 142.01299,423.67207 54.438312,429.58929 33.136364,439.05682"
|
||||
id="path3848"
|
||||
inkscape:connector-curvature="0"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
sodipodi:nodetypes="cc" />
|
||||
<path
|
||||
style="fill:#b7b7b7;fill-opacity:1;fill-rule:nonzero;stroke:none"
|
||||
d="m 3767.3612,2599.9585 c 0,-355.5162 212.3876,-2250.13849 330.8931,-2411.73679 l 1217.2588,55.99849 c -107.7322,301.65015 -311.2826,1811.3539 -257.4165,2382.3345 z"
|
||||
id="path3852"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="ccccc" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccccc"
|
||||
transform="matrix(9.1032969,0,0,9.1032969,-188.388,-187.81991)"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3856"
|
||||
d="m 179.88312,276.92532 0,137.27923 -82.840912,0 C 139.6461,-80.47402 873.37987,-85.207794 938.46915,396.45292 l -87.57467,0 -2.36688,-111.2435 c -81.65747,34.31981 -519.53084,31.95291 -668.64448,-8.2841 z"
|
||||
style="fill:none;stroke:#000000;stroke-width:22;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
<path
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:200.27253723;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="M 5838.2978,769.94261 C 6376.116,872.83289 7139.0243,1331.5903 7465.1249,1681.5177 7504.7714,1222.6917 7479.8737,647.62134 7219.823,301.61753 6825.4554,244.38036 6182.3921,581.63217 5838.2978,769.94261 z"
|
||||
id="path9502"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3850"
|
||||
d="M 3397.0185,739.47134 C 2859.2003,842.36162 2096.292,1301.119 1770.1914,1651.0464 1730.5449,1192.2204 1755.4426,617.15007 2015.4933,271.14626 2409.8609,213.90909 3052.9242,551.1609 3397.0185,739.47134 z"
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:200.27253723;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</svg>
|
||||
<!-- version: 20090314, original size: 8945 6260.6636, border: 3% -->
|
||||
|
Before Width: | Height: | Size: 9.8 KiB |
After Width: | Height: | Size: 544 B |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 5.9 KiB |
Before Width: | Height: | Size: 11 KiB |
|
@ -0,0 +1,19 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Kitty Explorer</title>
|
||||
<script type="text/javascript" src="kitty.js"></script>
|
||||
<script type="text/javascript">
|
||||
function meow() {
|
||||
c = document.getElementById("kitty")
|
||||
ctx = c.getContext("2d")
|
||||
kitty(ctx, "#0088ff")
|
||||
}
|
||||
|
||||
window.addEventListener("load", meow)
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<canvas id="kitty" height="300" width="300" style="border: solid black 1px;">(meow)</canvas>
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,355 @@
|
|||
// This is kludged together from the output of http://www.professorcloud.com/svg-to-canvas/
|
||||
// I saved as a 100×68.83 pixel SVG, then twiddled around with the prelude of the JS output.
|
||||
// If you are reading this, there's probably a nicer converter out now.
|
||||
// But this seems to work okay so it may not be worth the effort.
|
||||
|
||||
function kitty(ctx, kittyColor) {
|
||||
|
||||
var scaleBase = 0.1098503139616503
|
||||
var scaleX = scaleBase * ctx.canvas.width / 100
|
||||
var scaleY = scaleBase * ctx.canvas.height / 68.83
|
||||
var scale = Math.min(scaleX, scaleY)
|
||||
|
||||
|
||||
ctx.save();
|
||||
ctx.scale(scale, scale);
|
||||
ctx.translate(187.81991,187.81991);
|
||||
ctx.strokeStyle = 'rgba(0,0,0,0)';
|
||||
ctx.lineCap = 'butt';
|
||||
ctx.lineJoin = 'miter';
|
||||
ctx.miterLimit = 4;
|
||||
ctx.save();
|
||||
ctx.translate(0.22995231,-396.76901);
|
||||
ctx.save();
|
||||
ctx.fillStyle = kittyColor;
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "butt";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(263.23037,219.17781);
|
||||
ctx.bezierCurveTo(209.09715,219.95058,155.19615,230.72191999999998,105.64392999999998,251.41147);
|
||||
ctx.bezierCurveTo(105.57612999999998,251.43927000000002,105.47314999999999,251.38257000000002,105.40514999999998,251.41147);
|
||||
ctx.bezierCurveTo(74.58948199999998,237.52258,40.50337099999997,225.86925000000002,15.867370999999977,229.44481000000002);
|
||||
ctx.bezierCurveTo(-2.982406800000021,254.52492,-9.558406700000024,291.54425000000003,-10.397073000000024,327.57825);
|
||||
ctx.bezierCurveTo(-68.96529500000003,384.63103,-109.75229000000002,464.09403000000003,-118.55874000000001,566.34569);
|
||||
ctx.lineTo(-93.72685000000001,566.34569);
|
||||
ctx.bezierCurveTo(-99.55329500000002,829.8689099999999,218.71792,826.24936,262.99159,825.16958);
|
||||
ctx.bezierCurveTo(271.39515,824.9648,290.07180999999997,824.88991,314.80415,823.02069);
|
||||
ctx.bezierCurveTo(331.29237,821.77436,350.61791999999997,819.6868,371.15326,816.3351399999999);
|
||||
ctx.bezierCurveTo(376.28715,815.49736,381.38669999999996,814.48214,386.67314999999996,813.4700199999999);
|
||||
ctx.bezierCurveTo(497.68913999999995,792.2149099999999,637.94381,730.7707999999999,621.6202499999999,549.8706899999999);
|
||||
ctx.lineTo(660.7781399999999,549.8706899999999);
|
||||
ctx.bezierCurveTo(649.6126999999999,467.2469199999999,617.1321399999999,400.28402999999986,571.4791399999999,348.58980999999983);
|
||||
ctx.bezierCurveTo(572.5872599999999,307.2829199999998,567.21926,261.8263599999998,545.2146999999999,232.54880999999983);
|
||||
ctx.bezierCurveTo(518.6728099999999,228.69657999999984,481.3090299999999,242.58857999999984,448.7526999999999,257.8581399999998);
|
||||
ctx.bezierCurveTo(448.68599999999986,257.82703999999984,448.5803699999999,257.8892399999998,448.51391999999987,257.8581399999998);
|
||||
ctx.bezierCurveTo(390.90069999999986,231.21335999999982,326.91391999999985,218.26880999999983,263.2303699999999,219.17780999999982);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.translate(0.22995231,-396.76901);
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(45, 45, 45, 0.6745098039215687)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "butt";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(263.23037,219.17781);
|
||||
ctx.bezierCurveTo(209.02281,219.9517,155.01337,230.66592,105.40514999999999,251.41147);
|
||||
ctx.bezierCurveTo(124.77393,260.14114,142.75193,269.80447000000004,156.26259,277.19836);
|
||||
ctx.bezierCurveTo(101.54814999999999,287.66580999999996,23.972259999999977,334.24057999999997,-9.20318450000002,369.84013999999996);
|
||||
ctx.bezierCurveTo(-10.36285100000002,356.41981,-10.73551800000002,342.11868999999996,-10.39707300000002,327.57824999999997);
|
||||
ctx.bezierCurveTo(-68.96529500000003,384.63102999999995,-109.75229000000002,464.09403,-118.55874000000001,566.34569);
|
||||
ctx.lineTo(-41.675629000000015,566.34569);
|
||||
ctx.lineTo(-41.675629000000015,439.32147);
|
||||
ctx.bezierCurveTo(96.42092599999998,476.58558,501.82402999999994,478.74613999999997,577.4483700000001,446.96202999999997);
|
||||
ctx.lineTo(579.5972600000001,549.87069);
|
||||
ctx.lineTo(660.7781400000001,549.87069);
|
||||
ctx.bezierCurveTo(649.6127000000001,467.24692,617.1321400000002,400.28403,571.4791400000001,348.58980999999994);
|
||||
ctx.bezierCurveTo(571.2552600000001,356.94624999999996,570.9641400000002,365.08991999999995,570.2852600000001,372.94402999999994);
|
||||
ctx.bezierCurveTo(537.1098100000002,337.34457999999995,459.5339200000001,290.76980999999995,404.8194800000001,280.3023599999999);
|
||||
ctx.bezierCurveTo(416.6672600000001,273.81846999999993,432.09703000000013,265.6700299999999,448.7527000000001,257.85813999999993);
|
||||
ctx.bezierCurveTo(391.08781,231.15081,326.98737,218.2677,263.23037,219.17781);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "butt";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(-41.675629,439.32136);
|
||||
ctx.lineTo(-41.675629,566.34569);
|
||||
ctx.lineTo(-93.72685,566.34569);
|
||||
ctx.bezierCurveTo(-99.55329499999999,829.8689099999999,218.71792,826.24936,262.9917,825.16958);
|
||||
ctx.bezierCurveTo(307.81048,824.07647,646.49437,825.52791,621.62037,549.87069);
|
||||
ctx.lineTo(579.59726,549.87069);
|
||||
ctx.lineTo(577.44837,446.96191999999996);
|
||||
ctx.bezierCurveTo(501.82413999999994,478.74602999999996,96.42092599999995,476.58547,-41.67562900000007,439.32135999999997);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.transform(0.1017341,0,0,0.1017341,-189.21074,758.53069);
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 200.2725372314453;
|
||||
ctx.lineCap = "round";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(5838.2978,-4701.1388);
|
||||
ctx.bezierCurveTo(6376.116,-4598.2485,7139.0243,-4139.491099999999,7465.124900000001,-3789.5636999999997);
|
||||
ctx.bezierCurveTo(7504.7714000000005,-4248.3897,7479.873700000001,-4823.4601,7219.823,-5169.4639);
|
||||
ctx.bezierCurveTo(6825.455400000001,-5226.701,6182.3921,-4889.4492,5838.2978,-4701.1388);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 200.2725372314453;
|
||||
ctx.lineCap = "round";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(3397.0185,-4731.6101);
|
||||
ctx.bezierCurveTo(2859.2003,-4628.7198,2096.2920000000004,-4169.9624,1770.1914000000002,-3820.035);
|
||||
ctx.bezierCurveTo(1730.5449,-4278.861,1755.4426,-4853.9313,2015.4933,-5199.9351);
|
||||
ctx.bezierCurveTo(2409.8609,-5257.172299999999,3052.9242000000004,-4919.9205,3397.0185,-4731.6101);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "#000000";
|
||||
ctx.strokeStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(52.032037,620.50691);
|
||||
ctx.bezierCurveTo(52.032037,620.50691,55.796148,645.0247999999999,71.66670400000001,650.0097999999999);
|
||||
ctx.bezierCurveTo(71.66670400000001,650.0097999999999,79.093259,652.2479099999999,86.621593,649.2976899999999);
|
||||
ctx.bezierCurveTo(86.621593,649.2976899999999,93.946481,646.4491399999998,98.727926,639.8363599999999);
|
||||
ctx.bezierCurveTo(98.727926,639.8363599999999,103.30604,633.4271399999999,104.22158999999999,623.76236);
|
||||
ctx.bezierCurveTo(104.22158999999999,623.76236,104.93369999999999,617.0479099999999,103.91636999999999,606.1623599999999);
|
||||
ctx.bezierCurveTo(103.91636999999999,606.1623599999999,102.39036999999999,598.6340299999999,98.42281499999999,592.5300299999999);
|
||||
ctx.bezierCurveTo(98.42281499999999,592.5300299999999,93.94648099999999,585.61214,87.63892599999998,582.7635799999999);
|
||||
ctx.bezierCurveTo(87.63892599999998,582.7635799999999,39.91114799999998,566.1871399999999,35.457925999999986,571.0994699999999);
|
||||
ctx.bezierCurveTo(31.004703999999986,576.0117999999999,65.93703699999999,585.0342499999999,61.053814999999986,587.5775799999999);
|
||||
ctx.bezierCurveTo(61.053814999999986,587.5775799999999,49.38692599999999,596.3959099999998,52.03203699999999,620.50691);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "#000000";
|
||||
ctx.strokeStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(297.48526,699.49191);
|
||||
ctx.bezierCurveTo(297.48526,699.49191,285.37881,707.63058,268.38926,707.0202499999999);
|
||||
ctx.bezierCurveTo(268.38926,707.0202499999999,253.23091999999997,706.5115799999999,239.08980999999997,699.5936899999999);
|
||||
ctx.bezierCurveTo(239.08980999999997,699.5936899999999,231.76503999999997,695.93125,228.40780999999998,688.5045799999999);
|
||||
ctx.bezierCurveTo(228.40780999999998,688.5045799999999,225.15225999999998,681.3832499999999,226.27137,672.5323599999999);
|
||||
ctx.bezierCurveTo(226.27137,672.5323599999999,227.18692,665.8179099999999,230.54415,660.3242499999999);
|
||||
ctx.bezierCurveTo(230.54415,660.3242499999999,234.41004,654.3219099999999,240.3107,651.37169);
|
||||
ctx.bezierCurveTo(240.3107,651.37169,251.70492,643.84336,267.77881,644.1485799999999);
|
||||
ctx.bezierCurveTo(267.77881,644.1485799999999,283.44592,644.4537999999999,295.55226000000005,651.6769099999999);
|
||||
ctx.bezierCurveTo(295.55226000000005,651.6769099999999,301.24937000000006,654.3219099999999,305.11526000000003,659.9173599999999);
|
||||
ctx.bezierCurveTo(305.11526000000003,659.9173599999999,308.87948000000006,665.4110299999999,309.69337,671.9219099999999);
|
||||
ctx.bezierCurveTo(309.69337,671.9219099999999,310.71070000000003,680.3659099999999,307.45515,687.5890299999999);
|
||||
ctx.bezierCurveTo(307.45515,687.5890299999999,304.30137,694.8121399999999,297.48526,699.4919099999998);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "#d35f5f";
|
||||
ctx.strokeStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(271.03437,661.23991);
|
||||
ctx.bezierCurveTo(271.03437,661.23991,281.51292,662.0538,287.10837000000004,668.66647);
|
||||
ctx.bezierCurveTo(287.10837000000004,668.66647,289.14304000000004,670.19247,289.95692,672.93925);
|
||||
ctx.lineTo(290.97426,678.02603);
|
||||
ctx.bezierCurveTo(290.97426,678.02603,290.87204,681.07803,288.63437,683.72314);
|
||||
ctx.bezierCurveTo(288.63437,683.72314,286.5997,686.16469,283.64937,687.4872499999999);
|
||||
ctx.bezierCurveTo(283.64937,687.4872499999999,275.81581,691.4549099999999,265.84592,690.9462499999998);
|
||||
ctx.bezierCurveTo(265.84592,690.9462499999998,255.57080999999997,690.5393599999999,248.65281,685.4525799999999);
|
||||
ctx.bezierCurveTo(248.65281,685.4525799999999,242.65059,679.75547,244.78691999999998,674.2617999999999);
|
||||
ctx.bezierCurveTo(244.78691999999998,674.2617999999999,245.49915,671.3115799999999,247.83903999999998,668.3612499999999);
|
||||
ctx.bezierCurveTo(247.83903999999998,668.3612499999999,250.07715,665.5126899999999,252.82392,663.98669);
|
||||
ctx.bezierCurveTo(252.82392,663.98669,261.98004,660.42603,271.03436999999997,661.23991);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "#000000";
|
||||
ctx.strokeStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(472.46781,621.05491);
|
||||
ctx.bezierCurveTo(472.46781,621.05491,468.70369999999997,645.5727999999999,452.83315,650.5577999999999);
|
||||
ctx.bezierCurveTo(452.83315,650.5577999999999,445.40659,652.7959099999999,437.87826,649.8456899999999);
|
||||
ctx.bezierCurveTo(437.87826,649.8456899999999,430.55337000000003,646.9971399999998,425.77192,640.3843599999999);
|
||||
ctx.bezierCurveTo(425.77192,640.3843599999999,421.19392000000005,633.9751399999999,420.27826000000005,624.31036);
|
||||
ctx.bezierCurveTo(420.27826000000005,624.31036,419.56615000000005,617.5959099999999,420.58348000000007,606.7103599999999);
|
||||
ctx.bezierCurveTo(420.58348000000007,606.7103599999999,422.1094800000001,599.1820299999999,426.0771500000001,593.0780299999999);
|
||||
ctx.bezierCurveTo(426.0771500000001,593.0780299999999,430.5533700000001,586.16014,436.8609200000001,583.3115799999999);
|
||||
ctx.bezierCurveTo(436.8609200000001,583.3115799999999,484.5887000000001,566.7351399999999,489.04192000000006,571.6474699999999);
|
||||
ctx.bezierCurveTo(493.49514000000005,576.5597999999999,458.56281000000007,585.5822499999999,463.44603000000006,588.1255799999999);
|
||||
ctx.bezierCurveTo(463.44603000000006,588.1255799999999,475.1129200000001,596.9439099999998,472.46781000000004,621.05491);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "round";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(581.84259,635.47703);
|
||||
ctx.bezierCurveTo(605.9547,636.57303,667.3308099999999,646.43714,687.05892,651.91714);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "round";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(550.05848,705.62125);
|
||||
ctx.bezierCurveTo(573.0745900000001,706.71725,635.54681,734.1173600000001,662.94681,749.4614700000001);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "round";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(569.78648,573.0048);
|
||||
ctx.bezierCurveTo(601.5707,563.1408,692.53892,559.8528,712.26703,563.1408);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "round";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(3.1525932,710.00536);
|
||||
ctx.bezierCurveTo(-22.055518,715.48536,-79.047739,745.07747,-109.73585,772.47758);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "round";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(-34.111629,654.10914);
|
||||
ctx.bezierCurveTo(-62.607629,656.30114,-114.11985000000001,663.9731400000001,-137.13596,674.93325);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "round";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(-38.495629,586.15692);
|
||||
ctx.bezierCurveTo(-76.85574,575.1968,-157.95996,580.6768,-177.68807,589.44491);
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "butt";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(-41.675629,439.32136);
|
||||
ctx.lineTo(-41.675629,566.34569);
|
||||
ctx.lineTo(-93.72685,566.34569);
|
||||
ctx.bezierCurveTo(-99.55329499999999,829.8689099999999,218.71792,826.24936,262.9917,825.16958);
|
||||
ctx.bezierCurveTo(307.81048,824.07647,646.49437,825.52791,621.62037,549.87069);
|
||||
ctx.lineTo(579.59726,549.87069);
|
||||
ctx.lineTo(577.44837,446.96191999999996);
|
||||
ctx.bezierCurveTo(501.82413999999994,478.74602999999996,96.42092599999995,476.58547,-41.67562900000007,439.32135999999997);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "#d7d7d7";
|
||||
ctx.strokeStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(194.05837,466.43958);
|
||||
ctx.bezierCurveTo(194.05837,430.27146999999997,215.66548,237.52380999999997,227.72147999999999,221.08369999999996);
|
||||
ctx.lineTo(351.55826,226.78069999999997);
|
||||
ctx.bezierCurveTo(340.59815000000003,257.46880999999996,319.89015,411.05714,325.37015,469.14536);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.save();
|
||||
ctx.fillStyle = "rgba(0, 0, 0, 0)";
|
||||
ctx.strokeStyle = "#000000";
|
||||
ctx.lineWidth = 20.37454605102539;
|
||||
ctx.lineCap = "butt";
|
||||
ctx.lineJoin = "round";
|
||||
ctx.miterLimit = 4;
|
||||
ctx.beginPath();
|
||||
ctx.moveTo(263.23037,219.17781);
|
||||
ctx.bezierCurveTo(209.02281,219.9517,155.01337,230.66592,105.40514999999999,251.41147);
|
||||
ctx.bezierCurveTo(124.77393,260.14114,142.75193,269.80447000000004,156.26259,277.19836);
|
||||
ctx.bezierCurveTo(101.54814999999999,287.66580999999996,23.972259999999977,334.24057999999997,-9.20318450000002,369.84013999999996);
|
||||
ctx.bezierCurveTo(-10.36285100000002,356.41981,-10.73551800000002,342.11868999999996,-10.39707300000002,327.57824999999997);
|
||||
ctx.bezierCurveTo(-68.96529500000003,384.63102999999995,-109.75229000000002,464.09403,-118.55874000000001,566.34569);
|
||||
ctx.lineTo(-41.675629000000015,566.34569);
|
||||
ctx.lineTo(-41.675629000000015,439.32147);
|
||||
ctx.bezierCurveTo(96.42092599999998,476.58558,501.82402999999994,478.74613999999997,577.4483700000001,446.96202999999997);
|
||||
ctx.lineTo(579.5972600000001,549.87069);
|
||||
ctx.lineTo(660.7781400000001,549.87069);
|
||||
ctx.bezierCurveTo(649.6127000000001,467.24692,617.1321400000002,400.28403,571.4791400000001,348.58980999999994);
|
||||
ctx.bezierCurveTo(571.2552600000001,356.94624999999996,570.9641400000002,365.08991999999995,570.2852600000001,372.94402999999994);
|
||||
ctx.bezierCurveTo(537.1098100000002,337.34457999999995,459.5339200000001,290.76980999999995,404.8194800000001,280.3023599999999);
|
||||
ctx.bezierCurveTo(416.6672600000001,273.81846999999993,432.09703000000013,265.6700299999999,448.7527000000001,257.85813999999993);
|
||||
ctx.bezierCurveTo(391.08781,231.15081,326.98737,218.2677,263.23037,219.17781);
|
||||
ctx.closePath();
|
||||
ctx.fill();
|
||||
ctx.stroke();
|
||||
ctx.restore();
|
||||
ctx.restore();
|
||||
ctx.restore();
|
||||
};
|
After Width: | Height: | Size: 14 KiB |
|
@ -0,0 +1,184 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) by Marsupilami -->
|
||||
|
||||
<svg
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
version="1.0"
|
||||
width="100"
|
||||
height="100"
|
||||
viewBox="-187.81991 -187.81991 910.21878 910.32965"
|
||||
id="svg10326"
|
||||
inkscape:version="0.48.4 r9939"
|
||||
sodipodi:docname="kitty.svg"
|
||||
inkscape:export-filename="/home/neale/src/scoreboard/res/kitty-k.png"
|
||||
inkscape:export-xdpi="226.56"
|
||||
inkscape:export-ydpi="226.56">
|
||||
<metadata
|
||||
id="metadata18">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title></dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1123"
|
||||
inkscape:window-height="791"
|
||||
id="namedview16"
|
||||
showgrid="false"
|
||||
inkscape:object-paths="true"
|
||||
inkscape:zoom="5.7699913"
|
||||
inkscape:cx="49.511891"
|
||||
inkscape:cy="51.063088"
|
||||
inkscape:window-x="166"
|
||||
inkscape:window-y="6"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="g3131"
|
||||
units="px" />
|
||||
<defs
|
||||
id="defs10328" />
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
inkscape:label="Background"
|
||||
style="display:inline"
|
||||
transform="translate(0,-254.89235)">
|
||||
<path
|
||||
style="fill:#00ff00;fill-opacity:1;stroke:#000000;stroke-width:18.33709145;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
d="m 263.63628,249.48375 c -48.7199,0.6955 -97.2308,10.3897 -141.8278,29.0103 -0.061,0.025 -0.1537,-0.026 -0.2149,0 -27.7341,-12.5 -58.4116,-22.988 -80.584,-19.77 -16.9648,22.5721 -22.8832,55.8895 -23.638,88.3201 -52.7114,51.3475 -89.4197,122.8642 -97.3455,214.8907 l 22.3487,0 c -5.2438,237.1709 281.2003,233.9133 321.0466,232.9415 7.5632,-0.1843 24.3722,-0.2517 46.6313,-1.934 14.8394,-1.1217 32.2324,-3.0005 50.7142,-6.017 4.6205,-0.754 9.2101,-1.6677 13.9679,-2.5786 99.9144,-19.1296 226.1436,-74.4293 211.4524,-237.2394 l 35.2421,0 c -10.0489,-74.3614 -39.2814,-134.628 -80.3691,-181.1528 0.9973,-37.1762 -3.8339,-78.0871 -23.638,-104.4369 -23.8877,-3.467 -57.5151,9.0358 -86.8158,22.7784 -0.06,-0.028 -0.1551,0.028 -0.2149,0 -51.8519,-23.9803 -109.44,-35.6304 -166.7552,-34.8123 z"
|
||||
id="path3770-1"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:label="Foreground"
|
||||
id="g3131"
|
||||
inkscape:groupmode="layer"
|
||||
style="display:inline"
|
||||
transform="translate(0,-254.89235)">
|
||||
<path
|
||||
style="fill:#2d2d2d;fill-opacity:0.67543856;stroke:#000000;stroke-width:18.33709145;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
d="m 263.63628,249.48375 c -48.7868,0.6965 -97.3953,10.3393 -142.0427,29.0103 17.4319,7.8567 33.6121,16.5537 45.7717,23.2082 -49.243,9.4207 -119.0613,51.338 -148.9192,83.3776 -1.0437,-12.0783 -1.3791,-24.9493 -1.0745,-38.0357 -52.7114,51.3475 -89.4197,122.8642 -97.3455,214.8907 l 69.1948,0 0,-114.3218 c 124.2869,33.5377 489.1497,35.4822 557.2116,6.8765 l 1.934,92.6178 73.0628,0 c -10.0489,-74.3614 -39.2814,-134.628 -80.3691,-181.1528 -0.2015,7.5208 -0.4635,14.8501 -1.0745,21.9188 -29.8579,-32.0395 -99.6762,-73.9568 -148.9192,-83.3775 10.663,-5.8355 24.5498,-13.1691 39.5399,-20.1998 -51.8984,-24.0366 -109.5888,-35.6314 -166.9701,-34.8123 z"
|
||||
id="path3770"
|
||||
inkscape:connector-curvature="0" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
d="m -10.77912,447.61295 0,114.3219 -46.8461,0 c -5.2438,237.1709 281.2003,233.9133 321.0467,232.9415 40.3369,-0.9838 345.1524,0.3225 322.7658,-247.769 l -37.8208,0 -1.934,-92.6179 c -68.0618,28.6057 -432.9247,26.6612 -557.2116,-6.8765 z"
|
||||
id="path3836" />
|
||||
<g
|
||||
transform="matrix(0.09156069,0,0,0.09156069,-143.56072,734.90135)"
|
||||
id="g3003"
|
||||
style="fill:none;display:inline">
|
||||
<path
|
||||
style="fill:none;stroke:#000000;stroke-width:200.27253723;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none"
|
||||
d="m 5838.2978,-4701.1388 c 537.8182,102.8903 1300.7265,561.6477 1626.8271,911.5751 39.6465,-458.826 14.7488,-1033.8964 -245.3019,-1379.9002 -394.3676,-57.2371 -1037.4309,280.0147 -1381.5252,468.3251 z"
|
||||
id="path9502"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccc" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3850"
|
||||
d="m 3397.0185,-4731.6101 c -537.8182,102.8903 -1300.7265,561.6477 -1626.8271,911.5751 -39.6465,-458.826 -14.7488,-1033.8963 245.3019,-1379.9001 394.3676,-57.2372 1037.4309,280.0146 1381.5252,468.325 z"
|
||||
style="fill:none;stroke:#000000;stroke-width:200.27253723;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
|
||||
</g>
|
||||
<path
|
||||
d="m 73.55778,610.67995 c 0,0 3.3877,22.0661 17.6712,26.5526 0,0 6.6839,2.0143 13.4594,-0.6409 0,0 6.5924,-2.5637 10.8957,-8.5152 0,0 4.1203,-5.7683 4.9443,-14.4666 0,0 0.6409,-6.043 -0.2747,-15.84 0,0 -1.3734,-6.7755 -4.9442,-12.2691 0,0 -4.0287,-6.2261 -9.7055,-8.7898 0,0 -42.955,-14.9188 -46.9629,-10.4977 -4.0079,4.4211 27.4312,12.5413 23.0363,14.8303 0,0 -10.5002,7.9365 -8.1196,29.6364"
|
||||
id="path2995"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;display:inline"
|
||||
inkscape:connector-curvature="0"
|
||||
sodipodi:nodetypes="cccccccczcc" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="path9508"
|
||||
d="m 294.46568,681.76645 c 0,0 -10.8958,7.3248 -26.1864,6.7755 0,0 -13.6425,-0.4578 -26.3695,-6.6839 0,0 -6.5923,-3.2962 -9.6138,-9.9802 0,0 -2.93,-6.4092 -1.9228,-14.375 0,0 0.824,-6.043 3.8455,-10.9873 0,0 3.4793,-5.4021 8.7899,-8.0573 0,0 10.2548,-6.7755 24.7213,-6.5008 0,0 14.1004,0.2747 24.9961,6.7755 0,0 5.1274,2.3805 8.6067,7.4164 0,0 3.3878,4.9443 4.1203,10.8041 0,0 0.9156,7.5996 -2.0144,14.1004 0,0 -2.8384,6.5008 -8.9729,10.7126" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#d35f5f;fill-opacity:1;stroke:none;display:inline"
|
||||
id="path9510"
|
||||
d="m 270.65988,647.33965 c 0,0 9.4307,0.7325 14.4666,6.6839 0,0 1.8312,1.3734 2.5637,3.8455 l 0.9156,4.5781 c 0,0 -0.092,2.7468 -2.1059,5.1274 0,0 -1.8312,2.1974 -4.4865,3.3877 0,0 -7.0502,3.5709 -16.0231,3.1131 0,0 -9.2476,-0.3662 -15.4738,-4.9443 0,0 -5.402,-5.1274 -3.4793,-10.0717 0,0 0.641,-2.6552 2.7469,-5.3105 0,0 2.0143,-2.5637 4.4864,-3.9371 0,0 8.2405,-3.2046 16.3894,-2.4721" />
|
||||
<path
|
||||
sodipodi:nodetypes="cccccccczcc"
|
||||
inkscape:connector-curvature="0"
|
||||
style="fill:#000000;fill-opacity:1;stroke:none;display:inline"
|
||||
id="path9512"
|
||||
d="m 451.94998,611.17315 c 0,0 -3.3877,22.0661 -17.6712,26.5526 0,0 -6.6839,2.0143 -13.4594,-0.6409 0,0 -6.5924,-2.5637 -10.8957,-8.5152 0,0 -4.1202,-5.7683 -4.9443,-14.4666 0,0 -0.6409,-6.043 0.2747,-15.84 0,0 1.3734,-6.7755 4.9443,-12.2691 0,0 4.0286,-6.2261 9.7054,-8.7898 0,0 42.955,-14.9188 46.9629,-10.4977 4.0079,4.4211 -27.4312,12.5413 -23.0363,14.8303 0,0 10.5002,7.9365 8.1196,29.6364" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3838"
|
||||
d="m 550.38728,624.15305 c 21.7009,0.9864 76.9394,9.8641 94.6947,14.7961"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3840"
|
||||
d="m 521.78158,687.28285 c 20.7145,0.9864 76.9395,25.6465 101.5995,39.4562"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3842"
|
||||
d="m 539.53678,567.92805 c 28.6058,-8.8776 110.4772,-11.8368 128.2325,-8.8776"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3844"
|
||||
d="m 29.56628,691.22855 c -22.6873,4.932 -73.9803,31.5649 -101.5996,56.225"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3846"
|
||||
d="m -3.97152,640.92195 c -25.6464,1.9728 -72.0074,8.8776 -92.7219,18.7417"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
|
||||
<path
|
||||
sodipodi:nodetypes="cc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3848"
|
||||
d="m -7.91712,579.76495 c -34.5241,-9.8641 -107.5179,-4.9321 -125.2732,2.9592"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
|
||||
<path
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3796"
|
||||
d="m -10.77912,447.61295 0,114.3219 -46.8461,0 c -5.2438,237.1709 281.2003,233.9133 321.0467,232.9415 40.3369,-0.9838 345.1524,0.3225 322.7658,-247.769 l -37.8208,0 -1.934,-92.6179 c -68.0618,28.6057 -432.9247,26.6612 -557.2116,-6.8765 z"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline" />
|
||||
<path
|
||||
sodipodi:nodetypes="ccccc"
|
||||
inkscape:connector-curvature="0"
|
||||
id="path3852"
|
||||
d="m 201.38148,472.01935 c 0,-32.5513 19.4464,-206.0242 30.2968,-220.8203 l 111.4531,5.1273 c -9.8641,27.6193 -28.5013,165.8488 -23.5693,218.1282 z"
|
||||
style="fill:#d7d7d7;fill-opacity:1;fill-rule:nonzero;stroke:none;display:inline" />
|
||||
<path
|
||||
id="path3817"
|
||||
d="m 263.63628,249.48375 c -48.7868,0.6965 -97.3953,10.3393 -142.0427,29.0103 17.4319,7.8567 33.6121,16.5537 45.7717,23.2082 -49.243,9.4207 -119.0613,51.338 -148.9192,83.3776 -1.0437,-12.0783 -1.3791,-24.9493 -1.0745,-38.0357 -52.7114,51.3475 -89.4197,122.8642 -97.3455,214.8907 l 69.1948,0 0,-114.3218 c 124.2869,33.5377 489.1497,35.4822 557.2116,6.8765 l 1.934,92.6178 73.0628,0 c -10.0489,-74.3614 -39.2814,-134.628 -80.3691,-181.1528 -0.2015,7.5208 -0.4635,14.8501 -1.0745,21.9188 -29.8579,-32.0395 -99.6762,-73.9568 -148.9192,-83.3775 10.663,-5.8355 24.5498,-13.1691 39.5399,-20.1998 -51.8984,-24.0366 -109.5888,-35.6314 -166.9701,-34.8123 z"
|
||||
style="fill:none;stroke:#000000;stroke-width:18.33709145;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;display:inline"
|
||||
inkscape:connector-curvature="0" />
|
||||
</g>
|
||||
<g
|
||||
id="g3123"
|
||||
transform="matrix(0.09156068,0,0,0.09156068,-143.56072,480.00905)"
|
||||
style="display:inline" />
|
||||
</svg>
|
||||
<!-- version: 20090314, original size: 8945 6260.6636, border: 3% -->
|
||||
|
After Width: | Height: | Size: 12 KiB |
143
res/others.html
|
@ -1,143 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Free Derby Scoreboard Software</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
<style type="text/css">
|
||||
table {
|
||||
border-collapse: collapse;
|
||||
}
|
||||
td {
|
||||
border: solid white 1px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>Free Derby Scoreboard Software</h1>
|
||||
|
||||
<p>
|
||||
This is a list of no-cost roller derby scoreboard software I have
|
||||
found. Mine is at the top, because I think it's the best. I might
|
||||
be wrong, though! Try the rest out and see for yourself.
|
||||
</p>
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Source?</th>
|
||||
<th>Platform</th>
|
||||
<th>Windows</th>
|
||||
<th>Notes</th>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://woozle.org/scoreboard/">LADD Scoreboard</a></td>
|
||||
<td>YES</td>
|
||||
<td>JavaScript (web browser)</td>
|
||||
<td>1</td>
|
||||
<td>Easy to operate, easy to read; also, I wrote it :)</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://poang.gg/">POÄNG</a> (formerly <a href="http://www.david.kleinschmidt.name/qcrg-scoreboard/">QCRG Scoreboard</a>)</td>
|
||||
<td>YES</td>
|
||||
<td>Adobe AIR</td>
|
||||
<td>2</td>
|
||||
<td>Nice clean layout</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://sourceforge.net/projects/derbyscoreboard/">CRD Scoreboard</a></td>
|
||||
<td>YES</td>
|
||||
<td>Java</td>
|
||||
<td>2</td>
|
||||
<td>Interesting cli/srv model allowing multiple operators on a LAN</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://labs.metro-six.com/derbyscore/">Derby Score</a></td>
|
||||
<td>YES</td>
|
||||
<td>Java</td>
|
||||
<td>2</td>
|
||||
<td>Could use some visual polish, but I like the author's attitude</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://rdnation.com/roller-derby-scoreboard">Thor's Hammer</a></td>
|
||||
<td>no</td>
|
||||
<td>Windows</td>
|
||||
<td>2</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://www.rollerderbyproductions.com/">JamTracker</a></td>
|
||||
<td>no</td>
|
||||
<td>Adobe AIR</td>
|
||||
<td>2</td>
|
||||
<td>Busy layout</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://www.rinxter.com/">Rinxter</a></td>
|
||||
<td>no?</td>
|
||||
<td>Windows</td>
|
||||
<td>2</td>
|
||||
<td>If Oracle made a scoreboard, this would be it. It's <strong>massive</strong>: generates reports!</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://www.zebrahuddle.com/index.php?action=downloads;sa=view&id=1">DerbyBoard</a></td>
|
||||
<td>no</td>
|
||||
<td>Windows</td>
|
||||
<td>2</td>
|
||||
<td>What an incredible waste of screen real estate! I hope you play somewhere very dark.</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td><a href="http://www.pcscoreboards.com/rollerderbyscoreboardpro/">Scoreboard Pro</a></td>
|
||||
<td>no</td>
|
||||
<td>Windows</td>
|
||||
<td>2</td>
|
||||
<td>The author does not appear to have read WFTDA's rules.</td>
|
||||
</table>
|
||||
|
||||
<dl>
|
||||
<dt>Source?</dt>
|
||||
<dd>
|
||||
Whether you can download and modify the source code. Important to
|
||||
many nerds like myself.
|
||||
</dd>
|
||||
|
||||
<dt>Platform</dt>
|
||||
<dd>
|
||||
What you need to buy/install before you can run it.
|
||||
</dd>
|
||||
|
||||
<dt>Windows</dt>
|
||||
<dd>
|
||||
<dl>
|
||||
<dt>1</dt>
|
||||
<dd>
|
||||
Operator interacts directly with the image on the projector.
|
||||
What you see is what the audience sees.
|
||||
</dd>
|
||||
<dt>2</dt>
|
||||
<dd>
|
||||
Separate interface for operator and audience, like an old-school
|
||||
7-panel display scoreboard. What you see is a control panel;
|
||||
the audience sees something different.
|
||||
</dd>
|
||||
</dl>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<address>
|
||||
Neale Pickett <<a href="mailto:neale@woozle.org">neale@woozle.org</a>>
|
||||
</address>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
161
res/penalties.js
|
@ -1,161 +0,0 @@
|
|||
/***********************************
|
||||
* Penalties
|
||||
*/
|
||||
function penalties (team) {
|
||||
var table = document.getElementById("penalties-" + team);
|
||||
|
||||
var majors = table.getElementsByClassName("majors")[0];
|
||||
var sk8ers = table.getElementsByClassName("sk8ers")[0];
|
||||
|
||||
var majdiv = majors.getElementsByTagName("div");
|
||||
var sk8div = sk8ers.getElementsByTagName("div");
|
||||
|
||||
var ret = [];
|
||||
|
||||
for (var i = 0; i < 20; i += 1) {
|
||||
ret.push([sk8div[i].text,
|
||||
majdiv[i].value || 0]);
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
function penalties_save () {
|
||||
var ls = localStorage || {};
|
||||
|
||||
var name_a = document.getElementById("name-a").innerHTML;
|
||||
var name_b = document.getElementById("name-b").innerHTML;
|
||||
|
||||
var pen_a = JSON.stringify(penalties("a"));
|
||||
var pen_b = JSON.stringify(penalties("b"));
|
||||
|
||||
ls["rdsb_penalties_a"] = pen_a;
|
||||
ls["rdsb_penalties_b"] = pen_b;
|
||||
|
||||
ls["rdsb_roster " + name_a] = pen_a;
|
||||
ls["rdsb_roster " + name_b] = pen_b;
|
||||
}
|
||||
|
||||
function penalties_setdiv (div, value) {
|
||||
if (div.text == undefined) {
|
||||
div.value = value;
|
||||
div.style.height = (value||0) + "em";
|
||||
div.innerHTML = value?value:"";
|
||||
} else {
|
||||
div.text = value;
|
||||
div.innerHTML = value?"":"•";
|
||||
for (var i in value) {
|
||||
var c = value[i];
|
||||
// XXX: use CSS "text-wrap: unrestricted" when supported
|
||||
div.innerHTML += c + " ";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function penalties_load (team, values) {
|
||||
var table = document.getElementById("penalties-" + team);
|
||||
|
||||
var majors = table.getElementsByClassName("majors")[0];
|
||||
var sk8ers = table.getElementsByClassName("sk8ers")[0];
|
||||
|
||||
var majdiv = majors.getElementsByTagName("div");
|
||||
var sk8div = sk8ers.getElementsByTagName("div");
|
||||
|
||||
for (var i = 0; i < values.length; i += 1) {
|
||||
penalties_setdiv(sk8div[i], values[i][0]);
|
||||
penalties_setdiv(majdiv[i], values[i][2]);
|
||||
}
|
||||
}
|
||||
|
||||
function penalties_setTeamName (team, name) {
|
||||
var ls = localStorage || {};
|
||||
var roster_in = ls["rdsb_roster " + name];
|
||||
var roster_out = [];
|
||||
|
||||
if (roster_in) {
|
||||
roster_in = JSON.parse(roster_in);
|
||||
}
|
||||
|
||||
for (var i = 0; i < 20; i += 1) {
|
||||
if (! roster_in) {
|
||||
roster_out.push(["", 0, 0]);
|
||||
} else {
|
||||
roster_out.push([roster_in[i][0], 0, 0])
|
||||
}
|
||||
}
|
||||
penalties_load(team, roster_out);
|
||||
}
|
||||
|
||||
function penalties_click (event) {
|
||||
var element = event.currentTarget;
|
||||
var pops = element.parentNode;
|
||||
var div = element.getElementsByTagName("div")[0];
|
||||
var inc = event.shiftKey?-1:1;
|
||||
var val;
|
||||
|
||||
if (pops.className == "majors") {
|
||||
val = ((div.value || 0) + inc + 9) % 9;
|
||||
} else if (state == SETUP) {
|
||||
val = prompt("Enter skater number", div.text);
|
||||
}
|
||||
|
||||
if (val != undefined) {
|
||||
penalties_setdiv(div, val);
|
||||
penalties_save();
|
||||
}
|
||||
}
|
||||
|
||||
// Remove penalties area if there are no players set
|
||||
function penalties_duck () {
|
||||
var pen = document.getElementById("penalties");
|
||||
var a = penalties("a");
|
||||
var b = penalties("b");
|
||||
|
||||
for (var i = 0; i < 20; i += 1) {
|
||||
if (a[i][0] || b[i][0]) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
pen.style.display = "none";
|
||||
}
|
||||
|
||||
function penalties_init () {
|
||||
var ls = localStorage || {};
|
||||
|
||||
// Populate ALL ROWS AT ONCE because I'm crazy like that.
|
||||
for (var j = 0; j < 2; j += 1) {
|
||||
var team = (j==0)?"a":"b";
|
||||
|
||||
var table = document.getElementById("penalties-" + team);
|
||||
var majors = table.getElementsByClassName("majors")[0];
|
||||
var sk8ers = table.getElementsByClassName("sk8ers")[0];
|
||||
|
||||
for (var i = 0; i < 20; i += 1) {
|
||||
var td;
|
||||
var div;
|
||||
|
||||
var majdiv = document.createElement("div");
|
||||
td = document.createElement("td");
|
||||
td.onclick = penalties_click;
|
||||
td.appendChild(majdiv);
|
||||
majors.appendChild(td);
|
||||
|
||||
|
||||
div = document.createElement("div");
|
||||
div.text = "";
|
||||
div.appendChild(document.createTextNode("•"));
|
||||
td = document.createElement("td");
|
||||
td.onclick = penalties_click;
|
||||
td.appendChild(div);
|
||||
sk8ers.appendChild(td);
|
||||
}
|
||||
}
|
||||
|
||||
if (ls.rdsb_penalties_a) {
|
||||
penalties_load("a", JSON.parse(ls.rdsb_penalties_a));
|
||||
}
|
||||
if (ls.rdsb_penalties_b) {
|
||||
penalties_load("b", JSON.parse(ls.rdsb_penalties_b));
|
||||
}
|
||||
}
|
Before Width: | Height: | Size: 47 KiB |
|
@ -1,53 +1,60 @@
|
|||
@font-face {
|
||||
font-family: 'Magenta';
|
||||
src: url('Magenta.woff') format('woff');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
font-family: 'Ubuntu';
|
||||
src: url('Ubuntu-Medium.ttf');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'PermanentMarker';
|
||||
src: url('PermanentMarker.woff') format('woff');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
font-family: 'Ubuntu';
|
||||
src: url('Ubuntu-Bold.ttf');
|
||||
font-weight: bold;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
body {
|
||||
background: url(bg.jpg) #222;
|
||||
background-size: 100% auto;
|
||||
font-size: 160px;
|
||||
color: #eee;
|
||||
margin: 0;
|
||||
background: url(bg.jpg) #222;
|
||||
background-size: 100% auto;
|
||||
font-size: 160px;
|
||||
color: #eee;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
input {
|
||||
font: inherit;
|
||||
}
|
||||
|
||||
input[readonly] {
|
||||
color: inherit;
|
||||
background: inherit;
|
||||
border: inherit;
|
||||
}
|
||||
|
||||
#scoreboard {
|
||||
cursor: default;
|
||||
font-family: sans-serif;
|
||||
font-weight: bold;
|
||||
cursor: default;
|
||||
font-family: Ubuntu, sans-serif;
|
||||
}
|
||||
#scoreboard p {
|
||||
margin: 0;
|
||||
margin: 0;
|
||||
}
|
||||
#scoreboard *[id] {
|
||||
cursor: pointer;
|
||||
-moz-user-select: none;
|
||||
-khtml-user-select: none;
|
||||
user-select: none;
|
||||
cursor: pointer;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
.left, .right {
|
||||
width: 2em;
|
||||
height: 100%;
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 2em;
|
||||
height: 100%;
|
||||
text-align: center;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
}
|
||||
|
||||
.left {
|
||||
left: 0;
|
||||
left: 0;
|
||||
}
|
||||
.right {
|
||||
right: 0;
|
||||
right: 0;
|
||||
}
|
||||
|
||||
.center {
|
||||
|
@ -55,79 +62,103 @@ body {
|
|||
}
|
||||
|
||||
.logo {
|
||||
max-width: 1.8em;
|
||||
max-height: 2em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.logo img {
|
||||
max-width: 1.8em;
|
||||
max-height: 2em;
|
||||
display: none;
|
||||
}
|
||||
|
||||
.logo input {
|
||||
top: 30%;
|
||||
font-size: 10pt;
|
||||
vertical-align: top;
|
||||
max-height: 15pt;
|
||||
border: none;
|
||||
}
|
||||
|
||||
.setup {
|
||||
background: rgba(0, 255,0, 0.3);
|
||||
}
|
||||
|
||||
|
||||
.timeouts {
|
||||
position: absolute;
|
||||
font-size: 50%;
|
||||
bottom: 1em;
|
||||
color: #0f0;
|
||||
position: absolute;
|
||||
font-size: 50%;
|
||||
bottom: 1em;
|
||||
color: #0f0;
|
||||
}
|
||||
#timeouts-a {
|
||||
left: 0em;
|
||||
left: 0em;
|
||||
}
|
||||
#timeouts-b {
|
||||
right: 0em;
|
||||
right: 0em;
|
||||
}
|
||||
|
||||
/* Jammer indicators */
|
||||
#jammer-a, #jammer-b {
|
||||
font-family: monospace;
|
||||
position: absolute;
|
||||
bottom: 0em;
|
||||
color: #444;
|
||||
font-family: monospace;
|
||||
position: absolute;
|
||||
bottom: 0em;
|
||||
color: #444;
|
||||
}
|
||||
#jammer-a.lead, #jammer-b.lead, #jamtext, #periodtext {
|
||||
color: yellow;
|
||||
color: yellow;
|
||||
}
|
||||
#jammer-a {
|
||||
left: 0.5em;
|
||||
left: 0.5em;
|
||||
}
|
||||
#jammer-b {
|
||||
right: 0.5em;
|
||||
right: 0.5em;
|
||||
}
|
||||
|
||||
#jam, #period {
|
||||
text-align: center;
|
||||
background: #000;
|
||||
border-radius: 15px;
|
||||
text-align: center;
|
||||
font-weight: bold;
|
||||
background: #000;
|
||||
border-radius: 15px;
|
||||
}
|
||||
#period {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
width: 3.4em;
|
||||
margin-left: -1.7em;
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 50%;
|
||||
width: 3.4em;
|
||||
margin-left: -1.7em;
|
||||
}
|
||||
|
||||
#jam {
|
||||
position: absolute;
|
||||
bottom: 0em;
|
||||
left: 50%;
|
||||
width: 4em;
|
||||
margin-left: -2em;
|
||||
position: absolute;
|
||||
bottom: 0em;
|
||||
left: 50%;
|
||||
width: 3.5em;
|
||||
margin-left: -1.75em;
|
||||
}
|
||||
|
||||
#jamtext, #periodtext {
|
||||
text-align: center;
|
||||
font-family: PermanentMarker, sans-serif;
|
||||
font-weight: normal;
|
||||
font-size: 75%;
|
||||
#jamtext, #periodtext, #preset {
|
||||
text-align: center;
|
||||
font-family: Ubuntu, sans-serif;
|
||||
font-size: 75%;
|
||||
|
||||
position: absolute;
|
||||
left: 50%;
|
||||
width: 5em;
|
||||
margin-left: -2.5em;
|
||||
padding: 0.2em;
|
||||
position: absolute;
|
||||
left: 50%;
|
||||
width: 5em;
|
||||
margin-left: -2.7em;
|
||||
z-index: -1;
|
||||
}
|
||||
|
||||
#periodtext {
|
||||
top: 1.4em;
|
||||
top: 1.4em;
|
||||
}
|
||||
|
||||
#preset {
|
||||
top: 40%;
|
||||
}
|
||||
|
||||
#jamtext {
|
||||
bottom: 1.4em;
|
||||
bottom: 1.4em;
|
||||
}
|
||||
|
||||
#advert {
|
||||
|
@ -137,24 +168,24 @@ body {
|
|||
}
|
||||
|
||||
.score {
|
||||
position: absolute;
|
||||
font-size: 1.2em;
|
||||
top: 50%;
|
||||
margin-top: -0.6em;
|
||||
position: absolute;
|
||||
font-size: 1.2em;
|
||||
top: 50%;
|
||||
margin-top: -0.6em;
|
||||
}
|
||||
#score-a {
|
||||
left: 0em;
|
||||
left: 0em;
|
||||
}
|
||||
#score-b {
|
||||
right: 0em;
|
||||
right: 0em;
|
||||
}
|
||||
|
||||
#jamno {
|
||||
color: #0f0;
|
||||
position: absolute;
|
||||
font-size: 50%;
|
||||
bottom: 2.2em;
|
||||
right: 25%;
|
||||
color: #0f0;
|
||||
position: absolute;
|
||||
font-size: 50%;
|
||||
bottom: 2.2em;
|
||||
right: 25%;
|
||||
}
|
||||
|
||||
|
||||
|
@ -162,34 +193,46 @@ body {
|
|||
* States timers can be in
|
||||
*/
|
||||
#jam.paused, #period.paused {
|
||||
color: #aaf;
|
||||
color: #aaf;
|
||||
}
|
||||
#jam.lowtime, #period.lowtime {
|
||||
background: #f24;
|
||||
background: #f24;
|
||||
}
|
||||
#jam.timeout {
|
||||
background: #044;
|
||||
background: #044;
|
||||
}
|
||||
#jam.lineup {
|
||||
background: #060;
|
||||
background: #060;
|
||||
}
|
||||
|
||||
#close, #prefs {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
right: 0;
|
||||
height: 16px;
|
||||
width: 16px;
|
||||
opacity: 0.5;
|
||||
}
|
||||
|
||||
#prefs {
|
||||
top: inherit;
|
||||
bottom: 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* Notices
|
||||
*/
|
||||
#notice {
|
||||
display: none;
|
||||
position: absolute;
|
||||
bottom: 1.3em;
|
||||
left: 50%;
|
||||
width: 4em;
|
||||
display: none;
|
||||
position: absolute;
|
||||
bottom: 1.3em;
|
||||
left: 50%;
|
||||
width: 4em;
|
||||
height: 3em;
|
||||
margin-left: -2em;
|
||||
margin-left: -2em;
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#notice embed {
|
||||
width: 100%;
|
||||
#notice img {
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,68 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Woozle Roller Derby Scoreboard
|
||||
Copyright © 2014 Neale Pickett <neale@woozle.org>
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>Woozle Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="scoreboard.css">
|
||||
<script type="text/javascript" src="kitty.js"></script>
|
||||
<script type="text/javascript" src="scoreboard.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<div id="scoreboard">
|
||||
<div class="left">
|
||||
<div class="logo" id="logo-a">
|
||||
<img class="img" id="img-a" src="" alt="A">
|
||||
<canvas class="kitty" id="kitty-a"></canvas>
|
||||
<input type="color" class="setup color" id="color-a" value="#666666">
|
||||
<input type="image" class="setup load" id="load-a" src="ic_picture.png">
|
||||
</div>
|
||||
<span class="timeouts" id="timeouts-a">3</span>
|
||||
<span class="jammer" id="jammer-a">★</span>
|
||||
<span class="score" id="score-a">-</span>
|
||||
</div>
|
||||
|
||||
<div class="right">
|
||||
<div class="logo" id="logo-b">
|
||||
<img class="img" id="img-b" src="" alt="B">
|
||||
<canvas class="kitty" id="kitty-b"></canvas>
|
||||
<input type="color" class="setup color" id="color-b" value="#ffffff">
|
||||
<input type="image" class="setup load" id="load-b" src="ic_picture.png">
|
||||
</div>
|
||||
<span class="timeouts" id="timeouts-b">3</span>
|
||||
<span class="jammer" id="jammer-b">★</span>
|
||||
<span class="score" id="score-b">-</span>
|
||||
</div>
|
||||
|
||||
<div class="center">
|
||||
<input id="period" value="--:--">
|
||||
<span id="periodtext"></span>
|
||||
<span class="setup" id="preset">-</span>
|
||||
<input id="jam" value="-:--">
|
||||
<span id="jamtext"></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="notice">
|
||||
</div>
|
||||
|
||||
<img id="close" src="close-icon-white.png" title="Close Scoreboard">
|
||||
|
||||
</body>
|
||||
</html>
|
1012
res/scoreboard.js
Before Width: | Height: | Size: 65 KiB |
|
@ -1,41 +0,0 @@
|
|||
@font-face {
|
||||
font-family: 'PermanentMarker';
|
||||
src: url('PermanentMarker.woff') format('woff');
|
||||
font-weight: normal;
|
||||
font-style: normal;
|
||||
}
|
||||
|
||||
body {
|
||||
background: #222 url(bg.jpg);
|
||||
background-size: 100% auto;
|
||||
color: #eee;
|
||||
max-width: 40em;
|
||||
margin: auto auto;
|
||||
}
|
||||
h1 {
|
||||
color: #fd8;
|
||||
font-family: PermanentMarker, fantasy, sans-serif;
|
||||
font-size-adjust: 1.0;
|
||||
}
|
||||
h2 {
|
||||
font-family: sans-serif;
|
||||
}
|
||||
dt {
|
||||
font-size: 120%;
|
||||
font-weight: bold;
|
||||
}
|
||||
a {
|
||||
color: yellow;
|
||||
}
|
||||
caption {
|
||||
font-size: 33%;
|
||||
font-family: default;
|
||||
}
|
||||
|
||||
#screenshot {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
#screenshot img {
|
||||
border: solid black 4px;
|
||||
}
|
|
@ -1,2 +0,0 @@
|
|||
* When period ends and jam timer is toggled, period clock should not count up
|
||||
* Auto-scale (3-digit score wrapped in Taos)
|
223
res/usage.html
|
@ -1,223 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>Using the LADD Roller Derby Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="style.css">
|
||||
</head>
|
||||
<body>
|
||||
<h1>Using the LADD Roller Derby Scoreboard</h1>
|
||||
|
||||
<img src="scoreboard-explained.png" alt="Annotated scoreboard"
|
||||
style="border: solid black 2px;">
|
||||
|
||||
<p>
|
||||
If you don't like reading manuals, just start clicking on things;
|
||||
it's supposed to be easy to figure out.
|
||||
</p>
|
||||
|
||||
<dl>
|
||||
<dt>Space Bar</dt>
|
||||
<dd>Switch between Jam and Rotation</dd>
|
||||
|
||||
<dt>T</dt>
|
||||
<dd>Enter timeout</dd>
|
||||
|
||||
<dt>A / Shift-A</dt>
|
||||
<dd>Add / subtract a point on the left</dd>
|
||||
|
||||
<dt>B / Shift-B</dt>
|
||||
<dd>Add / subtract a point on the right</dd>
|
||||
|
||||
<dt>F5</dt>
|
||||
<dd>Enter Setup mode</dd>
|
||||
</dl>
|
||||
|
||||
<h1>Setup</h1>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
When the state indicator says "Setup", you can click on almost
|
||||
anything to change it.
|
||||
</li>
|
||||
<li>
|
||||
Set the logo before you change the team name.
|
||||
</li>
|
||||
<li>
|
||||
If your team's logo and name isn't in <a href="../logos/logos.html">the
|
||||
list</a>, please email them to me so I can add them.
|
||||
<li>
|
||||
Reload the page (click "Reload" or type F5) to get back to Setup
|
||||
mode. Scores, timeouts, and period clock time are all saved.
|
||||
</li>
|
||||
<li>
|
||||
Type Space Bar or click the jam clock to begin the first jam.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h1>Running Jams</h1>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Press Space Bar or click the jam clock to switch between 2:00
|
||||
jams and 0:30 rotations.
|
||||
</li>
|
||||
<li>
|
||||
Type "A" or "B" to add points to a team's score. You can also
|
||||
click a score to add a point.
|
||||
</li>
|
||||
<li>
|
||||
Type "Shift+A" or "Shift+B" to remove points from a team's
|
||||
score. You can also click a team logo to remove a point.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h1>Timeouts</h1>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Type "T" or click the period clock to enter into a timeout.
|
||||
</li>
|
||||
|
||||
<li>
|
||||
Click a team's timeout count to remove one from it. If it's at
|
||||
0, click it to reset it to 3.
|
||||
</li>
|
||||
|
||||
<li>
|
||||
Click the period clock during a timeout to change the time left
|
||||
in the period.
|
||||
</li>
|
||||
|
||||
<li>
|
||||
Type Space Bar or click the jam clock to exit timeout mode and
|
||||
start the next jam.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h1>Periods</h1>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Go into Timeout mode to re-set the period clock to 30:00. Click
|
||||
it to change it to a different time.
|
||||
</li>
|
||||
<li>
|
||||
Click the period indicator to cycle between "Period 1",
|
||||
"Halftime", "Period 2", and "Break".
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h1>Other cases</h1>
|
||||
|
||||
<dl>
|
||||
<dt>Halftime / Double-header break</dt>
|
||||
<dd>
|
||||
<ol>
|
||||
<li>Type "T" to enter timeout mode.</li>
|
||||
<li>Click the period indicator until it says "Halftime" or
|
||||
"Break"</li>
|
||||
<li>Click the period clock.</li>
|
||||
<li>Enter the duration of the break.</li>
|
||||
<li>Type Space Bar to start counting down.</li>
|
||||
<li>It's okay to let the jam clock reach 0:00.</li>
|
||||
</ol>
|
||||
</dd>
|
||||
|
||||
<dt>20-minute periods</dt>
|
||||
<dd>
|
||||
<ol>
|
||||
<li>During Setup or Timeout, click the period clock.</li>
|
||||
<li>Enter "20:00" for the new time.</li>
|
||||
<li>Click the period indicator until it displays the
|
||||
right period.</li>
|
||||
</ol>
|
||||
</dd>
|
||||
</dl>
|
||||
|
||||
|
||||
<h1>Advanced Tips</h1>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
Hold down the "Shift" key to make counters, logos, etc. go the
|
||||
other direction.
|
||||
</li>
|
||||
<li>
|
||||
Hold down the "Ctrl" or "Alt" key while clicking a team logo in
|
||||
Setup mode to provide a URL.
|
||||
</li>
|
||||
<li>
|
||||
Hold down the "Ctrl" or "Alt" key while clicking the period
|
||||
indicator to change it to any text.
|
||||
</li>
|
||||
<li>
|
||||
Timeouts can exceed three by clicking them while holding the
|
||||
"Shift" key.
|
||||
</li>
|
||||
<li>
|
||||
You can leave off minutes or seconds if they're zero: "30:" is
|
||||
the same as "30:00", and "19" is the same as "0:19".
|
||||
</li>
|
||||
<li>
|
||||
If part of the scoreboard changes background color, click
|
||||
(without shift) somewhere on the background to get it back to
|
||||
normal. It changed color because your browser was selecting
|
||||
that part of the page for copy and paste!
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h1>Customizing</h1>
|
||||
<p>
|
||||
If you use this, I want to add your logo and the logos of the
|
||||
teams you play to the <a href="../logos/logos.html">included set of
|
||||
logos</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
The scoreboard is written in HTML5, CSS, and JavaScript, so a web
|
||||
designer should be able to season to taste. Send me what you come
|
||||
up with, I want to see it!
|
||||
</p>
|
||||
|
||||
|
||||
<h1>If you have problems</h1>
|
||||
<p>
|
||||
If something goes wrong, please email me (link below) with as much
|
||||
detail as you can remember, and I'll try to fix it for you and
|
||||
everybody else. For example:
|
||||
</p>
|
||||
<blockquote>
|
||||
<p>
|
||||
I clicked the period timer during a timeout and the Team A logo
|
||||
turned into a photo of a burrito.
|
||||
</p>
|
||||
</blockquote>
|
||||
|
||||
<h1>Enjoy!</h1>
|
||||
<address>Neale Pickett <a href="mailto:neale@woozle.org"><neale@woozle.org></a></address>
|
||||
|
||||
</body>
|
||||
</html>
|
|
@ -1,58 +0,0 @@
|
|||
<!DOCTYPE html>
|
||||
<!--
|
||||
Roller Derby Scoreboard Copyright © 2011 Neale Pickett
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see
|
||||
<http://www.gnu.org/licenses/>.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<title>LADD Scoreboard</title>
|
||||
<meta charset="utf-8">
|
||||
<link rel="stylesheet" type="text/css" href="res/scoreboard.css">
|
||||
<script type="text/javascript" src="logos/logos.js"></script>
|
||||
<script type="text/javascript" src="res/scoreboard.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<!--
|
||||
HTML5 says not to use tables for layout. Since this is
|
||||
a highly-styled page, it looks awful without CSS. Sorry.
|
||||
-->
|
||||
<div id="scoreboard">
|
||||
<p class="left">
|
||||
<img class="logo" id="logo-a" src="" alt="A" onclick="handle(event);">
|
||||
<span class="timeouts" id="timeouts-a" onclick="handle(event);">0</span>
|
||||
<span class="jammer" id="jammer-a" onclick="handle(event);">★</span>
|
||||
<span class="score" id="score-a" onclick="handle(event);">-</span>
|
||||
</p>
|
||||
|
||||
<p class="center">
|
||||
<span id="period" onclick="handle(event);">--:--</span>
|
||||
<span id="periodtext" onclick="handle(event);"></span>
|
||||
<span id="jam" onclick="handle(event);">-:--.-</span>
|
||||
<span id="jamtext" onclick="handle(event);"></span>
|
||||
</p>
|
||||
|
||||
<p class="right">
|
||||
<img class="logo" id="logo-b" src="" alt="B" onclick="handle(event);">
|
||||
<span class="timeouts" id="timeouts-b" onclick="handle(event);">0</span>
|
||||
<span class="jammer" id="jammer-b" onclick="handle(event);">★</span>
|
||||
<span class="score" id="score-b" onclick="handle(event);">-</span>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div id="notice">
|
||||
</div>
|
||||
</body>
|
||||
</html>
|