nxy/bot/drugs.py

117 lines
3.1 KiB
Python
Raw Normal View History

2017-09-05 19:54:47 +00:00
# -*- coding: utf-8 -*-
import random
from docopt import Dict
from irc3.plugins.command import command
from irc3.utils import IrcString
from . import Plugin
class Drugs(Plugin):
2017-09-05 19:54:47 +00:00
# All strains from https://www.leafly.com/explore
STRAINS = {
'sativa': [
'Sour Diesel',
'Green Crack',
'Jack Herer',
'Durban Poison',
'Lemon Haze',
'Strawberry Cough',
'Super Silver Haze',
'Alaskan Thunder Fuck',
'Super Lemon Haze',
'Amnesia Haze',
'Maui Wowie',
'Chocolope',
'Harlequin',
],
2017-09-05 19:54:47 +00:00
'indica': [
'Granddaddy Purple',
'Bubba Kush',
'Northern Lights',
'Blue Cheese',
'Purple Kush',
'Blueberry',
'Grape Ape',
'Blackberry Kush',
'Master Kush',
'God\'s Gift',
'LA Confidential',
'Death Star',
'Purple Urkle',
'Afghan Kush',
'Skywalker',
'White Rhino',
'Hindu Kush',
],
2017-09-05 19:54:47 +00:00
'hybrid': [
'Blue Dream',
'Girl Scout Cookies',
'OG Kush',
'White Widow',
'Gorilla Glue #4',
'Pineapple Express',
'Trainwreck',
'AK-47',
'Headband',
'Chemdawg',
'Cheese',
'Cherry Pie',
'Skywalker OG',
'Tahoe OG Kush',
'Lemon Kush',
'Platinum Girl Scout Cookies',
'Golden Goat',
'Agent Orange',
],
}
2017-09-05 20:00:40 +00:00
ACTIONS = {
'joint': [
('passes', 'to'),
('rolls', 'for'),
('lights', 'for'),
],
2017-09-05 20:00:40 +00:00
'bong': [
('passes', 'to'),
('preps', 'for'),
('lights', 'for'),
],
2017-09-05 20:00:40 +00:00
'vape': [
('passes', 'to'),
],
2017-09-05 20:00:40 +00:00
'blunt': [
('passes', 'to'),
('rolls', 'for'),
('lights', 'for'),
],
}
2017-09-05 20:00:40 +00:00
2017-09-05 19:54:47 +00:00
@command
def dope(self, mask: IrcString, target: IrcString, args: Dict):
"""Smoke weed everyday
%%dope [<nick>]
"""
strain_types = list(self.STRAINS.keys())
strain_type = random.choice(strain_types)
consume_type = random.choice(list(self.ACTIONS.keys()))
action = random.choice(self.ACTIONS[consume_type])
2017-09-05 19:54:47 +00:00
self.bot.action(target, '{action0} a {consume} of the finest {type} "{strain}" {action1} {nick}'.format(
2017-09-05 20:00:40 +00:00
action0=action[0],
action1=action[1],
consume=consume_type,
strain=random.choice(self.STRAINS[strain_type]),
nick=args.get('<nick>', mask.nick),
type=strain_type,
))
2017-09-06 11:06:21 +00:00
@command
def meth(self, mask: IrcString, target: IrcString, args: Dict):
"""Snort some meth *_*
%%meth [<nick>]
"""
self.bot.action(target, 'legt {} eine dicke Line Meth \________'.format(args.get('<nick>', mask.nick)))