diff options
| author | stonedDiscord <stoned@derpymail.org> | 2020-04-19 15:43:44 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-19 15:43:44 +0200 |
| commit | 729f4144d7b3a489d8c17d3ec2d7c8f32411f696 (patch) | |
| tree | 04a61f8c3289b23ed55ba0e23bd47e8a127dbe17 /webAO | |
| parent | 0dc565de5fbc94dfe1745a44c879ee6a9f801049 (diff) | |
| parent | 182ee7354419bf6ce472817d1124932e82b43f98 (diff) | |
Merge pull request #58 from AttorneyOnline/chatboxstyle
Chatboxstyle
Diffstat (limited to 'webAO')
| -rw-r--r-- | webAO/client.html | 23 | ||||
| -rw-r--r-- | webAO/client.js | 73 | ||||
| -rw-r--r-- | webAO/styles/chatbox/aa.css | 150 | ||||
| -rw-r--r-- | webAO/styles/chatbox/chatboxes.js | 13 | ||||
| -rw-r--r-- | webAO/styles/chatbox/chatdd.css | 48 | ||||
| -rw-r--r-- | webAO/styles/chatbox/chatplvsaa.css | 63 | ||||
| -rw-r--r-- | webAO/styles/chatbox/chatwaiting_triology.svg | 1 | ||||
| -rw-r--r-- | webAO/styles/chatbox/dgs.css | 64 | ||||
| -rw-r--r-- | webAO/styles/chatbox/dgs_chat_bg.png | bin | 0 -> 1763 bytes | |||
| -rw-r--r-- | webAO/styles/chatbox/dr1.css | 64 | ||||
| -rw-r--r-- | webAO/styles/chatbox/drae.css | 65 | ||||
| -rw-r--r-- | webAO/styles/chatbox/drv3.css | 63 | ||||
| -rw-r--r-- | webAO/styles/chatbox/drv3chatbox.png | bin | 0 -> 36885 bytes | |||
| -rw-r--r-- | webAO/styles/chatbox/legacy.css | 49 | ||||
| -rw-r--r-- | webAO/styles/chatbox/p4.css | 65 | ||||
| -rw-r--r-- | webAO/styles/chatbox/triology.css | 139 | ||||
| -rw-r--r-- | webAO/styles/chatbox/yttd.css | 113 | ||||
| -rw-r--r-- | webAO/styles/classic.css | 143 | ||||
| -rw-r--r-- | webAO/styles/client.css | 10 | ||||
| -rw-r--r-- | webAO/styles/cyber.css | 58 | ||||
| -rw-r--r-- | webAO/styles/default.css | 39 | ||||
| -rw-r--r-- | webAO/styles/soj.css | 129 |
22 files changed, 982 insertions, 390 deletions
diff --git a/webAO/client.html b/webAO/client.html index 8e604a1..5ec6519 100644 --- a/webAO/client.html +++ b/webAO/client.html @@ -30,6 +30,7 @@ <link rel="stylesheet" type="text/css" href="styles/client.css?v=1.0.0" id="client_stylesheet"> <link rel="stylesheet" type="text/css" href="styles/default.css?v=1.0.0" id="client_theme"> + <link rel="stylesheet" type="text/css" href="styles/chatbox/aa.css?v=1.0.0" id="chatbox_theme"> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <link type="text/css" rel="stylesheet" href="golden/css/goldenlayout.css" /> <link type="text/css" rel="stylesheet" @@ -77,7 +78,9 @@ <img id="client_evi" src="" alt="Character Evidence" onerror="imgError(this);"> <img id="client_shout" alt="Shout overlay" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII="> <div id="client_chatcontainer"> - <div id="client_name"></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> @@ -329,13 +332,29 @@ onchange="changeBlipVolume()"> <br> <br> - <label for="client_themeselect">Theme:</label> + <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 (WIP)</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="chatdd">DD / SoJ</option> + <option value="dgs">DGS</option> + <option value="triology">Triology</option> + <option value="chatplvsaa">PL vs AA</option> + <option value="p4">Persona 4</option> + <option value="dr1">DR 1</option> + <option value="drv3">DR 3</option> + <option value="drae">DR: AE</option> + <option value="yttd">YTTD</option> + </select> <!-- <br> <br> diff --git a/webAO/client.js b/webAO/client.js index b5c8c2f..54458e5 100644 --- a/webAO/client.js +++ b/webAO/client.js @@ -14,6 +14,8 @@ import background_arr from "./backgrounds.js"; import evidence_arr from "./evidence.js"; import sfx_arr from "./sounds.js"; +import chatbox_arr from "./styles/chatbox/chatboxes.js"; + import { EventEmitter } from "events"; import { version } from '../package.json'; @@ -393,6 +395,11 @@ class Client extends EventEmitter { document.querySelector('#client_themeselect [value="' + cookietheme + '"]').selected = true; reloadTheme(); + var cookiechatbox = getCookie("chatbox") || "dynamic"; + + document.querySelector('#client_chatboxselect [value="' + cookiechatbox + '"]').selected = true; + setChatbox(cookiechatbox); + document.getElementById("client_musicaudio").volume = getCookie("musicVolume") || 1; changeMusicVolume(); document.getElementById("client_svolume").value = getCookie("sfxVolume") || 1; @@ -502,12 +509,14 @@ class Client extends EventEmitter { let msg_nameplate = args[3]; let msg_blips = "male"; + let char_chatbox = "default"; let char_muted = false; try { msg_nameplate = this.chars[char_id].showname; msg_blips = this.chars[char_id].gender; - char_muted = this.chars[char_id].muted; + char_chatbox = this.chars[char_id].chat; + char_muted = this.chars[char_id].muted; if(this.chars[char_id].name !== char_name) { console.info(this.chars[char_id].name + " is iniediting to " + char_name); @@ -527,6 +536,7 @@ class Client extends EventEmitter { deskmod: safe_tags(args[1]).toLowerCase(), preanim: safe_tags(args[2]).toLowerCase(), // get preanim nameplate: msg_nameplate, // TODO: there's a new feature that let's people choose the name that's displayed + chatbox: char_chatbox, name: char_name, sprite: safe_tags(args[4]).toLowerCase(), content: prepChat(args[5]), // Escape HTML tags @@ -664,7 +674,8 @@ class Client extends EventEmitter { name: chargs[0], showname: chargs[0], side: "def", - gender: "male" + gender: "male", + chat: "aa" }; cini.options = Object.assign(default_options, cini.options); @@ -679,6 +690,8 @@ class Client extends EventEmitter { showname: safe_tags(cini.options.showname), desc: safe_tags(chargs[1]), gender: safe_tags(cini.options.gender).toLowerCase(), + side: safe_tags(cini.options.side).toLowerCase(), + chat: safe_tags(cini.options.chat).toLowerCase(), evidence: chargs[3], icon: icon, inifile: cini, @@ -1542,13 +1555,12 @@ async changeBackground(position) { const pairSprite = document.getElementById("client_pair_char"); const chatContainerBox = document.getElementById("client_chatcontainer"); - const nameBox = document.getElementById("client_name"); - const chatBox = document.getElementById("client_chat"); + const nameBoxInner = document.getElementById("client_inner_name"); const chatBoxInner = document.getElementById("client_inner_chat"); //Clear out the last message chatBoxInner.innerText = this.textnow; - nameBox.innerText = this.chatmsg.nameplate; + nameBoxInner.innerText = this.chatmsg.nameplate; if (this.lastChar !== this.chatmsg.name) { charSprite.style.display = "none"; @@ -1586,8 +1598,6 @@ async changeBackground(position) { const shout = this.shouts[this.chatmsg.objection]; if (shout) { // Hide message box - nameBox.style.display = "none"; - chatBox.style.display = "none"; chatContainerBox.style.display = "none"; shoutSprite.src = client.resources[shout]["src"]; shoutSprite.style.display = "block"; @@ -1619,8 +1629,6 @@ async changeBackground(position) { case 1: // play preanim // Hide message box - nameBox.style.display = "none"; - chatBox.style.display = "none"; chatContainerBox.style.display = "none"; // If preanim existed then determine the length gifLength = await this.getAnimLength(`${AO_HOST}characters/${encodeURI(this.chatmsg.name.toLowerCase())}/${encodeURI(this.chatmsg.preanim)}.gif`); @@ -1638,6 +1646,9 @@ async changeBackground(position) { this.changeBackground(chatmsg.side); + setChatbox(chatmsg.chatbox); + resizeChatbox(); + // Flip the character if (this.chatmsg.flip === 1) { charSprite.style.transform = "scaleX(-1)"; @@ -1701,8 +1712,7 @@ async changeBackground(position) { this.updater = setTimeout(() => this.tick(), UPDATE_INTERVAL); } - const nameBox = document.getElementById("client_name"); - const chatBox = document.getElementById("client_chat"); + const gamewindow = document.getElementById("client_gamewindow"); const waitingBox = document.getElementById("client_chatwaiting"); const charSprite = document.getElementById("client_char"); const pairSprite = document.getElementById("client_pair_char"); @@ -1716,7 +1726,7 @@ async changeBackground(position) { if (this.chatmsg.flash === 2) { // Shake screen this.playSFX(AO_HOST + "sounds/general/sfx-stab.wav"); - document.getElementById("client_gamewindow").style.animation = "shake 0.2s 1"; + gamewindow.style.animation = "shake 0.2s 1"; } else if (this.chatmsg.flash === 1) { // Flash screen this.playSFX(AO_HOST + "sounds/general/sfx-realization.wav"); @@ -1769,16 +1779,13 @@ async changeBackground(position) { } } - document.getElementById("client_chatcontainer").style.display = "block"; + resizeChatbox(); - nameBox.style.display = "block"; - nameBox.style.fontSize = (nameBox.offsetHeight * 0.7) + "px"; + const chatContainerBox = document.getElementById("client_chatcontainer"); + chatContainerBox.style.display = "block"; chatBoxInner.className = "text_" + this.colors[this.chatmsg.color]; - chatBox.style.display = "block"; - chatBox.style.fontSize = (chatBox.offsetHeight * 0.25) + "px"; - this.chatmsg.startspeaking = false; if (this.chatmsg.preanimdelay === 0) { @@ -2450,6 +2457,36 @@ export function getIndexFromSelect(select_box, value) { window.getIndexFromSelect = getIndexFromSelect; /** + * Set the style of the chatbox + */ +export function setChatbox(style) { + const chatbox_theme = document.getElementById("chatbox_theme"); + const selected_theme = document.getElementById("client_chatboxselect").value; + setCookie("chatbox", selected_theme); + if(selected_theme === "dynamic") { + if (chatbox_arr.includes(style)) { + chatbox_theme.href = "styles/chatbox/" + style + ".css"; + } else { + chatbox_theme.href = "styles/chatbox/aa.css"; + } + } else { + chatbox_theme.href = "styles/chatbox/" + selected_theme + ".css"; + } +} +window.setChatbox = setChatbox; + +/** + * Set the font size for the chatbox + */ +export function resizeChatbox() { + const chatContainerBox = document.getElementById("client_chatcontainer"); + const gameHeight = document.getElementById("client_background").offsetHeight; + + chatContainerBox.style.fontSize = (gameHeight * 0.05) + "px"; +} +window.resizeChatbox = resizeChatbox; + +/** * Update evidence icon. */ export function updateEvidenceIcon() { diff --git a/webAO/styles/chatbox/aa.css b/webAO/styles/chatbox/aa.css new file mode 100644 index 0000000..d683ecb --- /dev/null +++ b/webAO/styles/chatbox/aa.css @@ -0,0 +1,150 @@ +@font-face { + font-family: 'ace_attorneyregular'; + src: url('ace-attorney.woff2') format('woff2'), + url('ace-attorney.woff') format('woff'); + font-weight: normal; + font-style: normal; +} + +.text_white { + color: #fff; +} + +.text_blue { + color: #6bc6f7; +} + +.text_green { + color: #00f700; +} + +.text_red { + color: #f00; +} + +.text_orange { + color: #f77339; +} + +.text_yellow { + color: #ff0; +} + +.text_pink { + color: #ffc0cb; +} + +.text_cyan { + color: #0ff; +} + +.text_rainbow { + background-color: #fff; + background-image: repeating-linear-gradient(to right, + red 0% 8%, orange 8% 16%, yellow 16% 24%, green 24% 32%, blue 32% 40%, + red 40% 48%, orange 48% 56%, yellow 56% 64%, green 64% 72%, blue 72% 80%, + red 80% 88%, orange 88% 96%, yellow 96% 100%); + background-size: 40% 40%; + background-clip: text; + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + animation: rainbow 4s linear infinite; +} + +@keyframes rainbow { + 0% { + background-position: 0 0; + } + + 100% { + background-position: 400% 0; + } +} + +#client_chatcontainer { + display: block; + position: absolute; + bottom: 0; + left: 0; + height: 40%; + width: 100%; + filter: none; + font-family: "Ace Attorney", "ace_attorneyregular", "MS PGothic", "MS UI Gothic", "MS Sans Serif", "Hiragino Maru Gothic Pro", "Mitra Mono", "Mukti Narrow", "Meera", "Khmer OS", "FreeSans", "Gargi", sans-serif; +} + +#client_name { + display: block; + position: absolute; + left: 0; + top: 0; + height: 13%; + min-width: 3.25em; + background: rgba(56, 56, 163, 0.5); + box-shadow: 0.075em 0.075em rgba(0, 56, 163, 0.5) inset; + padding: 0 2%; + border-color: rgba(255, 255, 255, 0.5); + border-style: ridge groove groove ridge; + border-width: 0.2em; + border-radius: 0.2em; + z-index: 1; +} + +#client_inner_name { + text-justify: distribute; + letter-spacing: 0.075em; + margin: 0; + font-weight: bold; +} + +#client_chat { + display: block; + position: absolute; + bottom: 0; + left: 0; + width: 98%; + width: calc(100% - 0.275em); + height: 78%; + margin: auto; + border-color: rgba(255, 255, 255, 0.5); + border-style: ridge groove groove ridge; + border-width: 0.15em; + border-radius: 0.3em; + background-color: rgba(0, 0, 16, 0.5); + font-size: 2em; + word-break: keep-all; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_chat p { + padding: 1% 3.13%; + margin: 1px; + line-height: 97%; + letter-spacing: 0.05em; + word-spacing: 0.3em; +} + +#client_chatwaiting { + display: block; + position: absolute; + right: 2%; + bottom: 15%; + line-height: 0.5; + animation: idling 0.4s linear infinite; +} + +@keyframes idling { + 0% { + right: 0; + } + + 50% { + right: 2%; + } + + 100% { + right: 0; + } +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/chatboxes.js b/webAO/styles/chatbox/chatboxes.js new file mode 100644 index 0000000..8be936a --- /dev/null +++ b/webAO/styles/chatbox/chatboxes.js @@ -0,0 +1,13 @@ +export default [ + "aa", + "chatdd", + "dgs", + "dr1", + "drv3", + "drae", + "legacy", + "p4", + "chatplvsaa", + "triology", + "yttd" +];
\ No newline at end of file diff --git a/webAO/styles/chatbox/chatdd.css b/webAO/styles/chatbox/chatdd.css new file mode 100644 index 0000000..b97fa2c --- /dev/null +++ b/webAO/styles/chatbox/chatdd.css @@ -0,0 +1,48 @@ +#client_chatcontainer { + position: absolute; + bottom: 0; + height: 27%; + width: 100%; + font-family: sans-serif; + background-image: url("../images/chatbox.svg"); + background-size: cover; + background-repeat: no-repeat; +} + +#client_name { + display: block; + top: 4%; + padding: 0 10px; + height: 22%; + position: absolute; +} + +#client_chat { + font-size: 1em; + display: block; + width: 100%; + margin: auto; + height: 90%; + top: 20%; + position: absolute; + word-break: keep-all; + word-wrap: break-word; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_inner_name { + margin: 4px; + padding: 5px 3%; +} + +#client_chatwaiting { + display: block; + right: 1em; + bottom: 0.6em; + width: 1em; + position: absolute; + animation: idling 1s linear infinite; +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/chatplvsaa.css b/webAO/styles/chatbox/chatplvsaa.css new file mode 100644 index 0000000..3774b34 --- /dev/null +++ b/webAO/styles/chatbox/chatplvsaa.css @@ -0,0 +1,63 @@ +@font-face { + font-family: 'Cabin Condensed'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Cabin Condensed'), local('CabinCondensed-Regular'), url(https://fonts.gstatic.com/s/cabincondensed/v13/nwpMtK6mNhBK2err_hqkYhHRqmwqZ-LY.woff2) format('woff2'); +} + +#client_chatcontainer { + font-family: 'Cabin Condensed', sans-serif; + position: absolute; + bottom: 0; + left: 0; + height: 35%; + width: 100%; +} + +#client_name { + display: block; + left: 1%; + top: 0; + height: 20%; + min-width: 15%; + padding: 0px 6px; + border: 2px ridge #b1822d; + border-radius: 0.4em; + background: #783500; + position: absolute; + z-index: 1; +} + +#client_inner_name { + margin: 1px; +} + +#client_chat { + font-size: 1em; + display: block; + width: 99%; + width: calc(100% - 4px); + margin: auto; + height: 80%; + border: 2px ridge #d9a63b; + border-radius: 0.5em; + background-color: rgba(148,96,0,0.6); + bottom: 0; + position: absolute; + word-break: keep-all; + word-wrap: break-word; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_chat p { + margin: 6px; + padding: 6px 20px; +} + +#client_chatwaiting { + display: none; +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/chatwaiting_triology.svg b/webAO/styles/chatbox/chatwaiting_triology.svg new file mode 100644 index 0000000..6ce23eb --- /dev/null +++ b/webAO/styles/chatbox/chatwaiting_triology.svg @@ -0,0 +1 @@ +<svg xmlns="http://www.w3.org/2000/svg" width="60" height="60" viewBox="0 0 15.9 15.9"><defs/><g fill="#ffd660" stroke="#b58a18" stroke-linecap="round" stroke-linejoin="round" stroke-width=".3"><path d="M.1.1H4L9.3 8 4 15.7H0L5.3 8z"/><path d="M6.6.1h4L15.7 8l-5.1 7.8h-4L12 8z"/></g></svg>
\ No newline at end of file diff --git a/webAO/styles/chatbox/dgs.css b/webAO/styles/chatbox/dgs.css new file mode 100644 index 0000000..38c2c1f --- /dev/null +++ b/webAO/styles/chatbox/dgs.css @@ -0,0 +1,64 @@ +@font-face { + font-family: 'Cabin Condensed'; + font-style: normal; + font-weight: 400; + font-display: swap; + src: local('Cabin Condensed'), local('CabinCondensed-Regular'), url(https://fonts.gstatic.com/s/cabincondensed/v13/nwpMtK6mNhBK2err_hqkYhHRqmwqZ-LY.woff2) format('woff2'); +} + +#client_chatcontainer { + font-family: 'Cabin Condensed', sans-serif; + position: absolute; + bottom: 0; + left: 0; + height: 35%; + width: 100%; +} + +#client_name { + display: block; + padding: 0px 6px; + height: 20%; + min-width: 10%; + border: 1px solid #a59252; + background-image: linear-gradient(#635529, #8c7d42); + left: 2%; + top: 0; + border-radius: 3px; + position: absolute; + z-index: 1; +} + +#client_inner_name { + margin: 1px; +} + +#client_chat { + font-size: 1em; + display: block; + width: 100%; + margin: auto; + height: 80%; + border-image-source: url("dgs_chat_bg.png"); + border-image-slice: 12; + border-image-width: 12px; + border-width: 12px; + background-color: #101821; + bottom: 0; + position: absolute; + word-break: keep-all; + word-wrap: break-word; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_chat p { + margin: 6px; + padding: 6px 20px; +} + +#client_chatwaiting { + display: none; +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/dgs_chat_bg.png b/webAO/styles/chatbox/dgs_chat_bg.png Binary files differnew file mode 100644 index 0000000..90e408a --- /dev/null +++ b/webAO/styles/chatbox/dgs_chat_bg.png diff --git a/webAO/styles/chatbox/dr1.css b/webAO/styles/chatbox/dr1.css new file mode 100644 index 0000000..8b7686e --- /dev/null +++ b/webAO/styles/chatbox/dr1.css @@ -0,0 +1,64 @@ +#client_chatcontainer { + position: absolute; + width: 100%; + height: 30%; + bottom: 0; + left: 0; + font-family: sans-serif; +} + +#client_name { + display: block; + padding: 0 0.45em; + height: 20%; + width: 90%; + text-align: left; + letter-spacing: 0.075em; + color: black; + font-style: italic; + border-radius: 0 2em 0 0; + background: #fb9800; + background: linear-gradient(45deg, + #f8c007, #fae06e 40%, + #fec001 40% 42%, #fadf69 42% 44%, + #fb9800 44%); + left: 0; + top: 0; + position: absolute; + z-index: 1; +} + +#client_inner_name { + padding: 0 2%; + margin: 1px; +} + +#client_chat { + font-size: 1em; + display: block; + width: 100%; + margin: auto; + height: 80%; + border-radius: 0 3em 3em 0; + background: rgba(48,48,48,0.6); + bottom: 0; + left: 0; + position: absolute; + word-break: keep-all; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_chat p { + padding: 1% 3.13%; + margin: 1px; + line-height: 97%; + letter-spacing: 0.05em; + word-spacing: 0.3em; +} + +#client_chatwaiting { + display: none; +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/drae.css b/webAO/styles/chatbox/drae.css new file mode 100644 index 0000000..02ebd7c --- /dev/null +++ b/webAO/styles/chatbox/drae.css @@ -0,0 +1,65 @@ +#client_chatcontainer { + position: absolute; + width: 100%; + height: 30%; + bottom: 0; + left: 0; + font-family: sans-serif; +} + +#client_name { + display: block; + padding: 0 0.45em; + height: 24%; + width: 50%; + text-align: left; + letter-spacing: 0.075em; + font-weight: bold; + background: #ff00bb; + background: linear-gradient(225deg, transparent 10%, + rgba(255,75,206,0.9) 10% 15%, rgba(255, 0, 187, 0.9) 15% 16%, + rgba(255,75,206,0.9) 16% 20%, rgba(255, 0, 187, 0.9) 20% 22%, + rgba(255,75,206,0.9) 22% 25%, rgba(255, 0, 187, 0.9) 25% 28%, + rgba(255,75,206,0.9) 28% 30%, rgba(255, 0, 187, 0.9) 30% 32%, + rgba(255,75,206,0.9) 32% 33%, rgba(255, 0, 187, 0.9) 33%); + left: 0; + top: 0; + position: absolute; + z-index: 1; +} + +#client_inner_name { + padding: 1% 3.13%; + margin: 1px; +} + +#client_chat { + font-size: 1em; + display: block; + width: 100%; + margin: auto; + height: 75%; + border-top: 2px solid #ff00ab; + border-bottom: 2px solid #e9019e; + background-image: linear-gradient(rgba(33,18,28,0.75),rgba(45,18,36,0.75)); + bottom: 0; + left: 0; + position: absolute; + word-break: keep-all; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_chat p { + padding: 1% 3.13%; + margin: 1px; + line-height: 97%; + letter-spacing: 0.05em; + word-spacing: 0.3em; +} + +#client_chatwaiting { + display: none; +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/drv3.css b/webAO/styles/chatbox/drv3.css new file mode 100644 index 0000000..b0bf605 --- /dev/null +++ b/webAO/styles/chatbox/drv3.css @@ -0,0 +1,63 @@ +#client_chatcontainer { + position: absolute; + width: 100%; + height: 30%; + bottom: 0; + left: 0; + font-family: sans-serif; +} + +#client_name { + display: block; + transform: skew(15deg); + padding: 0 0.45em; + height: 20%; + width: 20%; + text-align: left; + letter-spacing: 0.075em; + background: #0e0a02; + border-left: 0.6em solid #fdd300; + left: 1%; + top: 0; + position: absolute; + z-index: 1; +} + +#client_inner_name { + transform: skew(-15deg); + padding: 0 2%; + margin: 1px; +} + +#client_chat { + transform: skew(15deg); + font-size: 1em; + display: block; + width: 89%; + margin: auto; + height: 80%; + border-left: 0.6em solid #fdd300; + border-right: 0.6em solid #fdd300; + background: #030303; + bottom: 0; + left: 4%; + position: absolute; + word-break: keep-all; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_chat p { + transform: skew(-15deg); + padding: 3% 5%; + margin: 1px; + line-height: 97%; + letter-spacing: 0.05em; + word-spacing: 0.3em; +} + +#client_chatwaiting { + display: none; +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/drv3chatbox.png b/webAO/styles/chatbox/drv3chatbox.png Binary files differnew file mode 100644 index 0000000..ecf5e1f --- /dev/null +++ b/webAO/styles/chatbox/drv3chatbox.png diff --git a/webAO/styles/chatbox/legacy.css b/webAO/styles/chatbox/legacy.css new file mode 100644 index 0000000..3a23ca0 --- /dev/null +++ b/webAO/styles/chatbox/legacy.css @@ -0,0 +1,49 @@ +#client_chatcontainer { + position: absolute; + bottom: 0; + left: 0; + height: 40%; + width: 100%; +} + +#client_name { + display: block; + position: absolute; + top: 0; + left: 0; + height: 16%; + border: 1px solid rgba(255, 255, 255, 0.7); + border-radius: 3px; + background: rgba(73, 0, 254, 0.5); + padding: 0px 6px; + z-index: 1; +} + +#client_chat { + position: absolute; + display: block; + bottom: 0; + left: 0; + width: 98%; + width: calc(100% - 4px); + height: 80%; + border: 2px solid rgba(255, 255, 255, 0.7); + border-radius: 4px; + background-color: rgba(0, 0, 0, 0.5); + margin: auto; + font-size: 1em; + word-break: keep-all; + word-wrap: break-word; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_chat p { + margin: 4px; +} + +#client_chatwaiting { + display: none; +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/p4.css b/webAO/styles/chatbox/p4.css new file mode 100644 index 0000000..dc9fdb7 --- /dev/null +++ b/webAO/styles/chatbox/p4.css @@ -0,0 +1,65 @@ +#client_chatcontainer { + position: absolute; + width: 100%; + height: 30%; + bottom: 0; + left: 0; + font-family: Arial, sans-serif; +} + +#client_name { + transform: rotate(4deg); + display: block; + padding: 0 0.45em; + height: 30%; + width: 70%; + text-align: left; + letter-spacing: 0.075em; + font-weight: bold; + color: #512f15; + background: #fe9e18; + background: linear-gradient(to right,#feab21, #fc7c00); + border-top: 0.2em solid #ffeb24; + left: 4%; + top: 0; + position: absolute; +} + +#client_inner_name { + transform: rotate(-4deg); + position: absolute; + padding: 1% 3.13%; + margin: 1px; + left: -1%; +} + +#client_chat { + font-size: 1em; + display: block; + width: 95%; + margin: auto; + height: 80%; + border-right: 0.2em solid #fc7b00; + border-radius: 0.1em; + background: linear-gradient(to right,#615338,#917e56 50%,#615338 100%); + bottom: 2%; + left: 2.5%; + position: absolute; + word-break: keep-all; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + z-index: 1; +} + +#client_chat p { + padding: 1.5% 4%; + margin: 1px; + line-height: 97%; + letter-spacing: 0.05em; + word-spacing: 0.3em; +} + +#client_chatwaiting { + display: none; +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/triology.css b/webAO/styles/chatbox/triology.css new file mode 100644 index 0000000..5139481 --- /dev/null +++ b/webAO/styles/chatbox/triology.css @@ -0,0 +1,139 @@ +.text_white { + color: #fff; +} + +.text_green { + color: #00c900; +} + +.text_red { + color: #ff1700; +} + +.text_orange { + color: #ffa500; +} + +.text_blue { + color: #67b7ed; +} + +.text_yellow { + color: #ff0; +} + +.text_pink { + color: #ffc0cb; +} + +.text_cyan { + color: #0ff; +} + +.text_rainbow { + background-color: #fff; + background-image: repeating-linear-gradient(to right, + red 0% 8%, orange 8% 16%, yellow 16% 24%, green 24% 32%, blue 32% 40%, + red 40% 48%, orange 48% 56%, yellow 56% 64%, green 64% 72%, blue 72% 80%, + red 80% 88%, orange 88% 96%, yellow 96% 100%); + background-size: 40% 40%; + background-clip: text; + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + animation: rainbow 4s linear infinite; +} + +@keyframes rainbow_alt { + + 0%, + 100% { + background-position: 0 0; + } + + 50% { + background-position: 400% 0; + } +} + +@keyframes rainbow { + 0% { + background-position: 0 0; + } + + 100% { + background-position: 400% 0; + } +} + +#client_chatcontainer { + position: absolute; + bottom: 0; + height: 30%; + width: 100%; + font-family: "FOTK-Yoon Mincho 740", serif; +} + +#client_name { + display: block; + background-color: #2989bd; + top: 0; + left: 10%; + padding: 0 10px; + height: 20%; + min-width: 15%; + border: 1px white; + border-style: solid none solid none; + position: absolute; + z-index: 1; +} + +#client_chat { + font-size: 1em; + display: block; + width: 100%; + margin: auto; + height: 90%; + top: 10%; + position: absolute; + word-break: keep-all; + word-wrap: break-word; + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; + background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAL0lEQVQImWOQ98nYzGsVupnXKnSzvE8GCmaASWBTgF8S3VhkNgOySnRTiJdENxYAYC1Ff2vnYrkAAAAASUVORK5CYII=) repeat; + border: 1px white; + border-style: solid none solid none; +} + +#client_chat p { + margin: 4px; + padding: 2% 5%; +} + +#client_chatwaiting { + display: block; + color: transparent; + right: 0.6em; + bottom: 0.6em; + width: 1em; + height: 1em; + background-image: url("chatwaiting_triology.svg"); + background-size: contain; + position: absolute; + animation: idling 0.5s ease infinite; +} + +@keyframes idling { + 0% { + right: 0.6em; + } + + 25% { + right: 0.7em; + } + + 100% { + right: 0.6em; + } +}
\ No newline at end of file diff --git a/webAO/styles/chatbox/yttd.css b/webAO/styles/chatbox/yttd.css new file mode 100644 index 0000000..e2f8e4f --- /dev/null +++ b/webAO/styles/chatbox/yttd.css @@ -0,0 +1,113 @@ + +#client_chatcontainer { + position: absolute; + bottom: 0; + left: 0; + height: 50%; + width: 100%; + filter: none; + font-family: "DejaVu Sans Mono", "BIZ UDGothic", "Consolas", sans-serif; + text-shadow: -1px 0 black, 0 1px black, 1px 0 black, 0 -1px black; +} + +.text_white { + color: #fff; +} + +.text_blue { + color: #93bbe6; +} + +.text_green { + color: #6ab057; +} + +.text_red { + color: #e1522a; +} + +.text_orange { + color: #cf714c; +} + +.text_yellow { + color: #fef9ad; +} + +.text_pink { + color: #ffc0cb; +} + +.text_cyan { + color: #0ff; +} + + + +#client_name { + display: block; + position: absolute; + top: 0; + left: 0; + height: 27%; + height: calc(30% - 6px); + min-width: 10%; + background-color: rgba(0, 0, 0, 0.5); + border-style: double; + border-color: #ffa500; + padding: 0 2%; + z-index: 1; +} + +#client_inner_name { + line-height: 1em; + color: #fef9ad; +} + +#client_chat { + display: block; + position: absolute; + bottom: 0; + width: 99%; + width: calc(100% - 6px); + margin: auto; + height: 70%; + height: calc(70% - 6px); + border-style: double; + border-color: #ffa500; + background-color: rgba(0, 0, 0, 0.5); + overflow-wrap: break-word; + text-align: left; + overflow: hidden; + scroll-behavior: smooth; +} + +#client_chat p { + padding: 1% 3.13%; + margin: 1px; + font-size: 1.3em; +} + +#client_chatwaiting { + display: block; + position: absolute; + transform: rotate(90deg); + left: 50%; + bottom: 0px; + line-height: 0.5; + animation: idling 1s linear infinite; +} + +@keyframes idling { + 0% { + bottom: 2px; + } + + 50% { + bottom: 0px; + } + + 100% { + bottom: 2px; + } +}
\ No newline at end of file diff --git a/webAO/styles/classic.css b/webAO/styles/classic.css index b8ab269..985c04f 100644 --- a/webAO/styles/classic.css +++ b/webAO/styles/classic.css @@ -15,73 +15,6 @@ img { image-rendering: pixelated; } -.text_white { - color: #fff; -} - -.text_blue { - color: #6bc6f7; -} - -.text_green { - color: #00f700; -} - -.text_red { - color: #f00; -} - -.text_orange { - color: #f77339; -} - -.text_yellow { - color: #ff0; -} - -.text_pink { - color: #ffc0cb; -} - -.text_cyan { - color: #0ff; -} - -.text_rainbow { - background-color: #fff; - background-image: repeating-linear-gradient(to right, - red 0% 8%, orange 8% 16%, yellow 16% 24%, green 24% 32%, blue 32% 40%, - red 40% 48%, orange 48% 56%, yellow 56% 64%, green 64% 72%, blue 72% 80%, - red 80% 88%, orange 88% 96%, yellow 96% 100%); - background-size: 40% 40%; - background-clip: text; - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; - animation: rainbow 4s linear infinite; -} - -@keyframes rainbow_alt { - - 0%, - 100% { - background-position: 0 0; - } - - 50% { - background-position: 400% 0; - } -} - -@keyframes rainbow { - 0% { - background-position: 0 0; - } - - 100% { - background-position: 400% 0; - } -} - hr { height: 6px; width: 100%; @@ -90,82 +23,6 @@ hr { margin: 0; } -#client_chatcontainer { - filter: none; -} - -#client_name { - display: none; - padding: 0 0.45em; - height: 5.2%; - min-width: 3.25em; - text-justify: distribute; - letter-spacing: 0.075em; - font-weight: bold; - background: rgba(56, 56, 163, 0.5); - box-shadow: 0.075em 0.075em rgba(0, 56, 163, 0.5) inset; - left: 0; - top: 60.4%; - border-color: rgba(255, 255, 255, 0.5); - border-style: ridge groove groove ridge; - border-width: 0.2em; - border-radius: 0.2em; - position: absolute; - z-index: 1; -} - -#client_chat { - font-size: 1em; - display: none; - width: 98.4375%; - width: calc(100% - 0.275em); - margin: auto; - height: 31.25%; - border-color: rgba(255, 255, 255, 0.5); - border-style: ridge groove groove ridge; - border-width: 0.15em; - border-radius: 0.3em; - background-color: rgba(0, 0, 16, 0.5); - top: 66.5%; - position: absolute; - word-break: keep-all; - overflow-wrap: break-word; - text-align: left; - overflow: hidden; - scroll-behavior: smooth; -} - -#client_chat p { - padding: 1% 3.13%; - margin: 1px; - line-height: 97%; - letter-spacing: 0.05em; - word-spacing: 0.3em; -} - -#client_chatwaiting { - display: block; - right: -6px; - bottom: 0.2em; - width: 1em; - position: absolute; - animation: idling 0.4s linear infinite; -} - -@keyframes idling { - 0% { - right: -4px; - } - - 50% { - right: -8px; - } - - 100% { - right: -4px; - } -} - #evi_name { background-color: #393939; color: #ffad18; diff --git a/webAO/styles/client.css b/webAO/styles/client.css index fa020ef..9a1afd8 100644 --- a/webAO/styles/client.css +++ b/webAO/styles/client.css @@ -215,6 +215,13 @@ transition-property: height, opacity; } +#client_chatcontainer { + position: absolute; + width: 100%; + bottom: 0; + left: 0; +} + #client_shout { display: block; position: absolute; @@ -301,7 +308,8 @@ #client_musiclist { width: 99%; - height: 100%; + height: 95%; + height: calc(95% - 16px); background-color: #222; color: #fff; } diff --git a/webAO/styles/cyber.css b/webAO/styles/cyber.css index 644e143..9d239e2 100644 --- a/webAO/styles/cyber.css +++ b/webAO/styles/cyber.css @@ -74,67 +74,9 @@ img { } } -#client_chatcontainer { - filter: none; -} - @keyframes bg-scrolling { 0% { background-position: 0 0; } 100% { background-position: 5px 5px; } - } - -#client_name { - display: none; - padding: 0 0.45em; - height: 5.2%; - min-width: 3.25em; - text-justify: distribute; - letter-spacing: 0.075em; - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAFElEQVQImWNgYGDYjAVTV/A/w2YAfxQSe53wkNkAAAAASUVORK5CYII=) repeat; - animation: bg-scrolling 0.2s infinite linear; - left: 0; - top: 60.4%; - border-color: green; - border-width: 0.2em; - border-style: solid; - position: absolute; - z-index: 1; -} - -#client_chat { - font-size: 1em; - display: none; - width: 98.4375%; - width: calc(100% - 0.275em); - margin: auto; - height: 31.25%; - border-color: green; - border-style: solid; - border-width: 0.15em; - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAFElEQVQImWNgYGDYjAVTV/A/w2YAfxQSe53wkNkAAAAASUVORK5CYII=) repeat; - animation: bg-scrolling 0.2s infinite linear; - top: 66.5%; - position: absolute; - word-break: keep-all; - overflow-wrap: break-word; - text-align: left; - overflow: hidden; - scroll-behavior: smooth; -} - -#client_chat p { - padding: 1% 3.13%; - margin: 1px; - line-height: 97%; -} - -#client_chatwaiting { - display: block; - right: -6px; - bottom: 0.24em; - width: 1em; - position: absolute; - animation: idling 0.4s linear infinite; } @keyframes idling { diff --git a/webAO/styles/default.css b/webAO/styles/default.css index 94e8677..9db682a 100644 --- a/webAO/styles/default.css +++ b/webAO/styles/default.css @@ -77,45 +77,6 @@ img { } } -#client_name { - display: none; - padding: 0px 6px; - height: 7%; - border: 1px solid rgba(255, 255, 255, 0.7); - background: rgba(73, 0, 254, 0.5); - top: 63%; - border-radius: 3px; - position: absolute; -} - -#client_chat { - font-size: 1em; - display: none; - width: 98%; - width: calc(100% - 4px); - margin: auto; - height: 30%; - border: 2px solid rgba(255, 255, 255, 0.7); - background-color: rgba(0, 0, 0, 0.5); - top: 70%; - border-radius: 4px; - position: absolute; - word-break: keep-all; - word-wrap: break-word; - overflow-wrap: break-word; - text-align: left; - overflow: hidden; - scroll-behavior: smooth; -} - -#client_chat p { - margin: 4px; -} - -#client_chatwaiting { - display: none; -} - .client_button { margin: 1px; padding: 2px 15px; diff --git a/webAO/styles/soj.css b/webAO/styles/soj.css index b81508a..afc555a 100644 --- a/webAO/styles/soj.css +++ b/webAO/styles/soj.css @@ -2,135 +2,6 @@ body { font-family: sans-serif; } -.text_white { - color: #fff; -} - -.text_green { - color: #0f0; -} - -.text_red { - color: #f00; -} - -.text_orange { - color: #ffa500; -} - -.text_blue { - color: #4596ff; -} - -.text_yellow { - color: #ff0; -} - -.text_pink { - color: #ffc0cb; -} - -.text_cyan { - color: #0ff; -} - -.text_rainbow { - background-color: #fff; - background-image: repeating-linear-gradient(to right, - red 0% 8%, orange 8% 16%, yellow 16% 24%, green 24% 32%, blue 32% 40%, - red 40% 48%, orange 48% 56%, yellow 56% 64%, green 64% 72%, blue 72% 80%, - red 80% 88%, orange 88% 96%, yellow 96% 100%); - background-size: 40% 40%; - background-clip: text; - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; - animation: rainbow 4s linear infinite; -} - -@keyframes rainbow_alt { - - 0%, - 100% { - background-position: 0 0; - } - - 50% { - background-position: 400% 0; - } -} - -@keyframes rainbow { - 0% { - background-position: 0 0; - } - - 100% { - background-position: 400% 0; - } -} - -#client_chatcontainer { - position: absolute; - top: 73%; - height: 27%; - width: 100%; - background-image: url("../images/chatbox.svg"); - background-size: cover; - background-repeat: no-repeat; -} - -#client_name { - display: none; - top: 4%; - padding: 0 10px; - height: 22%; - position: absolute; -} - -#client_chat { - font-size: 1em; - display: none; - width: 100%; - margin: auto; - height: 90%; - top: 20%; - position: absolute; - word-break: keep-all; - word-wrap: break-word; - overflow-wrap: break-word; - text-align: left; - overflow: hidden; - scroll-behavior: smooth; -} - -#client_chat p { - margin: 4px; - padding: 5px 3%; -} - -#client_chatwaiting { - display: block; - right: 1em; - bottom: 0.6em; - width: 1em; - position: absolute; - animation: idling 1s linear infinite; -} - -@keyframes idling { - 0% { - right: 0.4em; - } - - 50% { - right: 0.8em; - } - - 100% { - right: 0.4em; - } -} - #evi_name { background-color: #242e25; } |
