FordLawnmower commented on a Page, Horoscope  -  Feb 01, 2012

Actually I do have a Spanish Horoscope script Gran_lider_negro .
It's a lot better than this one though.

Triggers are:
!horo sign : Will notice the user.
@horo sign : Will message the channel if the user has halfops or higher.
+horo : Will turn the script on in the current channel.(Requires ops)
-horo : Will turn the script off in the current channel.(Requires ops)

Note The sign name only needs the first three letters.
There is also a master ON/OFF switch in the right click channel/status menu.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;Horoscope in Spanish by Ford_Lawnmower irc.abjects.net #mIRC
alias -l sets {
  goto $prop
  :Salud
  return $+($chr(15),$chr(3),03)
  :Dinero
  return $+($chr(15),$chr(3),07)
  :Amor
  return $+($chr(15),$chr(3),04)
  :Familia
  return $+($chr(15),$chr(3),06)
  :Stars-
  return $+($chr(15),$chr(3),14)
  :TagColor
  return $+($chr(15),$chr(2),$chr(31))
  :TextColor
  return $+($chr(15))
  :PreTextColor
  return $+($chr(15),$chr(3),12)
  :Delim
  return $+($chr(15),¤)
  :Flood
  return 15
}
menu Channel,Status {
  .$iif($group(#SpanishHoroscope) == On,$style(1)) SpanishHoroscope Trigger
  ..$iif($group(#SpanishHoroscope) == On,$style(2)) On: .enable #SpanishHoroscope
  ..$iif($group(#SpanishHoroscope) == Off,$style(2)) Off: .disable #SpanishHoroscope
}
#SpanishHoroscope on
On $*:Text:/^(\+|-|!|@)horo.*/Si:#: {
  var %action $regml(1)
  if (%action isin +-) && ($regex($nick($chan,$nick).pnick,/(!|~|&|@)/)) {
    if (%action == +) {
      if ($istok(%SpanishHoroscopeChanList,$+($network,$chan),32)) { .msg $chan $nick $chan ya se está ejecutando el guión Horoscope. }
      else { 
        .enable #SpanishHoroscope
        Set %SpanishHoroscopeChanList $addtok(%SpanishHoroscopeChanList,$+($network,$chan),32)
        .msg $chan $nick ha puesto en marcha el guión de Horoscope $chan .
      }
    }
    else {
      if (!$istok(%SpanishHoroscopeChanList,$+($network,$chan),32)) { .msg $chan $nick $chan no se está ejecutando el guión Horoscope. }
      else { 
        Set %SpanishHoroscopeChanList $remtok(%SpanishHoroscopeChanList,$+($network,$chan),1,32)
        .msg $chan $nick ha desactivado la escritura de Horoscope $chan . 
      }
    }
  }
  elseif (!$timer($+(SpanishHoroscope,$network,$nick))) && ($istok(%SpanishHoroscopeChanList,$+($network,$chan),32)) {
    .timer $+ $+(SpanishHoroscope,$network,$nick) 1 $sets().flood noop
    var %method $iif(%action == !,.notice $nick,$iif($regex($nick($chan,$nick).pnick,/(!|~|&|@|%\+)/),.msg $chan,.notice $nick))
    if (!$sign($2)) %method Correct syntax is: !horoscope <signo>
    else GetSpanishHoroscope %method $sign($2) $3
  }
}
#SpanishHoroscope end
alias SpanishHoroscope { GetSpanishHoroscope echo -a $sign($1) }
alias -l GetSpanishHoroscope {
  var %sockname $+(SpanishHoroscope,$network,$2,$ticks)
  sockopen %sockname servicios.aol.com 80
  svar %sockname method $1-2
  svar %sockname get $+(/content/astrologia/horoscopos-2009/signos/signo.php?Domain=http://tuvida.aol.com/&Signo=,$3,$iif($4 == a || $4 == m,$+(&F=,$upper($v1))))
}
On *:sockopen:SpanishHoroscope*: {
  if (!$sockerr) {
    sockwrite -nt $sockname GET $svar($sockname,get) HTTP/1.0
    sockwrite -n $sockname Host: servicios.aol.com
    sockwrite -n $sockname $crlf
  }
  else { echo -st Socket Error $nopath($script) | sockclose $sockname | return }
}
On *:sockread:SpanishHoroscope*: {
  if ($sockerr) { echo -st Socket Error $nopath($script) | sockclose $sockname | return }
  else {
    var %SpanishHoroscope | sockread %SpanishHoroscope
    if ($regex(check,%SpanishHoroScope,/<td><strong>(.*?)<\/strong><br>/i)) {
      svar $sockname horofound 1|date $regml(check,1)
    }
    elseif ($svar($sockname,horofound) && $regex(check,%SpanishHoroscope,(.*?)<\/td>)) {
      svar $sockname horofound 0|horo $regml(check,1)
    }
    elseif ($regex(check,%SpanishHoroscope,/<td><img\ssrc="\.\.\/images\/stars\/(.*?)\.gif"><\/td>/i)) {
      svar $sockname starfound $calc($svar($sockname,starfound) + 1)
      svar $sockname $gettok(salud|dinero|amor|familia,$svar($sockname,starfound),124) $regml(check,1)
    }
    elseif ($regex(check,%SpanishHoroscope,/<span\sclass="amuletosubtitulo">(.*?)<\/span>/i)) {
      svar $sockname amulet 1|amulet_prefix $regml(check,1)
    }
    elseif ($regex(check,%SpanishHoroscope,/<strong>(.*?)<\/strong>/i)) {
      svar $sockname extrafound $calc($svar($sockname,extrafound) + 1)
      svar $sockname $gettok(santo|numero|color|sorpresa,$svar($sockname,extrafound),124) $regml(check,1)
    }
    elseif ($svar($sockname,amulet) && $regex(check,%SpanishHoroscope,(.*?)<\/td>)) {
      var %salud $+($sets().tagcolor,Salud,$chr(15),:,$chr(32),$stars($sets().salud,$svar($sockname,salud),$sets().stars-))
      var %dinero $+($sets().tagcolor,Dinero,$chr(15),:,$chr(32),$stars($sets().dinero,$svar($sockname,dinero),$sets().stars-))
      var %amor $+($sets().tagcolor,Amor,$chr(15),:,$chr(32),$stars($sets().amor,$svar($sockname,amor),$sets().stars-))
      var %familia $+($sets().tagcolor,Familia,$chr(15),:,$chr(32),$stars($sets().familia,$svar($sockname,familia),$sets().stars-))
      var %amuleto $sets().tagcolor $+ Amuleto del $+(día,$chr(15),:) $+($sets().pretextcolor,$svar($sockname,amulet_prefix),$chr(15)) $sets().delim $+($sets().textcolor,$regml(check,1))
      var %santo $sets().tagcolor $+ Santo del $+(día,$chr(15),:) $+($sets().pretextcolor,$svar($sockname,santo),$chr(15))
      var %numero $sets().tagcolor $+ Número del $+(día,$chr(15),:) $+($sets().pretextcolor,$svar($sockname,numero),$chr(15))
      var %color $sets().tagcolor $+ Color del $+(día,$chr(15),:) $+($sets().pretextcolor,$svar($sockname,color),$chr(15))
      var %sorpresa $+($sets().tagcolor,Sorpresa,$chr(15),:) $+($sets().pretextcolor,$svar($sockname,sorpresa),$chr(15))
      put $svar($sockname,method) $+($sets().tagcolor,Date,$chr(15),:) $+($sets().textcolor,$svar($sockname,date))
      put $svar($sockname,method) $+($sets().tagcolor,Info,$chr(15),:) $+($sets().textcolor,$svar($sockname,horo))
      put $svar($sockname,method) %salud %dinero %amor %familia $sets().delim %santo $sets().delim %numero $sets().delim %color $sets().delim %sorpresa
      put $svar($sockname,method) %amuleto
      sockclose $sockname
      return
    }
  }
}
alias -l Stars {
  return $+($1,$str(*,$2),$3,$str(*,$calc(5 - $2)))
}
alias -l Svar {
  var %sockname $1, %item $2
  if ($isid) {
    if ($regex(Svar,$sock(%sockname).mark,/ $+ %item $+ \x01([^\x01]*)/i)) return $regml(Svar,1)
  }
  else {
    tokenize 124 $2-
    var %count 1
    while (%count <= $0) {
      var %record $($+($,%count),2), %item $gettok(%record,1,32), %value $gettok(%record,2-,32)
      if (!$regex($sock(%sockname).mark,/ $+ %item $+ \x01/i)) sockmark %sockname $+($sock(%sockname).mark,$chr(1),%item,$chr(1),%value)
      else sockmark %sockname $regsubex($sock(%sockname).mark,/( $+ %item $+ \x01[^\x01]*)/i,$+(%item,$chr(1),%value))
      inc %count
    }
  }
}
alias -l sign {
  var %signs acu|ari|cap|can|sco|gem|leo|lib|pis|sag|tau|vir, %sign $replace($utfdecode($strip($1)),á,a,é,e,q,c)
  if ($findtok(%signs,$left(%sign,3),1,124) || $findtok(%signs,$mid(%sign,2,3),1,124)) { return $v1 }
}
alias -l Put {
  if (!$regex($1,/(\.|^)(msg|notice|echo)$/Si)) || (!$3) { echo -st **Put error** Syntax /Put msg #channel text - or - /Put notice nickname text  | return }
  tokenize 32 $regsubex($1-,/([$\|%\[\]][^\s]*)/g,$+($chr(2),$chr(2),\t))
  var %tokens $0, %Tstart 4, %Dtimer 1500
  if ($timer($+(Put,$2,$network)).secs) { %Dtimer = $calc($v1 * 1000) }  
  while ($len($($+($,%Tstart,-,%tokens),2)) > 430) {
    dec %tokens
    if ($len($($+($,%Tstart,-,%tokens),2)) <= 430) {
      .timer -m 1 %Dtimer $1-2 $3 $($+($,%Tstart,-,%tokens),2))
      inc %Dtimer 1500
      %Tstart = $calc(%tokens + 1)
      %tokens = $0
    }
  }
  .timer -m 1 %Dtimer $1-2 $3 $($+($,%Tstart,-,%tokens),2))
  .timer $+ $+(Put,$2,$network) -m 1 $calc(%Dtimer + 1500) noop 
}
 Respond  
Are you sure you want to unfollow this person?
Are you sure you want to delete this?
Click "Unsubscribe" to stop receiving notices pertaining to this post.
Click "Subscribe" to resume notices pertaining to this post.