mirror of
https://github.com/pragma-/pbot.git
synced 2024-11-22 20:09:43 +01:00
Allow question-marks in triggers if more than one is used; remove period from factoid names; return undef if factoid keyword is blank
This commit is contained in:
parent
c6e48954c5
commit
31e53f2aff
@ -199,6 +199,8 @@ sub interpreter {
|
||||
my ($result, $channel);
|
||||
my $pbot = $self->{pbot};
|
||||
|
||||
return undef if not length $keyword;
|
||||
|
||||
my $original_keyword = $keyword;
|
||||
($channel, $keyword) = $self->find_factoid($from, $keyword, $arguments);
|
||||
|
||||
@ -305,7 +307,7 @@ sub interpreter {
|
||||
|
||||
$result =~ s/\$nick/$nick/g;
|
||||
|
||||
while ($result =~ /[^\\]\$([a-zA-Z0-9_\-\.]+)/g) {
|
||||
while ($result =~ /[^\\]\$([a-zA-Z0-9_\-]+)/g) {
|
||||
my ($var_chan, $var) = $self->find_factoid($from, $1, undef, 0, 1);
|
||||
|
||||
if(defined $var && $self->factoids->hash->{$var_chan}->{$var}->{type} eq 'text') {
|
||||
|
@ -75,12 +75,12 @@ sub process_line {
|
||||
|
||||
$pbot->antiflood->check_flood($from, $nick, $user, $host, $text, $pbot->{MAX_FLOOD_MESSAGES}, 10, $pbot->antiflood->{FLOOD_CHAT}) if defined $from;
|
||||
|
||||
if($text =~ /^.?$mynick.?\s+(.*?)([\?!]*)$/i) {
|
||||
$command = "$1";
|
||||
} elsif($text =~ /^(.*?),?\s+$mynick([\?!]*)$/i) {
|
||||
$command = "$1";
|
||||
} elsif($text =~ /^!(.*?)(\?*)$/) {
|
||||
$command = "$1";
|
||||
if($text =~ /^.?$mynick.?\s+(.*?)([?]*)$/i) {
|
||||
$command = "$1" . (defined $2 and length $2 >= 2 ? substr $2, 1, 1 : "");
|
||||
} elsif($text =~ /^(.*?),?\s+$mynick([?]*)$/i) {
|
||||
$command = "$1" . (defined $2 and length $2 >= 2 ? substr $2, 1, 1 : "");
|
||||
} elsif($text =~ /^!(.*?)([?]*)$/) {
|
||||
$command = "$1" . (defined $2 and length $2 >= 2 ? substr $2, 1, 1 : "");
|
||||
} elsif($text =~ /http:\/\/([^\s]+)/i) {
|
||||
$has_url = $1;
|
||||
}
|
||||
|
@ -13,7 +13,7 @@ use warnings;
|
||||
# These are set automatically by the build/commit script
|
||||
use constant {
|
||||
BUILD_NAME => "PBot",
|
||||
BUILD_REVISION => 223,
|
||||
BUILD_REVISION => 224,
|
||||
BUILD_DATE => "2010-06-30",
|
||||
};
|
||||
|
||||
|
118
data/factoids
118
data/factoids
@ -39,22 +39,22 @@ type: text
|
||||
action: the unary boolean not operator
|
||||
created_on: 1104600621
|
||||
enabled: 1
|
||||
last_referenced_on: 1277351832.15853
|
||||
last_referenced_on: 1277897410.15142
|
||||
owner: Major-Willard
|
||||
rate_limit: 15
|
||||
ref_count: 92
|
||||
ref_user: apples
|
||||
ref_count: 95
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<!!>
|
||||
action: /say !! is a common idiom for normalizing booleans - it will turn any nonzero value into 1, and leave zero at 0. For example, !!50 is 1.
|
||||
created_on: 1262200005
|
||||
enabled: 1
|
||||
last_referenced_on: 1277797649.18166
|
||||
last_referenced_on: 1277897661.37268
|
||||
owner: Random832
|
||||
rate_limit: 15
|
||||
ref_count: 7
|
||||
ref_user: Wulf
|
||||
ref_count: 10
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<!=>
|
||||
@ -574,10 +574,11 @@ type: text
|
||||
action: !1
|
||||
created_on: 1268450206
|
||||
enabled: 1
|
||||
last_referenced_on: 1277899716.06298
|
||||
owner: Maxdamantus
|
||||
rate_limit: 15
|
||||
ref_count: 2
|
||||
ref_user: Aless67
|
||||
ref_count: 3
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<0L>
|
||||
@ -620,16 +621,6 @@ ref_count: 7
|
||||
ref_user: jwillia3
|
||||
type: text
|
||||
|
||||
<20?>
|
||||
action: /say If you have a question, please be specific and concise. Don't ask questions like 'Does anyone know how to ...' or 'What is the best way to ...'. We do not have the time or patience to play a game of 20 questions with people that are not capable of articulating properly. See also: http://www.catb.org/~esr/faqs/smart-questions.html
|
||||
created_on: 1200772242
|
||||
enabled: 1
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 0
|
||||
ref_user: nobody
|
||||
type: text
|
||||
|
||||
<20q>
|
||||
action: /say If you have a question, please be specific and concise. Don't ask questions like 'Does anyone know how to ...' or 'What is the best way to ...'. We do not have the time or patience to play a game of 20 questions with people that are not capable of articulating properly. See also: http://catb.org/~esr/faqs/smart-questions.html
|
||||
created_on: 1215709795
|
||||
@ -694,10 +685,10 @@ type: text
|
||||
action: /say $nick, $answers
|
||||
created_on: 1193948417
|
||||
enabled: 1
|
||||
last_referenced_on: 1277879424.73832
|
||||
last_referenced_on: 1277892979.54392
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 702
|
||||
rate_limit: 0
|
||||
ref_count: 714
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
@ -3444,10 +3435,11 @@ type: text
|
||||
action: /say $advicepredicate $advicehelper.
|
||||
created_on: 1258762773
|
||||
enabled: 1
|
||||
last_referenced_on: 1277892579.53732
|
||||
owner: PARLIAMENT
|
||||
rate_limit: 15
|
||||
ref_count: 23
|
||||
ref_user: prose
|
||||
ref_count: 24
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<advicehelper>
|
||||
@ -4032,11 +4024,11 @@ type: text
|
||||
action: /me points accusingly at $args, "Where is your book?!"
|
||||
created_on: 1179504776
|
||||
enabled: 1
|
||||
last_referenced_on: 1277507860.9661
|
||||
last_referenced_on: 1277887660.72878
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 768
|
||||
ref_user: PoppaVic
|
||||
ref_count: 769
|
||||
ref_user: n00p
|
||||
type: text
|
||||
|
||||
<book2>
|
||||
@ -4053,11 +4045,11 @@ type: text
|
||||
action: http://www.iso-9899.info/wiki/Books
|
||||
created_on: 1104378101
|
||||
enabled: 1
|
||||
last_referenced_on: 1277159744.56438
|
||||
last_referenced_on: 1277887663.01715
|
||||
owner: twkm
|
||||
rate_limit: 15
|
||||
ref_count: 465
|
||||
ref_user: Dianora
|
||||
ref_count: 466
|
||||
ref_user: n00p
|
||||
type: text
|
||||
|
||||
<booty(.*)>
|
||||
@ -4807,11 +4799,11 @@ type: text
|
||||
action: cstd.pl
|
||||
created_on: 1270956236
|
||||
enabled: 1
|
||||
last_referenced_on: 1277849943.27572
|
||||
last_referenced_on: 1277898666.03688
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 1004
|
||||
ref_user: apples
|
||||
ref_count: 1005
|
||||
ref_user: Jafet
|
||||
type: module
|
||||
|
||||
<csv>
|
||||
@ -4889,9 +4881,10 @@ type: text
|
||||
action: /me $dances.
|
||||
created_on: 1271192355
|
||||
enabled: 1
|
||||
last_referenced_on: 1277899057.15775
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 10
|
||||
ref_count: 14
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
@ -5138,16 +5131,6 @@ ref_count: 0
|
||||
ref_user: nobody
|
||||
type: regex
|
||||
|
||||
<donkey>
|
||||
action: the best
|
||||
created_on: 1276976459
|
||||
enabled: 1
|
||||
owner: megabraker
|
||||
rate_limit: 15
|
||||
ref_count: 0
|
||||
ref_user: nobody
|
||||
type: text
|
||||
|
||||
<dontcastmalloc>
|
||||
action: /say There is no need to cast the result of library functions that return void *; it makes your code hard to read, adds no value, and can hide a bug if you don't have a valid prototype in scope. See http://www.cpax.org.uk/prg/writings/casting.php and http://c-faq.com/malloc/mallocnocast.html
|
||||
created_on: 1104594725
|
||||
@ -5620,10 +5603,10 @@ type: text
|
||||
action: /call factfind
|
||||
created_on: 1277784994.65625
|
||||
enabled: 1
|
||||
last_referenced_on: 1277870779.99539
|
||||
last_referenced_on: 1277880083.42342
|
||||
owner: pbot3
|
||||
rate_limit: 15
|
||||
ref_count: 16
|
||||
ref_count: 17
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
@ -7027,11 +7010,11 @@ type: text
|
||||
action: man.pl
|
||||
created_on: 1107137901
|
||||
enabled: 1
|
||||
last_referenced_on: 1277560411.10305
|
||||
last_referenced_on: 1277883339.23933
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 1024
|
||||
ref_user: yg
|
||||
ref_count: 1026
|
||||
ref_user: CDrone
|
||||
type: module
|
||||
|
||||
<mankind>
|
||||
@ -8720,10 +8703,11 @@ type: text
|
||||
action: /me $weapon_action her $weapon and $shoot_action $args's $body_part.
|
||||
created_on: 1109021460
|
||||
enabled: 1
|
||||
last_referenced_on: 1277899702.25156
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 145
|
||||
ref_user: _root
|
||||
ref_count: 149
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<shoot_action>
|
||||
@ -8750,10 +8734,11 @@ type: text
|
||||
action: /call advice
|
||||
created_on: 1258762922
|
||||
enabled: 1
|
||||
last_referenced_on: 1277892579.52684
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 15
|
||||
ref_user: prose
|
||||
ref_count: 16
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<shouldn?'?t?\s(.*)>
|
||||
@ -10027,11 +10012,11 @@ ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<version>
|
||||
action: /say PBot revision 221 2010-06-29
|
||||
created_on: 1277877961.08901
|
||||
action: /say PBot revision 224 2010-06-30
|
||||
created_on: 1277897615.53125
|
||||
enabled: 1
|
||||
last_referenced_on: 1277547370.96948
|
||||
owner: candide
|
||||
owner: pbot3
|
||||
rate_limit: 15
|
||||
ref_count: 0
|
||||
ref_user: nobody
|
||||
@ -10345,11 +10330,11 @@ type: module
|
||||
action: try #winprog on EFnet or #winapi on freenode
|
||||
created_on: 1180888225
|
||||
enabled: 1
|
||||
last_referenced_on: 1277867722.90397
|
||||
last_referenced_on: 1277898861.8812
|
||||
owner: PoppaVic
|
||||
rate_limit: 15
|
||||
ref_count: 97
|
||||
ref_user: PoppaVic
|
||||
ref_count: 98
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<winapi>
|
||||
@ -10366,11 +10351,22 @@ type: text
|
||||
action: a thirty-two bit extension and graphical shell to a sixteen-bit patch to an eight-bit operating system originally coded for a four-bit microprocessor which was written by a two-bit company that can't stand one bit of competition.
|
||||
created_on: 1106527942
|
||||
enabled: 1
|
||||
last_referenced_on: 1277541949.60156
|
||||
last_referenced_on: 1277898873.37305
|
||||
owner: Major-Willard
|
||||
rate_limit: 15
|
||||
ref_count: 16
|
||||
ref_user: megabraker
|
||||
ref_count: 17
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<winprog>
|
||||
action: /call win32
|
||||
created_on: 1277898858.41818
|
||||
enabled: 1
|
||||
last_referenced_on: 1277898861.87861
|
||||
owner: pragma_
|
||||
rate_limit: 15
|
||||
ref_count: 1
|
||||
ref_user: pragma_
|
||||
type: text
|
||||
|
||||
<wizo>
|
||||
|
Loading…
Reference in New Issue
Block a user