0
@commands.command(aliases=['im', 'i'])
async def userfeeling(self, ctx, *other):
    if other or ctx == 'bad' or 'awful' or 'sad' or 'unhappy' or 'upset' or 'crying' or 'very 
                        bad':
        await ctx.send(random.choice(hru_bad_responce))
        print("path1")

    elif other or ctx == 'fine' or 'im fine':
        await ctx.send('i detect lies')
        print("path2")

    elif other or ctx == 'good' or 'great' or 'amazing' or 'im okay' or 'okay' or 'happy':
        await ctx.send(random.choice(hru_good_responce))
        print("path3")

    await ctx.send('{} arguments: {}'.format(len(other), ', '.join(other)))

what it does:

me: *im upset bot (outputs the 1st if statement)

me: *im fine bot (outputs the 1st if statement)

me: *im good bot (outputs the 1st if statement)

what it needs to do:

me: *im upset bot (outputs the 1st if statement)

me: *im fine bot (outputs the 2ndif statement)

me: *im good bot (outputs the 3rdif statement)

  • the last word in the title is supposed to say the problem, its dark so i missclicked and tried to delete but accidently hit enter which submitted the question. – curts ahlin Jul 17 '21 at 20:06
  • `if other or ctx == 'bad' or 'awful' or 'sad' or 'unhappy'` This is the wrong way to test for multiple values. See https://stackoverflow.com/q/15112125/494134 – John Gordon Jul 17 '21 at 20:06
  • 2
    Does this answer your question? [How to test multiple variables against a single value?](https://stackoverflow.com/questions/15112125/how-to-test-multiple-variables-against-a-single-value) – Mark Jul 17 '21 at 20:08

0 Answers0