All pastes #551918 Raw Edit

Miscellany

public text v1 · immutable
·published 2007-06-09 00:34 UTC
rendered paste body
<aliases script>


/op /mode # +ooo $$1 $2 $3
/dop /mode # -ooo $$1 $2 $3
/j /join #$$1 $2-
/p /part #
/n /names #$$1
/w /whois $$1
/k /kick # $$1 $2-
/q /query $$1
/send /dcc send $1 $2
/chat /dcc chat $1
/ping /ctcp $$1 ping
se {
  return $readini(Settings.ini,$1,$2)
}
custcol {
  if ($readini(CustomColors.ini,$address($1,3),$2)) {
    return $ifmatch
  }
  else {
    return $se(Settings.ini,color,$2)
  }
}
rsn {
  if ($2) { return $2 }
  if ($readini(RSN.ini,n,$address($1,3),rsn)) { return $ifmatch }
  else { return $1 }
}
saka {
  return $iif($readini(Skills/TS.ini,$1,aka),$ifmatch,$1)
}
skill {
  if ($prop == lvl) { var %get = 2 }
  if ($prop == exp) { var %get = 3 }
  if ($prop == rank) { var %get = 1 }
  if (!$1 || !$2) { return Error }
  if (!$hget($1,$2)) { return - }
  return $remove($gettok($hget($1,$2),%get,32),$chr(44))
}
nohtml {
  var %x,%i = $regsub($1-,/(^[^<]*>|<[^>]*>|<[^>]*$)/g,$null,%x)
  %x = $replace(%x,&nbsp;,$null)
  return %x
}
order {
  .tokenize 32 $1
  var %a = 1,%ordrd
  while (%a <= $0) {
    if ($($+($,%a),2) >= $gettok(%ordrd,1,32)) { %ordrd = $($+($,%a),2) %ordrd }
    else { %ordrd = %ordrd $($+($,%a),2) }
    inc %a
  }
  return %ordrd
}
exp {
  var %x = 1, %level = $calc($1 - 1), %xp = 0
  while (%x <= %level) {
    var %TempXp = $calc($floor($calc(%x + 300 * 2 ^ (%x / 7))) / 4)
    inc %xp %TempXp
    inc %x
  }
  return $int(%xp)
}
combat.base {
  var %def = $1,%hp = $2,%pray = $3
  var %A = $calc(%def * 100)
  var %B = $calc(%hp * 100)
  var %C = $iif(*.* iswm $calc(%pray / 2),$calc((%pray -1) * 50),$calc(%pray * 50))
  return $calc((%a + %B + %C) / 400)
}
combat.class {
  var %att = $1,%str = $2,%range = $3,%mage = $4
  var %A = $calc(%att * 130)
  var %B = $calc(%str * 130)
  var %C = $iif(*.* iswm $calc(%range / 2),$calc(((%range - 1) + (%range * 2)) * 65),$calc(%range * 195))
  var %D = $iif(*.* iswm $calc(%mage / 2),$calc(((%mage - 1) + (%mage * 2)) * 65),$calc(%mage * 195))
  var %melee = $calc((%A + %B) / 400)
  var %range = $calc(%C / 400)
  var %mage = $calc(%D / 400)
  return $order(%melee %range %mage)
}
combat.final {
  var %base = $combat.base($iif(!$2,1,$2),$iif(!$4,10,$4),$iif(!$5,1,$5))
  var %class = $combat.class($iif(!$1,1,$1),$iif(!$3,1,$3),$iif(!$6,1,$6),$iif(!$7,1,$7))
  var %combat = $calc(%base + $gettok(%class,1,32))
  return %combat
}
f2u {
  if ($regex($1,$+(/^,$chr(40),$se(regEx,compare),$chr(41),$,/Si))) { return Compare }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,pc),$chr(41),$,/Si))) { return PestControl }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,cmb),$chr(41),$,/Si))) { return Combat }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,stats),$chr(41),$,/Si))) { return Stats }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,overall),$chr(41),$,/Si))) { return Overall }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,att),$chr(41),$,/Si))) { return Attack }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,def),$chr(41),$,/Si))) { return Defence }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,str),$chr(41),$,/Si))) { return Strength }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,hp),$chr(41),$,/Si))) { return HitPoints }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,range),$chr(41),$,/Si))) { return Ranged }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,pray),$chr(41),$,/Si))) { return Prayer }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,magic),$chr(41),$,/Si))) { return Magic }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,cook),$chr(41),$,/Si))) { return Cooking }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,wc),$chr(41),$,/Si))) { return WoodCutting }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,fletch),$chr(41),$,/Si))) { return Fletching }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,fish),$chr(41),$,/Si))) { return Fishing }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,fm),$chr(41),$,/Si))) { return FireMaking }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,craft),$chr(41),$,/Si))) { return Crafting }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,smith),$chr(41),$,/Si))) { return Smithing }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,mine),$chr(41),$,/Si))) { return Mining }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,herb),$chr(41),$,/Si))) { return Herblore }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,agil),$chr(41),$,/Si))) { return Agility }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,thief),$chr(41),$,/Si))) { return Thieving }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,slay),$chr(41),$,/Si))) { return Slayer }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,farm),$chr(41),$,/Si))) { return Farming }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,rc),$chr(41),$,/Si))) { return RuneCraft }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,hunt),$chr(41),$,/Si))) { return Hunter }
  if ($regex($1,$+(/^,$chr(40),$se(regEx,const),$chr(41),$,/Si))) { return Construction }
  else { return $false }
}
cntn {
  return $readini(clist.ini,colors,$1)
}


