diff --git a/README.md b/README.md index 7ca60a3..d751112 100644 --- a/README.md +++ b/README.md @@ -27,7 +27,7 @@ If you ever want to move back to official Discord builds or want to move to your - Get apktool - Get a keystore, see [here](https://stackoverflow.com/a/14994354/3286892), step 1. -- Get 72x72 copies of latest version of mutant standard emojis with codepoints. I have a zip [here](https://mutant.lavatech.top/72x72.zip). +- If you want Mutant Standard emoji patches, get 72x72 copies of latest version of mutant standard emojis with codepoints. I have a zip [here](https://mutant.lavatech.top/72x72.zip). - Extract the emojis you got somewhere. - Clone this repo somewhere, edit `emojireplace.py` and set the `extracted_mutstd_path` folder to the folder you just extracted emojis to. @@ -38,8 +38,8 @@ If you ever want to move back to official Discord builds or want to move to your - Get all the necessary patches for that version. Necessary patches are not available for all versions and are only required to get some versions to pack together correctly. - Get optional patches you want for your version. If the patch you want isn't available for your version, you'll have to port them yourself. - Apply the patches (`patch -p1 < `). -- Edit `emojireplace.py` to point to extracted discord folder (`extracted_discord_path`), and apply emoji patches (`python3 emojireplace.py`) -- Build the new APK (`apktool b com.discord-831`) +- If you want mutant (or other emoji patches), edit `patches/mutant/emojireplace.py` to point to extracted discord folder (`extracted_discord_path`), and apply emoji patches (`python3 emojireplace.py`) +- Build the new APK (`apktool b com.discord-832`) - Sign the new APK (`jarsigner -keystore /dist/.apk `) - Get your new APK from `/dist/.apk`, install and enjoy! diff --git a/patches/mutant/832.patch b/patches/mutant/832.patch index 645d3ce..f4d5b15 100644 --- a/patches/mutant/832.patch +++ b/patches/mutant/832.patch @@ -1,221 +1,909 @@ -diff -crB -x dist -x res -x build com.discord-832-base/assets/data/emojis.json com.discord-832/assets/data/emojis.json *** com.discord-832-base/assets/data/emojis.json 2019-01-19 04:41:50.983097375 +0300 ---- com.discord-832/assets/data/emojis.json 2019-01-19 04:43:43.043646700 +0300 +--- com.discord-832/assets/data/emojis.json 2019-01-22 23:29:58.633342294 +0300 *************** -*** 1469,1474 **** ---- 1469,1677 ---- +*** 549,554 **** +--- 549,568 ---- + }, + { + "names": [ ++ "raised_hands_paw" ++ ], ++ "surrogates": "๐Ÿ™Œ๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "raised_hands_claw" ++ ], ++ "surrogates": "๐Ÿ™Œ๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "clap" + ], + "surrogates": "๐Ÿ‘", +*************** +*** 556,561 **** +--- 570,589 ---- + }, + { + "names": [ ++ "clap_paw" ++ ], ++ "surrogates": "๐Ÿ‘๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "clap_claw" ++ ], ++ "surrogates": "๐Ÿ‘๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "wave" + ], + "surrogates": "๐Ÿ‘‹", +*************** +*** 563,568 **** +--- 591,610 ---- + }, + { + "names": [ ++ "wave_paw" ++ ], ++ "surrogates": "๐Ÿ‘‹๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "wave_claw" ++ ], ++ "surrogates": "๐Ÿ‘‹๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "thumbsup", + "+1", + "thumbup" +*************** +*** 572,577 **** +--- 614,637 ---- + }, + { + "names": [ ++ "thumbsup_paw", ++ "+1_paw", ++ "thumbup_paw" ++ ], ++ "surrogates": "๐Ÿ‘๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "thumbsup_claw", ++ "+1_claw", ++ "thumbup_claw" ++ ], ++ "surrogates": "๐Ÿ‘๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "thumbsdown", + "-1", + "thumbdown" +*************** +*** 581,586 **** +--- 641,664 ---- + }, + { + "names": [ ++ "thumbsdown_paw", ++ "-1_paw", ++ "thumbdown_paw" ++ ], ++ "surrogates": "๐Ÿ‘Ž๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "thumbsdown_claw", ++ "-1_claw", ++ "thumbdown_claw" ++ ], ++ "surrogates": "๐Ÿ‘Ž๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "punch" + ], + "surrogates": "๐Ÿ‘Š", +*************** +*** 588,593 **** +--- 666,685 ---- + }, + { + "names": [ ++ "punch_paw" ++ ], ++ "surrogates": "๐Ÿ‘Š๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "punch_claw" ++ ], ++ "surrogates": "๐Ÿ‘Š๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "fist" + ], + "surrogates": "โœŠ", +*************** +*** 595,600 **** +--- 687,706 ---- + }, + { + "names": [ ++ "fist_paw" ++ ], ++ "surrogates": "โœŠ๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "fist_claw" ++ ], ++ "surrogates": "โœŠ๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "v" + ], + "surrogates": "โœŒ", +*************** +*** 602,607 **** +--- 708,727 ---- + }, + { + "names": [ ++ "v_paw" ++ ], ++ "surrogates": "โœŒ๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "v_claw" ++ ], ++ "surrogates": "โœŒ๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "ok_hand" + ], + "surrogates": "๐Ÿ‘Œ", +*************** +*** 609,614 **** +--- 729,748 ---- + }, + { + "names": [ ++ "ok_hand_paw" ++ ], ++ "surrogates": "๐Ÿ‘Œ๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "ok_hand_claw" ++ ], ++ "surrogates": "๐Ÿ‘Œ๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "raised_hand" + ], + "surrogates": "โœ‹", +*************** +*** 616,621 **** +--- 750,769 ---- + }, + { + "names": [ ++ "raised_hand_paw" ++ ], ++ "surrogates": "โœ‹๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "raised_hand_claw" ++ ], ++ "surrogates": "โœ‹๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "open_hands" + ], + "surrogates": "๐Ÿ‘", +*************** +*** 623,628 **** +--- 771,790 ---- + }, + { + "names": [ ++ "open_hands_paw" ++ ], ++ "surrogates": "๐Ÿ‘๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "open_hands_claw" ++ ], ++ "surrogates": "๐Ÿ‘๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "muscle" + ], + "surrogates": "๐Ÿ’ช", +*************** +*** 630,635 **** +--- 792,811 ---- + }, + { + "names": [ ++ "muscle_paw" ++ ], ++ "surrogates": "๐Ÿ’ช๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "muscle_claw" ++ ], ++ "surrogates": "๐Ÿ’ช๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "pray" + ], + "surrogates": "๐Ÿ™", +*************** +*** 637,642 **** +--- 813,832 ---- + }, + { + "names": [ ++ "pray_paw" ++ ], ++ "surrogates": "๐Ÿ™๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "pray_claw" ++ ], ++ "surrogates": "๐Ÿ™๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "point_up" + ], + "surrogates": "โ˜", +*************** +*** 644,649 **** +--- 834,853 ---- + }, + { + "names": [ ++ "point_up_paw" ++ ], ++ "surrogates": "โ˜๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "point_up_claw" ++ ], ++ "surrogates": "โ˜๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "point_up_2" + ], + "surrogates": "๐Ÿ‘†", +*************** +*** 651,656 **** +--- 855,874 ---- + }, + { + "names": [ ++ "point_up_2_paw" ++ ], ++ "surrogates": "๐Ÿ‘†๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "point_up_2_claw" ++ ], ++ "surrogates": "๐Ÿ‘†๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "point_down" + ], + "surrogates": "๐Ÿ‘‡", +*************** +*** 658,663 **** +--- 876,895 ---- + }, + { + "names": [ ++ "point_down_paw" ++ ], ++ "surrogates": "๐Ÿ‘‡๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "point_down_claw" ++ ], ++ "surrogates": "๐Ÿ‘‡๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "point_left" + ], + "surrogates": "๐Ÿ‘ˆ", +*************** +*** 665,670 **** +--- 897,916 ---- + }, + { + "names": [ ++ "point_left_paw" ++ ], ++ "surrogates": "๐Ÿ‘ˆ๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "point_left_claw" ++ ], ++ "surrogates": "๐Ÿ‘ˆ๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "point_right" + ], + "surrogates": "๐Ÿ‘‰", +*************** +*** 672,677 **** +--- 918,937 ---- + }, + { + "names": [ ++ "point_right_paw" ++ ], ++ "surrogates": "๐Ÿ‘‰๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "point_right_claw" ++ ], ++ "surrogates": "๐Ÿ‘‰๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "middle_finger", + "reversed_hand_with_middle_finger_extended" + ], +*************** +*** 680,685 **** +--- 940,961 ---- + }, + { + "names": [ ++ "middle_finger_paw", ++ "reversed_hand_with_middle_finger_extended_paw" ++ ], ++ "surrogates": "๐Ÿ–•๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "middle_finger_claw", ++ "reversed_hand_with_middle_finger_extended_claw" ++ ], ++ "surrogates": "๐Ÿ–•๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "hand_splayed", + "raised_hand_with_fingers_splayed" + ], +*************** +*** 688,693 **** +--- 964,977 ---- + }, + { + "names": [ ++ "hand_splayed_claw", ++ "raised_hand_with_fingers_splayed_claw" ++ ], ++ "surrogates": "๐Ÿ–๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "metal", + "sign_of_the_horns" + ], +*************** +*** 696,701 **** +--- 980,1001 ---- + }, + { + "names": [ ++ "metal_paw", ++ "sign_of_the_horns_paw" ++ ], ++ "surrogates": "๐Ÿค˜๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "metal_claw", ++ "sign_of_the_horns_claw" ++ ], ++ "surrogates": "๐Ÿค˜๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "vulcan", + "raised_hand_with_part_between_middle_and_ring_fingers" + ], +*************** +*** 704,709 **** +--- 1004,1025 ---- + }, + { + "names": [ ++ "vulcan_paw", ++ "raised_hand_with_part_between_middle_and_ring_fingers_paw" ++ ], ++ "surrogates": "๐Ÿ––๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "vulcan_claw", ++ "raised_hand_with_part_between_middle_and_ring_fingers_claw" ++ ], ++ "surrogates": "๐Ÿ––๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "writing_hand" + ], + "surrogates": "โœ", +*************** +*** 711,716 **** +--- 1027,1046 ---- + }, + { + "names": [ ++ "writing_hand_paw" ++ ], ++ "surrogates": "โœ๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "writing_hand_claw" ++ ], ++ "surrogates": "โœ๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "nail_care" + ], + "surrogates": "๐Ÿ’…", +*************** +*** 718,723 **** +--- 1048,1067 ---- + }, + { + "names": [ ++ "nail_care_paw" ++ ], ++ "surrogates": "๐Ÿ’…๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "nail_care_claw" ++ ], ++ "surrogates": "๐Ÿ’…๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "lips" + ], + "surrogates": "๐Ÿ‘„" +*************** +*** 1417,1422 **** +--- 1761,1780 ---- + }, + { + "names": [ ++ "selfie_paw" ++ ], ++ "surrogates": "๐Ÿคณ๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "selfie_claw" ++ ], ++ "surrogates": "๐Ÿคณ๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "man_dancing", + "male_dancer" + ], +*************** +*** 1433,1438 **** +--- 1791,1812 ---- + }, + { + "names": [ ++ "call_me_paw", ++ "call_me_hand_paw" ++ ], ++ "surrogates": "๐Ÿค™๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "call_me_claw", ++ "call_me_hand_claw" ++ ], ++ "surrogates": "๐Ÿค™๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "raised_back_of_hand", + "back_of_hand" + ], +*************** +*** 1441,1446 **** +--- 1815,1836 ---- + }, + { + "names": [ ++ "raised_back_of_hand_paw", ++ "back_of_hand_paw" ++ ], ++ "surrogates": "๐Ÿคš๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "raised_back_of_hand_claw", ++ "back_of_hand_claw" ++ ], ++ "surrogates": "๐Ÿคš๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "left_facing_fist", + "left_fist" + ], +*************** +*** 1449,1454 **** +--- 1839,1860 ---- + }, + { + "names": [ ++ "left_facing_fist_paw", ++ "left_fist_paw" ++ ], ++ "surrogates": "๐Ÿค›๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "left_facing_fist_claw", ++ "left_fist_claw" ++ ], ++ "surrogates": "๐Ÿค›๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "right_facing_fist", + "right_fist" + ], +*************** +*** 1457,1462 **** +--- 1863,1884 ---- + }, + { + "names": [ ++ "right_facing_fist_paw", ++ "right_fist_paw" ++ ], ++ "surrogates": "๐Ÿคœ๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "right_facing_fist_claw", ++ "right_fist_claw" ++ ], ++ "surrogates": "๐Ÿคœ๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "handshake", + "shaking_hands" + ], +*************** +*** 1464,1474 **** +--- 1886,2100 ---- + }, + { + "names": [ ++ "handshake_paw", ++ "shaking_hands_paw" ++ ], ++ "surrogates": "๐Ÿค๔™" ++ }, ++ { ++ "names": [ ++ "handshake_claw", ++ "shaking_hands_claw" ++ ], ++ "surrogates": "๐Ÿค๔™‘" ++ }, ++ { ++ "names": [ + "fingers_crossed", + "hand_with_index_and_middle_finger_crossed" ], "surrogates": "๐Ÿคž", "hasDiversity": true + }, + { + "names": [ ++ "fingers_crossed_paw", ++ "hand_with_index_and_middle_finger_crossed_paw" ++ ], ++ "surrogates": "๐Ÿคž๔™", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ ++ "fingers_crossed_claw", ++ "hand_with_index_and_middle_finger_crossed_claw" ++ ], ++ "surrogates": "๐Ÿคž๔™‘", ++ "hasDiversity": true ++ }, ++ { ++ "names": [ + "pilot" + ], -+ "hasDiversity": true, + "surrogates": "๐Ÿง‘โœˆ" + }, + { + "names": [ + "health_worker" + ], -+ "hasDiversity": true, + "surrogates": "๐Ÿง‘โš•" + }, + { + "names": [ + "firefighter" + ], -+ "hasDiversity": true, + "surrogates": "๐Ÿง‘๐Ÿฅข" + }, + { + "names": [ + "astronaut" + ], -+ "hasDiversity": true, + "surrogates": "๐Ÿง‘๐Ÿš€" + }, + { + "names": [ + "scientist" + ], -+ "hasDiversity": true, + "surrogates": "๐Ÿง‘๐Ÿ”ฌ" + }, + { + "names": [ + "mechanic" + ], -+ "hasDiversity": true, + "surrogates": "๐Ÿง‘๐Ÿ”ง" + }, + { + "names": [ + "technologist" + ], -+ "hasDiversity": true, + "surrogates": "๐Ÿง‘๐Ÿ’ป" + }, + { + "names": [ + "chef" + ], -+ "hasDiversity": true, + "surrogates": "๐Ÿง‘๐Ÿณ" + }, + { + "names": [ + "monocle" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿง" + }, + { + "names": [ + "pleading" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฅบ" + }, + { + "names": [ + "cold" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฅถ" + }, + { + "names": [ + "hot" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฅต" + }, + { + "names": [ + "woozy" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฅด" + }, + { + "names": [ + "party_face" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฅณ" + }, + { + "names": [ + "smile_hearts" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฅฐ" + }, + { + "names": [ + "mind_blown" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿคฏ" + }, + { + "names": [ + "vomiting" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿคฎ" + }, + { + "names": [ + "hand_over_mouth" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿคญ" + }, + { + "names": [ + "swearing" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿคฌ" + }, + { + "names": [ + "shush" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿคซ" + }, + { + "names": [ + "crazy" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿคช" + }, + { + "names": [ + "starry_eyes" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿคฉ" + }, + { + "names": [ + "raised_eyebrow" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿคจ" + }, + { + "names": [ + "detective" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿ•ต๔˜ซ" + }, + { + "names": [ + "massage" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿ’†๔˜ซ" + }, + { + "names": [ + "tipping_hand" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿ’๔˜ซ" + }, + { + "names": [ + "hot_shit" + ], -+ "hasDiversity": false, + "surrogates": "๔š" + }, + { + "names": [ + "headpats" + ], -+ "hasDiversity": false, + "surrogates": "๔š—" + }, + { + "names": [ + "merperson" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿงœ" } ], "nature": [ *************** *** 2453,2458 **** ---- 2656,2724 ---- +--- 3079,3140 ---- "squid" ], "surrogates": "๐Ÿฆ‘" @@ -237,7 +925,6 @@ diff -crB -x dist -x res -x build com.discord-832-base/assets/data/emojis.json c + "names": [ + "awoo" + ], -+ "hasDiversity": false, + "surrogates": "๔š˜" + }, + { @@ -245,49 +932,43 @@ diff -crB -x dist -x res -x build com.discord-832-base/assets/data/emojis.json c + "dont_awoo", + "no_awoo" + ], -+ "hasDiversity": false, + "surrogates": "๔š™" + }, + { + "names": [ + "elf" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿง" + }, + { + "names": [ + "raccoon" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฆ" + }, + { + "names": [ + "parrot" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฆœ" + }, + { + "names": [ + "peacock" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฆš" + }, + { + "names": [ + "demon" + ], -+ "hasDiversity": false, + "surrogates": "๔™ฆ" } ], "food": [ *************** *** 2980,2985 **** ---- 3246,3258 ---- +--- 3662,3673 ---- "pancakes" ], "surrogates": "๐Ÿฅž" @@ -296,108 +977,13 @@ diff -crB -x dist -x res -x build com.discord-832-base/assets/data/emojis.json c + "names": [ + "cannabis_leaf" + ], -+ "hasDiversity": false, + "surrogates": "๔š‘" } ], "activity": [ *************** -*** 4163,4168 **** ---- 4436,4526 ---- - "kayak" - ], - "surrogates": "๐Ÿ›ถ" -+ }, -+ { -+ "names": [ -+ "queer_100" -+ ], -+ "surrogates": "๐Ÿ’ฏ๐ŸŒˆ" -+ }, -+ { -+ "names": ["dont_at", "no_at", "no_mention", "dont_mention"], -+ "surrogates": "๔šš" -+ }, -+ { -+ "names": ["neuter_symbol"], -+ "hasDiversity": false, -+ "surrogates": "โšฒ" -+ }, -+ { -+ "names": ["androgyne_symbol"], -+ "hasDiversity": false, -+ "surrogates": "โšจ" -+ }, -+ { -+ "names": ["transgender_symbol"], -+ "hasDiversity": false, -+ "surrogates": "โšง" -+ }, -+ { -+ "names": ["male_female_symbol"], -+ "hasDiversity": false, -+ "surrogates": "โšฅ" -+ }, -+ { -+ "names": ["male_and_female_symbol"], -+ "hasDiversity": false, -+ "surrogates": "โšค" -+ }, -+ { -+ "names": ["two_male_symbols"], -+ "hasDiversity": false, -+ "surrogates": "โšฃ" -+ }, -+ { -+ "names": ["two_female_symbols"], -+ "hasDiversity": false, -+ "surrogates": "โšข" -+ }, -+ { -+ "names": ["red_heart"], -+ "hasDiversity": false, -+ "surrogates": "โ™ด" -+ }, -+ { -+ "names": ["male_symbol"], -+ "hasDiversity": false, -+ "surrogates": "โ™‚" -+ }, -+ { -+ "names": ["female_symbol"], -+ "hasDiversity": false, -+ "surrogates": "โ™€" -+ }, -+ { -+ "names": ["orange_heart"], -+ "hasDiversity": false, -+ "surrogates": "๐Ÿงก" -+ }, -+ { -+ "names": ["labrys_symbol"], -+ "hasDiversity": false, -+ "surrogates": "๔š…" -+ }, -+ { -+ "names": ["bisexual_triangles"], -+ "hasDiversity": false, -+ "surrogates": "๔š„" -+ }, -+ { -+ "names": ["black_triangle"], -+ "hasDiversity": false, -+ "surrogates": "๔šƒ" -+ }, -+ { -+ "names": ["pink_triangle"], -+ "hasDiversity": false, -+ "surrogates": "๔š‚" - } - ], - "objects": [ -*************** *** 5271,5276 **** ---- 5629,5697 ---- +--- 5959,6018 ---- "shopping_trolley" ], "surrogates": "๐Ÿ›’" @@ -406,86 +992,183 @@ diff -crB -x dist -x res -x build com.discord-832-base/assets/data/emojis.json c + "names": [ + "toilet_paper" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿงป" + }, + { + "names": [ + "brick" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿงฑ" + }, + { + "names": [ + "firecracker" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿงจ" + }, + { + "names": [ + "bone" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿฆด" + }, + { + "names": [ + "d20" + ], -+ "hasDiversity": false, + "surrogates": "๔š–" + }, + { + "names": [ + "d12" + ], -+ "hasDiversity": false, + "surrogates": "๔š•" + }, + { + "names": [ + "d10" + ], -+ "hasDiversity": false, + "surrogates": "๔š”" + }, + { + "names": [ + "d8" + ], -+ "hasDiversity": false, + "surrogates": "๔š“" + }, + { + "names": [ + "d4" + ], -+ "hasDiversity": false, + "surrogates": "๔š’" } ], "symbols": [ *************** -*** 8629,8638 **** - }, - { - "names": [ -! "gay_pride_flag", -! "rainbow_flag" +*** 7082,7087 **** +--- 7824,7934 ---- + "regional_indicator_a" + ], + "surrogates": "๐Ÿ‡ฆ" ++ }, ++ { ++ "names": [ ++ "queer_100" ++ ], ++ "surrogates": "๐Ÿ’ฏ๐ŸŒˆ" ++ }, ++ { ++ "names": [ ++ "dont_at", ++ "no_at", ++ "no_mention", ++ "dont_mention" ++ ], ++ "surrogates": "๔šš" ++ }, ++ { ++ "names": [ ++ "neuter_symbol" ++ ], ++ "surrogates": "โšฒ" ++ }, ++ { ++ "names": [ ++ "androgyne_symbol" ++ ], ++ "surrogates": "โšจ" ++ }, ++ { ++ "names": [ ++ "transgender_symbol" ++ ], ++ "surrogates": "โšง" ++ }, ++ { ++ "names": [ ++ "male_female_symbol" ++ ], ++ "surrogates": "โšฅ" ++ }, ++ { ++ "names": [ ++ "male_and_female_symbol" ++ ], ++ "surrogates": "โšค" ++ }, ++ { ++ "names": [ ++ "two_male_symbols" ++ ], ++ "surrogates": "โšฃ" ++ }, ++ { ++ "names": [ ++ "two_female_symbols" ++ ], ++ "surrogates": "โšข" ++ }, ++ { ++ "names": [ ++ "red_heart" ++ ], ++ "surrogates": "โ™ด" ++ }, ++ { ++ "names": [ ++ "male_symbol" ++ ], ++ "surrogates": "โ™‚" ++ }, ++ { ++ "names": [ ++ "female_symbol" ++ ], ++ "surrogates": "โ™€" ++ }, ++ { ++ "names": [ ++ "orange_heart" ++ ], ++ "surrogates": "๐Ÿงก" ++ }, ++ { ++ "names": [ ++ "labrys_symbol" ++ ], ++ "surrogates": "๔š…" ++ }, ++ { ++ "names": [ ++ "bisexual_triangles" ++ ], ++ "surrogates": "๔š„" ++ }, ++ { ++ "names": [ ++ "black_triangle" ++ ], ++ "surrogates": "๔šƒ" ++ }, ++ { ++ "names": [ ++ "pink_triangle" ++ ], ++ "surrogates": "๔š‚" + } + ], + "flags": [ +*************** +*** 8633,8638 **** + "rainbow_flag" ], "surrogates": "๐Ÿณ๏ธโ€๐ŸŒˆ" } ] - } +! } \ No newline at end of file ---- 9050,9199 ---- - }, - { - "names": [ -! "rainbow_flag", -! "gay_pride_flag" +--- 9480,9917 ---- + "rainbow_flag" ], "surrogates": "๐Ÿณ๏ธโ€๐ŸŒˆ" + }, @@ -493,142 +1176,433 @@ diff -crB -x dist -x res -x build com.discord-832-base/assets/data/emojis.json c + "names": [ + "pirate_flag" + ], -+ "hasDiversity": false, + "surrogates": "๐Ÿด๏ธ" + }, + { + "names": [ + "transgender_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔š" + }, + { + "names": [ + "polysexual_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔š€" + }, + { + "names": [ + "polyamory_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ฟ" + }, + { + "names": [ + "pansexual_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™พ" + }, + { + "names": [ + "nonbinary_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ฝ" + }, + { + "names": [ + "neutrois_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ผ" + }, + { + "names": [ + "intersex_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ป" + }, + { + "names": [ + "genderqueer_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™บ" + }, + { + "names": [ + "genderfluid_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™น" + }, + { + "names": [ + "deminonbinary_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ธ" + }, + { + "names": [ + "demigirl_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ท" + }, + { + "names": [ + "demiguy_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ถ" + }, + { + "names": [ + "bisexual_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ต" + }, + { + "names": [ + "bigender_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ด" + }, + { + "names": [ + "bear_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ณ" + }, + { + "names": [ + "asexual_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ฒ" + }, + { + "names": [ + "aromantic_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ฑ" + }, + { + "names": [ + "agender_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔™ฐ" + }, + { + "names": [ + "lesbian_flag" + ], -+ "hasDiversity": false, + "surrogates": "๔š†" ++ }, ++ { ++ "names": [ ++ "paw-modifier" ++ ], ++ "surrogates": "๔™" ++ }, ++ { ++ "names": [ ++ "claw-modifier" ++ ], ++ "surrogates": "๔™‘" ++ }, ++ { ++ "names": [ ++ "skin-tone-1" ++ ], ++ "surrogates": "๐Ÿป" ++ }, ++ { ++ "names": [ ++ "skin-tone-2" ++ ], ++ "surrogates": "๐Ÿผ" ++ }, ++ { ++ "names": [ ++ "skin-tone-3" ++ ], ++ "surrogates": "๐Ÿฝ" ++ }, ++ { ++ "names": [ ++ "skin-tone-4" ++ ], ++ "surrogates": "๐Ÿพ" ++ }, ++ { ++ "names": [ ++ "skin-tone-5" ++ ], ++ "surrogates": "๐Ÿฟ" ++ }, ++ { ++ "names": [ ++ "skin-tone-6" ++ ], ++ "surrogates": "๔˜€" ++ }, ++ { ++ "names": [ ++ "skin-tone-7" ++ ], ++ "surrogates": "๔˜" ++ }, ++ { ++ "names": [ ++ "skin-tone-8" ++ ], ++ "surrogates": "๔˜‚" ++ }, ++ { ++ "names": [ ++ "skin-tone-9" ++ ], ++ "surrogates": "๔˜ƒ" ++ }, ++ { ++ "names": [ ++ "skin-tone-10" ++ ], ++ "surrogates": "๔˜„" ++ }, ++ { ++ "names": [ ++ "skin-tone-11" ++ ], ++ "surrogates": "๔˜…" ++ }, ++ { ++ "names": [ ++ "skin-tone-12" ++ ], ++ "surrogates": "๔˜†" ++ }, ++ { ++ "names": [ ++ "skin-tone-13" ++ ], ++ "surrogates": "๔˜‡" ++ }, ++ { ++ "names": [ ++ "skin-tone-14" ++ ], ++ "surrogates": "๔˜ˆ" ++ }, ++ { ++ "names": [ ++ "skin-tone-15" ++ ], ++ "surrogates": "๔˜‰" ++ }, ++ { ++ "names": [ ++ "skin-tone-16" ++ ], ++ "surrogates": "๔˜Š" ++ }, ++ { ++ "names": [ ++ "skin-tone-17" ++ ], ++ "surrogates": "๔˜‹" ++ }, ++ { ++ "names": [ ++ "skin-tone-18" ++ ], ++ "surrogates": "๔˜Œ" ++ }, ++ { ++ "names": [ ++ "skin-tone-19" ++ ], ++ "surrogates": "๔˜" ++ }, ++ { ++ "names": [ ++ "skin-tone-20" ++ ], ++ "surrogates": "๔˜Ž" ++ }, ++ { ++ "names": [ ++ "skin-tone-21" ++ ], ++ "surrogates": "๔˜" ++ }, ++ { ++ "names": [ ++ "skin-tone-22" ++ ], ++ "surrogates": "๔˜" ++ }, ++ { ++ "names": [ ++ "skin-tone-23" ++ ], ++ "surrogates": "๔˜‘" ++ }, ++ { ++ "names": [ ++ "skin-tone-24" ++ ], ++ "surrogates": "๔˜’" ++ }, ++ { ++ "names": [ ++ "skin-tone-25" ++ ], ++ "surrogates": "๔˜“" ++ }, ++ { ++ "names": [ ++ "skin-tone-26" ++ ], ++ "surrogates": "๔˜”" ++ }, ++ { ++ "names": [ ++ "skin-tone-27" ++ ], ++ "surrogates": "๔˜•" ++ }, ++ { ++ "names": [ ++ "skin-tone-28" ++ ], ++ "surrogates": "๔˜–" ++ }, ++ { ++ "names": [ ++ "skin-tone-29" ++ ], ++ "surrogates": "๔˜—" ++ }, ++ { ++ "names": [ ++ "skin-tone-30" ++ ], ++ "surrogates": "๔˜˜" ++ }, ++ { ++ "names": [ ++ "skin-tone-31" ++ ], ++ "surrogates": "๔˜™" ++ }, ++ { ++ "names": [ ++ "skin-tone-32" ++ ], ++ "surrogates": "๔˜š" ++ }, ++ { ++ "names": [ ++ "skin-tone-33" ++ ], ++ "surrogates": "๔˜›" ++ }, ++ { ++ "names": [ ++ "skin-tone-34" ++ ], ++ "surrogates": "๔˜œ" ++ }, ++ { ++ "names": [ ++ "skin-tone-35" ++ ], ++ "surrogates": "๔˜" ++ }, ++ { ++ "names": [ ++ "skin-tone-36" ++ ], ++ "surrogates": "๔˜ž" ++ }, ++ { ++ "names": [ ++ "skin-tone-37" ++ ], ++ "surrogates": "๔˜Ÿ" ++ }, ++ { ++ "names": [ ++ "skin-tone-38" ++ ], ++ "surrogates": "๔˜ " ++ }, ++ { ++ "names": [ ++ "skin-tone-39" ++ ], ++ "surrogates": "๔˜ก" ++ }, ++ { ++ "names": [ ++ "skin-tone-40" ++ ], ++ "surrogates": "๔˜ข" ++ }, ++ { ++ "names": [ ++ "skin-tone-41" ++ ], ++ "surrogates": "๔˜ฃ" ++ }, ++ { ++ "names": [ ++ "skin-tone-42" ++ ], ++ "surrogates": "๔˜ค" ++ }, ++ { ++ "names": [ ++ "skin-tone-43" ++ ], ++ "surrogates": "๔˜ฅ" ++ }, ++ { ++ "names": [ ++ "skin-tone-44" ++ ], ++ "surrogates": "๔˜ฆ" ++ }, ++ { ++ "names": [ ++ "skin-tone-45" ++ ], ++ "surrogates": "๔˜ง" ++ }, ++ { ++ "names": [ ++ "skin-tone-46" ++ ], ++ "surrogates": "๔˜จ" ++ }, ++ { ++ "names": [ ++ "skin-tone-47" ++ ], ++ "surrogates": "๔˜ฉ" ++ }, ++ { ++ "names": [ ++ "skin-tone-48" ++ ], ++ "surrogates": "๔˜ช" ++ }, ++ { ++ "names": [ ++ "skin-tone-49" ++ ], ++ "surrogates": "๔˜ซ" ++ }, ++ { ++ "names": [ ++ "skin-tone-50" ++ ], ++ "surrogates": "๔˜ฌ" } ] - } -\ No newline at end of file +! } diff --git a/patches/mutant/README.md b/patches/mutant/README.md index 519c2fa..246d6a5 100644 --- a/patches/mutant/README.md +++ b/patches/mutant/README.md @@ -2,11 +2,13 @@ This patch replaces internal emoji list with the custom emojis of mutant standard. +Custom color modifiers and are added too. + You'll need to pack in the right images to the apk. See README.md at the root of the repo for more information. #### Bugs / Side effects - Not all emojis are replaced -- Not all custom mutstd emojis are added +- Fitzpatrick values are not provided for non-human variants of mutated emojis - Custom mutstd emojis won't be visible for users who aren't using a patch like this. #### Available and tested on: diff --git a/patches/mutant/emojipatch.py b/patches/mutant/emojipatch.py new file mode 100644 index 0000000..d0fb6f0 --- /dev/null +++ b/patches/mutant/emojipatch.py @@ -0,0 +1,162 @@ +import copy +import json + +# Unicode hexes that will have Mutant Modifier (mm) applied to +mm_emojis = [0x1f446, 0x1f447, 0x1f448, 0x1f449, 0x1f44a, 0x1f44b, 0x1f44c, + 0x1f44d, 0x1f44e, 0x1f44f, 0x1f450, 0x1f485, 0x1f4aa, 0x1f590, + 0x1f595, 0x1f596, 0x1f64c, 0x1f64f, 0x1f918, 0x1f919, 0x1f91a, + 0x1f91b, 0x1f91c, 0x1f91d, 0x1f91e, 0x1f933, 0x261d, 0x270a, + 0x270b, 0x270c, 0x270d] + +# Mutant Modifier names and their modifiers +mm_types = {"paw": "๔™", + "claw": "๔™‘"} + +# Custom emojis that will be inserted to the end of an emoji category +custom_emojis = {"symbols": {"๐Ÿ’ฏ๐ŸŒˆ": ["queer_100"], + "๔šš": ["dont_at", "no_at", + "no_mention", "dont_mention"], + "โšฒ": ["neuter_symbol"], + "โšจ": ["androgyne_symbol"], + "โšง": ["transgender_symbol"], + "โšฅ": ["male_female_symbol"], + "โšค": ["male_and_female_symbol"], + "โšฃ": ["two_male_symbols"], + "โšข": ["two_female_symbols"], + "โ™ด": ["red_heart"], + "โ™‚": ["male_symbol"], + "โ™€": ["female_symbol"], + "๐Ÿงก": ["orange_heart"], + "๔š…": ["labrys_symbol"], + "๔š„": ["bisexual_triangles"], + "๔šƒ": ["black_triangle"], + "๔š‚": ["pink_triangle"]}, + "objects": {"๐Ÿงป": ["toilet_paper"], + "๐Ÿงฑ": ["brick"], + "๐Ÿงจ": ["firecracker"], + "๐Ÿฆด": ["bone"], + "๔š–": ["d20"], + "๔š•": ["d12"], + "๔š”": ["d10"], + "๔š“": ["d8"], + "๔š’": ["d4"]}, + "nature": {"๔š›๐ŸŒˆ": ["furry_pride", "rainbow_paw"], + "๔š›": ["paw"], + "๔š˜": ["awoo"], + "๔š™": ["dont_awoo", "no_awoo"], + "๐Ÿง": ["elf"], + "๐Ÿฆ": ["raccoon"], + "๐Ÿฆœ": ["parrot"], + "๐Ÿฆš": ["peacock"], + "๔™ฆ": ["demon"]}, + "people": {"๐Ÿง‘โœˆ": ["pilot"], + "๐Ÿง‘โš•": ["health_worker"], + "๐Ÿง‘๐Ÿฅข": ["firefighter"], + "๐Ÿง‘๐Ÿš€": ["astronaut"], + "๐Ÿง‘๐Ÿ”ฌ": ["scientist"], + "๐Ÿง‘๐Ÿ”ง": ["mechanic"], + "๐Ÿง‘๐Ÿ’ป": ["technologist"], + "๐Ÿง‘๐Ÿณ": ["chef"], + "๐Ÿง": ["monocle"], + "๐Ÿฅบ": ["pleading"], + "๐Ÿฅถ": ["cold"], + "๐Ÿฅต": ["hot"], + "๐Ÿฅด": ["woozy"], + "๐Ÿฅณ": ["party_face"], + "๐Ÿฅฐ": ["smile_hearts"], + "๐Ÿคฏ": ["mind_blown"], + "๐Ÿคฎ": ["vomiting"], + "๐Ÿคญ": ["hand_over_mouth"], + "๐Ÿคฌ": ["swearing"], + "๐Ÿคซ": ["shush"], + "๐Ÿคช": ["crazy"], + "๐Ÿคฉ": ["starry_eyes"], + "๐Ÿคจ": ["raised_eyebrow"], + "๐Ÿ•ต๔˜ซ": ["detective"], + "๐Ÿ’†๔˜ซ": ["massage"], + "๐Ÿ’๔˜ซ": ["tipping_hand"], + "๔š": ["hot_shit"], + "๔š—": ["headpats"], + "๐Ÿงœ": ["merperson"]}, + "flags": {"๐Ÿด๏ธ": ["pirate_flag"], + "๔š": ["transgender_flag"], + "๔š€": ["polysexual_flag"], + "๔™ฟ": ["polyamory_flag"], + "๔™พ": ["pansexual_flag"], + "๔™ฝ": ["nonbinary_flag"], + "๔™ผ": ["neutrois_flag"], + "๔™ป": ["intersex_flag"], + "๔™บ": ["genderqueer_flag"], + "๔™น": ["genderfluid_flag"], + "๔™ธ": ["deminonbinary_flag"], + "๔™ท": ["demigirl_flag"], + "๔™ถ": ["demiguy_flag"], + "๔™ต": ["bisexual_flag"], + "๔™ด": ["bigender_flag"], + "๔™ณ": ["bear_flag"], + "๔™ฒ": ["asexual_flag"], + "๔™ฑ": ["aromantic_flag"], + "๔™ฐ": ["agender_flag"], + "๔š†": ["lesbian_flag"], + "๔™": ["paw-modifier"], + "๔™‘": ["claw-modifier"]}, + "food": {"๔š‘": ["cannabis_leaf"]} + } + + +emoji_post = {} + +# Convert aforementioned unicode addresses to actual emojis +mm_emojis = [chr(mm_emoji) for mm_emoji in mm_emojis] + +# Load a file called "emojis.json" from same directory. +# On discord android, this file is on "/assets/data/emojis.json" +with open('emojis.json', 'r') as f: + emoji_j_pre = json.load(f) + +# Add skin tone modifiers as emojis +# so that mobile clients can send emojis with diversity +unicodecolorbase = 0x1f3fb +mutantcolorbase = 0x101600 + +for st_count in range(1, 6): + character = chr(unicodecolorbase) + custom_emojis["flags"][character] = [f"skin-tone-{st_count}"] + unicodecolorbase += 1 + +for st_count in range(6, 51): + character = chr(mutantcolorbase) + custom_emojis["flags"][character] = [f"skin-tone-{st_count}"] + mutantcolorbase += 1 + +# Iterate through every emoji in emojis.json +for category in emoji_j_pre: + emoji_post[category] = [] + for emoji in emoji_j_pre[category]: + emoji_post[category].append(emoji) + # If this is MM emoji, create variants + if emoji["surrogates"] in mm_emojis: + names = emoji["names"] + # Add a variant for each MM type + for mm_type in mm_types: + # Ignore paw version of hand_splayed, because it's missing + if mm_type == "paw" and emoji["surrogates"] == chr(0x1f590): + continue + # Copy the variant's entry bc of pointers + variant = copy.deepcopy(emoji) + # Append variant info to the emoji entry + variant["names"] = [f"{name}_{mm_type}" for name in names] + variant["surrogates"] += mm_types[mm_type] + # and add it to the result file + emoji_post[category].append(variant) + + # Add custom emojis + if category in custom_emojis: + for custom_emoji in custom_emojis[category]: + entry = {"names": custom_emojis[category][custom_emoji], + "surrogates": custom_emoji} + emoji_post[category].append(entry) + +# When finally done, dump the result as "emojispost.json" +with open('emojispost.json', 'w') as f: + json.dump(emoji_post, f) diff --git a/emojireplace.py b/patches/mutant/emojireplace.py similarity index 63% rename from emojireplace.py rename to patches/mutant/emojireplace.py index c7ffe37..6345082 100644 --- a/emojireplace.py +++ b/patches/mutant/emojireplace.py @@ -1,10 +1,11 @@ #!/bin/env python3 import os +import re import shutil # REPLACE THESE LINES -extracted_discord_path = "/tmp/cutthecord/discord" -extracted_mutstd_path = "/var/www/mutant/72x72" +extracted_discord_path = "/home/ave/Downloads/dic/com.discord-832" +extracted_mutstd_path = "/home/ave/Downloads/dic/72x72" # Add your custom emojis here # with "mutstd filename": "discord filename". @@ -19,6 +20,58 @@ custom_emojis = {"1f4af-200d-1f308.png": "emoji_1f4af_1f308.png", "1f9d1-200d-1f527.png": "emoji_1f9d1_1f527.png", "1f9d1-200d-1f4bb.png": "emoji_1f9d1_1f4bb.png", "1f9d1-200d-1f373.png": "emoji_1f9d1_1f373.png", + "1f3fb.png": "emoji_1f3fb.png", + "1f3fc.png": "emoji_1f3fc.png", + "1f3fd.png": "emoji_1f3fd.png", + "1f3fe.png": "emoji_1f3fe.png", + "1f3ff.png": "emoji_1f3ff.png", + "101600.png": "emoji_101600.png", + "101601.png": "emoji_101601.png", + "101602.png": "emoji_101602.png", + "101603.png": "emoji_101603.png", + "101604.png": "emoji_101604.png", + "101605.png": "emoji_101605.png", + "101606.png": "emoji_101606.png", + "101607.png": "emoji_101607.png", + "101608.png": "emoji_101608.png", + "101609.png": "emoji_101609.png", + "10160a.png": "emoji_10160a.png", + "10160b.png": "emoji_10160b.png", + "10160c.png": "emoji_10160c.png", + "10160d.png": "emoji_10160d.png", + "10160e.png": "emoji_10160e.png", + "10160f.png": "emoji_10160f.png", + "101610.png": "emoji_101610.png", + "101611.png": "emoji_101611.png", + "101612.png": "emoji_101612.png", + "101613.png": "emoji_101613.png", + "101614.png": "emoji_101614.png", + "101615.png": "emoji_101615.png", + "101616.png": "emoji_101616.png", + "101617.png": "emoji_101617.png", + "101618.png": "emoji_101618.png", + "101619.png": "emoji_101619.png", + "10161a.png": "emoji_10161a.png", + "10161b.png": "emoji_10161b.png", + "10161c.png": "emoji_10161c.png", + "10161d.png": "emoji_10161d.png", + "10161e.png": "emoji_10161e.png", + "10161f.png": "emoji_10161f.png", + "101620.png": "emoji_101620.png", + "101621.png": "emoji_101621.png", + "101622.png": "emoji_101622.png", + "101623.png": "emoji_101623.png", + "101624.png": "emoji_101624.png", + "101625.png": "emoji_101625.png", + "101626.png": "emoji_101626.png", + "101627.png": "emoji_101627.png", + "101628.png": "emoji_101628.png", + "101629.png": "emoji_101629.png", + "10162a.png": "emoji_10162a.png", + "10162b.png": "emoji_10162b.png", + "10162c.png": "emoji_10162c.png", + "101650.png": "emoji_101650.png", + "101651.png": "emoji_101651.png", "10169a.png": "emoji_10169a.png", "26b2-fe0f.png": "emoji_26b2.png", "26a8-fe0f.png": "emoji_26a8.png", @@ -96,17 +149,45 @@ custom_emojis = {"1f4af-200d-1f308.png": "emoji_1f4af_1f308.png", "101691.png": "emoji_101691.png"} +# self note to get MM emojos: +# ls 72x72 | grep "101650-" | cut -f 1 -d '-' | sort | uniq +# ls 72x72 | grep "101651-" | cut -f 1 -d '-' | sort | uniq +# echo -e "\U1f44c" +# paw: ๔™ +# claw: ๔™‘ + +def add_diverse_emojos(): + # Hackiest regex ever + div_regex = r'(|.*/)([a-f0-9]+(|-fe0f)-(|101650|101651|101650-|101651-)'\ + r'(|1016[0-2][a-f0-9]|1f3f[b-f])\.png)' + div_regex = re.compile(div_regex) + for file in mutstd_emojis: + re_result = div_regex.fullmatch(file) + if re_result: + mutant = re_result.group(2) + discord = discordify_emoji_name(mutant) + custom_emojis[mutant] = discord + + def clean_emoji_name(name): name = name.lower().replace("_", "-")\ .replace("emoji-", "").replace("-fe0f", "") return name +def discordify_emoji_name(name): + name = "emoji_" + name.lower().replace("-", "_").replace("fe0f_", "")\ + .replace("200d_", "") + return name + + discord_emoji_path = os.path.join(extracted_discord_path, "res", "raw") # Get file listings in relevant folders discord_emojis = os.listdir(discord_emoji_path) mutstd_emojis = os.listdir(extracted_mutstd_path) +add_diverse_emojos() + # Clean names of mutantstd emojis so thar we can compare them # to clean discord emojis later clean_mutstd_emojis = {clean_emoji_name(emoji): emoji for @@ -132,6 +213,8 @@ for emoji in discord_emojis: replace_counter += 1 for custom_emoji in custom_emojis: + # One day I'd like to do discordify_emoji_name(custom_emoji) + # But discord has too many exceptions for that~ discord_emoji_name = custom_emojis[custom_emoji] full_mutstd_path = os.path.join(extracted_mutstd_path, custom_emoji) full_discord_path = os.path.join(discord_emoji_path, discord_emoji_name) diff --git a/patches/mutant/gendiversitycode.py b/patches/mutant/gendiversitycode.py new file mode 100644 index 0000000..b8dbc75 --- /dev/null +++ b/patches/mutant/gendiversitycode.py @@ -0,0 +1,8 @@ +mutantcolorbase = 0x101600 + +for oof in range(5, 50): + character = chr(mutantcolorbase) + print(f'const-string v1, "{character}"', end="\n\n") + print(f'const/16 v2, {hex(oof)}', end="\n\n") + print(f'aput-object v1, v0, v2', end="\n\n") + mutantcolorbase += 1 diff --git a/patches/mutant/genemojitest.py b/patches/mutant/genemojitest.py new file mode 100644 index 0000000..d087355 --- /dev/null +++ b/patches/mutant/genemojitest.py @@ -0,0 +1,27 @@ +def genemojo(emojo, fitzpatrick=True, mutant=True): + if fitzpatrick: + unicodecolorbase = 0x1f3fb + for oof in range(1, 6): + character = chr(unicodecolorbase) + print(f'{emojo}{character}', end='') + unicodecolorbase += 1 + + if mutant: + mutantcolorbase = 0x101600 + for oof in range(6, 51): + character = chr(mutantcolorbase) + print(f'{emojo}{character}', end='') + mutantcolorbase += 1 + print() + + +emojis = ["๐Ÿ‘†", "๐Ÿ‘‡", "๐Ÿ‘ˆ", "๐Ÿ‘‰", "๐Ÿ‘Š", "๐Ÿ‘‹", "๐Ÿ‘Œ", "๐Ÿ‘", "๐Ÿ‘Ž", "๐Ÿ‘", "๐Ÿ‘", "๐Ÿ’…", "๐Ÿ’ช", + "๐Ÿ–•", "๐Ÿ––", "๐Ÿ™Œ", "๐Ÿ™", "๐Ÿค˜", "๐Ÿค™", "๐Ÿคš", "๐Ÿค›", "๐Ÿคœ", "๐Ÿค", "๐Ÿคž", "๐Ÿคณ", + "โ˜", "โœŠ", "โœ‹", "โœŒ", "โœ"] + +mm_types = {"๔™", "๔™‘"} + +for emoji in emojis: + genemojo(emoji) + for mm_type in mm_types: + genemojo(emoji + mm_type, fitzpatrick=False)