alias _notice .notice $1 $high($hi($nick),$2-)

alias money return $readini(user.ini,$1,money)

alias mhp return $readini(user.ini,$1,mhp)

alias lvl return $readini(user.ini,$1,lvl) 

alias accuracy return $readini(user.ini,$1,accuracy)

alias speed return $readini(user.ini,$1,speed)

alias toughness return $readini(user.ini,$1,toughness)

alias hp return $readini(user.ini,$1,hp)

alias exp return $readini(user.ini,$1,exp)

alias nexp return $readini(user.ini,$1,nexp)

alias hi return $readini(user.ini,$1,high)

alias _msg .msg $1 $high($hi($nick),$2-)

alias heal {
  if ($readini(user.ini,$1,register)) {
    writeini user.ini $1 hp $readini(user.ini,$1,mhp)
  }
}

alias high {
  return $2-
  if ($1 > 0) {
    if ($1 <= 5) var %k1 = 03,%k2 = 09
    elseif ($1 <= 10) var %k1 = 10,%k2 = 11
    elseif ($1 <= 20) var %k1 = 11,%k2 = 12
    elseif ($1 <= 40) var %k1 = 12,%k2 = 06,%bold = $true
    elseif ($1 <= 60) var %k1 = 06,%k2 = 13,%bold = $true
    elseif ($1 <= 80) var %k1 = 13,%k2 = 07,%bold = $true,%und = $true
    elseif ($1 <= 100) var %k1 = 07,%k2 = 04,%bold = $true,%und = $true
    var %numtok = 1,%h = high. $+ $r(a,z) $+ $ticks
    while ($gettok($2-,%numtok,32)) {
      var %len = 1,%_word = $gettok($2-,%numtok,32),%word
      if (!%bold) || (!%und) var %b = $iif(%bold,$r(1,0)),%u = $iif(%und,$r(1,0))
      if (!%s) var %s = $r(1,2)
      while ($mid(%_word,%len,1)) {
        var %c = $($+(%,k,%s),2)
        var %word = %word $+ $iif(%u,) $+ $iif(%b,) $+ $+($( $+ %c $+ $chr(44) $+ 01,2),$mid(%_word,%len,1)) $+ $iif(%u,) $+ $iif(%b,)
        inc %len
        var %s = $iif(%s == 1,2,1)
        if (%bold) var %b = $iif(%b,0,1)
        if (%und) var %u = $iif(%u,0,1)
      }
      hadd -m %h msg $iif($hget(%h,msg),$hget(%h,msg)) %word
      inc %numtok
    }
  }
  .timer $+ %h 1 1 hfree -w high.*
  return $iif($hget(%h,msg),$hget(%h,msg),$2-) 
}

; /loan <nick> <money>
alias loan {
  if ($readini(user.ini,$1,register)) {
    if (!$timer(loan_ $+ $1)) {
      var %pot = $round($calc($readini(user.ini,bank,pot) * .45),0),%money = $round($calc($2 + $readini(user.ini,$1,money)),0)
      if ($2 isnum $+(1-,%pot)) { 
        writeini user.ini $1 money %money
        writeini user.ini bank pot $calc($readini(user.ini,bank,pot) - $2)
        .timerloan_ $+ $1 1 $round($calc(%money * 45),0) collect_loan $1 $2   
        return [BANK] You're now granted a $chr(36) $+ $2 loan. Must be paid within $+(,$round($calc($timer(loan_ $+ $1).secs / 60),0),) minutes! 
      }
      else { 
        if ($2 > %pot) return [BANK] Too large of a request
        else return [BANK] invalid parameters
      }
    }
    else return [BANK] $timer(loan_ $+ $1).secs $+ s left until the $chr(36) $+ $gettok($timer(loan_ $+ $1).com,3,32) loan is due
  }
}

alias collect_loan {
  if ($readini(user.ini,$1,register)) {
    if ($timer(loan_ $+ $1)) .timerloan_ $+ $1 off
    if ($readini(user.ini,$1,money) >= $2) {
      var %money = $calc($readini(user.ini,$1,money) - $2),%pot = $calc($readini(user.ini,bank,pot) + $2)
      writeini user.ini $1 money %money
      writeini user.ini bank pot %pot
      return [BANK] Loan of $chr(36) $+ $2 was collected!
    }
    else {
      writeini user.ini $1 mhp 0
      end_check $1
      return * $1 could not afford to pay his loan......
    }
  }
}

alias check_count {
  if ($+(%,$1,_count) == $null) set % $+ $1 $+ _count $nick($1,0)
  if ($nick($1,0) > $($+(%,$1,_count),2)) set % $+ $1 $+ _count $nick($1,0)
}

alias laylow {
  if ($readini(user.ini,$1,fight)) {
    set %fighting $remtok(%fighting,$1,1,32)
    writeini user.ini $1 fight $false
    _msg %chan * $1 ducks into dark alleyways out of sight...
    heal $1 
    mode %chan -v $1
  }
}

