diff --git a/docs/api/modules/cardsagainsthumanity.rst b/docs/api/modules/cardsagainsthumanity.rst new file mode 100644 index 0000000..40451e4 --- /dev/null +++ b/docs/api/modules/cardsagainsthumanity.rst @@ -0,0 +1,10 @@ +:mod:`CardsAgainstHumanity` --- CaH in IRC +========================================== + +Class Reference +--------------- + +.. automodule:: pyircbot.modules.CardsAgainstHumanity + :members: + :undoc-members: + :show-inheritance: diff --git a/examples/data/data/CardsAgainstHumanity/answers.txt b/examples/data/data/CardsAgainstHumanity/answers.txt new file mode 100644 index 0000000..06425d5 --- /dev/null +++ b/examples/data/data/CardsAgainstHumanity/answers.txt @@ -0,0 +1,1048 @@ +Flying sex snakes. +Michelle Obama's arms. +German dungeon porn. +White people. +Getting so angry that you pop a boner. +Tasteful sideboob. +Praying the gay away. +Two midgets shitting into a bucket. +MechaHitler. +Being a motherfucking sorcerer. +A disappointing birthday party. +Puppies! +A windmill full of corpses. +Guys who don't call. +Racially-biased SAT questions. +Dying. +Steven Hawking talking dirty. +Being on fire. +A lifetime of sadness. +An erection that lasts longer than four hours. +AIDS +Same-sex ice dancing. +Glenn Beck catching his scrotum on a curtain hook. +The Rapture. +Pterodactyl eggs. +Crippling debt. +Eugenics. +Exchanging pleasantries. +Dying of dysentery. +Roofies. +Getting naked and watching Nickelodeon. +The forbidden fruit. +Republicans. +The Big Bang. +Anal beads. +Amputees. +Men. +Surprise sex! +Kim Jong-il. +Concealing a boner +Agriculture. +Glenn Beck being harried by a swarm of buzzards. +Making a pouty face. +A salty surprise. +The Jews. +Charisma. +YOU MUST CONSTRUCT ADDITIONAL PYLONS. +Panda sex. +Taking off your shirt. +A drive-by shooting. +Ronald Reagan. +Morgan Freeman's voice. +Breaking out into song and dance. +Jewish fraternities. +Dead babies. +Masturbation. +Hormone injections. +All-you-can-eat shrimp for $4.99. +Incest. +Scalping. +Soup that is too hot. +The Übermensch. +Nazis. +Tom Cruise. +Stifling a giggle at the mention of Hutus and Tutsis. +Edible underpants. +The Hustle. +A Super Soaker™ full of cat pee. +Figgy pudding. +Object permanence. +Consultants. +Intelligent design. +Nocturnal emissions. +Uppercuts. +Being marginalized. +The profoundly handicapped. +Obesity. +Chutzpah. +Unfathomable stupidity. +Repression. +Attitude. +Passable transvestites. +Party poopers. +The American Dream +Child beauty pageants. +Puberty. +Testicular torsion. +The folly of man. +Nickelback. +Swooping. +Goats eating cans. +The KKK. +Kamikaze pilots. +Horrifying laser hair removal accidents. +Adderall™. +A look-see. +Doing the right thing. +The taint; the grundle; the fleshy fun-bridge. +Lactation. +Pabst Blue Ribbon. +Powerful thighs. +Saxophone solos. +The gays. +A middle-aged man on roller skates. +A foul mouth. +The thing that electrocutes your abs. +Heteronormativity. +Cuddling. +Coat hanger abortions. +A big hoopla about nothing. +Boogers. +A hot mess. +Raptor attacks. +My collection of high-tech sex toys. +Fear itself. +*Bees?* +Getting drunk on mouthwash. +Sniffing glue. +Oversized lollipops. +An icepick lobotomy. +Being rich. +Friends with benefits. +Teaching a robot to love. +Women's suffrage. +Me time. +The heart of a child. +Smallpox blankets. +The clitoris. +John Wilkes Booth. +The glass ceiling. +Sarah Palin. +Sexy pillow fights. +Yeast. +Full frontal nudity. +Parting the Red Sea. +A Bop It™. +Michael Jackson. +Team-building exercises. +Harry Potter erotica. +Authentic Mexican cuisine. +Frolicking. +Sexting. +Grandma. +Not giving a shit about the Third World. +Licking things to claim them as your own. +Genghis Khan. +The hardworking Mexican. +RoboCop. +My relationship status. +Scrubbing under the folds. +Porn Stars. +Horse meat. +Sunshine and rainbows. +Expecting a burp and vomiting on the floor. +Barack Obama. +Spontaneous human combustion. +Natural selection. +Mouth herpes. +Flash flooding. +Goblins. +A monkey smoking a cigar. +Spectacular abs. +A good sniff. +Wiping her butt. +The Three-Fifths compromise. +Pedophiles. +Doin' it in the butt. +Being fabulous. +Mathletes. +Wearing underwear inside-out to avoid doing laundry. +Nipple blades. +An M. Night Shyamalan plot twist. +A bag of magic beans. +Vigorous jazz hands. +A defective condom. +Skeletor. +Vikings. +Leaving an awkward voicemail. +Teenage pregnancy. +Dead parents. +Hot cheese. +My sex life. +A mopey zoo lion. +Assless chaps. +Riding off into the sunset. +Lance Armstrong's missing testicle. +Sweet, sweet vengeance. +Genital piercings. +Keg stands. +Darth Vader. +Viagra©. +Necrophilia. +A really cool hat. +Toni Morrison's vagina. +An Oedipus complex. +The Tempur-Pedic© Swedish Sleep System™. +Preteens. +Dick fingers. +A cooler full of organs. +Shapeshifters. +The Care Bear Stare. +Erectile dysfunction. +Keanu Reeves. +The Virginia Tech Massacre. +The Underground Railroad. +The chronic. +Queefing. +Heartwarming orphans. +A thermonuclear detonation. +Cheating in the Special Olympics. +Tangled Slinkys. +A moment of silence. +Civilian casualties. +Catapults. +Sharing needles. +Ethnic cleansing. +Emotions. +Children on leashes. +Balls. +Homeless people. +Eating all of the cookies before the AIDS bake-sale. +Old-people smell. +Farting and walking away. +The inevitable heat death of the universe. +The violation of our most basic human rights. +Fingering. +The placenta. +The Rev. Dr. Martin Luther King, Jr. +Leprosy. +Sperm whales. +Multiple stab wounds. +Flightless birds. +Grave robbing. +Home video of Oprah sobbing into a Lean Cuisine©. +Oompa-Loompas. +A murder most foul. +Tentacle porn. +Daddy issues. +Bill Nye the Science Guy. +Peeing a little bit. +The miracle of childbirth. +Tweeting. +Another goddamn vampire movie. +Britney Spears at 55. +New Age music. +The Make-A-Wish® Foundation. +Firing a rifle into the air while balls deep in a squealing hog. +Active listening. +Nicolas Cage. +72 virgins. +Stranger danger. +Hope. +A gassy antelope. +BATMAN!!! +Chivalry. +Passing a kidney stone. +Black people. +Natalie Portman. +A mime having a stroke. +Classist undertones. +Sean Penn. +A mating display. +The Holy Bible. +Hot Pockets©. +A sad handjob. +Pulling out. +Serfdom. +Pixelated bukkake. +Dropping a chandelier on your enemies and riding the rope up. +Jew-fros. +Waiting 'til marriage. +Euphoria™ by Calvin Klein. +The World of Warcraft. +Lunchables™. +The Kool-Aid Man. +The Trail of Tears. +Self-loathing. +A falcon with a cap on its head. +Historically black colleges. +Not reciprocating oral sex. +Global warming. +Ghosts. +World peace. +A can of whoop-ass. +The Dance of the Sugar Plum Fairy. +A zesty breakfast burrito. +Switching to Geico®. +Aaron Burr. +Picking up girls at the abortion clinic. +Land mines. +Former President George W. Bush. +Geese. +Mutually-assured destruction. +College. +Date rape. +Bling. +A gentle caress of the inner thigh. +A time travel paradox. +Seppuku. +Poor life choices. +Waking up half-naked in a Denny's parking lot. +Italians. +GoGurt®. +Finger painting. +Robert Downey, Jr. +My soul. +Smegma. +Embryonic stem cells. +The South. +Christopher Walken. +Gloryholes. +Pretending to care. +Public ridicule. +A tiny horse. +Arnold Schwarzenegger. +A stray pube. +Jerking off into a pool of children's tears. +Child abuse. +Glenn Beck convulsively vomiting as a brood of crab spiders hatches in his brain and erupts from his tear ducts. +Menstruation. +A sassy black woman. +Re-gifting. +Penis envy. +A sausage festival. +Getting really high. +Drinking alone. +Too much hair gel. +Hulk Hogan. +Overcompensation. +Foreskin. +Free samples. +Shaquille O'Neal's acting career. +Five-Dollar Footlongs™. +Whipping it out. +A snapping turtle biting the tip of your penis. +Muhammad (Praise Be Unto Him). +Half-assed foreplay. +Dental dams. +Being a dick to children. +Famine. +Chainsaws for hands. +A gypsy curse. +AXE Body Spray. +The Force. +Explosions. +Cybernetic enhancements. +Customer service representatives. +White privilege. +Gandhi. +Road head. +God. +Poorly-timed Holocaust jokes. +8 oz. of sweet Mexican black-tar heroin. +Judge Judy. +The Little Engine That Could. +Altar boys. +Mr. Clean, right behind you. +Vehicular manslaughter. +Dwarf tossing. +Friction. +Lady Gaga. +Scientology. +Justin Bieber. +A death ray. +Vigilante justice. +The Pope. +A sea of troubles. +Alcoholism. +Poor people. +A fetus. +Women in yogurt commercials. +Exactly what you'd expect. +Flesh-eating bacteria. +My genitals. +A balanced breakfast. +Dick Cheney. +Lockjaw. +Natural male enhancement. +Take-backsies. +Winking at old people. +Opposable thumbs. +Flying sex snakes. +Passive-aggressive Post-it notes. +Inappropriate yodeling. +Golden showers. +Racism. +Copping a feel. +Auschwitz. +Elderly Japanese men. +Raping and pillaging. +Kids with ass cancer. +Pictures of boobs. +The homosexual agenda. +A homoerotic volleyball montage. +Sexual tension. +Hurricane Katrina. +Fiery poops. +Science. +Dry heaving. +Cards Against Humanity. +Fancy Feast©. +A bleached asshole. +Lumberjack fantasies. +American Gladiators. +Autocannibalism. +Sean Connery. +William Shatner. +Domino's™ Oreo™ Dessert Pizza. +An asymmetric boob job. +Centaurs. +A micropenis. +Asians who aren't good at math. +The milk man. +Waterboarding. +Wifely duties. +Loose lips. +The Blood of Christ. +Actually taking candy from a baby. +The token minority. +Jibber-jabber. +A brain tumor. +Bingeing and purging. +A clandestine butt scratch. +The Chinese gymnastics team. +Prancing. +The Hamburglar. +Police brutality. +Man meat. +Forgetting the Alamo. +Eating the last known bison. +Crystal meth. +Booby-trapping the house to foil burglars. +My inner demons. +Third base. +Soiling oneself. +Laying an egg. +Giving 110%. +Hot people. +Friendly fire. +Count Chocula. +Pac-Man uncontrollably guzzling cum. +Estrogen. +My vagina. +Kanye West. +A robust mongoloid. +The Donald Trump Seal of Approval™. +The true meaning of Christmas. +Her Royal Highness, Queen Elizabeth II. +An honest cop with nothing left to lose. +Feeding Rosie O'Donnell. +The Amish. +The terrorists. +When you fart and a little bit comes out. +Pooping back and forth. Forever. +Friends who eat all the snacks. +Cockfights. +Bitches. +Seduction. +A big black dick. +A beached whale. +A bloody pacifier. +A crappy little hand. +A low standard of living. +A nuanced critique. +Panty raids. +A passionate Latino lover. +A rival dojo. +A web of lies. +A woman scorned. +Clams. +Apologizing. +A plunger to the face. +Neil Patrick Harris. +Beating your wives. +Being a dinosaur. +Shaft. +Bosnian chicken farmers. +Nubile slave boys. +Carnies. +Coughing into a vagina. +Suicidal thoughts. +The ooze. +Deflowering the princess. +Dorito breath. +Eating an albino. +Enormous Scandinavian women. +Fabricating statistics. +Finding a skeleton. +Gandalf. +Genetically engineered super-soldiers. +George Clooney's musk. +Getting abducted by Peter Pan. +Getting in her pants, politely. +Gladiatorial combat. +Clenched butt cheeks. +Hipsters. +Historical revisionism. +Insatiable bloodlust. +Jafar. +Jean-Claude Van Damme. +Just the tip. +Mad hacky-sack skills. +Leveling up. +Literally eating shit. +Making the penises kiss. +24-hour media coverage. +Medieval Times© Dinner & Tournament. +Moral ambiguity. +My machete. +One thousand Slim Jims. +Ominous background music. +Overpowering your father. +Stockholm Syndrome. +Quiche. +Quivering jowls. +Revenge fucking. +Ripping into a man's chest and pulling out his still-beating heart. +Ryan Gosling riding in on a white horse. +Santa Claus. +Scrotum tickling. +Sexual humiliation. +Sexy Siamese twins. +Saliva. +Space muffins. +Statistically validated stereotypes. +Sudden Poop Explosion Disease. +The boners of the elderly. +The economy. +Syphilitic insanity. +The Gulags. +The harsh light of day. +The hiccups. +The shambling corpse of Larry King. +The four arms of Vishnu. +Being a busy adult with many important things to do. +Tripping balls. +Words, words, words. +Zeus's sexual appetites. +A bigger, blacker dick. +The mere concept of Applebee's®. +A sad fat dragon with no friends. +Catastrophic urethral trauma. +Hillary Clinton's death stare. +Existing. +A pinata full of scorpions. +Mooing. +Swiftly achieving orgasm. +Daddy's belt. +Double penetration. +Weapons-grade plutonium. +Some really fucked-up shit. +Subduing a grizzly bear and making her your wife. +Rising from the grave. +The mixing of the races. +Taking a man's eyes and balls out and putting his eyes where his balls go and then his balls in the eye holes. +Scrotal frostbite. +All of this blood. +Loki, the trickster god. +Whining like a little bitch. +Pumping out a baby every nine months. +Tongue. +Finding Waldo. +Upgrading homeless people to mobile hotspots. +Wearing an octopus for a hat. +An unhinged ferris wheel rolling toward the sea. +Living in a trashcan. +The corporations. +A magic hippie love cloud. +Fuck Mountain. +Survivor's guilt. +Me. +Getting hilariously gang-banged by the Blue Man Group. +Jeff Goldblum. +Making a friend. +A soulful rendition of "Ol' Man River." +Intimacy problems. +A sweaty, panting leather daddy. +Spring break! +Being awesome at sex. +Dining with cardboard cutouts of the cast of "Friends." +Another shot of morphine. +Beefin' over turf. +A squadron of moles wearing aviator goggles. +Bullshit. +The Google. +Pretty Pretty Princess Dress-Up Board Game®. +The new Radiohead album. +An army of skeletons. +A man in yoga pants with a ponytail and feather earrings. +Mild autism. +Nunchuck moves. +Whipping a disobedient slave. +An ether-soaked rag. +A sweet spaceship. +A 55-gallon drum of lube. +Special musical guest, Cher. +The human body. +Boris the Soviet Love Hammer. +The grey nutrient broth that sustains Mitt Romney. +Tiny nipples. +Power. +Oncoming traffic. +A dollop of sour cream. +A slightly shittier parallel universe. +My first kill. +Graphic violence, adult language, and some sexual content. +Fetal alcohol syndrome. +The day the birds attacked. +One Ring to rule them all. +Grandpa's ashes. +Basic human decency. +A Burmese tiger pit. +Death by Steven Seagal +Dragon boobs. +Verisimilitude. +Dissociated mechanics. +Rape. +Storygames. +Random chargen +RPG.net. +Dice inserted somewhere painful. +FATAL. +Ron Edwards' brain damage. +Boob plate armor. +Gamer chicks. +GNS theory. +Drizzt. +The entire Palladium Books® Megaverse™ +BadWrongFun. +Misogynerds. +Cultural Marxism. +Pissing on Gary Gygax's grave. +Steve Jackson's beard. +Natural 20. +Rapenards. +The Crisis of Treachery™. +Game balance. +Fishmalks. +A kick to the dicebags. +Bearded dwarven women. +Owlbear's tears. +Magic missile. +THAC0. +Bigby's Groping Hands. +Drow blackface. +Save or die. +Swine. +The Forge. +Healing Surges. +Gelatinous Cubes. +Total Party Kill. +Quoting Monty Python. +Dumbed down shit for ADD WoW babies. +Mike Mearls. +Comeliness. +Vampire: The Masquerade. +Rifts™. +The random prostitute table. +Dildo of Enlightenment +2 +Grognards Against Humanity. +Cthulhu. +The naked succubus in the Monster Manual. +Role-playing and roll-playing. +Fun Tyrant. +4rries. +Martial dailies. +Black Tokyo. +Killfuck Soulshitter. +Cheetoism. +Grimdark. +Kobolds. +Oozemaster. +Rocks fall, everyone dies. +Mark Rein·Hagen. +Maid RPG. +Splugorth blind warrior women. +Dying during chargen. +Slaughtering innocent orc children. +Lesbian stripper ninjas. +Magical tea party. +Grinding levels. +Dice animism. +White privilege. +Githyanki therapy. +Amber Diceless Roleplaying. +A ratcatcher with a small but vicious dog. +Bribing the GM with sexual favors. +Eurocentric fantasy. +Sacred cows. +Gygaxian naturalism. +Special snowflakes. +Neckbeards. +Gazebos. +Lorraine Williams. +Nude larping. +Portable holes. +Steampunk bullshit. +Dump stats. +Ale and whores. +Japanese schoolgirl porn. +Horny catgirls. +Japanese people. +Cimo. +ZA WARUDO! +40 gigs of lolicon. +Goku's hair. +Slashfic. +Star Gentle Uterus +Naruto headbands. +Homestuck troll horns. +Hayao Miyazaki. +The tsunami. +Death Note. +Small breasts. +Asians being racist against each other. +Weeaboo bullshit. +Tsundere. +Body pillows. +A lifelike silicone love doll. +Anime figures drenched in jizz. +Surprise sex. +Yaoi. +Girls with glasses. +Bronies. +Blue and white striped panties. +4chan. +Hello Kitty vibrator. +Finishing attack. +Keikaku* *(keikaku means plan). +Hatsune Miku's screams. +School swimsuits. +Lovingly animated bouncing boobs. +Dragon Balls. +Zangief's chest hair. +DeviantArt. +Giant fucking robots. +Crossplay. +Moeblob. +Carl Macek's rotting corpse. +My waifu. +Voice actress Megumi Hayashibara. +Lynn Minmei. +Panty shots. +Love and Justice. +Consensual tentacle rape. +Gundam. +Captain Bright slapping Amuro. +The Wave Undulation Cannon. +Having sex in the P.E. equipment shed. +Tainted sushi. +Shitty eurobeat music. +Bad dubbing. +Fangirls. +Kawaii desu uguu. +Futanari. +Lesbian schoolgirls. +Osamu Tezuka, rolling in his grave forever. +FUNimation. +Underage cosplayers in bondage gear. +Jackie Chan. +Exchanging Pocky for sexual favors. +Shipping. +Chiyo's father. +Magikarp. +Derpy. +Nanoha and her special friend Fate. +The marbles from Ramune bottles. +Wideface. +Spoilers. +Man-Faye. +Oppai mousepads. +Another dimension. +Homura sniffing Madoka's panties. +Hadouken. +Asian ball-jointed dolls. +J-list. +Childhood friends. +Monkey D. Luffy's rubbery cock. +Cloud's giant fucking Buster Swords. +Taking a dump in Char's helmet. +Hentai marathons. +Gothic Lolita. +Onaholes. +Super Saiyan Level 2. +Gaia Online. +Santa's heavy sack. +Clearing a bloody path through Walmart with a scimitar. +Another shitty year. +Whatever Kwanzaa is supposed to be about. +A Christmas stocking full of coleslaw. +Elf cum. +The tiny, calloused hands of the Chinese children that made this card. +Taking down Santa with a surface-to-air missile. +Socks. +Pretending to be happy. +Krampus, the Austrian Christmas monster. +The Star Wars Holiday Special. +My hot cousin. +Mall Santa. +Several intertwining love stories featuring Hugh Grant. +A Hungry-Man™ Frozen Christmas Dinner for one. +Gift-wrapping a live hamster. +Space Jam on VHS. +Immaculate conception. +Fucking up 'Silent Night' in front of 300 parents. +A visually arresting turtleneck. +A toxic family environment. +Eating an entire snowman. +Bumpses. +A Vin Gerard H8 X 10. +Harry Acropolis. +Under the ring. +Afa The Wild Samoan. +Peanut Butter and Baby sandwiches. +Yard Tards. +Two girls, one cup. +Ugly Mexican Hookers. +Duct tape. +Sodaj. +Steve The Teacher. +Jefferee. +Autoerotic Asphyxiation. +Sonic The Hedgehog. +Lotto Money. +Jailbait. +Prison rape. +Two And A Half Men. +Anne Frank. +Black Santa. +Jesus Christ (our lord and saviour). +Farting with your armpits. +Poopsicles. +Slaughtering innocent children. +Sex with vegetables. +My gay ex-husband. +Accidentally sexting your mom. +Tabasco in your pee-hole. +Pee Wee Herman. +A breath of fresh air. +A great big floppy donkey dick. +A pyramid scheme. +A school bus surrounded by cop cars. +A short walk in the desert with shovels. +All the boys staring at your chest. +An amorous stallion. +Being so wet it just slides out of you. +Being tarred and feathered. +Catching 'em all. +Chained to the bed and whipped to orgasmic bliss by a leather-clad woman. +Child-bearing hips. +Defenestration. +Dungeons and/or dragons. +Ecco the Dolphin. +George Washington riding on a giant eagle. +Getting abducted and probed by aliens. +Going viral on YouTube. +Gushing. +Making the baby Jesus cry. +More than you can chew. +Napalm. +Pancake bitches. +Playing God with the power of lightning. +Playing tonsil-hockey. +Racing cheese wheels downhill. +Riding the bomb. +Settling arguments with dance-offs. +Sheer spite. +Sinister laughter. +SS Girls. +Stealing your sister's underwear. +Stroking a cat the wrong way. +Sucking and blowing. +The bullet with your name on it. +The entire rest of eternity, spent in fucking Bruges. +The oceans rising to reclaim the land. +A cocained-fuelled sex orgy heart attack. +A cocktail umbrella +A murder/suicide pact. +A squirming mass of kittens. +An angry mob with torches and pitchforks. +Biting my girlfriend like a vampire during sex. +Dropping your pants and saluting. +Frankenstein's Monster +Getting a blowjob in a theater. +Going full retard. +Going slob-slob-slob all over that knob. +Leaking implants. +Low-flying planes. +Monkies flinging their own shit. +My robot duplicate. +Other people’s children. +People who can't take a joke. Seriously. +Popping a boner during Sex Ed class. +Projectile vomiting. +Pulling down panties with your teeth. +Saying +Shedding skin like a snake. +Shooting Valley Girls for like, saying like all the time. Really. +Slow seductive tentacle rape. +Talking like a pirate, y’arr! +Tenderly kissing a unicorn's horn. +That bastard Jesus! +The last shreads of dignity. +The power of friendship. +This card intentionally left blank. +Throwing water on a braless woman in a white t-shirt +Upskirts. +Wasting all your money on hookers and booze. +Winning. +A foot fetish. +A powerful gag reflex. +A tight, Asian pussy. +Explosive decompression. +Extraordinary Rendition. +Forgetting the safety word. +Greeting Christmas carollers naked. +Handcuffs, without the key. +Having a drill for a penis. +Hot Jailbait Ass. +Liposuction gone horrible wrong. +My harem of scantily clad women. +Nazi Zombie Robot Ninjas. +Redneck gypsies. +Scissoring. +A guy and two robots who won’t shut up. +A shotgun wedding. +Anne Frank's diary +Autoerotic asphyxiation. +Blow Up Bianca the Latex Lovedoll. +Endlessly tumbling down an up escalator. +Fun with nuns. +Getting it all over the walls. +Holiday Dinner by Jack Daniels. +Nailgun fights. +Teaching the bitch a lesson. +Nazi super science. +Making a human centipede. +The primal, ball-slapping sex your parents are having right now. +A cat video so cute that your eyes roll back and your spine slides out of your anus. +Cock. +A cop who is also a dog. +Dying alone and in pain. +Gay aliens. +The way white people is. +Reverse cowgirl. +The Quesadilla Explosion Salad™ from Chili's©. +Actually getting shot, for real. +Not having sex. +Vietnam flashbacks. +Running naked through a mall, pissing and shitting everywhere. +Nothing. +Warm, velvety muppet sex. +Self-flagellation. +The systematic destruction of an entire people and their way of life. +Samuel L. Jackson. +A boo-boo. +Going around punching people. +The entire Internet. +Some kind of bird-man. +Chugging a lava lamp. +Having sex on top of a pizza. +Indescribable loneliness. +An ass disaster. +Shutting the fuck up. +All my friends dying. +Putting an entire peanut butter and jelly sandwich into the VCR. +Spending lots of money. +Some douche with an acoustic guitar. +Flying robots that kill people. +A greased-up Matthew McConaughey. +An unstoppable wave of fire ants. +Not contributing to society in any meaningful way. +An all-midget production of Shakespeare's Richard III. +Screaming like a maniac. +The moist, demanding chasm of his mouth. +Filling every orifice with butterscotch pudding. +Unlimited soup, salad, and breadsticks. +Crying into the pages of Sylvia Plath. +Velcro™. +A PowerPoint presentation. +A surprising amount of hair. +Eating Tom Selleck's mustache to gain his powers. +Roland the Farter, flatulist to the king. +That ass. +A pile of squirming bodies. +Buying the right pants to be cool. +Blood farts. +Three months in the hole. +A botched circumcision. +The Land of Chocolate. +Slapping a racist old lady. +A lamprey swimming up the toilet and latching onto your taint. +Jumping out at people. +A black male in his early 20s, last seen wearing a hoodie. +Mufasa's death scene. +Bill Clinton, naked on a bearskin rug with a saxophone. +Demonic possession. +The Harlem Globetrotters. +Vomiting mid-blowjob. +My manservant, Claude. +Having shotguns for legs. +Letting everyone down. +A spontaneous conga line. +A vagina that leads to another dimension. +Disco fever. +Getting your dick stuck in a Chinese finger trap with another dick. +Fisting. +The thin veneer of situational causality that underlies porn. +Girls that always be textin'. +Blowing some dudes in an alley. +Drinking ten 5-hour ENERGYs® to get fifty continuous hours of energy. +Sneezing, farting, and coming at the same time. +A freshly-filled diaper +Glue +An unusually-attractive transvestite +Hand-me-down adult diapers +A stillborn fetus +A disgraced pelican +Three buckets of urine, free for 2 nights, with no late fee +My testicles +A black woman's vagina +My asshole +A whale's blowhole +2 Girls 1 Cup +The Big Bang Theory (TV) +Teen pregnancy +Ass hair +Vaginal warts +Ellen Degeneres +Jews Against Humanity +Indy wrestling +Cunt +Beating a crowd of delightful parents to death with a steel dildo +Beating a crowd of delightful parents to death with a steel dildo while dressed as Ru Paul's brother, Ron. +A roll in the hay +"Get 'em, Steve-Dave!" +God Hates You +Manboobs. +Daniel Benoit +Vomiting in the shower +An intellectually superior overlord +Dwight Schrute +Casey Anthony +Clubbin seals +Stunt cock +Anal lice +Lightsaber Dildos + diff --git a/examples/data/data/CardsAgainstHumanity/questions.txt b/examples/data/data/CardsAgainstHumanity/questions.txt new file mode 100644 index 0000000..557bb3f --- /dev/null +++ b/examples/data/data/CardsAgainstHumanity/questions.txt @@ -0,0 +1,276 @@ +_? There's an app for that. +Why can't I sleep at night? +What's that smell? +I got 99 problems but _ ain't one. +Maybe she's born with it. Maybe it's _. +What's the next Happy Meal© toy? +Anthropologists have recently discovered a primitive tribe that worships _. +It's a pity that kids these days are all getting involved with _. +During Picasso's often-overlooked Brown Period, he produced hundreds of paintings of _. +Alternative medicine is now embracing the curative powers of _. +And the Academy Award for _ goes to _. +What's that sound? +What ended my last relationship? +MTV's new reality show features eight washed-up celebrities living with _. +I drink to forget _. +I'm sorry professor, but I couldn't complete my homework because of _. +What is Batman's guilty pleasure? +This is the way the world ends
This is the way the world ends
Not with a bang but with _. +What's a girl's best friend? +TSA guidelines now prohibit _ on airplanes. +_. That's how I want to die. +For my next trick, I will pull _ out of _. +In the new Disney Channel Original Movie, Hannah Montana struggles with _ for the first time. +_ is a slippery slope that leads to _. +What does Dick Cheney prefer? +Dear Abby, I'm having some trouble with _ and would like your advice. +Instead of coal, Santa now gives the bad children _. +What's the most emo? +In 1,000 years when paper money is but a distant memory, _ will be our currency. +What's the next superhero/sidekick duo? +In M. Night Shyamalan's new movie, Bruce Willis discovers that _ had really been _ all along. +A romantic, candlelit dinner would be incomplete without _. +_. Becha can't have just one! +White people like _. +_. High five, bro. +Next from J.K. Rowling: Harry Potter and the Chamber of _. +BILLY MAYS HERE FOR _. +In a world ravaged by _, our only solace is _. +War! What is it good for? +During sex, I like to think about _. +What are my parents hiding from me? +What will always get you laid? +In L.A. County Jail, word is you can trade 200 cigarettes for _. +What did I bring back from Mexico? +What don't you want to find in your Chinese food? +What will I bring back in time to convince people that I am a powerful wizard? +How am I maintaining my relationship status? +_. It's a trap! +Coming to Broadway this season, _: The Musical. +While the United States raced the Soviet Union to the moon, the Mexican government funneled millions of pesos into research on _. +After the earthquake, Sean Penn brought _ to the people of Haiti. +Next on ESPN2, the World Series of _. +Step 1: _. Step 2: _. Step 3: Profit. +Rumor has it that Vladimir Putin's favorite dish is _ stuffed with _. +But before I kill you, Mr. Bond, I must show you _. +What gives me uncontrollable gas? +What do old people smell like? +The class field trip was completely ruined by _. +When Pharaoh remained unmoved, Moses called down a Plague of _. +What's my secret power? +What's there a ton of in heaven? +What would grandma find disturbing, yet oddly charming? +I never truly understood _ until I encountered _. +What did the U.S. airdrop to the children of Afghanistan? +What helps Obama unwind? +What did Vin Diesel eat for dinner? +_: good to the last drop. +Why am I sticky? +What gets better with age? +_: kid-tested, mother-approved. +What's the crustiest? +What's Teach for America using to inspire inner city students to succeed? +Studies show that lab rats navigate mazes 50% faster after being exposed to _. +Life for American Indians was forever changed when the White Man introduced them to _. +Make a haiku. +I do not know with what weapons World War III will be fought, but World War IV will be fought with _. +Why do I hurt all over? +What am I giving up for Lent? +In Michael Jackson's final moments, he thought about _. +In an attempt to reach a wider audience, the Smithsonian Museum of Natural History has opened an interactive exhibit on _. +When I am President of the United States, I will create the Department of _. +Lifetime© presents _, the story of _. +When I am a billionaire, I shall erect a 50-foot statue to commemorate _. +When I was tripping on acid, _ turned into _. +That's right, I killed _. How, you ask? _. +What's my anti-drug? +_ + _ = _. +What never fails to liven up the party? +What's the new fad diet? +Major League Baseball has banned _ for giving players an unfair advantage. +My plan for world domination begins with _. +The CIA now interrogates enemy agents by repeatedly subjecting them to _. +Dear Sir or Madam, We regret to inform you that the Office of _ has denied your request for _ +In Rome, there are whisperings that the Vatican has a secret room devoted to _. +Science will never explain _. +When all else fails, I can always masturbate to _. +I learned the hard way that you can't cheer up a grieving friend with _. +In its new tourism campaign, Detroit proudly proclaims that it has finally eliminated _. +An international tribunal has found _ guilty of _. +The socialist governments of Scandinavia have declared that access to _ is a basic human right. +In his new self-produced album, Kanye West raps over the sounds of _. +What's the gift that keeps on giving? +Next season on Man vs. Wild, Bear Grylls must survive in the depths of the Amazon with only _ and his wits. +When I pooped, what came out of my butt? +In the distant future, historians will agree that _ marked the beginning of America's decline. +In a pinch, _ can be a suitable substitute for _. +What has been making life difficult at the nudist colony? +Michael Bay's new three-hour action epic pits _ against _. +And I would have gotten away with it, too, if it hadn't been for _. +What brought the orgy to a grinding halt? +During his midlife crisis, my dad got really into _. +_ would be woefully incomplete without _. +My new favorite porn star is Joey "_" McGee. +Before I run for president, I must destroy all evidence of my involvement with _. +This is your captain speaking. Fasten your seatbelts and prepare for _. +In his newest and most difficult stunt, David Blaine must escape from _. +The Five Stages of Grief: denial, anger, bargaining, _, and acceptance. +My mom freaked out when she looked at my browser history and found _.com/_. +I went from _ to _, all thanks to _. +Members of New York's social elite are paying thousands of dollars just to experience _. +This month's Cosmo: "Spice up your sex life by bringing _ into the bedroom." +Little Miss Muffet Sat on a tuffet, Eating her curds and _. +If God didn't want us to enjoy _, he wouldn't have given us _. +My country, 'tis of thee, sweet land of _. +After months of debate, the Occupy Wall Street General Assembly could only agree on "More _!" +I spent my whole life working toward _, only to have it ruined by _. +Next time on Dr. Phil: How to talk to your child about _. +Only two things in life are certain: death and _. +Everyone down on the ground! We don't want to hurt anyone. We're just here for _. +The healing process began when I joined a support group for victims of _. +The votes are in, and the new high school mascot is _. +Charades was ruined for me forever when my mom had to act out _. +Before _, all we had was _. +Tonight on 20/20: What you don't know about _ could kill you. +You haven't truly lived until you've experienced _ and _ at the same time. +D&D 4.0 isn't real D&D because of the _. +It's a D&D retroclone with _ added. +Storygames aren't RPGs because of the _. +The Slayer's Guide to _. +Worst character concept ever: _, but with _. +Alightment: Chaotic _ +It's a D&D retroclone with _ added. +What made the paladin fall? _ +The portal leads to the quasi-elemental plane of _. +The Temple of Elemental _. +Pathfinder is basically D&D _ Edition. +_ : The Storytelling Game. +People are wondering why Steve Jackson published GURPS _. +Linear Fighter, Quadratic _. +You start with 1d4 _ points. +Back when I was 12 and I was just starting playing D&D, the game had _. +Big Eyes, Small _. +In the grim darkness of the future there is only _. +My innovative new RPG has a stat for _. +A true gamer has no problem with _. +Elminster cast a potent _ spell and then had sex with _. +The Deck of Many _. +You are all at a tavern when _ approach you. +For the convention I cosplayed as Sailor Moon, except with _. +The worst part of Grave of the Fireflies is all the _. +In the Evangelion remake, Shinji has to deal with _. +Worst anime convention purchase ever? _. +While powering up Vegeta screamed, _! +You evaded my _ attack. Most impressive. +I downloaded a doujin where _ got into _. +The magical girl found out that the Power of Love is useless against _. +The Japanese government has spent billions of yen researching _. +In the dubbed version they changed _ into _. +_ is Best Pony. +The _ of Haruhi Suzumiya. +The new thing in Akihabara is fetish cafes where you can see girls dressed up as _. +Your drill can pierce _! +Avatar: The Last _ bender. +In the name of _ Sailor Moon will punish you! +No harem anime is complete without _. +My boyfriend's a _ now. +The _ of _ has left me in despair! +_.tumblr.com +Somehow they made a cute mascot girl out of _. +Haruko hit Naoto in the head with her bass guitar and _ came out. +After blacking out during New year's Eve, I was awoken by _. +This holiday season, Tim Allen must overcome his fear of _ to save Christmas. +Jesus is _. +Every Christmas, my uncle gets drunk and tells the story about _. +What keeps me warm during the cold, cold, winter? +On the third day of Christmas, my true love gave to me: three French hens, two turtle doves, and _. +Wake up, America. Christmas is under attack by secular liberals and their _. +We got the third rope, now where's the fourth? +Tonights main event, _ vs. _. +Tackle, Dropdown, _. +Christopher Daniels is late on his _. +Instead of booking _, they should have booked _. +Genius is 10% inspiration, 90% _. +They found _ in the dumpster behind _. +The best thing I ever got for Christmas was _. +There's no crying in _. +Mastodon! Pterodactyl! Triceratops! Sabretooth Tiger! _! +Don't eat the _. +He did _ with the _!?! +SOOOOO hot, want to touch the _. +Stop looking at me _! +I'm cuckoo for _ puffs. +Silly rabbit, _ are for kids. +Between love and madness lies _. +Instead of chess, the Grim Reaper now gambles for your soul with a game of _. +My father gave his life fighting to protect _ from _. +Why is my throat sore? +_ sparked a city-wide riot that only ended with _. +I’m very sorry Mrs. Smith, but Little Billy has tested positive for _. +Instead of beating them, Chris Brown now does _ to women. +Instead of cutting, trendy young emo girls now engage in _. +The definition of rock bottom is gambling away _. +The Mayan prophecies really heralded the coming of _ in 2012. +The next US election will be fought on the key issues of _ against _. +When I was 10 I wrote to Santa wishing for _. +Where or How I met my last signifigant other: _. +_, Never leave home without it. +_. This is my fetish. +David Icke's newest conspiracy theory states that _ caused _. +I did _ so you don't have to! +I need your clothes, your bike, and _. +In a new Cold War retro movie, the red menace tries to conquer the world through the cunning use of _. +In college, our lecturer made us write a report comparing _ to _. +In The Hangover part 3, those four guys have to deal with _, _, and _. +My zombie survival kit includes food, water, and _. +The way to a man's heart is through _. +What was the theme of my second wedding? +What's the newest Japanese craze to head West? +Everybody loves _. +I can only express myself through _. +My new porn DVD was completely ruined by the inclusion of _ +My three wishes will be for _, _, and _. +The latest horrifying school shooting was inspired by _. +I got fired because of my not-so-secret obsession over _. +My new favourite sexual position is _ +A successful job interview begins with a firm handshake and ends with _. +Lovin' you is easy 'cause you're _. +My life is ruled by a vicious cycle of _ and _. +The blind date was going horribly until we discovered our shared interest in _. +_. Awesome in theory, kind of a mess in practice. +I'm not like the rest of you. I'm too rich and busy for _. +In the seventh circle of Hell, sinners must endure _ for all eternity. +_: Hours of fun. Easy to use. Perfect for _! +What left this stain on my couch? +Call the law offices of Goldstein & Goldstein, because no one should have to tolerate _ in the workplace. +When you get right down to it, _ is just _. +Turns out that _-Man was neither the hero we needed nor wanted. +As part of his daily regimen, Anderson Cooper sets aside 15 minutes for _. +Money can't buy me love, but it can buy me _. +With enough time and pressure, _ will turn into _. +And what did you bring for show and tell? +During high school, I never really fit in until I found _ club. +Hey, baby, come back to my place and I'll show you _. +After months of practice with _, I think I'm finally ready for _. +To prepare for his upcoming role, Daniel Day-Lewis immersed himself in the world of _. +Finally! A service that delivers _ right to your door. +My gym teacher got fired for adding _ to the obstacle course. +Having problems with _? Try _! +As part of his contract, Prince won't perform without _ in his dressing room. +Listen, son. If you want to get involved with _, I won't stop you. Just steer clear of _. +I just met you and this is crazy, but here's _, so _ maybe +It's only _ if you get caught! +_: The Next Generation +Terminator 4: _ +Disney presents _ on ice! +_. The other white meat. +A _ a day keeps the _ away. +I'm sweating like a _ at a _. +I love the smell of _ in the morning. +You're not gonna believe this, but _. +_. All the cool kids are doing it. +So I was _ in my cubicle at work, and suddenly _! +Baskin Robbins just added a 32nd flavor: _! +I can drive and ____ at the same time. +_ ain't nothin' to fuck wit'! + diff --git a/pyircbot/modules/CardsAgainstHumanity.py b/pyircbot/modules/CardsAgainstHumanity.py new file mode 100644 index 0000000..b6df955 --- /dev/null +++ b/pyircbot/modules/CardsAgainstHumanity.py @@ -0,0 +1,256 @@ +#!/usr/bin/env python +""" +.. module::CardsAgainstHumanity + :synopsis: Cards against Humanity, in IRC. Cards against IRC? +.. moduleauthor:: Nick Krichevsky + +""" +from pyircbot.modulebase import ModuleBase,ModuleHook +import yaml +import os +import time +from threading import Timer +from operator import itemgetter +from random import choice + +class CardsAgainstHumanity(ModuleBase): + def __init__(self, bot, moduleName): + # init the base module + ModuleBase.__init__(self, bot, moduleName); + self.hooks=[ModuleHook("PRIVMSG", self.scramble)] + self.loadConfig() + + # Dictionary + self.whitesFile = open(self.getFilePath("answers.txt"),'r') + self.blacksFile = open(self.getFilePath("questions.txt"),'r') + self.whites = [line.rstrip() for line in self.whitesFile] + self.blacks = [line.rstrip() for line in self.blacksFile] + self.currentBlack = "" + self.whitesFile.close() + self.blacksFile.close() + self.log.info("CAH: Loaded."+str(len(self.whites))+" White Cards "+str(len(self.blacks))+" Black Cards") + # Per channel games + self.games = {} + + + def scramble(self, args, prefix, trailing): + channel = args[0] + if channel[0] == "#": + if not channel in self.games: + self.games[channel]=cardsGame(self, channel,self.whites,self.blacks) + self.games[channel].stuff(args, prefix, trailing) + + + def ondisable(self): + self.log.info("CAH: Unload requested, ending games...") + # for game in self.games: + # self.games[game].gameover() + +class cardsGame: + def __init__(self, master, channel,whites,blacks): + self.master = master + self.channel = channel + # Running? + self.running = False + # Current word + # self.message = 'xmopxshell has downs' + self.players = {} + self.timers = {} + self.whites = whites + self.blacks = blacks + self.lastCzar = -1 + self.czar = "" + self.started = False + self.active = False + self.allowPick = 0 + self.choices = {} + self.czarTimer = None + def stuff(self, args, prefix, trailing): + prefix = self.master.bot.decodePrefix(prefix) + sender = prefix.nick + if self.master.bot.messageHasCommand(".joinGame", trailing): + self.join(sender) + elif self.master.bot.messageHasCommand(".ready",trailing): + result = self.markReady(sender) + if result: + self.started = True + self.master.bot.act_PRIVMSG(self.channel,"All players are ready!") + for player in self.players: + self.master.bot.act_PRIVMSG(player,"ITS TIME TO D-D-D-D-D-DUEL!") + self.players[player]=[] + for player in self.players: + self.deal(player) + self.sendCards(player) + self.active = True + self.makeTurn() + elif self.master.bot.messageHasCommand(".pick",trailing): + if self.active: + if sender != self.czar: + print(sender,self.czar) + print(sender != self.czar) + if self.allowPick > 0: + if sender in self.players: + cards = trailing.split(' ')[1:] + if len(cards)==self.allowPick: + if self.checkBounds(cards): + if sender not in self.choices: + cardChoices = [self.players[sender][int(index)] for index in cards] + print(cardChoices) + self.choices[sender] = cardChoices + self.removeAndReplenishCards(sender, cardChoices) + self.sendCards(sender) + del self.choices[sender] + if sender in timers: + self.timers[sender].cancel() + if self.allDrawn(): + self.readChoices() + self.master.bot.act_PRIVMSG(self.channel,self.czar+"! Please choose the winner!") + czarTimer = Timer(180,self.kick,(self.czar,"taking too long to pick a choice. The next turn iwll be made.")) + self.makeTurn() + + else: + self.master.bot.act_PRIVMSG(self.channel,sender+", you picked a card that was out of the range. Please don't do that.") + else: + self.master.bot.act_PRIVMSG(self.channel,sender+", you picked "+str(len(cards))+" cards. You were supposed to pick "+str(self.allowPick)) + elif self.master.bot.messageHasCommand(".choose",trailing): + if sender==self.czar: + choice = trailing.split()[1:] + if len(choice)==1: + if self.checkChoiceBounds(int(choice[0])): + self.master.bot.act_PRIVMSG(self.channel,list(self.choices.keys())[int(choice[0])]+", you won the round!") + if self.czarTimer!=None: + self.czarTimer.cancel() + self.makeTurn() + else: + self.master.bot.act_PRIVMSG(self.channel,sender+", your choice was out of the range. Please don't do that.") + else: + self.master.bot.act_PRIVMSG(self.channel,sender+", you picked "+str(len(choice))+" "+" winners. You were only supposed to pick 1.") + elif self.master.bot.messageHasCommand('.leave',trailing): + if sender in self.players: + self.kick(sender,'choosing to leave the game you dolt') + if sender is self.czar: + self.makeTurn() + + def join(self,nick): + if not self.started: + if nick not in self.players: + self.players[nick]=False + self.master.bot.act_PRIVMSG(self.channel, nick+" has joined the game! | The players currently are "+str(self.players)) + else: + print("the game has already started!") + self.master.bot.act_PRIVMSG(self.channel,"The game has already started!") + def markReady(self,nick): + if not self.started: + if nick in self.players: + self.players[nick]=True + for player in self.players: + print(player) + if not self.players[player]: + print (player+" not ready") + return False + return True + else: + self.master.bot.act_PRIVMSG(self.channel, "You are not in the game! Type .joinGame!") + else: + print("game has already started!") + self.master.bot.act_PRIVMSG(self.channel,"The game has already started!") + def deal(self,nick): + self.players[nick] = [self.pickWhite() for i in range (7)] + def pickWhite(self): + card = choice(self.whites) + self.whites.remove(card) + return card + def pickBlack(self): + card = choice(self.blacks) + self.blacks.remove(card) + return card + def sendCards(self,nick): + cards = "" + for card in self.players[nick]: + cards+=str(self.players[nick].index(card))+". " + cards+=card+" " + self.master.bot.act_PRIVMSG(nick,"Your cards are "+cards) + def readCard(self,card): + count = card.count('_') + if count == 0: + if 'haiku' in card: + count = 3 + else: + count = 1 + self.master.bot.act_PRIVMSG(self.channel,"The black card is \""+card+"\" Pick "+str(count)) + return count + def pickCzar(self): + index = self.lastCzar+1 + if index < len(self.players): + self.lastCzar = index + return index + else: + self.lastCzar = 0 + return 0 + def announceCzar(self): + self.master.bot.act_PRIVMSG(self.channel,"The Czar is "+self.czar+"!") + def checkBounds(self,cards): + for item in cards: + if int(item)>6 or int(item)<0: + return False + return True + def checkChoiceBounds(self,choice): + if choice<0 or choice>len(self.choices)-1: + return False + return True + def makeTurn(self): + self.choices.clear() + card = self.pickBlack() + self.timers.clear() + self.currentBlack = card + self.allowPick = self.readCard(card) + self.lastCzar = self.pickCzar() + self.czar = list(self.players.keys())[self.lastCzar] + print (self.lastCzar,self.czar) + for player in self.players: + if player!=self.czar: + self.timers[player] = Timer(180,self.kick,(player,"taking more than 180 seconds for their turn.")) + self.timers[player].start() + self.announceCzar() + def kick(self,nick,reason): + del self.players[nick] + if nick in self.timers: + self.timers[nick].cancel() + del self.timers[nick] + self.master.bot.act_PRIVMSG(self.channel,nick+" has been kicked due to "+reason) + if len(self.players)<=1: + self.master.bot.act_PRIVMSG(self.channel,"The game is being shut down due to having <=1 players") + self.started = False + self.active = False + for timer in self.timers: + timer.cancel() + self.timers.clear() + self.players.clear() + def removeAndReplenishCards(self,nick,cards): + for card in cards: + self.players[nick].remove(card) + self.players[nick].append(self.pickWhite()) + def readChoices(self): + if '_' in self.currentBlack: + for player in list(self.choices.keys()): + cardInstance = str(list(self.choices.keys()).index(player))+". "+self.currentBlack + cardInstance = list(cardInstance) #do this as opposed to space to preserve spaces + for choice in self.choices[player]: + for char in cardInstance: + if char=='_': + print(char) + choice = choice.replace('.','') + cardInstance[cardInstance.index(char)] = choice + break + self.master.bot.act_PRIVMSG(self.channel,''.join(cardInstance)) + else: + for player in self.choices: + self.master.bot.act_PRIVMSG(self.channel,self.currentBlack+' '+' '.join(self.choices[player])) + + def allDrawn(self): + for player in self.players: + if player not in self.choices: + if player != self.czar: + return False + return True +