diff options
| author | stonedDiscord <stonedDiscord@users.noreply.github.com> | 2024-11-20 14:13:36 +0000 |
|---|---|---|
| committer | GitHub Action <actions@github.com> | 2024-11-20 14:13:36 +0000 |
| commit | d51b2c33ddb547e854558b990c1b24bda8b2548e (patch) | |
| tree | c655995385882770511fa49856f4f5b809495411 /public | |
| parent | 1ff2d427e4fc6af08744bb732d85183501a72587 (diff) | |
Prettified Code!
Diffstat (limited to 'public')
| -rw-r--r-- | public/client.html | 1613 | ||||
| -rw-r--r-- | public/index.html | 267 |
2 files changed, 1167 insertions, 713 deletions
diff --git a/public/client.html b/public/client.html index e4e2ad1..2d41290 100644 --- a/public/client.html +++ b/public/client.html @@ -1,29 +1,41 @@ -<!DOCTYPE html> +<!doctype html> <html lang="en"> + <head> + <title>Attorney Online session</title> + <meta charset="utf-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <meta + name="description" + content="An off-the-cuff courtroom drama simulator" + /> + <meta name="author" content="stonedDiscord" /> + <meta property="og:title" content="Attorney Online" /> + <meta + property="og:description" + content="Attorney Online is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format." + /> + <meta property="og:type" content="website" /> + <meta property="og:url" content="http://web.aceattorneyonline.com/" /> + <meta + property="og:image" + content="https://repository-images.githubusercontent.com/78860508/89fcba80-aafd-11e9-80db-c5b10c01aba9" + /> -<head> - <title>Attorney Online session</title> - <meta charset="utf-8"> - <meta name="viewport" content="width=device-width, initial-scale=1.0"> - <meta name="description" content="An off-the-cuff courtroom drama simulator"> - <meta name="author" content="stonedDiscord"> - <meta property="og:title" content="Attorney Online"> - <meta property="og:description" - content="Attorney Online is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format."> - <meta property="og:type" content="website"> - <meta property="og:url" content="http://web.aceattorneyonline.com/"> - <meta property="og:image" - content="https://repository-images.githubusercontent.com/78860508/89fcba80-aafd-11e9-80db-c5b10c01aba9"> + <meta property="twitter:card" content="summary_large_image" /> + <meta property="twitter:title" content="Attorney Online" /> + <meta + property="twitter:description" + content="Attorney Online is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format." + /> + <meta property="twitter:url" content="http://web.aceattorneyonline.com/" /> + <meta + property="twitter:image" + content="https://repository-images.githubusercontent.com/78860508/89fcba80-aafd-11e9-80db-c5b10c01aba9" + /> - <meta property="twitter:card" content="summary_large_image"> - <meta property="twitter:title" content="Attorney Online"> - <meta property="twitter:description" - content="Attorney Online is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format."> - <meta property="twitter:url" content="http://web.aceattorneyonline.com/"> - <meta property="twitter:image" - content="https://repository-images.githubusercontent.com/78860508/89fcba80-aafd-11e9-80db-c5b10c01aba9"> - - <meta http-equiv="Content-Security-Policy" content=" + <meta + http-equiv="Content-Security-Policy" + content=" script-src-elem 'self' 'unsafe-inline' https://hcaptcha.com https://*.hcaptcha.com; style-src-elem 'self' 'unsafe-inline' https://golden-layout.com; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://hcaptcha.com https://*.hcaptcha.com; @@ -31,613 +43,1000 @@ img-src 'self' data: file: *; frame-src https://hcaptcha.com https://*.hcaptcha.com; connect-src 'self' ws: file: * https://hcaptcha.com https://*.hcaptcha.com; - media-src 'self' file: *;"> + media-src 'self' file: *;" + /> - <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon"> - <link rel="apple-touch-icon" href="logo-new.png"> - <link rel="stylesheet" type="text/css" href="styles/client.css?v=1.0.3" id="client_stylesheet"> - <link rel="stylesheet" type="text/css" href="styles/default.css?v=1.0.1" id="client_theme"> - <link rel="stylesheet" type="text/css" href="styles/chatbox/aa.css?v=1.0.1" id="chatbox_theme"> - <link rel="stylesheet" type="text/css" href="styles/nameplates.css" id="nameplate_setting"> - <link rel="stylesheet" type="text/css" href="styles/nomod.css" id="mod_ui"> - <link rel="stylesheet" type="text/css" href="" id="effect_css"> - <link type="text/css" rel="stylesheet" href="golden/css/goldenlayout.css"> - <link type="text/css" rel="stylesheet" - href="https://golden-layout.com/files/latest/css/goldenlayout-dark-theme.css"> - <style> - #client_ooclog { - text-align: left; - } + <link rel="shortcut icon" href="/favicon.ico" type="image/x-icon" /> + <link rel="apple-touch-icon" href="logo-new.png" /> + <link + rel="stylesheet" + type="text/css" + href="styles/client.css?v=1.0.3" + id="client_stylesheet" + /> + <link + rel="stylesheet" + type="text/css" + href="styles/default.css?v=1.0.1" + id="client_theme" + /> + <link + rel="stylesheet" + type="text/css" + href="styles/chatbox/aa.css?v=1.0.1" + id="chatbox_theme" + /> + <link + rel="stylesheet" + type="text/css" + href="styles/nameplates.css" + id="nameplate_setting" + /> + <link + rel="stylesheet" + type="text/css" + href="styles/nomod.css" + id="mod_ui" + /> + <link rel="stylesheet" type="text/css" href="" id="effect_css" /> + <link type="text/css" rel="stylesheet" href="golden/css/goldenlayout.css" /> + <link + type="text/css" + rel="stylesheet" + href="https://golden-layout.com/files/latest/css/goldenlayout-dark-theme.css" + /> + <style> + #client_ooclog { + text-align: left; + } - #client_ooclog a { - color: white; - } - </style> - <script src="lib/jdataview.min.js" async defer></script> -</head> + #client_ooclog a { + color: white; + } + </style> + <script src="lib/jdataview.min.js" async defer></script> + </head> -<body> - <div id="client_waiting"> - <noscript> - <p style="color: red;">webAO requires JavaScript to work</p> - </noscript> - <div id="client_loading"> - <h1 id="client_loadingtext">Loading</h1> - </div> - <div id="client_secondfactor" style="display: none"> - <center> - <p>You seem to be new 👋</p> - <form method="POST"> - <div class="h-captcha" data-sitekey="6cbe7d73-706d-4e4b-9147-8b9aebb83b5d" data-theme="dark" data-callback="hcallback"></div> - <script src="https://js.hcaptcha.com/1/api.js" async defer></script> - </form> - </center> - </div> - <div id="client_charselect"> - <p>Choose your character</p> - <button onclick="pickChar(-1)">Or spectate</button> - <br><br> - <input id="client_charactersearch" placeholder="Search" oninput="chartable_filter(event)"> - <br><br> - <div id="client_chartable"></div> - </div> - <div id="client_error" class="error" style="display: none"> - <h1 id="client_errortext">You were disconnected from the server.</h1> - <p style="color: #a00">Code: - <span id="error_id">(none)</span> - </p> + <body> + <div id="client_waiting"> + <noscript> + <p style="color: red">webAO requires JavaScript to work</p> + </noscript> + <div id="client_loading"> + <h1 id="client_loadingtext">Loading</h1> + </div> + <div id="client_secondfactor" style="display: none"> + <center> + <p>You seem to be new 👋</p> + <form method="POST"> + <div + class="h-captcha" + data-sitekey="6cbe7d73-706d-4e4b-9147-8b9aebb83b5d" + data-theme="dark" + data-callback="hcallback" + ></div> + <script src="https://js.hcaptcha.com/1/api.js" async defer></script> + </form> + </center> + </div> + <div id="client_charselect"> + <p>Choose your character</p> + <button onclick="pickChar(-1)">Or spectate</button> + <br /><br /> + <input + id="client_charactersearch" + placeholder="Search" + oninput="chartable_filter(event)" + /> + <br /><br /> + <div id="client_chartable"></div> + </div> + <div id="client_error" class="error" style="display: none"> + <h1 id="client_errortext">You were disconnected from the server.</h1> + <p style="color: #a00"> + Code: + <span id="error_id">(none)</span> + </p> + </div> + <p> + Having trouble? + <a href="https://discord.gg/9rYQVVQ">Join us on Discord</a> + </p> + <button id="client_reconnect" onclick="ReconnectButton()"> + Reconnect + </button> + </div> + </body> - </div> - <p>Having trouble? <a href="https://discord.gg/9rYQVVQ">Join us on Discord</a></p> - <button id="client_reconnect" onclick="ReconnectButton()">Reconnect</button> - </div> -</body> + <template id="client_wrapper"> + <meta name="frame-title" lang="en" content="Game" /> + <div id="client_icwrapper"> + <div id="client_background"> + <div id="client_gamewindow"> + <div id="client_fullview"> + <img id="client_court" /> + <div id="client_stitch_court"> + <img id="client_court_def" onerror="imgError(this);" /> + <img id="client_court_deft" onerror="imgError(this);" /> + <img id="client_court_wit" onerror="imgError(this);" /> + <img id="client_court_prot" onerror="imgError(this);" /> + <img id="client_court_pro" onerror="imgError(this);" /> + </div> + <div + id="client_def_pair_char" + class="client_char" + alt="Paired character" + > + <img id="client_def_pair_img" onerror="charError(this);" /> + </div> + <div id="client_def_char" class="client_char" alt="Character"> + <img id="client_def_char_img" onerror="charError(this);" /> + </div> + <div + id="client_wit_pair_char" + class="client_char" + alt="Paired character" + > + <img id="client_wit_pair_img" onerror="charError(this);" /> + </div> + <div id="client_wit_char" class="client_char" alt="Character"> + <img id="client_wit_char_img" onerror="charError(this);" /> + </div> + <div + id="client_pro_pair_char" + class="client_char" + alt="Paired character" + > + <img id="client_pro_pair_img" onerror="charError(this);" /> + </div> + <div id="client_pro_char" class="client_char" alt="Character"> + <img id="client_pro_char_img" onerror="charError(this);" /> + </div> + <img id="client_def_bench" class="client_bench" /> + <img id="client_wit_bench" class="client_bench" /> + <img id="client_pro_bench" class="client_bench" /> + </div> + <div id="client_classicview"> + <img id="client_court_classic" onerror="imgError(this);" /> + <div + id="client_pair_char" + class="client_char" + alt="Paired character" + > + <img id="client_pair_img" onerror="charError(this);" /> + </div> + <div id="client_char" class="client_char" alt="Character"> + <img id="client_char_img" onerror="charError(this);" /> + </div> + <img id="client_bench_classic" class="client_bench" /> + </div> + <div + id="client_fg" + alt="Various overlay" + src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" + ></div> + <img + id="client_evi" + src="" + alt="Character Evidence" + onerror="imgError(this);" + /> + <img + id="client_testimony" + alt="Testimony overlay" + src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" + onerror="imgError(this);" + /> + <img + id="client_shout" + alt="Shout overlay" + src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" + /> + <div id="client_chatcontainer" style="font-size: 12px; opacity: 0"> + <div id="client_chatdecoration"></div> + <div id="client_name"> + <p id="client_inner_name"></p> + </div> + <div id="client_chat"> + <p id="client_inner_chat"></p> + <div id="client_chatwaiting">►</div> + </div> + </div> + <div id="client_trackstatus"> + <marquee id="client_trackstatustext">None</marquee> + </div> + <div id="client_clock"> + <p id="client_clock_date"></p> + <p id="client_clock_time"></p> + <p id="client_clock_month"></p> + <p id="client_clock_weekday"></p> + </div> + </div> + </div> + <form onsubmit="return false"> + <input + id="client_inputbox" + class="long" + type="text" + onkeypress="onEnter(event)" + placeholder="Say something…" + autocomplete="off" + /> + </form> + <div id="client_bars"> + <span id="client_defense_hp" class="health-box"> + <div class="health-bar"></div> + </span> + <span id="client_prosecutor_hp" class="health-box"> + <div class="health-bar"></div> + </span> + </div> + </div> + </template> -<template id="client_wrapper"> - <meta name="frame-title" lang="en" content="Game"> - <div id="client_icwrapper"> - <div id="client_background"> - <div id="client_gamewindow"> - <div id="client_fullview"> - <img id="client_court"> - <div id="client_stitch_court"> - <img id="client_court_def" onerror="imgError(this);"> - <img id="client_court_deft" onerror="imgError(this);"> - <img id="client_court_wit" onerror="imgError(this);"> - <img id="client_court_prot" onerror="imgError(this);"> - <img id="client_court_pro" onerror="imgError(this);"> - </div> - <div id="client_def_pair_char" class="client_char" alt="Paired character"> - <img id="client_def_pair_img" onerror="charError(this);"> - </div> - <div id="client_def_char" class="client_char" alt="Character"> - <img id="client_def_char_img" onerror="charError(this);"> - </div> - <div id="client_wit_pair_char" class="client_char" alt="Paired character"> - <img id="client_wit_pair_img" onerror="charError(this);"> - </div> - <div id="client_wit_char" class="client_char" alt="Character"> - <img id="client_wit_char_img" onerror="charError(this);"> - </div> - <div id="client_pro_pair_char" class="client_char" alt="Paired character"> - <img id="client_pro_pair_img" onerror="charError(this);"> - </div> - <div id="client_pro_char" class="client_char" alt="Character"> - <img id="client_pro_char_img" onerror="charError(this);"> - </div> - <img id="client_def_bench" class="client_bench"> - <img id="client_wit_bench" class="client_bench"> - <img id="client_pro_bench" class="client_bench"> - </div> - <div id="client_classicview"> - <img id="client_court_classic" onerror="imgError(this);"> - <div id="client_pair_char" class="client_char" alt="Paired character"> - <img id="client_pair_img" onerror="charError(this);"> - </div> - <div id="client_char" class="client_char" alt="Character"> - <img id="client_char_img" onerror="charError(this);"> - </div> - <img id="client_bench_classic" class="client_bench"> - </div> - <div id="client_fg" alt="Various overlay" - src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="> - </div> - <img id="client_evi" src="" alt="Character Evidence" onerror="imgError(this);"> - <img id="client_testimony" alt="Testimony overlay" - src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" - onerror="imgError(this);"> - <img id="client_shout" alt="Shout overlay" - src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="> - <div id="client_chatcontainer" style="font-size: 12px; opacity: 0;"> - <div id="client_chatdecoration"></div> - <div id="client_name"> - <p id="client_inner_name"></p> - </div> - <div id="client_chat"> - <p id="client_inner_chat"></p> - <div id="client_chatwaiting">►</div> - </div> - </div> - <div id="client_trackstatus"> - <marquee id="client_trackstatustext">None</marquee> - </div> - <div id="client_clock"> - <p id="client_clock_date"></p> - <p id="client_clock_time"></p> - <p id="client_clock_month"></p> - <p id="client_clock_weekday"></p> - </div> - </div> - </div> - <form onsubmit="return false"> - <input id="client_inputbox" class="long" type="text" onkeypress="onEnter(event)" - placeholder="Say something…" autocomplete="off"> - </form> - <div id="client_bars"> - <span id="client_defense_hp" class="health-box"> - <div class="health-bar"></div> - </span> - <span id="client_prosecutor_hp" class="health-box"> - <div class="health-bar"></div> - </span> - </div> - </div> -</template> + <template id="icoptions"> + <div id="client_iccontrols"> + <meta name="frame-title" lang="en" content="miscellaneous" /> + <div id="client_emo"></div> + <br /> + <div id="character_options"> + <div id="emote_options"> + <button + id="button_1" + alt="Hold it!" + class="client_button" + onclick="toggleShout(1)" + > + Hold it! + </button> + <button + id="button_2" + alt="Objection!" + class="client_button" + onclick="toggleShout(2)" + > + Objection! + </button> + <button + id="button_3" + alt="Take That!" + class="client_button" + onclick="toggleShout(3)" + > + Take That! + </button> + <button + id="button_4" + alt="Custom" + class="client_button" + onclick="toggleShout(4)" + style="display: none" + > + Custom + </button> + <br /> + <br /> + <label for="textcolor">Text Color:</label> + <select id="textcolor" name="textcolor"> + <option value="0">White</option> + <option value="1">Green</option> + <option value="2">Red</option> + <option value="3">Orange</option> + <option value="4">Blue</option> + </select> + <label for="sendsfx"> SFX: </label> + <input + type="checkbox" + id="sendsfx" + name="sendsfx" + value="sendsfx" + checked + /> + <label for="sendpreanim"> Preanimation: </label> + <input + type="checkbox" + id="sendpreanim" + name="sendpreanim" + value="sendpreanim" + /> + <br /> + <br /> + <button + id="button_flip" + alt="Flip" + class="client_button" + onclick="toggleEffect(this)" + style="display: none" + > + Flip + </button> + <button + id="button_flash" + alt="Flash" + class="client_button" + onclick="toggleEffect(this)" + > + Flash + </button> + <button + id="button_shake" + alt="Shake" + class="client_button" + onclick="toggleEffect(this)" + style="display: none" + > + Shake + </button> + </div> + <br /> + <br /> + <div id="character_options"> + <label for="role_select">Role:</label> + <select + id="role_select" + name="role_select" + onchange="changeRoleOOC()" + > + <option value="">Default</option> + <option value="def">Defense</option> + <option value="pro">Prosecution</option> + <option value="jud">Judge</option> + <option value="wit">Witness</option> + <option value="hld">Helper Defense</option> + <option value="hlp">Helper Prosecution</option> + <option value="jur">Jury</option> + <option value="sea">Seance</option> + </select> + <br /> + <br /> + <button + id="char_change" + alt="Change" + class="client_button hover_button" + onclick="changeCharacter()" + > + Change Character + </button> + <button + id="char_random" + alt="Random" + class="client_button hover_button" + onclick="randomCharacterOOC()" + > + Random Character + </button> + <br /> + <br /> + <span id="pairing" style="display: none"> + <button + id="button_toggle_pairing" + alt="Pairing" + class="client_button" + onclick="toggleElement('pairing_settings')" + > + Pairing + </button> + <span id="pairing_settings" style="display: none"> + <label for="pair_select">Pairing partner:</label> + <select name="pair_select" id="pair_select"> + <option value="-1">None</option> + </select> + <table + style="border: none; margin-left: auto; margin-right: auto" + > + <tr> + <td> + <p>Horizontal offset:</p> + </td> + <td> + <input + type="range" + name="pair_offset" + id="pair_offset" + min="-100" + max="100" + value="0" + /> + </td> + </tr> + <tr id="y_offset" style="display: none"> + <td> + <p>Vertical offset:</p> + </td> + <td> + <input + type="range" + name="pair_y_offset" + id="pair_y_offset" + min="-100" + max="100" + value="0" + /> + </td> + </tr> + </table> + <input + id="pair_reset" + type="button" + value="Reset" + onclick="resetOffset()" + /> + </span> + </span> + <br /> + <br /> + <span id="cccc" style="display: none"> + <label for="ic_chat_name">Custom Showname:</label> + <input id="ic_chat_name" name="ic_chat_name" type="text" /> + <br /> + <label for="showname">Show others:</label> + <input + id="showname" + name="showname" + type="checkbox" + onclick="showname_click()" + checked + /> + <br /> + <br /> + <label for="check_nonint">Noninterrupting Preanimation:</label> + <input type="checkbox" name="check_nonint" id="check_nonint" /> + </span> + <br /> + <br /> + <span id="2.7" style="display: none"> + <label for="check_loopsfx">Looping SFX:</label> + <input type="checkbox" name="check_loopsfx" id="check_loopsfx" /> + </span> + <br /> + <br /> + <span id="2.8" style="display: none"> + <label for="check_additive">Additive:</label> + <input type="checkbox" name="check_additive" id="check_additive" /> + <br /> + <br /> + <label for="effect_select">Effect:</label> + <select id="effect_select" name="effect_select"> + <option value="||">None</option> + <option value="realization||sfx-realization">Realization</option> + <option value="hearts||sfx-squee">Hearts</option> + <option value="reaction||sfx-reactionding">Reaction</option> + <option value="impact||sfx-fan">Impact</option> + <option value="rain-weak||sfx-rain">Weak Rain</option> + <option value="rain||sfx-rain">Rain</option> + <option value="rain-strong||sfx-rain">Strong Rain</option> + </select> + </span> + </div> + </div> + <fieldset style="margin: 10px"> + <legend>Actions</legend> + <!-- Judge Commands --> + <span id="judge_action" style="display: none"> + <span + id="menu_wt" + onclick="initWT()" + class="judge_button" + style="color: blue" + ><i>Witness<br />Testimony</i></span + > -<template id="icoptions"> - <div id="client_iccontrols"> - <meta name="frame-title" lang="en" content="miscellaneous"> - <div id="client_emo"> - </div> - <br> - <div id="character_options"> - <div id="emote_options"> - <button id="button_1" alt="Hold it!" class="client_button" onclick="toggleShout(1)">Hold - it!</button> - <button id="button_2" alt="Objection!" class="client_button" - onclick="toggleShout(2)">Objection!</button> - <button id="button_3" alt="Take That!" class="client_button" onclick="toggleShout(3)">Take - That!</button> - <button id="button_4" alt="Custom" class="client_button" onclick="toggleShout(4)" - style="display: none"> - Custom</button> - <br> - <br> - <label for="textcolor">Text Color:</label> - <select id="textcolor" name="textcolor"> - <option value="0">White</option> - <option value="1">Green</option> - <option value="2">Red</option> - <option value="3">Orange</option> - <option value="4">Blue</option> - </select> - <label for="sendsfx"> SFX: </label> - <input type="checkbox" id="sendsfx" name="sendsfx" value="sendsfx" checked> - <label for="sendpreanim"> Preanimation: </label> - <input type="checkbox" id="sendpreanim" name="sendpreanim" value="sendpreanim"> - <br> - <br> - <button id="button_flip" alt="Flip" class="client_button" onclick="toggleEffect(this)" - style="display: none">Flip</button> - <button id="button_flash" alt="Flash" class="client_button" - onclick="toggleEffect(this)">Flash</button> - <button id="button_shake" alt="Shake" class="client_button" onclick="toggleEffect(this)" - style="display: none">Shake</button> - </div> - <br> - <br> - <div id="character_options"> - <label for="role_select">Role:</label> - <select id="role_select" name="role_select" onchange="changeRoleOOC()"> - <option value="">Default</option> - <option value="def">Defense</option> - <option value="pro">Prosecution</option> - <option value="jud">Judge</option> - <option value="wit">Witness</option> - <option value="hld">Helper Defense</option> - <option value="hlp">Helper Prosecution</option> - <option value="jur">Jury</option> - <option value="sea">Seance</option> - </select> - <br> - <br> - <button id="char_change" alt="Change" class="client_button hover_button" - onclick="changeCharacter()">Change - Character</button> - <button id="char_random" alt="Random" class="client_button hover_button" - onclick="randomCharacterOOC()">Random Character</button> - <br> - <br> - <span id="pairing" style="display: none"> - <button id="button_toggle_pairing" alt="Pairing" class="client_button" - onclick="toggleElement('pairing_settings')">Pairing</button> - <span id="pairing_settings" style="display: none"> - <label for="pair_select">Pairing partner:</label> - <select name="pair_select" id="pair_select"> - <option value="-1">None</option> - </select> - <table style="border: none;margin-left: auto;margin-right: auto;"> - <tr> - <td> - <p>Horizontal offset:</p> - </td> - <td><input type="range" name="pair_offset" id="pair_offset" min="-100" max="100" - value="0"></td> - </tr> - <tr id="y_offset" style="display: none"> - <td> - <p>Vertical offset:</p> - </td> - <td><input type="range" name="pair_y_offset" id="pair_y_offset" min="-100" max="100" - value="0"></td> - </tr> - </table> - <input id="pair_reset" type="button" value="Reset" onclick="resetOffset()"> - </span> - </span> - <br> - <br> - <span id="cccc" style="display: none"> - <label for="ic_chat_name">Custom Showname:</label> - <input id="ic_chat_name" name="ic_chat_name" type="text"> - <br> - <label for="showname">Show others:</label> - <input id="showname" name="showname" type="checkbox" onclick="showname_click()" checked> - <br> - <br> - <label for="check_nonint">Noninterrupting Preanimation:</label> - <input type="checkbox" name="check_nonint" id="check_nonint"> - </span> - <br> - <br> - <span id="2.7" style="display: none"> - <label for="check_loopsfx">Looping SFX:</label> - <input type="checkbox" name="check_loopsfx" id="check_loopsfx"> - </span> - <br> - <br> - <span id="2.8" style="display: none"> - <label for="check_additive">Additive:</label> - <input type="checkbox" name="check_additive" id="check_additive"> - <br> - <br> - <label for="effect_select">Effect:</label> - <select id="effect_select" name="effect_select"> - <option value="||">None</option> - <option value="realization||sfx-realization">Realization</option> - <option value="hearts||sfx-squee">Hearts</option> - <option value="reaction||sfx-reactionding">Reaction</option> - <option value="impact||sfx-fan">Impact</option> - <option value="rain-weak||sfx-rain">Weak Rain</option> - <option value="rain||sfx-rain">Rain</option> - <option value="rain-strong||sfx-rain">Strong Rain</option> - </select> - </span> - </div> - </div> - <fieldset style="margin:10px;"> - <legend>Actions</legend> - <!-- Judge Commands --> - <span id="judge_action" style="display:none"> - <span id="menu_wt" onclick="initWT()" class="judge_button" - style="color: blue"><i>Witness<br>Testimony</i></span> + <span + id="menu_ce" + onclick="initCE()" + class="judge_button" + style="color: red" + ><i>Cross<br />Examination</i></span + > - <span id="menu_ce" onclick="initCE()" class="judge_button" - style="color: red"><i>Cross<br>Examination</i></span> + <span + id="menu_nguilty" + onclick="notguilty()" + class="judge_button" + style=" + color: white; + font-family: serif; + text-shadow: + -1px 0 #000, + 0 1px #000, + 1px 0 #000, + 0 -1px #000; + font-size: 1.5em; + line-height: 0.75; + " + >Not<br />Guilty</span + > - <span id="menu_nguilty" onclick="notguilty()" class="judge_button" - style="color: white; font-family: serif; text-shadow: -1px 0 #000, 0 1px #000, 1px 0 #000, 0 -1px #000; font-size: 1.5em; line-height: 0.75;">Not<br>Guilty</span> + <span + id="menu_guilty" + onclick="guilty()" + class="judge_button" + style="color: black; font-family: serif; font-size: 1.5em" + >Guilty</span + > - <span id="menu_guilty" onclick="guilty()" class="judge_button" - style="color: black; font-family: serif; font-size: 1.5em;">Guilty</span> + <br /> + <span style="display: inline-block; vertical-align: middle"> + <span id="menu_rhpd" onclick="redHPD()" class="healthchange_button"> + ⊟ + </span> + <span style="font-size: 1.25em">Defense</span> + <span id="menu_ahpd" onclick="addHPD()" class="healthchange_button"> + ⊞ + </span> + </span> + <span style="display: inline-block; vertical-align: middle"> + <span id="menu_ahpp" onclick="addHPP()" class="healthchange_button"> + ⊞ + </span> + <span style="font-size: 1.25em">Prosecution</span> + <span id="menu_rhpp" onclick="redHPP()" class="healthchange_button"> + ⊟ + </span> + </span> + </span> + <!-- No Commands --> + <span id="no_action"> No judge actions available for this role. </span> + <br /> + <br /> + <span id="muting"> + <label for="mute_select" style="float: left" + >Mute a character: + </label> + <select + name="mute_select" + id="mute_select" + onchange="mutelist_click(event)" + ></select> + </span> + </fieldset> + </div> + </template> - <br> - <span style="display:inline-block; vertical-align: middle;"> - <span id="menu_rhpd" onclick="redHPD()" class="healthchange_button"> - ⊟ - </span> - <span style="font-size: 1.25em">Defense</span> - <span id="menu_ahpd" onclick="addHPD()" class="healthchange_button"> - ⊞ - </span> - </span> - <span style="display:inline-block; vertical-align: middle;"> - <span id="menu_ahpp" onclick="addHPP()" class="healthchange_button"> - ⊞ - </span> - <span style="font-size: 1.25em">Prosecution</span> - <span id="menu_rhpp" onclick="redHPP()" class="healthchange_button"> - ⊟ - </span> - </span> - </span> - <!-- No Commands --> - <span id="no_action"> - No judge actions available for this role. - </span> - <br> - <br> - <span id="muting"> - <label for="mute_select" style="float: left">Mute a character: </label> - <select name="mute_select" id="mute_select" onchange="mutelist_click(event)"></select> - </span> - </fieldset> - </div> -</template> + <template id="mainmenu"> + <meta name="frame-title" lang="en" content="Log" /> + <div id="client_menu"> + <div id="client_menu_buttons"> + <div class="hrtext">Main Menu</div> + <span id="menu_1" onclick="toggleMenu(1)" class="menu_button active"> + <b class="menu_icon">📍</b> + <div class="menu_text">Areas</div> + </span> + <span id="menu_2" onclick="toggleMenu(2)" class="menu_button"> + <b class="menu_icon">💼</b> + <div class="menu_text">Evidence</div> + </span> + <span id="menu_3" onclick="toggleMenu(3)" class="menu_button"> + <b class="menu_icon">🔧</b> + <div class="menu_text">Settings</div> + </span> + <span id="menu_4" onclick="toggleMenu(4)" class="menu_button"> + <b class="menu_icon">❓</b> + <div class="menu_text">About</div> + </span> + <span id="menu_cm" onclick="callMod()" class="menu_button"> + <b class="menu_icon">🚨</b> + <div class="menu_text" style="color: #ce2727">Call Mod</div> + </span> + </div> + <div class="hrtext"> + <span id="content_name">Content</span> + </div> + <!-- Areas section --> + <span class="menu_content active" id="content_1"> + <meta name="frame-title" lang="en" content="Areas" /> + <div id="areas"></div> + <br /> + <fieldset style="text-align: left"> + <legend>Current Area Background</legend> + <span> + <img + id="bg_preview" + src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" + alt="Background Preview" + onerror="imgError(this);" + /> + </span> + <span style="display: inline-block"> + <label for="bg_filename">Background:</label> + <br /> + <select + id="bg_select" + name="bg_select" + onchange="updateBackgroundPreview()" + style="margin-top: 10px" + ></select> + <br /> + <input + id="bg_filename" + name="bg_filename" + type="text" + style="margin-top: 10px" + /> + <br /> + <br /> + <button + id="bg_change" + alt="Change" + class="client_button hover_button" + onclick="changeBackgroundOOC()" + > + Change + </button> + </span> + </fieldset> + <fieldset style="text-align: left; display: none"> + <legend>Timers</legend> + <span id="client_timer0">00:00:00</span> + <span id="client_timer1">00:00:00</span> + <span id="client_timer2">00:00:00</span> + <span id="client_timer3">00:00:00</span> + <span id="client_timer4">00:00:00</span> + <span id="client_timer5">00:00:00</span> + <span id="client_timer6">00:00:00</span> + <span id="client_timer7">00:00:00</span> + <span id="client_timer8">00:00:00</span> + <span id="client_timer9">00:00:00</span> + <span id="client_timer10">00:00:00</span> + <span id="client_timer11">00:00:00</span> + <span id="client_timer12">00:00:00</span> + <span id="client_timer13">00:00:00</span> + <span id="client_timer14">00:00:00</span> + <span id="client_timer15">00:00:00</span> + <span id="client_timer16">00:00:00</span> + <span id="client_timer17">00:00:00</span> + <span id="client_timer18">00:00:00</span> + <span id="client_timer19">00:00:00</span> + <span id="client_timer20">00:00:00</span> + </fieldset> + </span> -<template id="mainmenu"> - <meta name="frame-title" lang="en" content="Log"> - <div id="client_menu"> - <div id="client_menu_buttons"> - <div class="hrtext">Main Menu</div> - <span id="menu_1" onclick="toggleMenu(1)" class="menu_button active"> - <b class="menu_icon">📍</b> - <div class="menu_text">Areas</div> - </span> - <span id="menu_2" onclick="toggleMenu(2)" class="menu_button"> - <b class="menu_icon">💼</b> - <div class="menu_text">Evidence</div> - </span> - <span id="menu_3" onclick="toggleMenu(3)" class="menu_button"> - <b class="menu_icon">🔧</b> - <div class="menu_text">Settings</div> - </span> - <span id="menu_4" onclick="toggleMenu(4)" class="menu_button"> - <b class="menu_icon">❓</b> - <div class="menu_text">About</div> - </span> - <span id="menu_cm" onclick="callMod()" class="menu_button"> - <b class="menu_icon">🚨</b> - <div class="menu_text" style="color: #ce2727;">Call Mod</div> - </span> - </div> - <div class="hrtext"> - <span id="content_name">Content</span> - </div> - <!-- Areas section --> - <span class="menu_content active" id="content_1"> - <meta name="frame-title" lang="en" content="Areas"> - <div id="areas"></div> - <br> - <fieldset style="text-align: left"> - <legend>Current Area Background</legend> - <span> - <img id="bg_preview" - src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=" - alt="Background Preview" onerror="imgError(this);"> - </span> - <span style="display:inline-block"> - <label for="bg_filename">Background:</label> - <br> - <select id="bg_select" name="bg_select" onchange="updateBackgroundPreview()" - style="margin-top:10px"></select> - <br> - <input id="bg_filename" name="bg_filename" type="text" style="margin-top:10px"> - <br> - <br> - <button id="bg_change" alt="Change" class="client_button hover_button" - onclick="changeBackgroundOOC()">Change</button> - </span> - </fieldset> - <fieldset style="text-align: left; display: none"> - <legend>Timers</legend> - <span id="client_timer0">00:00:00</span> - <span id="client_timer1">00:00:00</span> - <span id="client_timer2">00:00:00</span> - <span id="client_timer3">00:00:00</span> - <span id="client_timer4">00:00:00</span> - <span id="client_timer5">00:00:00</span> - <span id="client_timer6">00:00:00</span> - <span id="client_timer7">00:00:00</span> - <span id="client_timer8">00:00:00</span> - <span id="client_timer9">00:00:00</span> - <span id="client_timer10">00:00:00</span> - <span id="client_timer11">00:00:00</span> - <span id="client_timer12">00:00:00</span> - <span id="client_timer13">00:00:00</span> - <span id="client_timer14">00:00:00</span> - <span id="client_timer15">00:00:00</span> - <span id="client_timer16">00:00:00</span> - <span id="client_timer17">00:00:00</span> - <span id="client_timer18">00:00:00</span> - <span id="client_timer19">00:00:00</span> - <span id="client_timer20">00:00:00</span> - </fieldset> - </span> + <!-- Evidence section --> + <span class="menu_content" id="content_2"> + <meta name="frame-title" lang="en" content="Evidence" /> + <fieldset + style="text-align: left; display: flex; flex-direction: column" + > + <legend>Information</legend> + <hr /> + <div style="display: flex"> + <img + id="evi_preview" + class="evi_icon" + src="" + alt="Evidence Icon" + onerror="imgError(this);" + /> + <div id="evi_options"> + <input + id="evi_name" + name="evi_name" + type="text" + placeholder="Evidence name" + /> + <br /> + <label for="evi_filename">Icon:</label> + <select + id="evi_select" + name="evi_select" + onchange="updateEvidenceIcon()" + ></select> + <input + id="evi_filename" + name="evi_filename" + type="text" + placeholder="Custom filename" + /> + </div> + </div> + <hr /> + <div style="display: flex; padding-top: 5px"> + <textarea + id="evi_desc" + name="evi_desc" + rows="2" + cols="20" + placeholder="Evidence description" + ></textarea> + </div> + <div style="display: block; text-align: center; padding-top: 20px"> + <button + id="evi_add" + alt="Add Evidence" + class="client_button hover_button" + onclick="addEvidence()" + > + Add + </button> + <button + id="evi_edit" + alt="Edit Evidence" + class="client_button hover_button inactive" + onclick="editEvidence()" + > + Edit + </button> + <button + id="evi_cancel" + alt="Cancel Evidence" + class="client_button hover_button inactive" + onclick="cancelEvidence()" + > + Cancel + </button> + <button + id="evi_del" + alt="Remove Evidence" + class="client_button hover_button inactive" + onclick="deleteEvidence()" + > + Remove + </button> + </div> + </fieldset> + <br /> + <div id="evidences"></div> + <br /> + <button + id="button_present" + alt="Present" + class="client_button" + onclick="toggleEffect(this)" + > + Present + </button> + </span> - <!-- Evidence section --> - <span class="menu_content" id="content_2"> - <meta name="frame-title" lang="en" content="Evidence"> - <fieldset style="text-align: left; display: flex; flex-direction: column;"> - <legend>Information</legend> - <hr> - <div style="display: flex;"> - <img id="evi_preview" class="evi_icon" src="" alt="Evidence Icon" onerror="imgError(this);"> - <div id="evi_options"> - <input id="evi_name" name="evi_name" type="text" placeholder="Evidence name"> - <br> - <label for="evi_filename">Icon:</label> - <select id="evi_select" name="evi_select" onchange="updateEvidenceIcon()"></select> - <input id="evi_filename" name="evi_filename" type="text" placeholder="Custom filename"> - </div> - </div> - <hr> - <div style="display: flex; padding-top: 5px;"> - <textarea id="evi_desc" name="evi_desc" rows="2" cols="20" - placeholder="Evidence description"></textarea> - </div> - <div style="display: block; text-align: center; padding-top: 20px;"> - <button id="evi_add" alt="Add Evidence" class="client_button hover_button" - onclick="addEvidence()">Add</button> - <button id="evi_edit" alt="Edit Evidence" class="client_button hover_button inactive" - onclick="editEvidence()">Edit</button> - <button id="evi_cancel" alt="Cancel Evidence" class="client_button hover_button inactive" - onclick="cancelEvidence()">Cancel</button> - <button id="evi_del" alt="Remove Evidence" class="client_button hover_button inactive" - onclick="deleteEvidence()">Remove</button> - </div> - </fieldset> - <br> - <div id="evidences"></div> - <br> - <button id="button_present" alt="Present" class="client_button" - onclick="toggleEffect(this)">Present</button> - </span> - - <!-- Settings section --> - <span class="menu_content" id="content_3"> - <meta name="frame-title" lang="en" content="Settings"> - <h2>Volume</h2> - <p>Music</p> - <input id="client_mvolume" class="long" type="range" min="0" max="1" value="1" step="0.01" - onchange="changeMusicVolume()"> + <!-- Settings section --> + <span class="menu_content" id="content_3"> + <meta name="frame-title" lang="en" content="Settings" /> + <h2>Volume</h2> + <p>Music</p> + <input + id="client_mvolume" + class="long" + type="range" + min="0" + max="1" + value="1" + step="0.01" + onchange="changeMusicVolume()" + /> - <p>SFX</p> - <audio id="client_sfxaudio" onvolumechange="changeSFXVolume()" onerror="opusCheck(this)" controls></audio> + <p>SFX</p> + <audio + id="client_sfxaudio" + onvolumechange="changeSFXVolume()" + onerror="opusCheck(this)" + controls + ></audio> - <p>Shouts</p> - <audio id="client_shoutaudio" onvolumechange="changeShoutVolume()" onerror="opusCheck(this)" - controls></audio> + <p>Shouts</p> + <audio + id="client_shoutaudio" + onvolumechange="changeShoutVolume()" + onerror="opusCheck(this)" + controls + ></audio> - <p>Testimony/Guilty</p> - <audio id="client_testimonyaudio" onvolumechange="changeTestimonyVolume()" onerror="opusCheck(this)" - controls></audio> + <p>Testimony/Guilty</p> + <audio + id="client_testimonyaudio" + onvolumechange="changeTestimonyVolume()" + onerror="opusCheck(this)" + controls + ></audio> - <p>Blip</p> - <input id="client_bvolume" class="long" type="range" min="0" max="1" value="1" step="0.01" - onchange="changeBlipVolume()"> - <br> - <br> - <label for="client_themeselect">Menu theme:</label> - <select id="client_themeselect" name="client_themeselect" onchange="reloadTheme()"> - <option value="default" selected>Default</option> - <option value="classic">Classic</option> - <option value="soj">DD / SoJ</option> - <option value="cyber">Cyber</option> - <option value="trilogy">Trilogy</option> - <option value="speen">April</option> - </select> - <br> - <br> - <label for="client_chatboxselect">Chatbox theme:</label> - <select id="client_chatboxselect" name="client_chatboxselect" onchange="setChatbox(this.value)"> - <option value="dynamic" selected>Use characters</option> - <option value="aa">AA</option> - <option value="dd">DD / SoJ</option> - <option value="dgs">Chronicles</option> - <option value="plvsaa">PL vs AA</option> - <option value="trilogy">Trilogy</option> - <option value="future">Future theme</option> - <option value="legacy">old webAO</option> - <option value="999">999</option> - <option value="acww">Animal Crossing</option> - <option value="dr1">DR 1</option> - <option value="dr2">DR 2</option> - <option value="drv3">DR 3</option> - <option value="drae">DR: AE</option> - <option value="ddlc">DDLC</option> - <option value="homestuck">Homestuck</option> - <option value="key">Key</option> - <option value="n64zelda">N64 Zelda</option> - <option value="papermario">Paper Mario</option> - <option value="p3">Persona 3</option> - <option value="p4">Persona 4</option> - <option value="p5">Persona 5</option> - <option value="sonic">Murder of Sonic</option> - <option value="halla">VA-11 HALL-A</option> - <option value="whentheycry">When They Cry Series</option> - <option value="yakuza">Yakuza</option> - <option value="yttd">YTTD</option> - </select> - <!-- + <p>Blip</p> + <input + id="client_bvolume" + class="long" + type="range" + min="0" + max="1" + value="1" + step="0.01" + onchange="changeBlipVolume()" + /> + <br /> + <br /> + <label for="client_themeselect">Menu theme:</label> + <select + id="client_themeselect" + name="client_themeselect" + onchange="reloadTheme()" + > + <option value="default" selected>Default</option> + <option value="classic">Classic</option> + <option value="soj">DD / SoJ</option> + <option value="cyber">Cyber</option> + <option value="trilogy">Trilogy</option> + <option value="speen">April</option> + </select> + <br /> + <br /> + <label for="client_chatboxselect">Chatbox theme:</label> + <select + id="client_chatboxselect" + name="client_chatboxselect" + onchange="setChatbox(this.value)" + > + <option value="dynamic" selected>Use characters</option> + <option value="aa">AA</option> + <option value="dd">DD / SoJ</option> + <option value="dgs">Chronicles</option> + <option value="plvsaa">PL vs AA</option> + <option value="trilogy">Trilogy</option> + <option value="future">Future theme</option> + <option value="legacy">old webAO</option> + <option value="999">999</option> + <option value="acww">Animal Crossing</option> + <option value="dr1">DR 1</option> + <option value="dr2">DR 2</option> + <option value="drv3">DR 3</option> + <option value="drae">DR: AE</option> + <option value="ddlc">DDLC</option> + <option value="homestuck">Homestuck</option> + <option value="key">Key</option> + <option value="n64zelda">N64 Zelda</option> + <option value="papermario">Paper Mario</option> + <option value="p3">Persona 3</option> + <option value="p4">Persona 4</option> + <option value="p5">Persona 5</option> + <option value="sonic">Murder of Sonic</option> + <option value="halla">VA-11 HALL-A</option> + <option value="whentheycry">When They Cry Series</option> + <option value="yakuza">Yakuza</option> + <option value="yttd">YTTD</option> + </select> + <!-- <br> <br> <button id="client_modcall" onclick="modcall_test()">Test modcall</button> --> - <br> - <br> - <p>Ini editing (experimental)</p> - <label for="client_iniselect">Iniedit Character:</label> - <select id="client_iniselect" name="client_iniselect" onchange="updateIniswap()"></select> - <input id="client_ininame" name="client_ininame"> - <button id="client_inichange" onclick="iniedit()">Change</button> - <br> - <br> - <p>Pan-tilt (experimental)</p> - <label for="client_pantilt">Enable:</label> - <input type="checkbox" id="client_pantilt" name="client_pantilt" onclick="switchPanTilt()"> - <br> - <br> - <p>16:9 viewport (experimental)</p> - <label for="client_hdviewport">Enable:</label> - <input type="checkbox" id="client_hdviewport" name="client_hdviewport" onclick="switchAspectRatio()"> - <br> - <label for="client_hdviewport_offset">Offset chatbox:</label> - <input type="checkbox" id="client_hdviewport_offset" id="client_hdviewport_offset" - onclick="switchChatOffset()"> - <br> - <br> - <label for="client_callwords">Callwords:</label> - <br> - <textarea id="client_callwords" name="client_callwords" rows="4" cols="10" - placeholder="Put 1 callword per line here" onchange="changeCallwords()"></textarea> - <br> - <br> - <span style="color:blue">Changing these settings will save them as a cookie.<br> - By doing so, you agree to it being saved.<br> - If you don't agree, disable cookies for this site in your browser.</span> - </span> + <br /> + <br /> + <p>Ini editing (experimental)</p> + <label for="client_iniselect">Iniedit Character:</label> + <select + id="client_iniselect" + name="client_iniselect" + onchange="updateIniswap()" + ></select> + <input id="client_ininame" name="client_ininame" /> + <button id="client_inichange" onclick="iniedit()">Change</button> + <br /> + <br /> + <p>Pan-tilt (experimental)</p> + <label for="client_pantilt">Enable:</label> + <input + type="checkbox" + id="client_pantilt" + name="client_pantilt" + onclick="switchPanTilt()" + /> + <br /> + <br /> + <p>16:9 viewport (experimental)</p> + <label for="client_hdviewport">Enable:</label> + <input + type="checkbox" + id="client_hdviewport" + name="client_hdviewport" + onclick="switchAspectRatio()" + /> + <br /> + <label for="client_hdviewport_offset">Offset chatbox:</label> + <input + type="checkbox" + id="client_hdviewport_offset" + id="client_hdviewport_offset" + onclick="switchChatOffset()" + /> + <br /> + <br /> + <label for="client_callwords">Callwords:</label> + <br /> + <textarea + id="client_callwords" + name="client_callwords" + rows="4" + cols="10" + placeholder="Put 1 callword per line here" + onchange="changeCallwords()" + ></textarea> + <br /> + <br /> + <span style="color: blue" + >Changing these settings will save them as a cookie.<br /> + By doing so, you agree to it being saved.<br /> + If you don't agree, disable cookies for this site in your + browser.</span + > + </span> - <!-- About section --> - <span class="menu_content" id="content_4"> - <meta name="frame-title" lang="en" content="About"> - <img id="about-logo" src="logo-new.png" alt="Attorney Online logo"> - <h1 style="line-height: .3em;">webAO</h1> - <h3 id="client_version">version</h3> - <p>Client created by - <a href="https://github.com/stonedDiscord">@stonedDiscord</a> and fixed up by - <a href="https://github.com/oldmud0">@oldmud0</a> and - <a href="https://github.com/qubrick">Qubrick</a>. - </p> - <p><a href="https://github.com/AttorneyOnline/webAO">Follow development on our GitHub</a></p> - <p>Special thanks to Aleks for the first webAO PoC.</p> - <p><a href="styles/igiari/readme.txt">Igiari font by Caveras</a></p> - </span> - </div> -</template> + <!-- About section --> + <span class="menu_content" id="content_4"> + <meta name="frame-title" lang="en" content="About" /> + <img id="about-logo" src="logo-new.png" alt="Attorney Online logo" /> + <h1 style="line-height: 0.3em">webAO</h1> + <h3 id="client_version">version</h3> + <p> + Client created by + <a href="https://github.com/stonedDiscord">@stonedDiscord</a> and + fixed up by <a href="https://github.com/oldmud0">@oldmud0</a> and + <a href="https://github.com/qubrick">Qubrick</a>. + </p> + <p> + <a href="https://github.com/AttorneyOnline/webAO" + >Follow development on our GitHub</a + > + </p> + <p>Special thanks to Aleks for the first webAO PoC.</p> + <p><a href="styles/igiari/readme.txt">Igiari font by Caveras</a></p> + </span> + </div> + </template> -<template id="log"> - <meta name="frame-title" lang="en" content="Log"> - <div id="client_log"> - <div class="hrtext">↓ log starts here ↓</div> - </div> -</template> + <template id="log"> + <meta name="frame-title" lang="en" content="Log" /> + <div id="client_log"> + <div class="hrtext">↓ log starts here ↓</div> + </div> + </template> -<template id="ooc"> - <meta name="frame-title" lang="en" content="Server"> - <div id="client_ooc" style="height: 100%; display: flex; flex-direction: column;"> - <div id="client_ooclog" style="flex: 1 auto" readonly></div> - <span id="client_oocinput"> - <input id="OOC_name" name="OOC_name" type="text"> - <input id="client_oocinputbox" type="text" onkeypress="onOOCEnter(event)"> - </span> - <span id="client_replaycontrols" style="display: none; white-space: nowrap;"> - <input id="client_replaygo" style="width: 25%;" type="button" onclick="onReplayGo(event)" value="GO"> - <input id="client_replaytimer" style="width: 25%;" type="number" value="2000"> - </span> - </div> -</template> + <template id="ooc"> + <meta name="frame-title" lang="en" content="Server" /> + <div + id="client_ooc" + style="height: 100%; display: flex; flex-direction: column" + > + <div id="client_ooclog" style="flex: 1 auto" readonly></div> + <span id="client_oocinput"> + <input id="OOC_name" name="OOC_name" type="text" /> + <input + id="client_oocinputbox" + type="text" + onkeypress="onOOCEnter(event)" + /> + </span> + <span + id="client_replaycontrols" + style="display: none; white-space: nowrap" + > + <input + id="client_replaygo" + style="width: 25%" + type="button" + onclick="onReplayGo(event)" + value="GO" + /> + <input + id="client_replaytimer" + style="width: 25%" + type="number" + value="2000" + /> + </span> + </div> + </template> -<template id="music"> - <meta name="frame-title" lang="en" content="Music"> - <input id="client_musicsearch" placeholder="Search" oninput="musiclist_filter(event)"> - <select id="client_musiclist" size="5" onchange="musiclist_click(event)"> - </select> -</template> + <template id="music"> + <meta name="frame-title" lang="en" content="Music" /> + <input + id="client_musicsearch" + placeholder="Search" + oninput="musiclist_filter(event)" + /> + <select + id="client_musiclist" + size="5" + onchange="musiclist_click(event)" + ></select> + </template> -<template id="players"> - <meta name="frame-title" lang="en" content="Players"> - <table id="client_playerlist"></table> -</template> - + <template id="players"> + <meta name="frame-title" lang="en" content="Players" /> + <table id="client_playerlist"></table> + </template> </html> diff --git a/public/index.html b/public/index.html index bc13032..aa6c65a 100644 --- a/public/index.html +++ b/public/index.html @@ -1,130 +1,185 @@ <html> + <head> + <title><%= htmlWebpackPlugin.options.title %></title> + <meta charset="utf-8" /> + <meta + name="viewport" + content="width=device-width, initial-scale=1, shrink-to-fit=no" + /> + <meta + name="description" + content="An off-the-cuff courtroom drama simulator" + /> + <meta name="author" content="stonedDiscord" /> -<head> - <title> - <%= htmlWebpackPlugin.options.title %> - </title> - <meta charset="utf-8"> - <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> - <meta name="description" content="An off-the-cuff courtroom drama simulator"> - <meta name="author" content="stonedDiscord"> + <meta property="og:title" content="Attorney Online" /> + <meta + property="og:description" + content="Attorney Online is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format." + /> + <meta property="og:type" content="website" /> + <meta property="og:url" content="http://web.aceattorneyonline.com/" /> + <meta + property="og:image" + content="https://repository-images.githubusercontent.com/78860508/89fcba80-aafd-11e9-80db-c5b10c01aba9" + /> - <meta property="og:title" content="Attorney Online"> - <meta property="og:description" - content="Attorney Online is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format."> - <meta property="og:type" content="website"> - <meta property="og:url" content="http://web.aceattorneyonline.com/"> - <meta property="og:image" - content="https://repository-images.githubusercontent.com/78860508/89fcba80-aafd-11e9-80db-c5b10c01aba9"> - - <meta property="twitter:card" content="summary_large_image"> - <meta property="twitter:title" content="Attorney Online"> - <meta property="twitter:description" - content="Attorney Online is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format."> - <meta property="twitter:url" content="http://web.aceattorneyonline.com/"> - <meta property="twitter:image" - content="https://repository-images.githubusercontent.com/78860508/89fcba80-aafd-11e9-80db-c5b10c01aba9"> - - <meta http-equiv="Content-Security-Policy" - content="default-src 'self' 'unsafe-inline' 'unsafe-eval' *.aceattorneyonline.com data:; frame-src http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; connect-src 'self' http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com ws:;"> - <meta http-equiv="X-Content-Security-Policy" - content="default-src 'self' 'unsafe-inline' 'unsafe-eval' *.aceattorneyonline.com data:; frame-src http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; connect-src 'self' http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com ws:;"> - <meta http-equiv="X-WebKit-CSP" - content="default-src 'self' 'unsafe-inline' 'unsafe-eval' *.aceattorneyonline.com data:; frame-src http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; connect-src 'self' http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com ws:;"> + <meta property="twitter:card" content="summary_large_image" /> + <meta property="twitter:title" content="Attorney Online" /> + <meta + property="twitter:description" + content="Attorney Online is an online version of the world-renowned courtroom drama simulator that allows you to create and play out cases in an off-the-cuff format." + /> + <meta property="twitter:url" content="http://web.aceattorneyonline.com/" /> + <meta + property="twitter:image" + content="https://repository-images.githubusercontent.com/78860508/89fcba80-aafd-11e9-80db-c5b10c01aba9" + /> + <meta + http-equiv="Content-Security-Policy" + content="default-src 'self' 'unsafe-inline' 'unsafe-eval' *.aceattorneyonline.com data:; frame-src http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; connect-src 'self' http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com ws:;" + /> + <meta + http-equiv="X-Content-Security-Policy" + content="default-src 'self' 'unsafe-inline' 'unsafe-eval' *.aceattorneyonline.com data:; frame-src http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; connect-src 'self' http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com ws:;" + /> + <meta + http-equiv="X-WebKit-CSP" + content="default-src 'self' 'unsafe-inline' 'unsafe-eval' *.aceattorneyonline.com data:; frame-src http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com; font-src 'self' https://fonts.gstatic.com; connect-src 'self' http://servers.aceattorneyonline.com https://servers.aceattorneyonline.com ws:;" + /> <!-- Mobile Specifc Meta --> - <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"> + <meta + name="viewport" + content="width=device-width, initial-scale=1, maximum-scale=1" + /> <!-- Bootstrap Integration --> - <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" - integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous"> + <link + rel="stylesheet" + href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" + integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" + crossorigin="anonymous" + /> - <link rel="preconnect" href="https://fonts.gstatic.com"> - <link href="https://fonts.googleapis.com/css?family=Oswald%7CRoboto+Condensed%7CPoiret+One&display=swap" - rel="stylesheet"> + <link rel="preconnect" href="https://fonts.gstatic.com" /> + <link + href="https://fonts.googleapis.com/css?family=Oswald%7CRoboto+Condensed%7CPoiret+One&display=swap" + rel="stylesheet" + /> <!-- AOS --> - <link href="https://unpkg.com/aos@2.3.1/dist/aos.css" rel="stylesheet"> - + <link href="https://unpkg.com/aos@2.3.1/dist/aos.css" rel="stylesheet" /> - <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> + <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" /> <link rel="apple-touch-icon" href="logo-new.png" /> - <link rel="stylesheet" type="text/css" href="styles/master.css"> - <link rel="shortcut icon" href="favicon.ico" type="image/x-icon"> - <link rel="icon" href="favicon.ico"> - <link rel="manifest" href="manifest.json"> + <link rel="stylesheet" type="text/css" href="styles/master.css" /> + <link rel="shortcut icon" href="favicon.ico" type="image/x-icon" /> + <link rel="icon" href="favicon.ico" /> + <link rel="manifest" href="manifest.json" /> <script> - // Check that service workers are supported - if ('serviceWorker' in navigator) { - // Use the window load event to keep the page load performant - window.addEventListener('load', () => { - navigator.serviceWorker.register('service-worker.js'); - }); - } + // Check that service workers are supported + if ("serviceWorker" in navigator) { + // Use the window load event to keep the page load performant + window.addEventListener("load", () => { + navigator.serviceWorker.register("service-worker.js"); + }); + } </script> -</head> + </head> -<body> - <nav class="navbar fixed-top navbar-expand-lg navbar-dark bg-dark fixed-top"> - <div class="container"> - <div class="collapse navbar-collapse" id="navbarResponsive"> - <ul class="navbar-nav ml-auto"> - <li class="nav-item"> - <a class="nav-link" href="https://aceattorneyonline.com/index.html">HOME </a> - </li> - <li class="nav-item"> - <a class="nav-link" href="https://aceattorneyonline.com/download.html">DOWNLOAD </a> - </li> - <li class="nav-item"> - <a class="nav-link" href="https://aceattorneyonline.com/support.html">SUPPORT & FAQ </a> - </li> - <li class="nav-item"> - <a class="nav-link" href="https://discord.gg/wWvQ3pw">DISCORD </a> - </li> - </ul> - </div> + <body> + <nav + class="navbar fixed-top navbar-expand-lg navbar-dark bg-dark fixed-top" + > + <div class="container"> + <div class="collapse navbar-collapse" id="navbarResponsive"> + <ul class="navbar-nav ml-auto"> + <li class="nav-item"> + <a + class="nav-link" + href="https://aceattorneyonline.com/index.html" + >HOME + </a> + </li> + <li class="nav-item"> + <a + class="nav-link" + href="https://aceattorneyonline.com/download.html" + >DOWNLOAD + </a> + </li> + <li class="nav-item"> + <a + class="nav-link" + href="https://aceattorneyonline.com/support.html" + >SUPPORT & FAQ + </a> + </li> + <li class="nav-item"> + <a class="nav-link" href="https://discord.gg/wWvQ3pw">DISCORD </a> + </li> + </ul> </div> + </div> </nav> <form id="serverlist_container" class="monocle-enriched"> - <h2>Server List</h2> - <div id="ms_error" class="error" style="display: none;"> - <p>Could not connect to the master server.</p> - <p>Showing saved list.</p> + <h2>Server List</h2> + <div id="ms_error" class="error" style="display: none"> + <p>Could not connect to the master server.</p> + <p>Showing saved list.</p> + </div> + <noscript> + <div id="js_error" class="error"> + <p>webAO requires JavaScript to work</p> </div> - <noscript> - <div id="js_error" class="error"> - <p>webAO requires JavaScript to work</p> - </div> - </noscript> - <ul class="serverlist"> - <li id="server-2" onmouseover="setServ(-2)"> - <p>Singleplayer (beta)</p> - <a class="button" href="client.html?mode=replay">Try</a> - </li> - </ul> - <ul class="serverlist" id="masterlist"></ul> - <ul class="serverlist"> - <li id="server-1" onmouseover="setServ(-1)"> - <p>Localhost</p> - <a class="button" href="client.html?mode=watch&connect=ws://127.0.0.1:50001">Watch</a> - <a class="button" href="client.html?mode=join&connect=ws://127.0.0.1:50001">Join</a> - </li> - </ul> - <div id="info_container"> - <p id="serverinfo">Masterserver version - ...</p> - <p id="clientinfo">Client version - ...</p> + </noscript> + <ul class="serverlist"> + <li id="server-2" onmouseover="setServ(-2)"> + <p>Singleplayer (beta)</p> + <a class="button" href="client.html?mode=replay">Try</a> + </li> + </ul> + <ul class="serverlist" id="masterlist"></ul> + <ul class="serverlist"> + <li id="server-1" onmouseover="setServ(-1)"> + <p>Localhost</p> + <a + class="button" + href="client.html?mode=watch&connect=ws://127.0.0.1:50001" + >Watch</a + > + <a + class="button" + href="client.html?mode=join&connect=ws://127.0.0.1:50001" + >Join</a + > + </li> + </ul> + <div id="info_container"> + <p id="serverinfo">Masterserver version - ...</p> + <p id="clientinfo">Client version - ...</p> - <iframe id="masterchat" src="https://servers.aceattorneyonline.com/motd" frameborder="0"></iframe> + <iframe + id="masterchat" + src="https://servers.aceattorneyonline.com/motd" + frameborder="0" + ></iframe> - <p>Having trouble? <a href="https://discord.gg/9rYQVVQ">Join us on Discord</a></p> - <p><a href="https://servers.aceattorneyonline.com/privacy">Privacy Policy</a></p> - </div> - <div id="serverdescription_container"> - <p id="serverdescription_content"> - </p> - </div> + <p> + Having trouble? + <a href="https://discord.gg/9rYQVVQ">Join us on Discord</a> + </p> + <p> + <a href="https://servers.aceattorneyonline.com/privacy" + >Privacy Policy</a + > + </p> + </div> + <div id="serverdescription_container"> + <p id="serverdescription_content"></p> + </div> </form> -</body> - + </body> </html> |
