I have a hunch that the answer to this is embarassingly easy, but nonetheless I can't figure it out (the fact that I don't know any of these languages at all might be the case). What I need is a script which would work this way:
- First, you type command like !random and a number from the range 1-100 (the number would mean the probability of success in %) [like this: !random 78]
- Then, it would - basing on given probability - choose whether you succeeded or not [for example, with !random 78, there is 78% probability that the outcome would be "Success"]
- Then, it would show on a channel a public message what the outcome is ("Success" or "Failure")
I need this one for online text RPG sessions. Also sorry for my bad English.
How the code looks now:
__module_name__ = "HexChat Randomiser"
__module_version__ = "0.1"
__module_description__ = "A randomiser for HexChat."
import random
import xchat
def callback(word, world_eol, userdata):
number = word[1]
if random_chance(number):
print ("Success")
else:
print ("Failure")
def random_chance(percent_chance):
return random.randrange(1, 101) > (100 - percent_chance)
xchat.hook_command("random", callback, help="/random <number>")
The error:
Traceback (most recent call last):
File "<string>", line 10, in callback
File "<string>", line 17, in random_chance
TypeError: unsupported operand type(s) for -: 'int' and 'str'