<popups>


Server
.Lusers:/lusers
.Motd:/motd
.Time:/time
Names
.#mIRC:/names #mirc
.#irchelp: /names #irchelp
.names ?:/names #$$?="Enter a channel name:"
Join
.#mIRC:/join #mirc
.#irchelp:/join #irchelp
.join ?:/join #$$?="Enter a channel to join:"
Channel
.Try double-clicking in a channel window!:
Other
.Whois ?:/whois $$?="Enter a nickname:"
.Query:/query $$?="Enter a nickname:"
.Nickname:/nick $$?="Enter your new nickname:"
.Away
..Set Away...:/away $$?="Enter your away message:"
..Set Back:/away
.List Channels:/list
-
Edit Notes:/run notepad.exe notes.txt
Quit IRC:/quit Leaving


<remote>

on *:SOCKOPEN:udc: {
  if ($sockerr) {
    if (!$window(@errors)) { .window @errors }
    echo -t @errors SockOpen Error when checking for updates: $sock(udc).wsmsg
    return
  }
  .sockwrite -n udc GET /update.txt HTTP/1.1
  .sockwrite -n udc Host: thefreebot.com $+ $crlf $+ $crlf
}
on *:SOCKREAD:udc: {
  if ($sockerr) {
    if (!$window(@errors)) { .window @errrors }
    echo -t @errors SockRead Error when checking for updates: $sock(udc).wsmsg
    return
  }
  .sockread %udc
  if ($+(*.*,$chr(124),*) !iswm %udc) { halt }
  if (($readini(Settings.ini,versions,$gettok(%udc,1,124)) < $gettok(%udc,2,124)) || (!$readini(Settings.ini,versions,$gettok(%udc,1,124)))) { .sockclose udc | .updatefile %udc }
}
on *:SOCKCLOSE:udc: {
  echo -ts [FreeBot Updater] Updates Compelted, all files up to date!
}
alias updatefile {
  .tokenize 124 $1-
  .set %udf $1
  .set %udv $2
  .set %udn $3
  .set %uds $4
  .set %udi $5
  .set %udl $6
  if ($script($1) || $alias($1)) { 
    if ($readini(Settings.ini,update,inform) && $server) { $($readini(Settings.ini,update,it),2) [FreeBot Updater] Updating $3 from $+([,$readini(Settings.ini,versions,$1),]) to $+([,$2,]) - Update: $5 - Feature disabled during update. }
    echo -ts [FreeBot Updater] Updating $3 from $+([,$readini(Settings.ini,versions,$1),]) to $+([,$2,]) - Update: $5
    .unload $iif(%uds == remote,-rs,-a) $1
  }
  else {
    if ($readini(Settings.ini,update,inform) && $server) { $($readini(Settings.ini,update,it),2) [FreeBot Updater] Adding $3 to FreeBot - Addition: $5 }
    echo -ts [FreeBot Updater] Adding $3 to FreeBot - Addition: $5
  }
  if ($exists($shortfn($+($mircdir,$6)))) { .remove $+(",$mircdir,$6,") }
  .sockopen fbud thefreebot.com 80
}
on *:SOCKOPEN:fbud: {
  if ($sockerr) {
    if (!$window(@errors)) { .window @errors }
    echo -t @errors SockOpen Error when checking for updates: $sock(fbud).wsmsg
    return
  }
  .set %fbud_read $false
  .sockwrite -n fbud GET /files/ $+ %udf HTTP/1.1
  .sockwrite -n fbud Host: thefreebot.com $+ $crlf $+ $crlf
}
on *:SOCKREAD:fbud: {
  if ($sockerr) {
    if (!$window(@errors)) { .window @errors }
    echo -t @errors SockOpen Error when checking for updates: $sock(fbud).wsmsg
    return
  }
  .sockread %fbud
  if (!%fbud) { halt }
  if (!%fbud_read) { noop }
  else { .write $+(",$mircdir,%udl,") %fbud }
  if (%fbud == Content-Type: text/plain) { .set %fbud_read $true }
}
on *:SOCKCLOSE:fbud: {
  if (%uds != ext) { .load $iif(%uds == remote,-rs,-a) %udf }
  .writeini -n Settings.ini versions %udf %udv
  if ($readini(Settigns.ini,update,inform) && $server) { $($readini(Settings.ini,update,it),2) [FreeBot Updater] Update of %udn completed, commands re-enabled. }
  echo -ts [FreeBot Updater] Update of %udn  to $+([,%udv,]) completed!
  .sockopen udc thefreebot.com 80
}
on *:START: {
  echo -ts [FreeBot Updater] Running Updater on Startup...
  .sockopen udc thefreebot.com 80


<users>

1000:*!admin@FreeBot.Creator


<variables>

%udc config.mrc|1.105|Bot Configuration|remote|Added access level management|config.mrc
%udf config.mrc
%udv 1.105
%udn Bot Configuration
%uds remote
%udi Added access level management
%udl config.mrc
%fbud_read $true
%fbud }
%sr
%RSStats
%RSSsread.458186 3
%RSSsskill.458186 Overall
%RSSsrank.458186
%RSSsread.655747 3
%RSSsskill.655747 Overall
%RSSsrank.655747
%RSSsread.588240 3
%RSSsskill.588240 Overall
%RSSsrank.588240
%RSSsread.115680 3
%RSSsskill.115680 Overall
%RSSsrank.115680
%bl