mirror of
https://github.com/keanuplayz/TravBot-v3.git
synced 2024-08-15 02:33:12 +00:00
34 lines
1.4 KiB
TypeScript
34 lines
1.4 KiB
TypeScript
import {NamedCommand, RestCommand} from "onion-lasers";
|
||
|
||
const vaporwave = (() => {
|
||
const map = new Map<string, string>();
|
||
const vaporwave =
|
||
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!"#$%&'()*+,-./0123456789:;<=>?@[\]^_`{|}~ ";
|
||
const normal = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!\"#$%&'()*+,-./0123456789:;<=>?@[\\]^_`{|}~ ";
|
||
if (vaporwave.length !== normal.length) console.error("Vaporwave text failed to load properly!");
|
||
for (let i = 0; i < vaporwave.length; i++) map.set(normal[i], vaporwave[i]);
|
||
return map;
|
||
})();
|
||
|
||
function getVaporwaveText(text: string): string {
|
||
let output = "";
|
||
|
||
for (const c of text) {
|
||
const transformed = vaporwave.get(c);
|
||
if (transformed) output += transformed;
|
||
}
|
||
|
||
return output;
|
||
}
|
||
|
||
export default new NamedCommand({
|
||
description: "Transforms your text into vaporwave.",
|
||
run: "You need to enter some text!",
|
||
any: new RestCommand({
|
||
async run({send, combined}) {
|
||
const text = getVaporwaveText(combined);
|
||
if (text !== "") send(text);
|
||
else send("Make sure to enter at least one valid character.");
|
||
}
|
||
})
|
||
});
|