Skip to content

Commit bd541fd

Browse files
committed
Adds manamoji.
1 parent 8e9f41b commit bd541fd

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+49
-1
lines changed

lib/middleware/manamoji.js

+46
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
let substitutions = {
2+
'CHAOS': ':manachaos:',
3+
'{∞}': ':manainfinity:',
4+
'{½}': ':manahalf:',
5+
'{hr}': ':manahr:'
6+
};
7+
8+
let COLORS = ['W', 'U', 'B', 'R', 'G'];
9+
let NUMBERS = [...Array(21).keys()];
10+
let ADDTL = ['C', 'E', 'HR', 'HW', 'T', 'Q', 'S', 'X', 'Y', 'Z'];
11+
12+
function _(before, after) {
13+
if (typeof after === 'undefined') {
14+
after = before;
15+
}
16+
substitutions[`{${before}}`] = `:mana${after.toString().toLowerCase()}:`;
17+
}
18+
19+
ADDTL.forEach(a => { _(a) });
20+
COLORS.forEach(c => { _(c) });
21+
COLORS.forEach(c => { _(`2/${c}`, `2${c}`) });
22+
COLORS.forEach(c => { _(`${c}/P`, `${c}p`) });
23+
COLORS.forEach(c => { COLORS.forEach(d => {
24+
if (c != d) _(`${c}/${d}`, `${c}${d}`);
25+
}) });
26+
NUMBERS.forEach(n => { _(n) });
27+
28+
function manamoji(str) {
29+
const re = new RegExp(Object.keys(substitutions).map(v => {
30+
return v.replace('{', '\\{').replace('}', '\\}');
31+
}).join('|'), 'gi');
32+
return str.replace(re, matched => {
33+
return substitutions[matched];
34+
});
35+
}
36+
37+
38+
module.exports = embed => {
39+
if (embed.title) {
40+
embed.title = manamoji(embed.title);
41+
}
42+
if (embed.description) {
43+
embed.description = manamoji(embed.description);
44+
}
45+
return embed;
46+
}

lib/response-types.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ const request = require('request-promise-native');
22
const Discord = require('discord.js');
33
const Url = require('urijs');
44

5+
const manamoji = require('./middleware/manamoji');
6+
57

68
class TextResponse {
79
constructor(cardName) {
@@ -59,7 +61,7 @@ class TextResponse {
5961
}
6062
}
6163

62-
TextResponse.prototype.middleware = [];
64+
TextResponse.prototype.middleware = [ manamoji ];
6365
TextResponse.prototype.url = 'https://api.scryfall.com/cards/named';
6466

6567

manamoji/mana0.png

5.52 KB

manamoji/mana1.png

3.44 KB

manamoji/mana10.png

5.44 KB

manamoji/mana11.png

3.89 KB

manamoji/mana12.png

5.23 KB

manamoji/mana13.png

5.33 KB

manamoji/mana14.png

4.65 KB

manamoji/mana15.png

5.12 KB

manamoji/mana16.png

5.53 KB

manamoji/mana17.png

4.67 KB

manamoji/mana18.png

5.92 KB

manamoji/mana19.png

5.61 KB

manamoji/mana2.png

5.03 KB

manamoji/mana20.png

6.59 KB

manamoji/mana2b.png

6.7 KB

manamoji/mana2g.png

6.38 KB

manamoji/mana2r.png

6.85 KB

manamoji/mana2u.png

5.76 KB

manamoji/mana2w.png

7.23 KB

manamoji/mana3.png

5.48 KB

manamoji/mana4.png

4.45 KB

manamoji/mana5.png

4.97 KB

manamoji/mana6.png

5.53 KB

manamoji/mana7.png

4.41 KB

manamoji/mana8.png

6.07 KB

manamoji/mana9.png

5.63 KB

manamoji/manab.png

7 KB

manamoji/manabg.png

7.24 KB

manamoji/manabp.png

6.24 KB

manamoji/manabr.png

7.56 KB

manamoji/manac.png

5.7 KB

manamoji/manachaos.png

3.75 KB

manamoji/manae.png

5.44 KB

manamoji/manag.png

6.58 KB

manamoji/managp.png

6.07 KB

manamoji/managu.png

6.23 KB

manamoji/managw.png

7.53 KB

manamoji/manahalf.png

4.35 KB

manamoji/manahr.png

5.16 KB

manamoji/manahw.png

4.97 KB

manamoji/manainfinity.png

5.92 KB

manamoji/manaq.png

4.92 KB

manamoji/manar.png

7.36 KB

manamoji/manarg.png

7.35 KB

manamoji/manarp.png

6.03 KB

manamoji/manarw.png

8 KB

manamoji/manas.png

9.91 KB

manamoji/manat.png

4.8 KB

manamoji/manau.png

4.79 KB

manamoji/manaub.png

6.62 KB

manamoji/manaup.png

6 KB

manamoji/manaur.png

6.71 KB

manamoji/manaw.png

8.37 KB

manamoji/manawb.png

7.78 KB

manamoji/manawp.png

5.99 KB

manamoji/manawu.png

6.82 KB

manamoji/manax.png

5.34 KB

manamoji/manay.png

4.63 KB

manamoji/manaz.png

4.61 KB

manamoji/src.sketch

728 KB
Binary file not shown.

0 commit comments

Comments
 (0)