Browse Source

aggiunto politica

thegamer 8 years ago
parent
commit
16fb535772
1 changed files with 137 additions and 2 deletions
  1. 137 2
      tubiabot.rb

+ 137 - 2
tubiabot.rb

@@ -1,5 +1,7 @@
 # coding: utf-8
 require 'cinch'
+require 'marky_markov'
+require 'open-uri'
 
 class ToniNegri
   include Cinch::Plugin
@@ -31,19 +33,152 @@ class Amici
   match /lavor(o|are|atori)/
 
   def execute(m)
-    users = [ "qup", "imega", "gresci","jigen","lgine","encrypt" ]
+    users = [ "qup", "imega", "gresci", "jigen", "lgine", "encrypt", "thegamer" ]
     requests = [ "oggi non ho voglia di fare un cazzo", "caffè?", "andiamo al bar?" ]
     m.reply users.sample+" "+users.sample+" "+requests.sample
   end
 end
 
+class JS
+  include Cinch::Plugin
+
+  match /js/
+
+  def execute(m)
+    frameworks = ["Angular", "React", "Ember", "Meteor"]
+    loves = ["è una figata", "è bellissimo"]
+    m.reply frameworks.sample+" "+loves.sample
+  end
+end
+
+class Salvino
+  include Cinch::Plugin
+
+  match /salvino/
+
+  def execute(m)
+    m.reply "FORZA SALVINO"+("O"*rand(3...10))
+  end
+end
+
+class Jops
+  include Cinch::Plugin
+
+  match /jops/
+
+  def execute(m)
+    cibo = ["tigelle", "crescentine"]
+    m.reply "jops: andiamo a mangiare le "+cibo.sample+" ?"
+  end
+end
+
+class Qup
+  include Cinch::Plugin
+
+  match /qup/
+
+  def execute(m)
+    m.reply "qup, ora ti vengo a menare"
+  end
+end
+
+class Vergogna
+  include Cinch::Plugin
+
+  match /vergogna/
+
+  def execute(m)
+    m.reply "vergogna vergogna settimo reparto"
+  end
+end
+
+class Film
+  include Cinch::Plugin
+
+  match /film/
+
+  def execute(m)
+    loop do
+      if open("http://www.imdb.com/random/title").read =~ /<title>(.*?) (\(.*?\)) - IMDb<\/title>/
+        title = $1.gsub("&quot;","\"").split
+        if title.count > 1
+          #title[title.count - 1] = "Tubia"
+          title[rand(0...title.count)] = "Tubia"
+          m.reply title.join(' ')
+          break
+        end          
+      end
+    end
+  end
+end
+
+class Thegamer
+  include Cinch::Plugin
+
+  match /thegamer/
+
+  def execute(m)
+    m.reply ["ahahahahahaha", "sistemistahahahahah"].sample
+  end
+end
+
+class Encrypt
+  include Cinch::Plugin
+
+  match /encrypt/
+
+  def execute(m)
+    m.reply ["encrypt, non vedo l'ora che arrivi il tempo del nostro prossimo incontro","soccia encrypt quanto sei troll","encrypt, sei malvagio","encrypt, guardare la nebbia","ahahah encrypt esatto","il nostro encrypt","encrypt, è il JSON marxista leninista","encrypt, magari","encrypt...","ciao encrypt","encrypt è impazzito","encrypt, se vuoi puoi parlare con me ","ma sei pazzo encrypt?","questa è per encrypt","encrypt, conosciamo la tua religione","Ciao encrypt","in particolare encrypt che usa la sua capacità per il Male "].sample
+  end
+end
+
+class Tpo
+  include Cinch::Plugin
+
+  match /[T.t]po|[P,p]olitic(a|he|i)/
+
+  def execute(m)
+    m.reply ["ahahahahahaha", "Swasps democrazia! 'Con 1589 votanti si sono concluse le primarie di CoalizioneCivica'","Swasps hashtag per tutti: LaCittàDelBuonVivere #CoalizioneCivica #Bologna LoSportDiCittadinanza tra #benessere e #integrazione", "VIGILI URBANI: UN BUON SINDACO NON DISPREZZA I PROPRI LAVORATORI - Il Sindaco di Bologna... http://fb.me/1XmvjJ2nc" ].sample
+  end
+end
+
+
+
+class Roll
+  include Cinch::Plugin
+
+  match /roll/
+
+  def execute(m)
+    m.reply rand(1..6)
+  end
+end
+
+logger = File.open("./logs.txt", 'a+')
+markov = MarkyMarkov::TemporaryDictionary.new
+markov.parse_file './logs.txt'
 
 bot = Cinch::Bot.new do
   configure do |c|
     c.server = "irc.mufhd0.net"
     c.nick = "TubiaBot"
     c.channels = ["#indivia"]
-    c.plugins.plugins = [Caffe, ToniNegri,Amici]
+    c.plugins.plugins = [Caffe, ToniNegri, Amici, JS, Salvino, Jops, Qup, Vergogna, Film, Thegamer, Roll]
+  end
+end
+
+bot.on :message do |m|
+  if m.user.nick == "Tubia87"
+    logger.write(m.message+"\n")
+  end
+  if m.message.include?(@bot.nick)
+    m.reply markov.generate_n_sentences 1
+  end
+  if m.message.include?("encrypt")
+    File.open('/tmp/lucine', 'w') do |f|
+      f.puts('blink 3 0.3')
+      f.flush
+    end
   end
 end