on *:join:#:{
  if (!$readini(user.ini,$nick,register)) { 
    if (!$readini(user.ini,$nick,fight)) _notice $nick Welcome to StreetWars. `register to join the slaughter
    else mode $chan +v $nick
  }
  check_count $chan
}

on *:nick:{ 
  if ($readini(user.ini,$nick,fight)) {
    writeini user.ini $1 fight $false
    set %fighting $remtok(%fighting,$nick,32)
  }
}

on *:quit:{
  if ($readini(user.ini,$nick,fight)) { 
    writeini user.ini $1 fight $false
    set %fighting $remtok(%fighting,$nick,32)
  }
}

alias callout {
  if ($timer(callout_ $+ $1)) .timercallout_ $+ $1 off
  if ($3 == fail) { 
    if ($(%callout_ $+ $1,2)) unset %callout_ $+ $1
    var %getexp = $ceil($calc($readini(user.ini,$1,exp) * $($+(.,$r(20,50)))))
    var %addexp = $ceil($calc($readini(user.ini,$2,exp) + %getexp))
    var %remexp = $ceil($calc($readini(user.ini,$1,exp) - %getexp))
    writeini user.ini $1 exp %remexp
    writeini user.ini $2 exp %addexp
    _msg %chan [CALL OUT] $1 has 04failed to respond. $2 gains $+(04,%getexp,) of $1 $+ 's exp 
    lvlcheck $2
  }
  elseif ($3 == pass) {
    if ($(%callout_ $+ $1,2)) unset %callout_ $+ $1
    var %getexp = $ceil($calc($readini(user.ini,$2,exp) * $($+(.,$r(10,30)))))
    var %addexp = $ceil($calc($readini(user.ini,$1,exp) + %getexp))
    var %remexp = $ceil($calc($readini(user.ini,$2,exp) - %getexp))
    writeini user.ini $1 exp %addexp
    writeini user.ini $2 exp %remexp
    _msg $chan [CALL OUT] $1 has 03responded to the callout by $2 $+ . $1 gains $+(04,%getexp,) of $2 $+ 's exp 
    lvlcheck $2
  }
}

on *:text:*:#:{
  if ($+(%,$nick,_flood)) inc $+(%,$nick,_flood)
  else var $+(%,$nick,_flood) 1
  $+(.timer,$nick,_flood) 1 10 unset $+(%,$nick,_flood)
  if ($($+(%,$nick,_flood),2) >= 60) {
    .ignore -pcntikdu180 $address($nick,2) 
    unset $+(%,$nick,_flood)
    if ($timer($+($nick,_flood))) $+(.timer,$nick,_flood) off
    _notice $nick Now ignored for 3 minutes - flooding 
  }
  if ($readini(user.ini,$nick,register)) {
    if ($readini(user.ini,$nick,fight)) {
      if ($1 == `shoot) {
        if ($readini(user.ini,$2,fight)) {
          if ($readini(user.ini,$nick,cgun)) {
            if (!$timer(gun_ $+ $nick)) { 
              if (!$timer(wgun_ $+ $nick)) {
                if ($2 != $nick) {          
                  var %speed = $readini(user.ini,$nick,speed)
                  var %time = $calc($r($calc(%speed / 4),$calc(%speed / 8)) - %speed)
                  _msg %chan [!] $nick prepares to shoot $2 $+ ...
                  .timergun_ $+ $nick 1 $iif(%time > 1,%time,1) gun $nick $2 $readini(user.ini,$nick,cgun)
                }
              }
              else _notice $nick $timer(wgun_ $+ $nick).secs seconds left until you can attack again
            }
            else _notice $nick $timer(gun_ $+ $nick).secs seconds left until impact
          }
          else _notice $nick You're not carrying a gun
        }
        else _notice $nick $2 is not in combat
      }
      if ($1 == `shank) {
        if ($readini(user.ini,$2,fight)) {
          if ($readini(user.ini,$nick,cshank)) {
            if (!$timer(shank_ $+ $nick)) {
              if (!$timer(wshank_ $+ $nick)) {
                if ($2 != $nick) {
                  var %speed = $readini(user.ini,$nick,speed)
                  var %time = $calc($r($calc(%speed / 4),$calc(%speed / 8)) - %speed)
                  _msg %chan [!] $nick prepares to shank $2 $+ ...
                  .timershank_ $+ $nick 1 $iif(%time > 1,%time,1) shank $nick $2 $readini(user.ini,$nick,cshank)
                }
              }
              else _notice $nick $timer(wshank_ $+ $nick).secs seconds left until you can attack again
            }
            else _notice $nick $timer(shank_ $+ $nick).secs seconds left until impact 
          }
          else _notice $nick You're not carrying a shank
        }
        else _notice $nick $2 is not in combat
      }
      if ($1 == `punch) || ($1 == `kick) { 
        if (!$timer(whit_ $+ $nick)) {
          if (!$timer(hit_ $+ $nick)) {
            _msg %chan [!] $nick cocks back his $right($1,-1) $+ .. 
            .timerhit_ $+ $nick 1 1 shank $nick $2 $right($1,-1) 
          }
          else _notice $nick $timer(hit_ $+ $nick).secs seconds left until impact
        }
        else _notice $nick $timer(whit_ $+ $nick).secs seconds left until you can hit again
      }
      if ($1 == `laylow) { _msg $chan * $nick is preparing to run away... | .timerrun. $+ $nick 1 10 laylow $nick | .timernofight. $+ $nick 1 20 _notice $nick You can fight again }
      if ($1 == `grab) {
        if ($timer(run. $+ $2)) {
          var %x = 2,%y = $timer(run. $+ $2).secs
          .timerrun. $+ $2 off
          _msg $chan * $nick grabs ahold of $2 to prevent him from running..
          if (%x == 1) .timer $+ $ticks 1 2 _msg $chan * $nick pulls $2 back onto the streets! 
          elseif (%x == 2) { .timer $+ $ticks 1 2 _msg $chan * $2 struggles out of $nick $+ 's grip! | .timerrun. $+ $2 1 %y laylow $2 }
        }
        else _notice $nick $iif($2,Invalid target,Insufficient parameters)
      }
      if ($1 == `callout) {
        if ($readini(user.ini,$2,register)) {
          if (!$readini(user.ini,$2,fight)) {
            if (!$timer(callout_ $+ $2)) {
              .timercallout_ $+ $2 1 10 callout $2 $nick fail
              set %callout_ $+ $2 $nick
              _msg %chan [CALL OUT] $2 is being called out by $nick $+ . $2 has 0410 seconds to `fight
            }
            else _notice $nick $timer(callout_ $+ $2).secs seconds until $nick will officially be a pussy
          }
          else _notice $nick $2 is already in combat
        }
        else _notice $nick $2 is not registered
      }
    }
    if ($1 == `fighting) _msg %chan Currently Fighting: $iif(%fighting,%fighting,no one..)
    if ($1 == `die) { 
      var %drugs = $readini(user.ini,$nick,drugs),%ndrug = $numtok(%y,32)
      while (%ndrug) {
        writeini user.ini bank $gettok(%drugs,%ndrug,32) $calc($readini(user.ini,bank,$gettok(%drugs,%ndrug,32)) + $readini(user.ini,$nick,$gettok(%drugs,%ndrug,32)))
        dec %ndrug
      }
      var %money = $readini(user.ini,$nick,money),%act = $readini(user.ini,$nick,bank),%b_mon = $calc(%money + $readini(user.ini,bank,%act))
      remini user.ini bank %act 
      writeini user.ini bank pot $calc($readini(user.ini,bank,pot) + %b_mon)
      remini user.ini $nick 
      $iif($nick isin %fighting,set %fighting $remtok(%fighting,$nick,32)) 
      mode $chan -v $nick 
      _notice $nick You're now dead to the game 
    }
    if ($1 == `use) { 
      if (!$timer(overdose_ $+ $nick)) {
        if ($readini(user.ini,$nick,$2)) {
          drug $nick $2 $3
        }
        else _notice $nick Invalid drug
      }
      else _notice $nick [OVERDOSE] $timer(overdose_ $+ $nick).secs seconds until you can function normally again
    }
    if ($1 == `stats) {
      if ($readini(user.ini,$2,register)) { 
        _notice $nick [[STATS for $2 $+ ]] [Rank: $readini(user.ini,$2,rank) $+ ] [Health: $+($hp($2),/,$mhp($2)) $+ ] [Level: $readini(user.ini,$2,lvl) $+ ] [Wins: $+($readini(user.ini,$2,wins),/,$readini(user.ini,$2,losses)) $+ ] [Exp: $+($exp($2),/,$nexp($2)) $+ ]
        _notice $nick [[STATS continued]] [Money: $chr(36) $+ $money($2) $+ ] [Toughness: $toughness($2) $+ ] [Speed: $speed($2) $+ ] [Accuracy: $accuracy($2) $+ ]
        if (all isin $3) _notice $nick [[STATS cont'd again]] [Current Shank: $readini(user.ini,$2,cshank) $+ ] [Current Gun: $readini(user.ini,$2,cgun) $+ ]
      }
      elseif ($readini(user.ini,$nick,register)) { 
        _notice $nick [[STATS]] [Rank: $readini(user.ini,$nick,rank) $+ ] [Health: $+($hp($nick),/,$mhp($nick)) $+ ] [Level: $readini(user.ini,$nick,lvl) $+ ] [Wins: $+($readini(user.ini,$nick,wins),/,$readini(user.ini,$nick,losses)) $+ ] [Exp: $+($exp($nick),/,$nexp($nick)) $+ ]
        _notice $nick [[STATS continued]] [Money: $chr(36) $+ $money($nick) $+ ] [Toughness: $toughness($nick) $+ ] [Speed: $speed($nick) $+ ] [Accuracy: $accuracy($nick) $+ ] 
        if (all isin $2-) _notice $nick [[STATS cont'd again]] [Current Shank: $iif($readini(user.ini,$nick,cshank),$v1,N/A) $+ ] [Current Gun: $iif($readini(user.ini,$nick,cgun),$v1,N/A) $+ ]
      }
    }
    if ($1 == `chg) {
      if (gun isin $2) {
        if ($istok($readini(user.ini,$nick,guns),$3,32)) {
          writeini user.ini $nick cgun $3
          _notice $nick Current gun: $3
        }
        else _notice $nick You don't have a $3
      }
      elseif (shank isin $2) {
        if ($istok($readini(user.ini,$nick,shanks),$3,32)) {
          writeini user.ini $nick cshank $3
          _notice $nick Current shank: $3
        }
        else _notice $nick You don't have a $3
      }
      else _notice $nick Syntax: `chg <shank|gun> <item>
    }
    if ($1 == `heal) { 
      if (!$timer(overdose_ $+ $nick)) {
        if (!$readini(user.ini,$nick,fight)) { 
          heal $nick 
          _notice $nick You're healed 
        } 
      }
      else _notice $nick [OVERDOSE] $timer(overdose_ $+ $nick).secs seconds until you can function normally again
    }
    if ($1 == `fight) {
      if (!$timer(overdose_ $+ $nick)) {
        if (!$istok(%fighting,$nick,32)) && (!$readini(user.ini,$nick,fight)) {
          if (!$timer(nofight. $+ $nick)) { 
            var %hp = $hp($nick),%mhp = $mhp($nick)
            if (%hp > $calc(%mhp * .25)) { 
              var %x = % $+ callout_name,%x = $replace(%x,name,$nick)
              $iif($(%x,2),callout $nick $(%x,2) pass) 
              unset %x
              writeini user.ini $nick fight $true
              set %fighting %fighting $nick
              _msg $chan * $nick steps his hardcore ass onto the streets
              mode $chan +v $nick
              lvlcheck $nick
            }
            else _notice $nick Health is below 25%!
          }
          else _notice $nick $timer(nofight. $+ $nick).secs seconds until you can fight again
        }
      }
      else _notice $nick [OVERDOSE] $timer(overdose_ $+ $nick).secs seconds until you can function normally again
    }
    if ($1 == `shop) {
      if ($ini(weapons.ini,$2)) {
        var %num = 1,%s = $iif($2 == drugs,adv,dmg),%weapons
        while ($ini(weapons.ini,$2,%num)) {
          var %wep = $ini(weapons.ini,$2,%num),%price = $gettok($readini(weapons.ini,$2,%wep),1,32),%damage = $gettok($readini(weapons.ini,$2,%wep),2,32)
          var %mid = $iif($2 == guns,$+(:,$gettok($readini(weapons.ini,$2,%wep),3,32),:),:)
          var %weapons = %weapons $ini(weapons.ini,$2,%num) ( $+ $+($chr(36),%price,%mid,%damage,%s) $+ ) $+ $iif(%num != $ini(weapons.ini,$2,0),;)
          inc %num
        }
        _notice $nick [Black Market] $2 list: %weapons
      }
      else _notice $nick [Black Market] Catagories: guns, shanks, and drugs - `buy <catagory> <item>
    }
    if ($1 == `hp) {
      if ($readini(user.ini,$2,register)) _notice $nick HP for $2 $+ : $+($hp($2),/,$mhp($2))
      elseif ($readini(user.ini,$nick,register)) _notice $nick HP: $+($hp($nick),/,$mhp($nick))
    }
    if ($1 == `record) {
      if ($2 ischan) _msg %chan Channel Record: $($+(%,$2,_count),2) people
      elseif ($readini(user.ini,$2,register)) _notice $nick Record for $2 $+ : $+($readini(user.ini,$2,wins),/,$calc($readini(user.ini,$2,wins) + $readini(user.ini,$2,losses)))
      elseif ($readini(user.ini,$nick,register)) _notice $nick Record: $+($readini(user.ini,$nick,wins),/,$calc($readini(user.ini,$nick,wins) + $readini(user.ini,$nick,losses)))
    }
    if ($1 == `ammo) {
      if ($readini(user.ini,$nick,cgun)) {
        var %x = $readini(user.ini,$nick,cgun)
        if ($readini(user.ini,$nick,ammo_ $+ %x)) _notice $nick Ammo for %x $+ : $readini(user.ini,$nick,ammo_ $+ %x) 
      }
      else _notice $nick You're not carrying a gun
    }
    if ($1 == `drugs) { 
      if ($2 == bank) {
        var %x = $readini(user.ini,bank,drugs),%y = $numtok(%x,32),%drugs
        while (%y) {
          var %drugs = %drugs $gettok(%x,%y,32) $+([,$readini(user.ini,bank,$gettok(%x,%y,32)),g])
          dec %y
        }
        _notice $nick [NOT BANK] %drugs
      }
      elseif ($readini(user.ini,$2,register)) && ($readini(user.ini,$2,drugs)) {
        var %x = $readini(user.ini,$2,drugs),%y = $numtok(%x,32),%drugs
        while (%y) {
          var %drugs = %drugs $gettok(%x,%y,32) $+([,$readini(user.ini,$2,$gettok(%x,%y,32)),g])
          dec %y
        }
        _notice $nick $2 $+ 's Drug supply: %drugs
      }
      elseif ($readini(user.ini,$nick,register)) && ($readini(user.ini,$nick,drugs)) {
        var %x = $readini(user.ini,$nick,drugs),%y = $numtok(%x,32),%drugs
        while (%y) {
          var %drugs = %drugs $gettok(%x,%y,32) $+([,$readini(user.ini,$nick,$gettok(%x,%y,32)),g])
          dec %y
        }
        _notice $nick Your Drug supply: %drugs
      }
    }
    if ($1 == `tolerence) {
      if ($readini(user.ini,$2,tolerence)) && ($readini(user.ini,$2,register)) _notice $nick $2 $+ 's Tolerence: $readini(user.ini,$2,tolerence)
      elseif ($readini(user.ini,$nick,register)) && ($readini(user.ini,$nick,tolerence)) _notice $nick Your Tolerence: $readini(user.ini,$nick,tolerence)
    }
    if ($1 == `high) {
      if ($readini(user.ini,$2,high)) && ($readini(user.ini,$2,register)) _notice $nick $2 $+ 's High: $readini(user.ini,$2,high) - $timer(high_ $+ $2).secs seconds left
      elseif ($readini(user.ini,$nick,register)) && ($readini(user.ini,$nick,high)) _notice $nick Your High: $readini(user.ini,$nick,high) - $timer(high_ $+ $nick).secs seconds left
    }
    if ($1 == `guns) {
      if ($readini(user.ini,$2,register)) && ($readini(user.ini,$2,guns)) _notice $nick Guns for $2 $+ : $readini(user.ini,$2,guns)
      elseif ($readini(user.ini,$nick,register)) && ($readini(user.ini,$nick,guns)) _notice $nick Guns: $readini(user.ini,$nick,guns)
    }
    if ($1 == `shanks) {
      if ($readini(user.ini,$2,register)) && ($readini(user.ini,$2,shanks)) _notice $nick Shanks for $2 $+ : $readini(user.ini,$2,shanks)
      elseif ($readini(user.ini,$nick,register)) && ($readini(user.ini,$nick,shanks)) _notice $nick Shanks: $readini(user.ini,$nick,shanks)
    }
    if ($1 == `money) {
      if ($readini(user.ini,$2,register)) _notice $nick Money for $2 $+ : $chr(36) $+ $readini(user.ini,$2,money)
      elseif ($readini(user.ini,$nick,register)) _notice $nick Money: $chr(36) $+ $readini(user.ini,$nick,money)
    }
    if ($1 == `bank) {
      if (p isin $2) _notice $nick [BANK] Current pot is: $chr(36) $+ $bytes($readini(user.ini,bank,pot),bd)
      else _notice $nick [BANK] Welcome account [ $+ $readini(user.ini,$nick,bank) $+ ]. You have $+($chr(36),$bytes($readini(user.ini,bank,$readini(user.ini,$nick,bank)),bd)) stored
    }
    if ($1 == `give) {
      if ($readini(user.ini,$nick,$2)) {
        var %x = $readini(user.ini,$nick,$2),%y = $iif($4 isnum $+(1-,%x),$4,1),%xy = $calc(%x - %y),%a = $readini(user.ini,$3,$2)
        writeini user.ini $nick $2 %xy
        if ($istok($readini(user.ini,bank,drugs),$2,32)) { 
          var %drugs = $readini(user.ini,$3,drugs) 
          if (!$istok(%drugs,$2,32)) var %drugs = %drugs $2
          writeini user.ini $3 drugs %drugs
          writeini user.ini $3 $2 $calc(%a + %y) 
        }
        _notice $3 [?] $nick just gave you 03 $+ %y  $+ $2
        _notice $nick [?] $3 received your 03 $+ %y  $+ $2
      }
      else _notice $nick Syntax: `give <item> <target> [amount]
    }
    if ($1 == `deposit) {
      if ($2) {
        if ($left($2,1) isalpha) {
          if ($ini(user.ini,bank,$2)) {
            if ($3 isnum $+(1-,$readini(user.ini,$nick,money))) {
              var %money = $calc($readini(user.ini,$nick,money) - $3),%act = $2
              if (%money > 0) {
                writeini user.ini bank %act $calc($readini(user.ini,bank,%act) + $3)
                writeini user.ini $nick money %money  
                _notice $nick [BANK] Added $chr(36) $+ $bytes($3,bd) to $2
              }
            }
            else _notice $nick [BANK] Sorry, you do not have enough money
          }
          else _notice $nick [BANK] Sorry, $2 is an invalid bank account
        }
        else {
          if ($ini(user.ini,bank,$readini(user.ini,$nick,bank))) {
            if ($2 isnum $+(1-,$readini(user.ini,$nick,money))) {
              var %money = $calc($readini(user.ini,$nick,money) - $2),%act = $readini(user.ini,$nick,bank)
              if (%money > 0) {
                writeini user.ini bank $readini(user.ini,$nick,bank) $calc($readini(user.ini,bank,%act) + $2) 
                writeini user.ini $nick money %money   
                _notice $nick [BANK] Added $chr(36) $+ $bytes($2,bd) to your account
              }
            }
            else _notice $nick [BANK] Sorry, that is an invalid amount of money
          }
          else _notice $nick [BANK] Sorry, you do not have an account
        }
      }
      else _notice $nick Syntax: `deposit [account] money
    }
    if ($1 == `withdraw) {
      if ($ini(user.ini,bank,$readini(user.ini,$nick,bank))) {
        if ($2 isnum $+(1-,$readini(user.ini,bank,$readini(user.ini,$nick,bank)))) {
          var %money = $calc($readini(user.ini,$nick,money) + $2),%act = $readini(user.ini,$nick,bank)
          writeini user.ini bank %act $calc($readini(user.ini,bank,%act) - $2)
          writeini user.ini $nick money %money
          _notice $nick [BANK] Withdrew $chr(36) $+ $bytes($2,bd) 
        }
        else _notice $nick [BANK] Sorry, that is an invalid amount of money
      }
      else _notice $nick [BANK] Sorry, you do not have an account
    }
    if ($1 == `rank) {
      if ($readini(user.ini,$2,register)) _notice $nick $+($2,'s) rank: $readini(user.ini,$2,rank)
      elseif ($readini(user.ini,$nick,register)) _notice $nick Rank: $readini(user.ini,$nick,rank)
    }
    if ($1 == `loan) _notice $nick $loan($nick,$2)
    if ($1 == `payloan) {
      if ($timer(loan_ $+ $nick)) {
        var %money = $gettok($timer(loan_ $+ $nick).com,3,32)
        .timerloan_ $+ $nick off
        _notice $nick $collect_loan($nick,%money)
      }
    }
    if ($1 == `buy) {
      if ($ini(weapons.ini,$2)) {
        var %money = $readini(user.ini,$nick,money),%price = $gettok($readini(weapons.ini,$2,$3),1,32)
        if ($2 == guns) {
          if ($readini(weapons.ini,$2,$3)) {
            if (%money >= %price) {
              writeini user.ini $nick money $calc(%money - %price)
              writeini user.ini bank pot $calc($readini(user.ini,bank,pot) + %price)
              var %guns = $readini(user.ini,$nick,guns),%ammo = $readini(user.ini,$nick,$+(ammo_,$3))
              if (!$istok(%guns,$3,32)) {
                var %x = 1
                writeini user.ini $nick guns %guns $3   
                writeini user.ini $nick $+(damage_,$3) $gettok($readini(weapons.ini,$2,$3),3,32)
              }
              writeini user.ini $nick $+(ammo_,$3) $iif(%x,$gettok($readini(weapons.ini,$2,$3),2,32),$calc(%ammo + $gettok($readini(weapons.ini,$2,$3),2,32))) 
              _notice $nick [Black Market] Purchased $3 $iif(!%x,ammo) You have $+($chr(36),$bytes($readini(user.ini,$nick,money),bd)) left. 
            }
            else _notice $nick [Black Market] $chr(36) $+ $abs($calc(%money - %price)) short from buying $3 $+ !
          }
          else _notice $nick [Black Market] Invalid item
        }
        elseif ($2 == shanks) {
          if ($readini(weapons.ini,$2,$3)) {
            if (%money >= %price) {
              var %shanks = $readini(user.ini,$nick,shanks)
              if (!$istok(%shanks,$3,32)) {
                writeini user.ini $nick money $calc(%money - %price)
                writeini user.ini bank pot $calc($readini(user.ini,bank,pot) + %price)
                writeini user.ini $nick shanks %shanks $3
                writeini user.ini $nick $+(damage_,$3) $gettok($readini(weapons.ini,$2,$3),2,32)
                _notice $nick [Black Market] Purchased $3 $+ . You have $+($chr(36),$readini(user.ini,$nick,money)) left.
              }
              else _notice $nick [Black Market] You already have $3 $+ !
            }
            else _notice $nick [Black Market] $chr(36) $+ $abs($calc(%money - %price)) short from buying $3 $+ !
          }
          else _notice $nick [Black Market] Invalid item
        }
        elseif ($2 == drugs) {
          if ($readini(weapons.ini,$2,$3)) {
            var %4 = $iif($4 isnum 1-,$4,1) 
            var %price = $calc(%price * %4)
            if (%money >= %price) {
              if ($readini(user.ini,bank,$3) >= %4) {
                writeini user.ini $nick money $calc(%money - %price)
                writeini user.ini bank pot $calc($readini(user.ini,bank,pot) + %price)
                var %drugs = $readini(user.ini,$nick,drugs),%amount = $readini(user.ini,$nick,$3),%bank = $readini(user.ini,bank,$3)
                if (!$istok(%drugs,$3,32)) writeini user.ini $nick drugs %drugs $3
                writeini user.ini $nick $3 $calc(%amount + %4)
                writeini user.ini bank $3 $calc(%bank - %4)
                _notice $nick [Black Market] You just bought %4 gram(s) of $3 for $chr(36) $+ %price
              }
              else _notice $nick [Black Market] Sorry $nick $+ , we're entirely out of $3
            }
            else _notice $nick [Black Market] $chr(36) $+ $abs($calc(%money - %price)) short from buying %4 gram(s) of $3 $+ !
          }
          else _notice $nick [Black Market] Invalid drug
        }
      }
      else _notice $nick [Black Market] Catagories: guns, shanks, and drugs - `buy <catagory> <item>
    }
  }
  if ($1 == `register) { 
    if (!$readini(user.ini,$nick,register)) {
      var %bankaccount = $+($r(a,z),$r(1000,9999))
      if (!$ini(user.ini,bank,%bankaccount)) { 
        var %money = $calc($readini(user.ini,bank,pot) * .01)
        var %money = $r($calc(%money - 5),$calc(%money + 5))
        if (%money < 0) var %money = 0
        writeini user.ini bank pot $calc($readini(user.ini,bank,pot) + (%money * 2))
        writeini user.ini $nick register $true
        writeini user.ini $nick fight $false
        writeini user.ini $nick money %money
        writeini user.ini $nick fights 0
        writeini user.ini $nick rank punk
        writeini user.ini $nick hp 0
        writeini user.ini $nick mhp $r(100,200)
        writeini user.ini $nick lvl 1
        writeini user.ini $nick exp 0
        writeini user.ini $nick nexp 100
        writeini user.ini $nick accuracy $r(4,10)
        writeini user.ini $nick speed $r(4,10)
        writeini user.ini $nick toughness $r(4,10)
        writeini user.ini $nick wins 0
        writeini user.ini $nick bank %bankaccount
        writeini user.ini bank %bankaccount 0
        writeini user.ini $nick high 0
        _notice $nick You're now ready to hit the streets like a real nigger!
      }
      else _notice $nick * Error. Please try again..
    }
    else _notice $nick * Error: You're already registered
  }
}

; /gun <nickname> <target> <weapon>
alias gun {
  if ($readini(user.ini,$1,register)) {
    if ($readini(user.ini,$1,fight)) {
      if ($1 != $2) {
        if ($readini(user.ini,$2,fight)) {
          if ($ini(weapons.ini,guns,$3)) {
            if ($istok($readini(user.ini,$1,guns),$3,32) == $true) {
              if ($readini(user.ini,$1,$+(ammo_,$3)) > 0) {
                var %accuracy = $readini(user.ini,$1,accuracy),%speed = $readini(user.ini,$2,speed)
                var %hit = $calc(%speed / %accuracy)
                if (%hit <= 1) { 
                  set %base.power $gettok($readini(weapons.ini,guns,$3),2,32)
                  set %defense.power $readini(user.ini,$2,toughness)
                  set %attack.power $calc(%base.power + $r(5,25))
                  set %Damage $calc(%attack.power + (%base.power - %defense.power))
                  var %hp = $calc($readini(user.ini,$2,hp) - %Damage)
                  if (%Damage < 1) { set %Damage 1 }
                  set %ExpGain $round($calc(%damage * .75),0)
                  $iif(%expgain < 0,set %expgain 0)
                  if ($gettok($readini(weapons.ini,guns,$3),4-,32)) var %msg = $gettok($readini(weapons.ini,guns,$3),4-,32)
                  else var %msg = &n1 pops a cap in &n2's ass, causing &dmg! &n1 gains %expgain exp!
                  writeini user.ini $2 hp $iif(%hp > 0,%hp,0)
                  writeini user.ini $1 exp $calc($readini(user.ini,$1,exp) + %ExpGain)
                  writeini user.ini $1 ammo_ $+ $3 $Calc($readini(user.ini,$1,ammo_ $+ $3) - 1)
                  msg %chan [!] $replace(%msg,&n1,$1,&n2,$2,&dmg,%damage,&exp,%expgain)
                  lvlcheck $1
                  DeadCheck $1 $2 %damage 
                  .timerwgun_ $+ $1 1 5 _notice $1 You can now drop niggas again
                }
                else { 
                  writeini user.ini $1 ammo_ $+ $3 $Calc($readini(user.ini,$1,ammo_ $+ $3) - 1)
                  _msg %chan [!] $nick misses $2 $+ !   
                  .timerwgun_ $+ $1 1 5 _notice $1 you can now drop niggas again
                }
              }
              else _notice $1 You do not have enough $3 ammo
            }
            else _notice $1 You don't have a $3
          }
          else _notice $1 Invalid weapon choice
        }
        else _notice $1 $2 is not in combat
      }
      else _notice $1 Do not attack yourself
    }
    else _notice $1 You're not in combat
  }
  else _notice $1 You're not registered
}

; /shank <nickname> <target> <weapon>
alias shank {
  if ($readini(user.ini,$1,register)) {
    if ($readini(user.ini,$1,fight)) {
      if ($1 != $2) {
        if ($readini(user.ini,$2,fight)) {
          if ($ini(weapons.ini,shanks,$3)) || ($3 == kick) || ($3 == punch) {
            if ($istok($readini(user.ini,$1,shanks),$3,32) == $true) || ($3 == kick) || ($3 == punch) {
              var %accuracy = $readini(user.ini,$1,accuracy),%speed = $readini(user.ini,$2,speed)
              var %hit = $calc(%speed / %accuracy)
              if (%hit <= 1) { 
                if ($3 != kick) && ($3 != punch) set %base.power $gettok($readini(weapons.ini,shanks,$3),2,32)
                else set %base.power $iif($3 == punch,4,5)
                set %ExpGain $r(5,35)
                set %defense.power $readini(user.ini,$2,toughness)
                set %attack.power $calc(%base.power + $r(5,10))
                set %Damage $calc(%attack.power + (%base.power - %defense.power))
                if (%Damage < 1) { set %Damage 1 }
                if ($gettok($readini(weapons.ini,shanks,$3),3-,32)) var %msg = $gettok($readini(weapons.ini,shanks,$3),3-,32)
                else var %msg = &n1 shanks &n2's ass, causing &dmg damage! &n1 gains %expgain exp!
                writeini user.ini $2 hp $calc($readini(user.ini,$2,hp) - %Damage)
                writeini user.ini $1 exp $calc($readini(user.ini,$1,exp) + %ExpGain)
                _msg %chan [!] $replace(%msg,&n1,$1,&n2,$2,&dmg,%damage,&exp,%expgain)
                lvlcheck $1
                deadcheck $1 $2 %damage
                if ($3 == punch) || ($3 == kick) var %pk = $true
                .timer $+ $iif(%pk,whit_,wshank_) $+ $1 1 2 _notice $1 You can now $iif(%pk,hit,shank) bitches again
              }
              else { 
                _msg %chan [!] $1 misses $2 $+ !   
                .timer $+ $iif(%pk,whit_,wshank_) $+ $1 1 2 _notice $1 you can now $iif(%pk,hit,shank) bitches again
              }
            }
            else _notice $1 You don't have a $3
          }
          else _notice $1 Invalid weapon choice
        }
        else _notice $1 $2 is not in combat
      }
      else _notice $1 Do not attack yourself
    }
    else _notice $1 You're not in combat
  }
  else _notice $1 You're not registered
}

; /drug <nickname> <drug> [amount]
alias drug {
  if ($readini(user.ini,$1,register)) {
    if ($ini(weapons.ini,drugs,$2)) {
      if ($istok($readini(user.ini,$1,drugs),$2,32)) { 
        if ($timer(high_ $+ $1 $+ _ $+ $2)) { var %time = $timer(high_ $+ $1 $+ _ $+ $2).secs | .timerhigh_ $+ $1 $+ _ $+ $2 off }
        var %3 = $iif($3 isnum,$3,1)
        var %adv = $calc($gettok($readini(weapons.ini,drugs,$2),2,32) * %3),%high = $calc($gettok($readini(weapons.ini,drugs,$2),3,32) * %3)
        var %udrugs = $readini(user.ini,$nick,$2),%nadv = $gettok($readini(weapons.ini,drugs,$2),4,32)
        var %uhigh = $readini(user.ini,$nick,high),%tolerence = $readini(user.ini,$1,tolerence),%drugsleft = $calc(%udrugs - %3)
        var %drugsleft = $iif(%drugsleft > 0,%drugsleft,0),%_uhigh = $calc(%uhigh + %high),%tolerencegain = $round($calc(%_uhigh * .010),2)

        if (%3 <= $readini(user.ini,$1,$2)) var %3 = $readini(user.ini,$1,$2)

        var %_high = $round(%_uhigh,0)
        if (%_high < 1) var %_high = 1
        var %mhp = $calc(%high *.85),%_mhp = $round($calc($readini(user.ini,$1,mhp) - %mhp),1)
        if (%_mhp < 0) var %_mhp = 0
        var %time = $round($calc((%_uhigh *.35)*60),0)
        writeini user.ini $1 %nadv $calc($readini(user.ini,$nick,%nadv) + %adv)
        writeini user.ini $1 high %_high
        if (%drugsleft > 0) writeini user.ini $1 $2 %drugsleft
        else { remini user.ini $1 $2 | $iif($numtok($readini(user.ini,$1,drugs),32) > 1,writeini user.ini $1 drugs $remtok($readini(user.ini,$1,drugs),$2,32),remini user.ini $1 drugs) }
        writeini user.ini $1 mhp %_mhp
        if ($gettok($readini(weapons.ini,drugs,$2),4-,32)) var %msg = $gettok($readini(weapons.ini,drugs,$2),5-,32)
        else var %msg = &n1 uses &drg &n time(s)! 
        var %msg = %msg +&adv! +&high high! -&mhp max health. Time Left: &time seconds
        _msg %chan [+] * $replace(%msg,&n1,$1,&drg,$2,&n,%3,&adv,%adv %nadv,&high,%high,&mhp,%mhp,&time,%time)
        set %tolerence_ $+ $1 $calc(%tolerencegain + %tolerence_ $+ $1)
        .timerhigh_ $+ $1 1 %time end_high $1 %high %tolerencegain
        if (%_uhigh > $calc(100 + %tolerence)) overdose $1 $2 
        lvlcheck $1
        heal $1
        end_check $1
      }
      else _notice $1 You do not have $2
    }
    else _notice $1 is not a valid drug
  }
  else _notice $1 You're not registered
}

alias end_check {
  if ($readini(user.ini,$1,register)) {
    var %mhp = $readini(user.ini,$1,mhp)
    if (%mhp <= 0) {
      laylow $1
      var %drugs = $readini(user.ini,$1,drugs),%ndrug = $numtok(%y,32)
      while (%ndrug) {
        writeini user.ini bank $gettok(%drugs,%ndrug,32) $calc($readini(user.ini,bank,$gettok(%drugs,%ndrug,32)) + $readini(user.ini,$1,$gettok(%drugs,%ndrug,32)))
        dec %ndrug
      }
      remini user.ini $1
      _msg %chan [!] $1 has been 04removed from the game...
    }
  }
}

alias end_high {
  if (!$timer(overdose_ $+ $1)) {
    if ($timer(high_ $+ $1)) .timerhigh_ $+ $1 off
    var %uhigh = $readini(user.ini,$1,high)
    writeini user.ini $1 high $iif($calc(%uhigh - $2) < 0,$calc(%uhigh - $2),0)
    writeini user.ini $1 tolerence $calc($readini(user.ini,$1,tolerence) + $3)
    unset %tolerence_ $+ $nick
    _msg %chan [+] $1 fell from a high! 03+ $+ $3 $+  tolerence!
  }
  else _notice $1 [OVERDOSE] $timer(overdose_ $+ $1).secs seconds until you can function normally again
}

on *:connect:{
  if (%chan) && (%chan !ischan) {
    join %chan
  }
}
