2010-06-16 01:55:39 +01:00
|
|
|
<?php
|
|
|
|
/**
|
2010-08-03 19:45:55 +01:00
|
|
|
* Phergie
|
2010-06-16 01:55:39 +01:00
|
|
|
*
|
|
|
|
* PHP version 5
|
|
|
|
*
|
|
|
|
* LICENSE
|
|
|
|
*
|
|
|
|
* This source file is subject to the new BSD license that is bundled
|
|
|
|
* with this package in the file LICENSE.
|
|
|
|
* It is also available through the world-wide-web at this URL:
|
|
|
|
* http://phergie.org/license
|
|
|
|
*
|
2010-08-03 19:45:55 +01:00
|
|
|
* @category Phergie
|
2010-06-16 01:55:39 +01:00
|
|
|
* @package Phergie_Plugin_Daddy
|
|
|
|
* @author Phergie Development Team <team@phergie.org>
|
|
|
|
* @copyright 2008-2010 Phergie Development Team (http://phergie.org)
|
|
|
|
* @license http://phergie.org/license New BSD License
|
|
|
|
* @link http://pear.phergie.org/package/Phergie_Plugin_Daddy
|
|
|
|
*/
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Simply responds to messages addressed to the bot that contain the phrase
|
|
|
|
* "Who's your daddy?" and related variations.
|
|
|
|
*
|
2010-08-03 19:45:55 +01:00
|
|
|
* @category Phergie
|
2010-06-16 01:55:39 +01:00
|
|
|
* @package Phergie_Plugin_Daddy
|
|
|
|
* @author Phergie Development Team <team@phergie.org>
|
|
|
|
* @license http://phergie.org/license New BSD License
|
|
|
|
* @link http://pear.phergie.org/package/Phergie_Plugin_Daddy
|
|
|
|
*/
|
|
|
|
class Phergie_Plugin_Daddy extends Phergie_Plugin_Abstract
|
|
|
|
{
|
|
|
|
/**
|
|
|
|
* Checks messages for the question to which it should respond and sends a
|
|
|
|
* response when appropriate
|
|
|
|
*
|
|
|
|
* @return void
|
|
|
|
*/
|
|
|
|
public function onPrivmsg()
|
|
|
|
{
|
|
|
|
$config = $this->getConfig();
|
|
|
|
$prefix = $config['command.prefix'];
|
|
|
|
$event = $this->getEvent();
|
|
|
|
$text = $event->getArgument(1);
|
|
|
|
$target = $event->getNick();
|
|
|
|
$source = $event->getSource();
|
2010-08-03 19:45:55 +01:00
|
|
|
$pattern
|
|
|
|
= '/' . preg_quote($prefix) .
|
2010-06-16 01:55:39 +01:00
|
|
|
'\s*?who\'?s y(?:our|a) ([^?]+)\??/iAD';
|
|
|
|
if (preg_match($pattern, $text, $m)) {
|
2010-08-03 19:45:55 +01:00
|
|
|
if ($config['daddy.curses'] && mt_rand(0, 5) === 5) {
|
|
|
|
$msg = $target . ': I am your ' . $m[1] . ', bitch!';
|
|
|
|
} else {
|
|
|
|
$msg = 'You\'re my ' . $m[1] . ', ' . $target . '!';
|
|
|
|
}
|
2010-06-16 01:55:39 +01:00
|
|
|
$this->doPrivmsg($source, $msg);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|