I am making a personal little text-based game in the form of a Discord bot. It's just something I wanted to try out for fun and I am learning how to do all of this as I go, and I am currently stuck with reactions.

My bot currently does the following:

1. When a new channel gets opened, the bot posts a welcome message, followed by a character selection message. The trigger is on new channel creation because it's an easy way for me to restart the game. This might be changed later, but shouldn't be important here.
2. After sending its character selection message, it reacts to that message with 6 custom emojis. **The ID's of these emojis are named react1 - react6,** so if I want to alter the emojis later, I'll only have to change their ID's in one location.
3. It recognizes when a reaction is added to the Character Selection message.

My hope is that, if the user reacts with the first reaction, the bot will then assign them the first character, etc.

Everything works perfectly up until the last bit here:

```
@client.event
async def on_raw_reaction_add(payload):
    global new_message_id
    if new_message_id == payload.message_id:     #Makes sure reaction is on newest message
        print('Reaction spotted!')               #Test to ensure the bot notices reactions. THIS WORKS.
        emoji = payload.emoji
        print(emoji)                             #Prints the ID of the reaction emoji added. THIS WORKS.
        if emoji == react1:
            print('ONE')                         #Does not work.
        elif emoji == react2:
            print('TWO')                         #Does not work.
        elif emoji == react3:
            print('THREE')                       #Does not work.
        elif emoji == react4:
            print('FOUR')                        #Does not work.
        elif emoji == react5:
            print('FIVE')                        #Does not work.
        elif emoji == react6:
            print('SIX')                         #Does not work.

```

First off, the global variable will not be staying, don't worry.

That aside, my bot can successfully recognize when a reaction is added, and the `print(emoji)` line properly prints the reaction emoji's ID.

This is why I'm so confused on why my if-else lines are failing to do anything.

Here is my command window's output:

```
Reaction spotted!
<:one:948943020705857676>
Reaction spotted!
<:two:948943020445794375>
Reaction spotted!
<:three:948943020307394580>
Reaction spotted!
<:four:948943020068331520>
Reaction spotted!
<:five:948943019166556161>
Reaction spotted!
<:six:948943019254620180>

```

I have not yet told it to ignore reactions from the bot itself, which at the moment is helpful because here you can see the code working as the bot applies all 6 reactions to its own message. This does also continue to work as the user reacts in various ways.

However, via the if-else statements, I should also be seeing a "ONE", "TWO", etc somewhere.

I feel like I'm so close that it has to be something getting overlooked (again, I'm super new to all of this), so any help is appreciated!

(Edits for grammar)