X-Git-Url: https://git.netwichtig.de/gitweb/?a=blobdiff_plain;f=data%2Frbot%2Fplugins%2Flart.rb;h=0e995efb114ff2928f5dbc09cd3863b53656ceb2;hb=21947daae8f66141d3c53ce2f58eab60701d52bf;hp=fbc1f9e429f052768adf4410560ba431352cfd91;hpb=bfb9506b75a1cf8118364226bcb8945114e3771c;p=user%2Fhenk%2Fcode%2Fruby%2Frbot.git diff --git a/data/rbot/plugins/lart.rb b/data/rbot/plugins/lart.rb index fbc1f9e4..0e995efb 100644 --- a/data/rbot/plugins/lart.rb +++ b/data/rbot/plugins/lart.rb @@ -95,6 +95,9 @@ class LartPlugin < Plugin end who = params[:who].to_s reason = params[:why] + if who == "me" + who = m.sourcenick + end if who == @bot.nick who = m.sourcenick reason = "for trying to make me lart myself" @@ -113,7 +116,8 @@ class LartPlugin < Plugin end who = params[:who].to_s reason = params[:why] - if who == m.sourcenick + if who == m.sourcenick || who == "me" + params[:who] = m.sourcenick params[:why] = "for praising himself" handle_lart(m, params) return @@ -136,6 +140,16 @@ class LartPlugin < Plugin m.okay end + def handle_listlart(m, params) + rx = Regexp.new(params[:lart].to_s, true) + list = @larts.grep(rx) + unless list.empty? + m.reply list.join(" | "), :split_at => /\s+\|\s+/ + else + m.reply "no lart found matching #{params[:lart]}" + end + end + def handle_addpraise(m, params) @praises << params[:praise].to_s @changed = true @@ -148,6 +162,16 @@ class LartPlugin < Plugin m.okay end + def handle_listpraise(m, params) + rx = Regexp.new(params[:praise].to_s, true) + list = @praises.grep(rx) + unless list.empty? + m.reply list.join(" | "), :split_at => /\s+\|\s+/ + else + m.reply "no praise found matching #{params[:praise]}" + end + end + # The following are utils for larts/praises def replace_who(msg, nick) msg.gsub(//i, "#{nick}") @@ -169,3 +193,6 @@ plugin.map "addpraise *praise", :action => :handle_addpraise plugin.map "rmlart *lart", :action => :handle_rmlart plugin.map "rmpraise *praise", :action => :handle_rmpraise + +plugin.map "listlart *lart", :action => :handle_listlart +plugin.map "listpraise *praise", :action => :handle_listpraise