diff options
| -rw-r--r-- | .github/dependabot.yml | 14 | ||||
| -rw-r--r-- | public/index.html | 3 | ||||
| -rw-r--r-- | webAO/client.ts | 2 | ||||
| -rw-r--r-- | webAO/dom/areaClick.ts | 5 | ||||
| -rw-r--r-- | webAO/dom/updatePlayerAreas.ts | 16 | ||||
| -rw-r--r-- | webAO/packets/handlers/handlePR.ts | 4 | ||||
| -rw-r--r-- | webAO/packets/handlers/handlePU.ts | 5 | ||||
| -rw-r--r-- | webAO/styles/client.css | 6 |
8 files changed, 50 insertions, 5 deletions
diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..ea7c7d7 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,14 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates + +version: 2 +updates: + # Enable version updates for GitHub Actions + - package-ecosystem: "github-actions" + # Look for GitHub Actions workflows in the `root` directory + directory: "/" + # Check the for updates once a week + schedule: + interval: "weekly" diff --git a/public/index.html b/public/index.html index 7bd2032..bc13032 100644 --- a/public/index.html +++ b/public/index.html @@ -63,9 +63,6 @@ }); } </script> - <script async - src="https://mcl.spur.us/d/mcl.js?tk=bKiAexTVoOssUJXadqh43evV6sngzNyNKiLFObpiGZJky44lIB0X34j6OiK3wpJ6jXY0Wkkl8ATKZRgGbLuPlNOOuOOSS1WJsZ6jgMFlBapaKHMBOaqCPKCIVEmNbS4tylVzv1b2DHZWS1a5x9BcnmnTJrkxP1Hwl3DdLYaCiTvL5sieuuNOr2Ho9nHjBlsE3ak7BEnQWvEDQdm9akDvjn4gydYuiEiphDELCPKwGNkmE0Kx6XjwdvDe9Adn6hveakNyuoCBhdepCtzwHd6yodsdw4oepFf3fnsX0jwPLEAw7FBcRAmf7tY4o6aeon527zGv6o6qIHNo7dxxLB18Lg8XSP7YyH5W1JGeHuVCx950YHxWhPk21IpYY1Mjtd58X2Q" - id="_mcl"></script> </head> <body> diff --git a/webAO/client.ts b/webAO/client.ts index ebfb36f..301fdfa 100644 --- a/webAO/client.ts +++ b/webAO/client.ts @@ -124,6 +124,7 @@ class Client extends EventEmitter { chars: any; emotes: any; evidences: any; + area: number; areas: any; musics: any; musics_time: boolean; @@ -183,6 +184,7 @@ class Client extends EventEmitter { this.chars = []; this.emotes = []; this.evidences = []; + this.area = 0; this.areas = []; this.musics = []; this.musics_time = false; diff --git a/webAO/dom/areaClick.ts b/webAO/dom/areaClick.ts index 1b0fe52..e217c2c 100644 --- a/webAO/dom/areaClick.ts +++ b/webAO/dom/areaClick.ts @@ -1,15 +1,18 @@ import { client } from '../client' +import { updatePlayerAreas } from './updatePlayerAreas' /** * Triggered when an item on the area list is clicked. * @param {HTMLElement} el */ export function area_click(el: HTMLElement) { - const area = client.areas[el.id.substr(4)].name; + const area = client.areas[el.id.substring(4)].name; client.sender.sendMusicChange(area); const areaHr = document.createElement("div"); areaHr.className = "hrtext"; areaHr.textContent = `switched to ${el.textContent}`; document.getElementById("client_log")!.appendChild(areaHr); + client.area = Number(el.id.substring(4)); + updatePlayerAreas(client.area); } window.area_click = area_click;
\ No newline at end of file diff --git a/webAO/dom/updatePlayerAreas.ts b/webAO/dom/updatePlayerAreas.ts new file mode 100644 index 0000000..d2ec076 --- /dev/null +++ b/webAO/dom/updatePlayerAreas.ts @@ -0,0 +1,16 @@ +import { client } from '../client' +import { area_click } from './areaClick'; +/** + * Triggered when someone switches areas + * @param {Number} ownarea + */ +export function updatePlayerAreas(ownarea: number) { + for (let i=0; i < client.areas.length; i++) { + if (i===ownarea) + for (let classelement of Array.from(document.getElementsByClassName(`area${i}`) as HTMLCollectionOf<HTMLElement>)) + classelement.style.display = ""; + else + for (let classelement of Array.from(document.getElementsByClassName(`area${i}`) as HTMLCollectionOf<HTMLElement>)) + classelement.style.display = "none"; + } +}
\ No newline at end of file diff --git a/webAO/packets/handlers/handlePR.ts b/webAO/packets/handlers/handlePR.ts index 0073140..fd53b1f 100644 --- a/webAO/packets/handlers/handlePR.ts +++ b/webAO/packets/handlers/handlePR.ts @@ -5,8 +5,10 @@ function addPlayer(playerID: number) { const list = <HTMLTableElement>document.getElementById("client_playerlist"); const playerRow = list.insertRow(); playerRow.id = `client_playerlist_entry${playerID}`; + playerRow.className = `area0`; const imgCell = playerRow.insertCell(0); + imgCell.style.width = "64px"; const img = document.createElement('img'); imgCell.appendChild(img); @@ -20,12 +22,14 @@ function addPlayer(playerID: number) { oocNameCell.appendChild(name); const kickCell = playerRow.insertCell(4); + kickCell.style.width = "64px"; const kick = <HTMLButtonElement>document.createElement("button"); kick.innerText = "Kick"; kick.onclick = () => { window.kickPlayer(playerID) } kickCell.appendChild(kick); const banCell = playerRow.insertCell(5); + banCell.style.width = "64px"; const ban = <HTMLButtonElement>document.createElement("button"); ban.innerText = "Ban"; ban.onclick = () => { window.banPlayer(playerID) } diff --git a/webAO/packets/handlers/handlePU.ts b/webAO/packets/handlers/handlePU.ts index 6db644b..e2fd4d7 100644 --- a/webAO/packets/handlers/handlePU.ts +++ b/webAO/packets/handlers/handlePU.ts @@ -1,4 +1,6 @@ +import { client } from "../../client"; import { getCharIcon } from "../../client/handleCharacterInfo"; +import { updatePlayerAreas } from '../../dom/updatePlayerAreas' /** * Handles a playerlist update @@ -23,6 +25,9 @@ export const handlePU = (args: string[]) => { const showName = <HTMLElement>playerRow.childNodes[2]; showName.innerText = data; break; + case 3: + playerRow.className = `area${data}`; + updatePlayerAreas(client.area); default: break; } diff --git a/webAO/styles/client.css b/webAO/styles/client.css index 1525500..f16a098 100644 --- a/webAO/styles/client.css +++ b/webAO/styles/client.css @@ -5,6 +5,10 @@ width: 20px; } +.lm_content { + overflow-y: scroll; + } + @keyframes error_blink { 0% { color: #fff; @@ -564,7 +568,7 @@ } #client_playerlist { - overflow-y: scroll; + width: 100%; } #client_menu { |
