/ Tools / TestNetRewarder / EmojiMaps.cs
EmojiMaps.cs
  1  ๏ปฟnamespace TestNetRewarder
  2  {
  3      public class EmojiMaps
  4      {
  5          private readonly string[] emojis = new[]
  6          {
  7              // red
  8              "โค",
  9              "๐Ÿฆž",
 10              "๐ŸŒน",
 11              "๐Ÿ’",
 12              "๐Ÿซ–", // teapot
 13              "โ›ฉ",
 14              "๐Ÿš—",
 15              "๐Ÿ”ฅ",
 16  
 17              // orange
 18              "๐Ÿงก",
 19              "๐Ÿ€",
 20              "๐ŸฆŠ",
 21              "๐Ÿต",
 22              "๐ŸŠ",
 23              "๐Ÿฅ•",
 24              "๐Ÿงฑ",
 25              "๐ŸŽƒ",
 26  
 27              // yellow
 28              "๐Ÿ’›",
 29              "๐ŸŒป",
 30              "๐Ÿ‹",
 31              "๐Ÿง€",
 32              "๐ŸŒ”",
 33              "โญ",
 34              "โšก",
 35              "๐Ÿ†",
 36  
 37              // green
 38              "๐Ÿ’š",
 39              "๐ŸฆŽ",
 40              "๐Ÿ›",
 41              "๐ŸŒณ",
 42              "๐Ÿ€",
 43              "๐Ÿงฉ",
 44              "๐Ÿ”‹",
 45              "โ™ป",
 46  
 47              // blue
 48              "๐Ÿ’™",
 49              "๐Ÿณ",
 50              "โ™‚",
 51              "๐Ÿ‰",
 52              "๐ŸงŠ",
 53              "๐ŸŒ",
 54              "โš“",
 55              "๐ŸŒ€",
 56  
 57              // purple
 58              "๐Ÿ’œ",
 59              "๐Ÿช€", //yo-yo
 60              "๐Ÿ”ฎ",
 61              "๐Ÿ˜ˆ",
 62              "๐Ÿ‘พ",
 63              "๐Ÿชป", // plant hyacinth
 64              "๐Ÿ‡",
 65              "๐Ÿ†",
 66  
 67              // pink
 68              "๐Ÿฉท", // pink heart
 69              "๐Ÿ‘š",
 70              "โ™€",
 71              "๐Ÿง ",
 72              "๐Ÿท",
 73              "๐Ÿฆฉ",
 74              "๐ŸŒธ",
 75              "๐ŸŒท"
 76          };
 77  
 78          public string NewRequest => "๐ŸŒฑ";
 79          public string Started => "๐ŸŒณ";
 80          public string SlotFilled => "๐ŸŸข";
 81          public string SlotRepaired => "โ™ป";
 82          public string SlotFreed => "โญ•";
 83          public string SlotReservationsFull => "โ˜‘๏ธ";
 84          public string Finished => "โœ…";
 85          public string Cancelled => "๐Ÿšซ";
 86          public string Failed => "โŒ";
 87          public string ProofSubmitted => "๐ŸŽต";
 88          public string ProofReport => "๐Ÿ”Ž";
 89          public string NoProofsMissed => "๐ŸŽ‰";
 90          public string ManyProofsMissed => "๐Ÿ˜ฑ";
 91  
 92          public string StringToEmojis(string input, int outLength)
 93          {
 94              if (outLength < 1) outLength = 1;
 95  
 96              var result = "";
 97              var segmentLength = input.Length / outLength;
 98              if (segmentLength < 1)
 99              {
100                  return StringToEmojis(input + input, outLength);
101              }
102              for (var i = 0; i < outLength; i++)
103              {
104                  var segment = input.Substring(i * segmentLength, segmentLength);
105                  result += SelectOne(segment);
106              }
107  
108              return result;
109          }
110  
111          private string SelectOne(string segment)
112          {
113              var index = 0;
114              foreach (var c in segment) index += Convert.ToInt32(c);
115              index = index % emojis.Length;
116              return emojis[index];
117          }
118      }
119  }