mirror of
https://github.com/smogon/pokemon-showdown-client.git
synced 2026-07-24 12:22:46 -05:00
* Use SockJS' timeout config option This sets timeouts on connections to 5 minutes, matching the server's heartbeat interval to close sockets that shouldn't be open anymore. * Update SockJS client to v1.4.0 This fixes an issue where SockJS would parse the entire HTTP response received as JSON, not the response's body alone.
132 lines
5.7 KiB
HTML
132 lines
5.7 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<meta id="viewport" name="viewport" content="width=device-width" />
|
|
<title>Showdown!</title>
|
|
<link rel="shortcut icon" href="favicon.ico" id="dynamic-favicon" />
|
|
<link rel="stylesheet" href="style/client.css" />
|
|
<link rel="stylesheet" href="style/sim-types.css" />
|
|
<link rel="stylesheet" href="style/battle.css" />
|
|
<link rel="stylesheet" href="style/utilichart.css" />
|
|
<link rel="stylesheet" href="style/font-awesome.css" />
|
|
<meta name="robots" content="noindex" />
|
|
<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
|
|
<script>
|
|
function loadRemoteData(src) {
|
|
var scriptEl = document.createElement('script');
|
|
scriptEl.src = src.replace(/.*\/?data\//g, 'https://play.pokemonshowdown.com/data/');
|
|
document.head.appendChild(scriptEl);
|
|
}
|
|
var Config = {testclient: true};
|
|
(function() {
|
|
if (location.search !== '') {
|
|
var m = /\?~~(([^:\/]*)(:[0-9]*)?)/.exec(location.search);
|
|
if (m) {
|
|
Config.server = {
|
|
id: m[1],
|
|
host: m[2],
|
|
port: (m[3] && parseInt(m[3].substr(1))) || 8000
|
|
};
|
|
} else {
|
|
alert('Unrecognised query string syntax: ' + location.search);
|
|
}
|
|
}
|
|
})();
|
|
</script>
|
|
<!--[if lte IE 8]><script>
|
|
Config.oldie = true;
|
|
</script><![endif]-->
|
|
</head>
|
|
<body>
|
|
<div id="header" class="header">
|
|
<img class="logo" src="pokemonshowdownbeta.png" alt="Pokémon Showdown! (beta)" width="146" height="44" /><div class="maintabbarbottom"></div>
|
|
</div>
|
|
<div class="ps-room scrollable" id="mainmenu"><div class="mainmenuwrapper">
|
|
<div class="leftmenu">
|
|
<div class="activitymenu">
|
|
<div class="pmbox">
|
|
<div class="pm-window news-embed">
|
|
<h3><button class="closebutton" tabindex="-1" aria-label="Close"><i class="fa fa-times-circle"></i></button><button class="minimizebutton" tabindex="-1" aria-label="Minimize"><i class="fa fa-minus-circle"></i></button>Latest News</h3>
|
|
<div class="pm-log" style="max-height:none">
|
|
<div class="newsentry"><h4>Test client</h4><p>Welcome to the test client! You can test client changes here!</p><p>—<strong>Zarel</strong> <small class="date">on Sep 25, 2015</small></p></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="mainmenu">
|
|
<div id="loading-message" class="mainmessage">Initializing... <noscript>FAILED<br /><br />Pokémon Showdown requires JavaScript.</noscript></div>
|
|
</div>
|
|
</div>
|
|
<div class="rightmenu">
|
|
</div>
|
|
<div class="mainmenufooter">
|
|
<small><a href="//pokemonshowdown.com/" target="_blank"><strong>Pokémon Showdown</strong></a> | <a href="http://smogon.com/" target="_blank"><strong>Smogon</strong></a><br><a href="//pokemonshowdown.com/dex/" target="_blank">Pokédex</a> | <a href="//pokemonshowdown.com/replay/" target="_blank">Replays</a> | <a href="//pokemonshowdown.com/rules" target="_blank">Rules</a></small> | <small><a href="//pokemonshowdown.com/forums/" target="_blank">Forum</a></small>
|
|
</div>
|
|
</div></div>
|
|
<script>
|
|
document.getElementById('loading-message').innerHTML += ' DONE<br />Loading libraries...';
|
|
</script>
|
|
<script src="js/lib/jquery-2.1.4.min.js"></script>
|
|
<script src="js/lib/jquery-cookie.js"></script>
|
|
<script src="js/lib/autoresize.jquery.min.js"></script>
|
|
<script src="js/lib/soundmanager2-nodebug-jsmin.js"></script>
|
|
<script>
|
|
soundManager.setup({url: 'swf/'});
|
|
</script>
|
|
<script src="js/lib/html-css-sanitizer-minified.js"></script>
|
|
<script src="js/lib/lodash.core.js"></script>
|
|
<script src="js/lib/backbone.js"></script>
|
|
<script src="js/lib/d3.v3.min.js"></script>
|
|
|
|
<script>
|
|
document.getElementById('loading-message').innerHTML += ' DONE<br />Loading data...';
|
|
window.exports = window;
|
|
</script>
|
|
|
|
<script src="https://play.pokemonshowdown.com/config/config.js"></script>
|
|
<script src="js/battledata.js" onerror="alert('You must build the client with `node build` before using testclient.html')"></script>
|
|
<script src="data/pokedex-mini.js" onerror="loadRemoteData(this.src)"></script>
|
|
<script src="data/pokedex-mini-bw.js" onerror="loadRemoteData(this.src)"></script>
|
|
<script src="data/typechart.js" onerror="loadRemoteData(this.src)"></script>
|
|
<script src="js/battle.js"></script>
|
|
<script src="js/lib/sockjs-1.4.0.min.js"></script>
|
|
<script src="js/lib/color-thief.min.js"></script>
|
|
|
|
<script>
|
|
document.getElementById('loading-message').innerHTML += ' DONE<br />Loading client...';
|
|
</script>
|
|
|
|
<script src="js/client.js"></script>
|
|
<script src="js/client-topbar.js"></script>
|
|
<script src="js/client-mainmenu.js"></script>
|
|
<script src="js/client-teambuilder.js"></script>
|
|
<script src="js/client-ladder.js"></script>
|
|
<script src="js/client-chat.js"></script>
|
|
<script src="js/client-chat-tournament.js"></script>
|
|
<script src="js/battle-tooltips.js"></script>
|
|
<script src="js/client-battle.js"></script>
|
|
<script src="js/client-rooms.js"></script>
|
|
<script src="js/storage.js"></script>
|
|
<script src="data/graphics.js" onerror="loadRemoteData(this.src)"></script>
|
|
|
|
<script src="data/pokedex.js" onerror="loadRemoteData(this.src)"></script>
|
|
<script src="data/moves.js" onerror="loadRemoteData(this.src)"></script>
|
|
<script src="data/items.js" onerror="loadRemoteData(this.src)"></script>
|
|
<script src="data/abilities.js" onerror="loadRemoteData(this.src)"></script>
|
|
|
|
<script src="data/search-index.js" onerror="loadRemoteData(this.src)"></script>
|
|
<script src="data/teambuilder-tables.js" onerror="loadRemoteData(this.src)"></script>
|
|
<script src="js/search.js"></script>
|
|
|
|
<script src="data/aliases.js" async="async" onerror="loadRemoteData(this.src)"></script>
|
|
|
|
<script>
|
|
window.onload = () => {
|
|
window.app = new App();
|
|
}
|
|
</script>
|
|
|
|
</body>
|
|
</html>
|