X-Git-Url: https://git.localhorst.tv/?a=blobdiff_plain;f=app%2FTwitchBot%2FTokenizedMessage.php;h=4b7d758221d71aa9a9a3d9cbfdd9cf3cde77cb73;hb=4c72d4b8bec61eba5b3dc43df5eafd890e123d37;hp=37836a915235c7356d7bcac8b1d4939a90b63ce4;hpb=72253eedb80a978c5442621049cc0f28b7182687;p=alttp.git diff --git a/app/TwitchBot/TokenizedMessage.php b/app/TwitchBot/TokenizedMessage.php index 37836a9..4b7d758 100644 --- a/app/TwitchBot/TokenizedMessage.php +++ b/app/TwitchBot/TokenizedMessage.php @@ -22,7 +22,9 @@ class TokenizedMessage { $positions = explode(',', $set[1]); foreach ($positions as $position) { $coords = explode('-', $position); - $this->emotes[] = preg_replace('/\d+$/', '', strtolower(mb_substr($this->text, $coords[0], $coords[1] - $coords[0] + 1))); + $emote_text = mb_substr($this->text, $coords[0], $coords[1] - $coords[0] + 1); + $this->original_emotes[] = $emote_text; + $this->emotes[] = preg_replace('/\d+$/', '', strtolower($emote_text)); $this->emoteless = mb_substr($this->emoteless, 0, $coords[0]).str_repeat(' ', $coords[1] - $coords[0] + 1).mb_substr($this->emoteless, $coords[1] + 1); } } @@ -77,10 +79,18 @@ class TokenizedMessage { return !empty($this->tokens) && $this->tokens[count($this->tokens) - 1] == $text; } + public function getEmotes() { + return $this->emotes; + } + public function getNumericValue() { return intval($this->text); } + public function getOriginalEmotes() { + return $this->original_emotes; + } + public function hasConsecutiveTokens($tokens) { for ($i = 0; $i < count($this->tokens) - count($tokens) + 1; ++$i) { for ($j = 0; $j < count($tokens); ++$j) { @@ -344,6 +354,7 @@ class TokenizedMessage { private $tokens; private $emotes = []; + private $original_emotes = []; private $emoteless = ''; private $emoteless_raw = ''; private $emoteless_tokens = [];