Dream-Script — File Browser

Dream-Scriptv1.1a / Dream-Scriptv1.1a / Dream-Script_v1.1a / oppstatsfinal / OPPstatsFinal.mrc

OPPstatsFinal.mrc — 130.57 KB — Download this file

;########################  MENU  ######################## 
menu channel,nicklist,menubar,status,query {
  -
  OPPStats Final
  .OPp Control
  ..OP/VOICE/KICK/BAN
  ...Chanserv Ops/Voice
  ....cs OWNER:.msg chanserv owner # $$1
  ....cs DEOWNER:.msg chanserv deowner # $$1
  ....cs PROTECT:.msg chanserv protect # $$1
  ....cs DEPROTECT:.msg chanserv deprotect # $$1
  ....cs OP:.msg chanserv op # $$1
  ....cs DEOP:.msg chanserv DEOP # $$1
  ....cs HALFOP:.msg chanserv halfop # $$1
  ....cs DEHALFOP:.msg chanserv dehalfop # $$1
  ....cs VOICE:.msg chanserv voice # $$1
  ....cs DEVOICE:.msg chanserv devoice # $$1
  ...(-o+v)  {
    /mode # +v-o $$1 $$1
  }
  ...(+/-) OWNER 
  ....OWNER:mode # +qqq $$1 $2 $3 | /notice $1 10D14u 10h14ast den 10-={12O14wner Status erhalten10}=- $logo 
  ....DEOWNER:mode # -qqq $$1 $2 $3

  ...(+/-) SOP 
  ....PROTECT:mode # +aaa $$1 $2 $3 | /notice $1 10D14u 10h14ast den 10-={12P14rotect Status erhalten10}=- $logo 
  ....DEPROTECT:mode # -aaa $$1 $2 $3

  ...(+/-) OP 
  ....OP:mode # +ooo $$1 $2 $3 | /notice $1 10D14u 10h14ast den 10-={12O14p Status erhalten10}=- $logo 
  ....DEOP:mode # -ooo $$1 $2 $3

  ...(+/-) HALFOP 
  ....HALOP:mode # +hhh $$1 $2 $3 | /notice $1 10D14u 10h14ast den 10-={12H14alfop Status erhalten10}=- $logo 
  ....DEHALFOP:mode # -hhh $$1 $2 $3

  ...(+/-) VOICE 
  ....VOICE:mode # +vvv $$1 $2 $3 | /notice $1 10Y14ou 10H14ave 10B14een 10-=14{12Voiced14}10=- $logo 
  ....DEVOICE:mode # -vvv $$1 $2 $3

  ...-
  ...Kick
  ....Kick (Zufalls Kickspruch):/kick # $$1 $read(banspruche.txt)
  ....Kick (Clones) : /kick # $$1 2 Von deiner Sorte ertrage ich net deswegen gehst du jetzt.
  ....Kick (FTP) : /kick # $$1 2 Ich Habe dich gewarnt das iss nun der FTP Kick und Tschüss.
  ....Kick (Freiflug) : /kick # $$1 2 Ich habe gehört, das du das Fliegen lernen wolltest, ich bringe es dir bei.
  ....Kick (Channelregeln) : /kick # $$1 2 Wer die Channelregeln nicht befolgt, muss mit den Konsequenzen rechnen.
  ....Kick (Schuld) : /kick # $$1 So jetzt Kannst du wenigstens behaupten, das $1 dich net mag.
  ....Kick (Ban) : /kick # $$1 Den ban hast du dir auch verdient und überleg mal, ob ich net recht habe.
  ....Kick (Respekt) : /kick # $$1 2 Bringe einem Op den richtigen Respekt entgegen, siehst ja jetzt was passieren kann.
  ....Kick (Freundschaft) : /kick # $$1 Nicht böse sein ist nur ein Freundschaftskick.
  ....Kick (Flood) : /kick # $$1 2 Ich sehe es auch, wenn du es auch nur einmal schreibst.
  ....Kick (Fußball) : /kick # $$1 Habe ich schon erwähnt, das ich gerne fußball spiele :) .
  ....Kick (Grund): /kick # $$1 $$?="Begründung für Kick:"

  ....-
  ....cs Kick:.chanserv kick # $1 $read(oppstatsfinal\banspruche.txt)
  ....cs Kick (Grund):.chanserv kick # $1 $$?="Begründung für Kick:"
  ....-
  ....Auto Kick
  .....Add:.msg chanserv akick # Add $$?="Nick oder Maske" $$?="Begründung"
  .....Del:.msg chanserv akick # Del $$?="Nick oder Maske"
  .....list:.msg chanserv AKICK # LIST
  ...-
  ...ban
  ....Multi (Invision Only)
  .....Alle ab Ops
  ......Zufalls Begründung:{ filterk Ops jk $chan $rkick }
  ......Manuelle Begründung:{ filterk Ops jk $chan $$?="Begründung" }
  .....Alle ab Voices
  ......Zufalls Begründung:{ filterk Voice jk $chan $rkick }
  ......Manuelle Begründung:{ filterk Voice jk $chan $$?="Begründung" }
  .....Alle NonOps
  ......Zufalls Begründung:{ filterk NonOps jk $chan $rkick }
  ......Manuelle Begründung:{ filterk NonOps jk $chan $$?="Begründung" }
  .....Alle Normalen
  ......Zufalls Begründung:{ filterk Commons jk $chan $rkick }
  ......Manuelle Begründung:{ filterk Commons jk $chan $$?="Begründung" }
  .....Alle Users
  ......Zufalls Begründung:{ filterk all jk $chan $rkick }  
  ......Manuelle Begründung:{ filterk all jk $chan $$?="Begründung" }
  .....Non Friend in User Lists
  ......Zufalls Begründung:{ filterk UL jk $chan $rkick }
  ......Manuelle Begründung:{ filterk UL jk $chan $$?="Begründung" }
  ....-
  ....$address($snick(#,1),0):$odeop(#,$$1) | ban # $1 0 | /kick # $$1 $read(oppstatsfinal\banspruche.txt)
  ....$address($snick(#,1),1):$odeop(#,$$1) | ban # $1 1 | /kick # $$1 $read(oppstatsfinal\banspruche.txt)
  ....$address($snick(#,1),2):$odeop(#,$$1) | ban # $1 2 | /kick # $$1 $read(oppstatsfinal\banspruche.txt)
  ....$address($snick(#,1),3):$odeop(#,$$1) | ban # $1 3 | /kick # $$1 $read(oppstatsfinal\banspruche.txt)
  ....$address($snick(#,1),4):$odeop(#,$$1) | ban # $1 4 | /kick # $$1 $read(oppstatsfinal\banspruche.txt)
  ....-
  ....30 Sekunden :/ban -u30 $$1 | /kick # $$1 Temp Ban 30 Sekunden $read(oppstatsfinal\banspruche.txt)
  ....1 Minute :/ban -u60 $$1 | /kick # $$1 Temp Ban 1 Minute $read(oppstatsfinal\banspruche.txt)
  ....5 Minuten :/ban -u300 $$1 | /kick # $$1 Temp Ban 5 Minuten $read(oppstatsfinal\banspruche.txt)
  ....10 Minuten :/ban -u600 $$1 | /kick # $$1 Temp Ban 10 Minuten $read(oppstatsfinal\banspruche.txt)
  ....30 Minuten :/ban -u1800 $$1 | /kick # $$1 Temp Ban 30 Minuten $read(oppstatsfinal\banspruche.txt)
  ....1 Stunde :/ban -u3600 $$1 | /kick # $$1 Temp Ban 1 Stunde $read(oppstatsfinal\banspruche.txt)
  ....ban (Zeit+Grund):banpop $chan $$1
  ....-
  ....cs Ban:.chanserv ban # $1 $read(oppstatsfinal\banspruche.txt)
  ....cs Ban (Grund):.chanserv ban # $1 $$?="Begründung für Kick:"
  ....-
  ....Ban manuell per User Maske: /mode # +b $$?="Ban Maske"

  ..CHANNEL OPTIONS
  ...Channel Info:/msg chanserv info #
  ...Channel registrieren:/msg chanserv register # $?*="Bitte ein Passwort angeben" $?="Die Description von # bitte hier einfügen"
  ...Als Besitzer identifizieren:/msg chanserv identify # $?*="Bitte hier dein Passwort eingeben"
  ...Channel Password ändern:/msg chanserv set # $?*="Bitte hier dein altes Passwort angeben" $?*="Bitte hier das neue Passwort angeben"
  ...Setze Channel 
  ....Besitzer:/msg chanserv set # founder $$1
  ....Vertreter:/msg chanserv set #  successor $$1
  ....URL:/msg chanserv set # URL <enter homepage addy>
  ....Email:/msg chanserv set # EMAIL <enter email addy>
  ....Eintritts Message:/msg chanserv set # entremsg <enter entry message>
  ....Description:/msg chanserv set # desc <enter description>
  ...Channel löschen
  ....Sicher???
  .....OK:/msg chanserv drop #
  ...Channel Sicherheit
  ....Topic:/msg chanserv set # topiclock on/off
  ....Secure Ops:/msg chanserv set # secureops on/off
  ....Secure:/msg chanserv set # secure on/off
  ....Keep Topic:/msg chanserv set # keeptopic on/off
  ....Leave Ops:/msg chanserv set # leaveops on/off
  ....Enforce (no ops can be deopped or opped):/msg chanserv set # enforce on/off
  ....Topic sperren an/aus:/msg chanserv set # topiclock on/off
  ....Expiry:/msg chanserv set # noexpire on/off
  ....Mlock (nur Founder können Modes ändern):/msg chanserv set # mlock <mode>
  ....Channel Levels
  ....Liste:/msg chanserv levels # list
  ....Einstellungen ändern:/msg chanserv levels # set <type> <level>
  ...Access Liste
  ....Liste von Ops, Half Ops, Voiced Users:/msg chanserv access # list
  ....User hinzufügen (voice-3, halfop-4, op-5):/msg chanserv access # add $$1 level
  ....User löschen:/msg chanserv access # del $$1
  ...Akick
  ....Liste:/msg chanserv akick # list
  ....User hinzufügen mit Begründung:/msg chanserv akick # add $$1 $?="Begründung angeben"
  ....User mit Hostmaske hinzufügen:/msg chanserv akick # add <hostmask> $?="Begründung angeben"
  ....User löschen:/msg chanserv akick # del <nickname/hostmask>
  ...Channel Control
  ....Op:/msg chanserv op # $$1
  ....DeOp:/msg chanserv deop # $$1
  ....HalfOp:/msg chanserv halfop # $$1
  ....DeOp:/msg chanserv dehalfop # $$1
  ....Voice:/msg chanserv voice # $$1
  ....DeVoices:/msg chanserv devoice # $$1
  ....Protect:/msg chanserv protect # $$1
  ....Deprotect:/msg chanserv deprotect # $$1
  ....Unban:/msg chanserv unban # $$1
  ....Kick User:/kick # $$1 $?="Please Enter a Reason here"
  ...Channel Invite:/msg chanserv invite # $$1
  ...Zeige Channel Modes:/mode #
  ...Setze Channel Mode
  ....Privater Channel an:/mode # +p
  ....Privater Channel aus:/mode # -p
  ....Geheimer Channel an:/mode # +s
  ....Geheimer Channel aus:/mode # -s
  ....Nur Invite Channel an:/mode # +i
  ....Nur Invite Channel aus:/mode # -i
  ....Moderated Channel an:/mode # +m
  ....Moderated Channel aus:/mode # -m
  ....Keine Nachrichten von außen an:/mode # +n
  ....Keine Nachrichten von außen aus:/mode # -n
  ....Nur OP´s ändern Topic an:/mode # +t
  ....Nur OP´s ändern Topic aus:/mode # -t
  ....Channel ist registriert an:/mode # +r
  ....Channel ist registriert aus:/mode # -r
  ....Keine Farben an:/mode # +c
  ....Keine Farben aus:/mode # -c
  ....Channel Owner an:/mode # +q
  ....Channel Owner aus:/mode # -q
  ....Keine Kicks an:/mode # +Q
  ....Keine Kicks aus:/mode # -Q
  ....Keine Knock an:/mode # +K
  ....Keine Knock aus:/mode # -K
  ....Keine Invites an:/mode # +V
  ....Keine Invites aus:/mode # -V
  ....Farbcodes im Text löschen an:/mode # +S
  ....Farbcodes im Text löschen aus:/mode # -S
  ....Nick darf nich geändert werden an:/mode # +N
  ....Nick darf nich geändert werden aus:/mode # -N
  ....G Rated an: /mode # +G
  ....G Rated aus: /mode # -G
  ....Nur Ops können /Names oder /Whois an:/mode # +u
  ....Nur Ops können /Names oder /Whois aus:/mode # -u
  ....Kein CTCPs an:/mode # +C
  ....Kein CTCPs aus:/mode # -C
  ....nur Registrierte Nicks können joinen an:/mode # +R
  ....nur Registrierte Nicks können joinen aus:/mode # -R
  ....Passwort an:/mode # +k $?="Wie soll das Passwort heißen?"
  ....Passwort aus:/mode # -k
  ....Exception Ban an:/mode # +e $?="Bitte gebt die Usermaske wie folgt an <*!Mask@host>"
  ....Exception Ban aus:/mode # -e $?="Bitte gebt die Usermaske wie folgt an <*!Mask@host>"
  ....Limit an:/mode # +l $?="Wie hoch?"
  ....Limit aus:/mode # -l
  ....Ban/Unban User an:/mode # +b $$1
  ....Ban/Unban User aus:/mode # -b $$1
  ....Ban/Unban User/Hostmaske an:/mode # +b $?="Please enter the requierd like folow *!*@<username/hostmask>"
  ....Ban/Unban User/Hostmaske aus:/mode # -b $?="Please enter the requierd like folow *!*@<username/hostmask>"
  ....Beschütze User von Kicks an:/mode # +a $$1
  ....Beschütze User von Kicks aus:/mode # -a $$1
  ....Chanserv Flood Protection Kick:/mode # +f $?="Wieviele Linien?" $+ : $+ $?="Sekunden?"
  ....Chanserv Flood Protection Ban:/mode # +f [*] $?="Wieviele Linien?" $+ : $+ $?="Sekunden?"
  ....Give/Take Ops an:/mode # +o $$1
  ....Give/Take Ops aus:/mode # -o $$1
  ....Give/Take Halfops an:/mode # +h $$1
  ....Give/Take Halfops aus:/mode # -h $$1
  ....Give/Take Voice an:/mode # +v $$1
  ....Give/Take Voice aus:/mode # -v $$1
  ...Channel Clear
  ....Modes:/msg chanserv clear # modes
  ....Bans:/msg chanserv clear # bans
  ....All:/msg chanserv clear # all
  ....Ops:/msg chanserv clear # ops
  ....Halfops:/msg chanserv clear # halfops
  ....Voices:/msg chanserv clear # ops
  ....Users:/msg chanserv clear # users

  ;---------------------------------------------------------------------------------------------------
  ;---------------------------------------- Nickserv -------------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  ..SERVER OPTIONS
  ...Nick Optionen
  ....Selbst OP:/msg chanserv op # $me
  ....Nick ändern:/nick $?="neuen Nick eingeben"
  ....Nick Identify:/ns identify $?="Passwort eingeben"
  ....Auto Identify:autoid 
  ....Nickpasswort ändern:/msg nickserv set $?="neues Passwort eingeben" 
  ....Nick Registrieren:/ns register $?="Passwort eingeben" $?="E-mail eingeben" 
  ....Kill Ghost:/msg nickserv ghost $?="Nick eingeben" $?="Password"
  ....Selbst Entbannen:/Chanserv unban $?="Channel (# nicht vergessen)"  $me
  ....Als OPER anmelden:/oper $?="Nick" $?="Passwort"

  ;------------------------------------------------------------------------------------------------------
  ;---------------------------------------- Memo Option -------------------------------------------------
  ;------------------------------------------------------------------------------------------------------

  ...Memo Option
  ....Memo senden
  .....Memo an Nick:.msg memoserv send $$?="Nick" $$?="Nachricht"
  .....Memo an Channel:.msg memoserv send # $$?="Nachricht"
  ....Memo gesendete Annulliern
  .....Memo an Nick:.msg memoserv CANCEL $$?="Nick"
  .....Memo an Channel:.msg memoserv CANCEL #
  ....Memo lesen
  .....Memo Nick 
  ......letzte Memo:.msg memoserv Read LAST
  ......Neue Memo:.msg memoserv Read NEW
  .....Memo Channel
  ......Letzte Memo:.msg memoserv Read # LAST
  ......Neue Memo:.msg memoserv Read # NEW
  ....Memo Listen
  .....Nick Memos
  ......Alle Memos:.msg memoserv List
  ......Neue Memos:.msg memoserv List NEW
  .....Channel Memos
  ......Alle Memos:.msg memoserv List #
  ......Neue Memos:.msg memoserv List # NEW  
  ....Memos löschen
  .....Nick Mesages
  ......Momo Nummer:.msg memoserv Del $$?="Memo Nummer"
  ......Memo Alle:.msg memoserv Del ALL
  .....Channel Mesages
  ......Memo Numer:.msg memoserv Del #$$?="Channel" $$?="Memo Nummer"
  ......Memo Alle:.msg memoserv Del # ALL  
  ....-
  ....Benachrichtigung bei Momo
  .....An:.msg MemoServ set notify on
  .....Aus:.msg MemoServ set notify off
  .....Benachrichtigung bei Login und Away:.msg MemoServ set notify logon
  .....Benachrichtigung bei neuer Memo:.msg MemoServ set notify new
  ....-
  ;---------------------------------------------------------------------------------------------------
  ;----------------------------------------- Raum Optionen -------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  ...Raum Optionen
  ....Server Regeln: /motd
  ....-
  ;-------------------------------------------- Channel Statistik ------------------------------------
  .....Raum Info:/msg chanserv info #
  ....Als Founder Identifizieren:/msg ChanServ IDENTIFY # $$?="Password:"
  ....-


  ....Raum Öffnen/schließen
  .....Raum Öffnen:/join #$?="Raumname"
  .....Raum Schließen:/chanserv drop #$?="Raumname" $?="Passwort"
  ....Raum Registrieren
  .....Raum Registrieren:/chanserv register #$?="Raumname" $?="Passwort" $?="Beschreibung"
  ;-------------------------------------------------------------------------------------------------
  ....-
  ....Raum Join Nachricht setzen:/msg chanserv set # entrymsg $$?="Join Nachricht:"
  ....-
  ;---------------------------------------------------------------------------------------------------

  ....AOP Liste
  .....Einfügen: /chanserv aop # add $$1
  .....Löschen: /chanserv aop # del $$?="Nick"
  .....Zeigen: /chanserv aop # list
  ....SOP Liste
  .....Einfügen: /chanserv sop # add $$1
  .....Löschen: /chanserv sop # del $$?="Nick"
  .....Zeigen: /chanserv sop # list
  ....HOP Liste
  .....Einfügen: /chanserv hop # add $$1
  .....Löschen: /chanserv hop # del $$?="Nick"
  .....Zeigen: /chanserv hop # list
  ....VOP Liste
  .....Einfügen: /chanserv vop # add $$1
  .....Löschen: /chanserv Vop # del $$?="Nick"
  .....Zeigen: /chanserv vop # List
  ....- 

  ;---------------------------------------------------------------------------------------------------
  ....-
  ....Raum Optionen setzen
  ;---------------------------------------------------------------------------------------------------
  .....-
  .....Neuen Founder:.msg ChanServ set # founder $$?="Neuer Founder"
  .....Founder Vertreter (Successor):.msg ChanServ set # SUCCESSOR $$?="Founder Vertreter"
  .....-
  .....Raumpasswort ändern:/msg chanserv set # passwd $?="Neues Passwort eingeben"
  .....Beschreibung ändern:.msg chanserv set # Desc $$?="Channel Beschreibung"
  .....-
  .....Url setzen:.msg chanserv set $chan URL $$?="URL"
  .....eMail setzen:.msg chanserv set # EMAIL $$?="EMAIL"
  .....-
  .....Raum Key Privat:
  ......An:.msg chanserv set # private on
  ......Aus:/msg chanserv set # private off
  .....Secure Founder
  ......An:.msg chanserv set # securefounder on
  ......Aus:.msg chanserv set # securefounder off
  .....SecureOps
  ......An:.msg chanserv set # secureops on
  ......Aus:.msg chanserv set # secureops off
  .....Zugang nur Req. User
  ......An:.msg chanserv set # secure on
  ......Aus:.msg chanserv set # secure off
  .....OP Notice
  ......An:.msg chanserv set # opnotice on
  ......Aus:.msg chanserv set # opnotice off
  .....signiert Kicks
  ......An:.msg chanserv set # signkick on
  ......Aus:.msg chanserv set # signkick on


  ;------------------------------------------------------------------------------------------------------
  ;-------------------------------------------- Bot Optionen --------------------------------------------
  ;------------------------------------------------------------------------------------------------------
  ...Bot Optionen
  ....Bot liste:.msg botserv botlist
  ....Bot erstellen:.msg botserv assign # $$?="Bot Nick:"
  ....Bot löschen:.msg botserv unassign #
  ....Bot Info:.msg botserv info # $?="Bot Nick:"
  ....-
  ....Bot-Konfigurieren
  .....Chan-Ops werden nicht gekicked
  ......An:.msg botserv set # dontkickops on
  ......Aus:.msg botserv set # dontkickops off
  .....Chan-Voices werden nicht gekicked
  ......An:.msg botserv set # dontkickvoices on
  ......Aus:.msg Botserv set # dontkickvoices off
  .....-
  .....Eintrittsmeldung
  ......An:.msg botserv set # greet on
  ......Aus:.msg botserv set # greet off
  .....Kommandos !op,!deop usw.
  ......An:.msg botserv set # fantasy on
  ......Aus:.msg botserv set # fantasy off
  ......übernimmt Aufgaben von ChanServ
  ......An:.msg botserv set # symbiosis on
  ......Aus:.msg botserv set # symbiosis off
  ....Auto Kicks
  .....bei fettem Schriftstil
  ......An +Ban nach xKicks:.msg botserv kick # bolds on $?="x kicks vorm ban"
  ......An:.msg botserv kick # bolds on
  ......Aus:.msg botserv kick # bolds off
  .....bei großem Schreibstiel
  ......An +Ban nach xKicks:.msg botserv kick # caps on $?="x kicks vorm ban (bei 10 Zeichen und 25% der gesamten Nachricht)"
  ......An:.msg botserv kick # caps on
  ......Aus:.msg botserv kick # caps off
  .....bei farbigem Schreibstiel
  ......An+Ban nach xKicks:.msg botserv kick # colors on $?="x kicks vorm ban"
  ......An:.msg botserv kick # colors on
  ......Aus:.msg botserv kick # colors off
  .....bei Flooding
  ......An +Ban nach xKicks:.msg botserv kick # flood on $?="x kicks vorm ban"
  ......An:.msg botserv kick # flood on
  ......Aus:.msg botserv kick # flood off
  .....bei wiederholungen
  ......An +Ban nach xKicks:.msg botserv kick # repeat on $?="x kicks vorm ban"
  ......An:.msg botserv kick # repeat on
  ......Aus:.msg botserv kick # repeat off
  .....bei invertiertem Schriftstil
  ......An +Ban nach xKicks:.msg botserv kick # reverses on $?="x kicks vorm ban"
  ......An:.msg botserv kick # reverses on
  ......Aus:.msg botserv kick # reverses off
  .....bei Unterstreichungen
  ......An +Ban nach xKicks:.msg botserv kick # underlines on $?="x kicks vorm ban"
  ......An:.msg botserv kick # underlines on
  ......Aus:.msg botserv kick # underlines off
  ....-
  ....Bot sprechen lassen:.msg botserv say # $$?="Text den der Bot sagen soll..?"
  ....Bot spricht Action Text:.msg botserv act # $$?="Action (.me) Text?"

  ;---------------------------------------------- OPP Options -------------------------------------------
  ..OPP Options
  ...Jemanden in einen Raum einladen:/invite $$?="Wen?" $$?="In welchen Chan?"
  ...-
  ...Ignoriere $$1 aktivieren:/ignore $$1 1
  ...Ignoriere $$1 aufheben:/ignore -r $$1 1
  ...-
  ...DCCALLOW
  ....Add: dccallow + $+ $$1
  ....Del: dccallow - $+ $$1
  ....-
  ....List: dccallow list
  ...-
  ...IP DNS Aufschlüsselung: /dns $$1
  ..-

  ;------------------------------------- Info Massage ------------------------------------------------
  ..Info Message(IN ALLE CHANS!!)
  ...Einstellung:dialog -m tmsg tmsg
  ...-
  ...Start:time.msg.on
  ...Stop:time.msg.off
  ..-

  ;------------------------------------- Hilfen ------------------------------------------------
  ..Hilfen
  ...Nickregistrieren: /say 9 $$1 7---> 10Um deinen Nick zu registrieren, tippe folgendes ein: /ns register passwort emailadresse. 
  ...Chaneröffnen: /say 9 $$1 7---> 10Um einen Channel zu öffnen musst du folgendes machen: 1. Nick registrieren mit /ns register passwort E-mailadresse ; 2. Indentifizieren des Nicks /ns identify passwort ; 3. Einen Channelnamen aussuchen (Am besten vorher auch einen OP um Erlaubnis fragen!!!) ; 4. /join #Channelnamen ; 5. /cs register channel passwort beschreibung .
  ...DCC-Hilfen
  ....Router: /say 9 $$1 7---> 10Wenn du ein Router hast musst du folgende Ports im Router, sowie im Script Freigeben: Port: 4989-4999 TIPP: Schließe auf alle Fälle die Ports 1024-4900 und 5000 (die werden gerne gescannt), Port 5000 ist ein beliebter Trojaner Port.Dann dürfte das mit dem senden klappen.
  ....DCC aktivieren: /say 9 $$1 7---> 10um deinen Client für DCC zu aktivieren schaue unter Options, bei DCC auto-get file einen punkt rein, bei if file exist resume einstellen, bei DCC ignore auf disabled setzen, bei turn back on in den Haken raus machen.
  ....DCC Pending: /say 9 $$1 7---> 10bei "DCC Pending" schaue in den Options und setze DCC ignore auf disabled.
  ....XDCC LIST: /say 9 $$1 7---> 10gehe in den Channel in dem der Bot ist und tippe "11/msg <BotName> XDCC LIST10" um die FileListe des Bot zu erhalten. Den Namen des Bots ohne die "<",">" !!
  ....XDCC SEND: /say 9 $$1 7---> 10gehe in den Channel in dem der Bot ist und tippe "11/msg <BotName> XDCC SEND #x10" ein, um das gewünschte Package zu bekommen. Den Namen des Bots ohne die "<",">" und das "x" durch die Package-Nummer ersetzen !!
  ...Performs eintragen: /say 9 $$1 7---> 10wenn Du beim anmelden (z.B. nach 24h reconnect) immer wieder mit Deinem gereggten Nick angemeldet werden möchtest tue folgendes. Gehe in Options -> Connect -> Options -> Klicke auf Perform, dann Add und wähle das Netzwerk aus. In "Perform Commands" trägst Du dann erst 11/msg nickserv ghost NickName passwort10 ein. Zeile drunter 11/nick Nickname10 ,dann 11/msg nickserv identify passwort10 und danach mit 11/j #channel10 nacheinander alle Channels die du automatisch joinen willst. Als letztes bei "Enable Perform on connect" en Haken rein - Fertig =) Dies ist die sichere Methode.
  ...Allg. Verbots Hinweis: /say 9 $$1 7---> 10Bei uns sind die folgenden Punkte untersagt und werden mit Warnungen und/oder Kick(s)/Ban(s) geahndet: 7Flooding, Fäkalsprache, Beleidigungen und Belästigungen, permanente Grossschreibung, Mass-Messaging, Wiederholungen und Werbung, Keine Illegalen Aktivitäten (Warez, Pornographie, Rassismus etc.). Dies gilt auch für Nicknamen.
  ...Freundlichkeit Hinweis: /say 9 $$1 7---> 10Wie in fast allen Channels wird auch hier Freundlichkeit hochangesehen. wer sich weigert diese Forderung zu erfüllen muss mit einem Kick oder einen Ban rechnen  
  ...OP-Fragen: /say 9 $$1 7---> 10Wenn es sehr wichtige Fragen gibt die man für ein sehr schwieriges Problem hält, fragt am besten unsere OPs gekennzeichnet durch @. Anreden und schauen das euch geholfen wird. 
  ...Freiwillig: /say 9 $$1 7---> 10Hinweis: Alle Personen die hier bei Problemen helfen und unterstützen machen dies ehrenamtlich. Wir verdienen damit "kein Geld". Wenn euch mal nicht geholfen wird seid nicht sauer, weil man hat ja auch noch ein anderes Leben ausser dem Computer. Und allen denen geholfen wurde denkt mal drüber nach wieviel man dafür hätte zahlen müssen!! .
  ...Hilfe: /say 9 $$1 7---> 10Nun ein Aufruf an alle Chatter hier. Man hat nichts gegen das Unterhalten mit anderen Cattern. Aber wenn mal jemand Hilfe braucht und man selbst weiß ein Lösung, wäre es nett wenn ihr auch helfen würdet. Danke schonmal im Vorraus.
  ...Nick: /say 9 $$1 7---> 10Damit wir euch besser unterscheiden können, wäre es angebracht euren Namen zu ändern, wenn ihr Nicks habt die sich mit anderen ähneln. Nick ändern geht so: /Nick Nickname.
  ...Brennen: /say 9 $$1 7---> 4Brennen einer *.bin. 7 1. Lass die Cue weg. 2. öffne Nero und schließe das Wizard. 3. oben links auf File gehen und dort Image brennen auswählen. Die *.bin datei wirst du zuerst nicht sehen können. 4. Gehe in den Pfad wo deine bin datei drinne ist und wähle unten all Files aus. Klicke nun deine gewünschte *.bin an. Dann kommt eine Korrekturmeldung wähle Datenmmode2 und den Rest so brennen wie immer.

  ;--------------------------------------------- Befehlshilfen ----------------------------------------

  ...-
  ...Befehlshilfen
  ....Chanserv:.msg chanserv help
  ....Nickserv:.msg nickserv help
  ....Memoserv:.msg memoServ help
  ....Botserv:.msg botserv help
  ....Befehlshilfe in deutsch: /msg nickserv set language 3
  ....Befehlshilfe in deutsch (Independent-IRC): /msg nickserv set language 4

  ;---------------------------------------------------------------------------------------------------
  ;--------------------------------------- Allg. bitte -----------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  ..WARNUNGEN
  ...Hinweis und bitten
  ....Ausdrucksweise: /say 9 $$1 7Bitte ändere deine Ausdrucksweise !!!!
  ....Clones: /say 9 $$1 7Bitte nimm deinen Clone raus oder mach /ns ghost <nickpw> !!!!
  ....belästigung im pm: /say 9 $$1 7Bitte hör auf die chatter im pm zu belästigen !!!!
  ....Beleidigung: /say 9 $$1 7Bitte hör auf die chatter zu beleidigen !!!!
  ....Betteln: /say 9 $$1 7Bitte hör endlich auf zu betteln, das bringt nix !!!!
  ....Bunt schreiben:/ say 9 $$1 7Bitte hör auf die ganze Zeit bunt zu schreiben !!!!
  ....Flooding: /say 9 $$1 7Bitte hör mit dem flooden auf !!!!
  ....Gross schreiben: /say 9 $$1 7Bitte schreibe nicht dauernd groß, groß schreiben bedeutet schrein !!!!
  ....Nick ändern - User: /say 9 $$1 7Bitte ändere deinen nick mit 9--->> 14/nick neuernick 9<<--- 4danke 7!!!
  ....OP betteln: /say 9 $$1 7Bitte hier wird nicht nach op gebettelt, das bringt dir den OP-Titel nicht näher !!!!
  ....OP verarschen: /say 9 $$1 7Bitte verarsche nicht die op's !!!!
  ....Sei nett: /say 9 $$1 7Bitte sei gefälligst nett zu den anderen chattern !!!!
  ....Sexchan: / say 9 $$1 7Dies ist kein sexchan, hör bitte auf !!!!
  ....Werbung: /say 9 $$1 7Werbung ist in diesem chan verboten, bitte nicht wieder werben !!!!
  ....Wiederholen1: /say 9 $$1 7Bitte unterlasse die Wiederholungen danke !!!!
  ....Wiederholen2: /say 9 $$1 7Bitte wiederhole dich nicht dauernd wir habens kapiert !!!!
  ....-
  ....Nick ändern - Allg.: /say 14Die Buchstabensalate...(z.b.: hxfdhjkl) ändert bitte euren Usernamen um (gebt dazu in der Texteingabe Zeile 14/Nick Wunschnamen ein.4). Dieses ist in sofern wichtig, um den anderen ..mit denen ihr chatten wollt die eingabe eures Nicks zu erleichtern, und um ein wiedererkennen von euch zu erleichtern.9Bitte entlastet auch die Krankenhäuser... die die verknoteten Finger wieder zurecht biegen müssen...:-)) thx.

  ;---------------------------------------------------------------------------------------------------
  ;--------------------------------------- Kick Warnungen --------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  ...Kick Warnungen
  ....Ausdruck Kick: /say 9 $$1 4Warnung<---7Ändere sofort deine Ausdrucksweise (ansonsten gibts nen kick) !!!!
  ....Clones: /say 9 $$1 4Warnung<---7Wer hier Clones frei rumlaufen lässt der muss mit einem Doppelkick rechnen !!!!
  ....FTP: /say 9 $$1 4Warnung<---7In diesem Channel ist es verboten über FTP zu reden genauso wie auf dem ganzen IRC Server auch wenn du dich nicht dran hälst bekommst du einen Kick.
  ....Labern: /say 9 $$1 4Warnung<---7Wer hier zu viel Müll labert der fliegt !!!!
  ....belästigung im pm: /say 9 $$1 4Warnung<---7hör sofort auf die chatter im pm zu belästigen (ansonsten gibts nen kick) !!!!
  ....Beleidigung: /say 9 $$1 4Warnung<---7hör auf die chatter zu beleidigen (ansonsten gibts nen kick) !!!!
  ....Betteln: /say 9 $$1 4Warnung<---7hör auf zu betteln (ansonsten gibts nen kick) !!!!
  ....Bunt schreiben:/ say 9 $$1 4Warnung<---7Hör auf die ganze Zeit bunt zu schreiben !!!
  ....Flooding: /say 9 $$1 4Warnung<---7hör sofort mit dem flooden auf (ansonsten gibts nen kick) !!!!
  ....Gross schreiben: /say 9 $$1 4Warnung<---7schreibe nicht dauernd groß (ansonsten gibts nen kick) !!!!
  ....Irc Prog. Spielerein: /say 9 $$1 4Warnung<---7hör sofort auf mit den Funtionen deines Irc-Chat Programms, in diesem Channel rumzuspielen (ansonsten gibts nen kick) !!!!
  ....Kick Drohung: /say 9 $$1 4Warnung<---7gleich gibts nen kick !!!
  ....Letzte Warnung: /say 9 $$1 4Warnung<---7letzte Chance !!!!
  ....Nick ändern: /say 9 $$1 4Warnung<---7Ändere sofort deinen nick mit /nick neuernick (ansonsten gibts nen kick) !!!!
  ....OP betteln: /say 9 $$1 4Warnung<---7hier wird nicht nach op gebettelt (ansonsten gibts nen kick) !!!!
  ....OP verarschen: /say 9 $$1 4Warnung<---7verarsche nicht die op's (ansonsten gibts nen kick) !!!!
  ....Sei nett: /say 9 $$1 4Warnung<---7sei gefälligst nett zu den anderen chattern (ansonsten gibts nen kick) !!!!
  ....Sexchan: / say 9 $$1 4Warnung<---7dies ist kein sexchan (bei Wiederholung gibts nen kick) !!!!
  ....Werbung: /say 9 $$1 4Warnung<---7werbung ist in diesem chan verboten (bei Wiederholung gibts nen kick) !!!!
  ....Wiederholen1: /say 9 $$1 4Warnung<---7Bitte unterlasse die Wiederholungen danke (bei Wiederholung gibts nen kick) !!!!
  ....Wiederholen2: /say 9 $$1 4Warnung<---7wiederhole dich nicht dauernd wir habens kapiert (bei Wiederholung gibts nen kick) !!!!

  ;---------------------------------------------------------------------------------------------------
  ;-------------------------------------- Ban Warnungen ----------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  ...Bann Warnungen
  ....Ausdruck Ban: /say 9 $$1 4Warnung<---7Ändere sofort deine Ausdrucksweise 4(ansonsten gibts nen Ban)7 !!!! 
  ....Clones: /say 9 $$1 4Warnung<---7Dein Clone, du und deine Host sind im Begriff gebannt zu werden  !!!!
  ....FTP: /say 9 $$1 4Warnung<---7Dies ist deine letzte Warnung wenn du nun noch weiter über FTP redest bekommst du einen Kick/Banned
  ....belästigung im pm: /say 9 $$1 4Warnung<---7hör sofort auf die chatter im pm zu belästigen 4(ansonsten gibts nen Ban) 7!!!!
  ....Beleidigung: /say 9 $$1 4Warnung<---7hör auf die chatter zu beleidigen 4(ansonsten gibts nen Ban) 7!!!!
  ....Betteln: /say 9 $$1 4Warnung<---7hör endlich auf zu betteln 4(ansonsten gibts nen Ban) 7!!!!
  ....Bunt schreiben:/ say 9 $$1 4Warnung<---7Hör auf die ganze Zeit bunt zu schreiben 4(ansonsten gibts nen Ban) 7!!!!
  ....Flooding: /say 9 $$1 4Warnung<---7hör sofort mit dem flooden auf 4(ansonsten gibts nen Ban) 7!!!!
  ....Gross schreiben: /say 9 $$1 4Warnung<---7schreibe nicht dauernd groß 4(ansonsten gibts nen Ban) 7!!!!
  ....Irc Prog. Spielerein: /say 9 $$1 4Warnung<---7hör sofort auf mit den Funtionen deines Irc-Chat Programms, in diesem Channel rumzuspielen 4(ansonsten gibts nen Ban) 7!!!!
  ....Ban Drohung: /say 9 $$1 4Warnung<---7gleich gibts nen 4Ban 7!!!
  ....Letzte Warnung: /say 9 $$1 4Warnung<---7letzte Chance !!!!
  ....Nick ändern: /say 9 $$1 4Warnung<---7Ändere sofort deinen nick mit /nick neuernick 4(ansonsten gibts nen Ban) 7!!!!
  ....OP betteln: /say 9 $$1 4Warnung<---7hier wird nicht nach op gebettelt 4(ansonsten gibts nen Ban) 7!!!!
  ....OP verarschen: /say 9 $$1 4Warnung<---7verarsche nicht die op's 4(ansonsten gibts nen Ban) 7!!!!
  ....Sei nett: /say 9 $$1 4Warnung<---7sei gefälligst nett zu den anderen chattern 4(ansonsten gibts nen Ban) 7!!!!
  ....Sexchan: / say 9 $$1 4Warnung<---7dies ist kein sexchan 4(bei Wiederholung gibts nen Ban) 7!!!!
  ....Werbung: /say 9 $$1 4Warnung<---7werbung ist in diesem chan verboten 4(bei Wiederholung gibts nen Ban) 7!!!!
  ....Wiederholen1: /say 9 $$1 4Warnung<---7Bitte unterlasse die Wiederholungen danke 4(bei Wiederholung gibts nen Ban) 7!!!!
  ....Wiederholen2: /say 9 $$1 4Warnung<---7wiederhole dich nicht dauernd wir habens kapiert 4(bei Wiederholung gibts nen Ban) 7!!!!
  ....-
  ....Wollen dich nicht hier: /me 8,1A1,8L8,1A1,8R8,1M7 Also wirklich 11 $$1 7Wir wollen Dich hier nicht haben in9 $chan !!... 4geh von selbst, oder ich helfe nach !!!8,1A1,8L8,1A1,8R8,1M8,12
  ....Groß schreiben - Ban nach drausen: /msg $active  4,1 $$1 => WARNUNG <= Schreib bitte Klein wir können es auch so lesen, ansonsten gibbet ein ONE WAY TICKET nach drausen!
  .-

  ;---------------------------------------------------------------------------------------------------
  ;-------------------------------------- Speed Infos  -----------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  .SPEED Infos
  ..$iif(($active != status window),Speed Anzeige)
  ...Total Speed:speed total text 
  ...Totale Bandbreite:speed total grafik 
  ...-
  ...Einstellung:speed total.set
  ..-
  ..Speed - IRC - eMule
  ...$iif(($active != status window),Speed - IRC)
  ....$iif(($active != status window),Download):speed irc download
  ....$iif(($active != status window),Upload):speed irc upload
  ....-
  ....$iif(($active != status window),Down + Up):speed irc download.upload
  ...$iif(($active != status window),Speed - eMule + IRC)
  ....Grafik:speed irc gesamt.grafik
  ....Text:speed irc gesamt.text
  ..-
  ..IRC - Infos
  ...$iif(($active != status window),IRC DCC Get Info)
  ....Grafik:download grafik
  ....Grafik + Quelle:download grafik+quelle
  ....Text:download text
  ....Kurzinfo:download kurzinfo
  ....-
  ....Details:download detail
  ...$iif(($active != status window),IRC DCC Send Info)
  ....Grafik:upload grafik
  ....Grafik + Empfänger:upload grafik+opfer
  ....Text:upload text
  ....Kurzinfo:upload kurzinfo
  ....-
  ....Details:upload detail
  ..- 
  ..eMule - Infos
  ...$iif(($active != status window),eMule Stats)
  ....Details:emule.stats lang
  ....Kurz:emule.stats kurz
  ...$iif((($active != status window) && ($active = $chan)),Emule Announcer)
  ....$iif(!$timer(announcer. $+ $chan),Starten für $chan):dialog -om emule.announcer emule.announcer
  ....$iif($timer(announcer. $+ $chan),Beenden für $chan):announcer.aus 
  ..-
  ..TRAFFIC
  ...$iif(($active != status window),FlashFXP Traffic)
  ....Grafik:flash grafik
  ....Text:flash text
  ....-
  ....Kurzinfo:flash kurzinfo
  ...$iif(($active != status window),mIRC Traffic)
  ....$asctime(mmmm yyyy):s.traffic monat
  ....Jahr $asctime(yyyy):s.traffic gesamt
  ....-
  ....als Text:s.traffic text
  ...Traffic Statistik: { dialog -om stats.option stats.option | .timer -om 1 1 /did -fu stats.option 4 }
  .-

  ;---------------------------------------------------------------------------------------------------
  ;-------------------------------------- System Infos  ----------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  .$iif(($active != status window),OPP Informationen)
  ..System Info:systeminfo.alles
  ..-
  ..Betriebssystem:systeminfo.system
  ..-
  ..CPU Auslastung:systeminfo.cpuauslastung
  ..-
  ..Festplatten:systeminfo.platte
  ..-
  ..Grafikkarte:systeminfo.grafik
  ..-
  ..Hauptspeicher:systeminfo.ram 
  ..-  
  ..VRAM:systeminfo.vram
  ..-
  ..Onlinezeit:onlinezeit
  ..-
  ..OP Status:powerstatus
  ..-
  ..Channel Statistik:say $logo(14Channel Statistik4) | say 4[User Anzahl9 $nick(#,0) $+ 4] | say 4[Owner9 $nick(#,0,q) $+ ( $+ $round($calc($nick(#,0,q) / $nick(#,0) * 100),0) $+ % $+ )4] | say 4[ChanOps9 $nick(#,0,o) $+ ( $+ $round($calc($nick(#,0,o) / $nick(#,0) * 100),0) $+ % $+ )4] | say 4[HalfOps9 $nick(#,0,h) $+ ( $+ $round($calc($nick(#,0,h) / $nick(#,0) * 100),0) $+ % $+ )4] | say 4[Voice User9 $nick(#,0,v) $+ ( $+ $round($calc($nick(#,0,v) / $nick(#,0) * 100),0) $+  % $+ )4] | say 4[restliche User9 $nick(#,0,r) $+ ( $+ $round($calc($nick(#,0,r) / $nick(#,0) * 100),0) $+  % $+ )4] | say $opp
  ..-
  ..Prozessor:systeminfo.cpu
  ..-
  ..Server Verbindung:serverstatus
  ..-
  ..Script Version:advertise
  ..-
  ..Verbindung:systeminfo.verbindung
  ..-
  ..$iif(($active != status window),Virtualdub & Zoomplayer Info)
  ...kurz:zoomplayer kurz
  ...lang:zoomplayer lang
  ..-
  ..$iif(($active != status window),WinAMP Satus)
  ...kurz:winamp.info kurz
  ...lang:winamp.info lang
  .-

  ;---------------------------------------------------------------------------------------------------
  ;-------------------------------------- Stats Options ----------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  .OPTIONS
  ..MAIN SETTINGS:dialog -om stats.option stats.option
  ..Fehler melden/Memo hinterlassen:s.bug
  ..OPPStats entladen
  ...Sicher ?
  ....ECHT???
  .....Okay !!:unload -rs $script
  ..-
  ..Über OPPStats:about
  ..Advertise:advertise
  .-
  ;---------------------------------------------------------------------------------------------------
  ;-------------------------------------- Start Programme --------------------------------------------
  ;---------------------------------------------------------------------------------------------------
  .Programme starten
  ..Word Pad: run wordpad.exe
  ..iExplorer:/run iexplore
  .-

  ;---------------------------------------------------------------------------------------------------
  ;-------------------------------------- Plugins ----------------------------------------------------
  ;---------------------------------------------------------------------------------------------------

  .Plugins laden/entladen
  ..XDCC Browser
  ...Browser laden:load -rs oppstatsfinal/XDCC-Manager/XDCCb.mrc
  ...Browser entladen:unload -rs oppstatsfinal/XDCC-Manager/XDCCb.mrc
  ..OPPQuery Blocker
  ...Query Blocker laden:load -rs oppstatsfinal/OPPQueryBlocker/oppstfu.mrc
  ...Query Blocker entladen:unload -rs oppstatsfinal/OPPQueryBlocker/oppstfu.mrc
  ..IRCOP
  ...IRCOP laden:load -rs oppstatsfinal/IRCOP/ircop.mrc
  ...IRCOP entladen:unload -rs oppstatsfinal/IRCOP/ircop.mrc
  ..MeProtection
  ...MeProtection laden:load -rs oppstatsfinal/protect/MeProtection.mrc
  ...MeProtection entladen:unload -rs oppstatsfinal/protect/MeProtection.mrc
  ..BADWORD
  ...Badword laden:load -rs oppstatsfinal/badwordkick/oppbadwords.mrc
  ...Badword entladen:unload -rs oppstatsfinal/badwordkick/oppbadwords.mrc
  ..OPP Auto Away
  ...Auto Away laden:load -rs oppstatsfinal/away/oppaway.mrc
  ...Auto Away entladen:unload -rs oppstatsfinal/away/oppaway.mrc
  ..Auto Identify
  ...Auto Identify laden:load -rs oppstatsfinal/autoidentify/oppautoidentify.mrc
  ...Auto Identify entladen:unload -rs oppstatsfinal/autoidentify/oppautoidentify.mrc
  ..Funny Script
  ...Funny Script laden:load -rs oppstatsfinal/funny/funny.mrc
  ...Funny Script entladen:unload -rs oppstatsfinal/funny/funny.mrc
  ..OPP Lastseen
  ...Lastseen laden:load -rs oppstatsfinal/lastseen/opplastseen.mrc
  ...Lastseen entladen:unload -rs oppstatsfinal/lastseen/opplastseen.mrc
  ..MSN
  ...MSN für mIRC laden:load -rs oppstatsfinal/msn/msn.mrc
  ...MSN für mIRC entladen:unload -rs oppstatsfinal/msn/msn.mrc
  ..SWITCHBAR
  ...SWITCHBAR laden:load -rs oppstatsfinal/switchbar/switchbar.ini
  ...SWITCHBAR entladen:unload -rs oppstatsfinal/switchbar/switchbar.ini
  ..Azureus (Bittorrent)
  ...Azureus laden:load -rs oppstatsfinal/azu/azureus.mrc
  ...Azureus entladen:unload -rs oppstatsfinal/azu/azureus.mrc


} 

; ################################  stats start ###################################
alias stats.start {
  traffic
  hmake stats 100
  hload stats $shortfn($scriptdir) $+ settings.sav
  echo -s $logo 11geladen 
  if (%stats.down.gesamt) { echo -s 11IRC Traffic $rate(%stats.down.gesamt) down - $rate(%stats.up.gesamt)  up }
  if ($lese(flash.dir)) {
    flash.traffic
    echo -s 11FTP Traffic: $rate(%flash.download) down - $rate(%flash.upload) up 
    unset %flash.*
  }
  if ($lese(multi.check)) { s.dcc.an }
}

; ################################  stats check ###################################
alias -l stats.check {
  if ($hget(stats)) { hfree stats }
  hmake stats 100
  set %stats.check 1
  set %stats.version Final
  set %stats.update 25.05.2005
  add used -1 
  add max.down 95232 
  add max.up 19456 
  add verbindung 1
  add text.farbe1 09 
  add text.farbe2 04 
  add logo.farbe 04
  add speed.farbe1 04 
  add speed.farbe2 09 
  add speed.option •
  add fortschritt.farbe1 04
  add fortschritt.farbe2 09
  add multi.check an
  add multi.farbe1 09 
  add multi.farbe2 11 
  add multi.freq 30
  add multi.anzeige1
  add multi.anzeige2
  add multi.anzeige3
  add multi.anzeige4
  add multi.anzeige5
  add multi.anzeige6
  add stats.dir $shortfn($scriptdir) 
  traffic
  script.check
  if (%script.found) { 
    hload stats $shortfn($findfile($mircdir,settings.sav,1))
    var %instal.datum = $lese(instal.datum)
    .timer -m 1 1 /.unload -rsn $shortfn(%script.version)  
  }
  if (%instal.datum) { add traffic.datum %instal.datum }
  else { 
    add instal.datum $asctime(dd.mm.yyyy) um $asctime(HH:nn) Uhr
    add traffic.datum $lese(instal.datum)
  }
  window -adfhok0 +Le @OPPStats.Start.Check 10 10 440 320 
  aline -ph @OPPStats.start.check $s.logo 11geladen $opp
  aline -ph @OPPStats.start.check 9 $+ $str(-,64)
  aline -ph @OPPStats.start.check 7[OPPStats %stats.version SYSTEM START CHECK]
  aline -ph @OPPStats.start.check 9 $+ $str(-,64)
  aline -ph @OPPStats.start.check 4[MIRC INFO]
  if ($version >= 6.03) { aline -ph @OPPStats.start.check 9mIRC Version $version installiert... }
  else { 
    aline -ph @OPPStats.start.check 4mIRC Version $version installiert. Empfohlen wird mIRC ab 6.03, 
    aline -ph @OPPStats.start.check 4da es ansonsten zu Programm-Fehlern kommen könnte.
  }
  if ($ilogo) { aline -ph @OPPStats.start.check 9Invision $r.static(Script,Version) Build $r.static(Script,build) installiert... }
  if ($exists($lese(stats.dir) $+ MultiInfo.dll)) { aline -ph @OPPStats.start.check 9MultiInfo.dll installiert... } 
  else {
    aline -ph @OPPStats.start.check 4MultiInfo.dll fehlt. Bitte in den OPPStats Ordner kopieren und Script nochmal einladen. 
    unset %stats.* 
    hfree stats 
    .unload -rsn $script 
  }
  if ($gotmircryption = $true) { 
    aline -ph @OPPStats.start.check 9Mircryption installiert... Aktiviere Crypting. 
    add crypt.check an 
  }
  else { aline -ph @OPPStats.start.check 9Mircryption nicht installiert... }
  aline -ph @OPPStats.start.check 9 $+ $str(-,64)
  aline -ph @OPPStats.start.check 4[SYSTEM INFO]
  add prozessor $sys(cpuinfo) @ $sys(cpuspeed)
  aline -ph @OPPStats.start.check 9OS: Windows $os
  aline -ph @OPPStats.start.check 9CPU: $lese(prozessor) 
  aline -ph @OPPStats.start.check 9Speicher: $sys(totalphysicalmem) MB
  aline -ph @OPPStats.start.check 9 $+ $str(-,64)
  if (%script.version) {
    aline -ph @OPPStats.start.check 11Ältere OPPStats Version gefunden: $nopath(%script.version)
    aline -ph @OPPStats.start.check 11Übernehme die persönlichen Settings...
  }
  else {
    aline -ph @OPPStats.start.check 11Bitte den Emule Pfad in den Optionen einstellen. 
    aline -ph @OPPStats.start.check 11Bitte den FlaxhFXP Pfad in den Optionen einstellen. 
  }
  aline -ph @OPPStats.start.check 11Aktiviere OPPStats™ Multi Info Fenster.
  aline -ph @OPPStats.start.check 9 $+ $str(-,64)
  aline -ph @OPPStats.start.check 9And now: Have Fun, $me !
  aline -ph @OPPStats.start.check 9(Fenster kann nun geschlossen werden)
  hsave -o stats $lese(stats.dir) $+ settings.sav 
  s.dcc.an 
  vorschau speed 
  vorschau fortschritt 
  .timer -o 1 3 /dialog -om stats.option stats.option
  .reload -rs1 $+(",$script,")
}

; ################################  stats exit  #################################
alias -l stats.exit {
  if  (!$lese(rekord.zeit)) || ($uptime(system,3) > $lese(rekord.zeit)) { 
    add rekord.zeit $uptime(system,3) 
    hsave -o stats $lese(stats.dir) $+ settings.sav 
  }
}

; ################################  stats end  #################################
alias -l stats.end {
  if ($timer(s.dcc)) { s.dcc.aus }
  text.win OPPStats.by.OppTupacShakur 420 135 60
  aline -ph @OPPStats.by.OppTupacShakur $logo  7entladen.
  aline -ph @OPPStats.by.OppTupacShakur 9Du hast OPPStats  $lese(used) mal benutzt.
  aline -ph @OPPStats.by.OppTupacShakur 9installiert am: $lese(instal.datum)
  aline -ph @OPPStats.by.OppTupacShakur 9Version: %stats.version
  aline -ph @OPPStats.by.OppTupacShakur 9Verzeichnis: $lese(stats.dir)
  .remove $lese(stats.dir) $+ settings.sav 
  .remove $lese(stats.dir) $+ fortschritt.bmp 
  .remove $lese(stats.dir) $+ speed.bmp 
  unset %stats.* 
  hfree stats
}

; ################################  remote events ################################
on *:load:stats.check
on *:start:stats.start
on *:unload:stats.end 
on *:exit:stats.exit
on *:text:*:#: {
  if ($window(@s.dcc))  { 
    if ($me isin $1-) {
      unset %stats.stop
      clear -n @s.dcc
      var %dcc.txt = ** NICK ALARM ** $upper($nick) in $chan $+ : $strip($1-7)
      var %dcc.width = $s.dcc.width(%dcc.txt)
      drawtext -no @s.dcc 7 arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
      set -u30 %stats.stop 1 
      s.dcc.rahmen  
    }
  }
}
on *:action:*:#: {
  if ($window(@s.dcc))  { 
    if ($me isin $1-) {
      unset %stats.stop
      clear -n @s.dcc
      var %dcc.txt = ** NICK ALARM ** $upper($nick) in $chan $+ : $nick $strip($1-7)
      var %dcc.width = $s.dcc.width(%dcc.txt)
      drawtext -no @s.dcc 7 arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
      set -u30 %stats.stop 1 
      s.dcc.rahmen  
    }
  }
}
on *:filercvd:*: {
  inc %stats.down.anzahl
  inc %stats.down.speed $get($nick).cps
  inc %stats.down.monat. [ $+ [ $asctime(mm) ] ] $size($shortfn($filename))
  inc %stats.down.gesamt $size($shortfn($filename))
}
on *:filesent:*: {
  inc %stats.up.anzahl
  inc %stats.up.monat. [ $+ [ $asctime(mm) ] ] $size($shortfn($filename))
  inc %stats.up.gesamt $size($shortfn($filename))
}
on *:getfail:*.*: { 
  if ($window(@s.dcc))  { 
    unset %stats.stop
    clear -n @s.dcc
    var %dcc.txt = *** DCC FAILED! $left($nopath($filename),40) - $nick *** 
    var %dcc.width = $s.dcc.width(%dcc.txt)
    drawtext -no @s.dcc 4 arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
    set -u30 %stats.stop 1 
    s.dcc.rahmen  
  }
}
ctcp *:dcc send*:*:{
  if ($window(@s.dcc))  {
    unset %stats.stop 
    clear -n @s.dcc
    var %dcc.txt = *** INCOMING DCC - $left($nopath($filename),35) ( $+ $rate($6) $+ ) - $nick - $network *** 
    var %dcc.width = $s.dcc.width(%dcc.txt)
    drawtext -no @s.dcc 8 arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
    set -u30 %stats.stop 1 
    s.dcc.rahmen  
  }
}
ctcp *:version:*: { ctcpreply $nick version $f2 $+ OPPStats %stats.version $f1 $+ mit $f2 $+ Stats zu XDCC, FTP, Azureus(Bittorrent), eMule und zum System, inkl. Auto Away Plugin, MSN Plugin, Funny Script, Switchbar, !seen Plugin $logo $opp }

; #################################  main settings  ############################### 
dialog stats.option {
  title "OPPStats Final by OppTupacShakur"
  size -1 -1 274 217
  icon $lese(stats.dir) $+ stats.ico, 0
  option dbu
  tab "Haupt Einstellungen", 1, 2 0 270 163
  tab "Grafik Setup", 2
  tab "Multi Info Setup", 3
  tab "Statistik", 4
  tab "About/Uninstall", 5
  button "Save Settings und Exit", 81, 2 171 271 12, ok
  box "Active Help ", 6, 2 186 271 28
  edit "", 7, 5 194 265 17, multi
  box "Allgemein ", 8, 5 15 130 71, tab 1
  box "Internet Verbindung ", 9, 139 15 130 71, tab 1
  box "Text Farbe 1 ", 10, 5 87 130 71, tab 1
  box "Text Farbe 2 ", 11, 139 87 130 71, tab 1
  button "Emule Pfad wählen", 12, 21 25 98 11, tab 1
  button "FlashFXP Pfad wählen", 80, 21 40 98 11, tab 1
  button "Crypting: aus", 13, 21 55 98 11, tab 1
  button "Mulit Info: aus", 14, 21 70 98 11, tab 1
  list 15, 152 26 103 36, tab 1 size
  text "" 16, 160 67 103 11, tab 1 
  list 17, 39 98 60 43, tab 1 size
  list 18, 175 98 60 43, tab 1 size
  check "Logo Farbe anpassen", 19, 39 145 75 10, tab 1
  box "Speed Grafik ", 21, 5 15 156 71, tab 2
  box "Fortschritt Grafik ", 22, 5 87 156 71, tab 2
  list 23, 20 29 38 37, tab 2 size
  list 24, 62 29 45 37, tab 2 size
  list 25, 111 29 45 37, tab 2 size
  icon 26, 173 30 88 43,  $lese(stats.dir) $+ speed.bmp, 0, tab 2
  button "Zufall", 27, 65 71 40 9, tab 2
  list 28, 26 102 45 37, tab 2 size
  list 29, 98 102 45 37, tab 2 size
  icon 30, 173 102 88 43,  $lese(stats.dir) $+ fortschritt.bmp, 0, tab 2
  button "Zufall", 31, 65 144 40 9, tab 2
  box "Speed Grafik wird so aussehen: ", 32, 165 15 104 71, tab 2
  box "Fortschritt Grafik wird so aussehen: ", 33, 165 87 104 71, tab 2
  box "Multi Info Anzeige ", 35, 5 15 264 71, tab 3
  list 38, 39 98 60 53, tab 3 size
  list 39, 175 98 60 53, tab 3 size
  box "Multi Info Farbe 1 ", 40, 5 87 130 71, tab 3
  box "Multi Info Farbe 2 ", 62, 139 87 130 71, tab 3
  edit "Intervall:", 65, 123 67 25 9, tab 3
  button "-", 66, 153 67 12 9, tab 3
  button "+", 67, 168 67 12 9, tab 3
  text "Intervall:", 75, 97 68 25 8, tab 3
  check "Zeige IRC Grafik", 68, 85 27 50 10, tab 3
  check "Zeige Emule Grafik", 69, 150 27 55 10, tab 3
  check "Zeige Online Zeit", 70, 85 38 50 10, tab 3
  check "Zeige System Info", 71, 150 38 55 10, tab 3
  check "Zeige Ram Info", 72, 85 49 50 10, tab 3
  check "Zeige Drive Info", 73, 150 49 55 10, tab 3
  box "IRC Traffic Total ", 91, 5 15 130 71, tab 4
  box "IRC Traffic ", 92, 139 15 130 71, tab 4
  box "Flash FXP Traffic ", 93, 5 87 264 71, tab 4
  text "Download:", 94, 25 25 37 8, tab 4
  edit "" 95, 56 24 46 10, tab 4
  text "Upload:", 96, 25 37 36 8, tab 4
  edit "" 97, 56 36 46 10, tab 4
  text "Gets:" 98, 25 49 38 8, tab 4
  edit "" 99, 56 48 46 10, tab 4
  text "Sends:", 100, 25 61 37 8, tab 4
  edit "" 101, 56 60 46 10, tab 4
  text "Total:", 102, 25 73 35 8, tab 4
  edit "" 103, 56 72 46 10, tab 4
  text "Download:", 104, 160 30 35 8, tab 4
  edit "" 105, 195 29 46 10, tab 4
  text "Upload:", 106, 160 46 35 8, tab 4
  edit "" 107, 195 45 46 10, tab 4
  text "Total:", 108, 160 62 35 8, tab 4
  edit "" 109, 195 61 46 10, tab 4
  text "Download:", 110, 50 102 35 8, tab 4
  edit "" 111, 85 101 46 10, tab 4
  text "Upload:", 112, 140 102 35 8, tab 4
  edit "" 113, 175 101 46 10, tab 4
  text "monatlich:", 114, 50 120 35 8, tab 4
  edit "" 115, 85 119 46 10, tab 4
  text "täglich:", 116, 140 120 35 8, tab 4
  edit "" 117, 175 119 46 10, tab 4
  text "Total:", 118, 50 138 35 8, tab 4
  edit "" 119, 85 137 46 10, tab 4
  text "Avg. Speed:", 120, 138 140 35 8, tab 4
  edit "" 121, 175 137 46 10, tab 4
  box "Script Info ", 41, 5 15 130 71, tab 5
  box "Was ist neu ", 42, 139 15 130 71, tab 5
  box "Stats Reset  ", 43, 5 87 130 71, tab 5
  box "Stats Uninstall ", 44, 139 87 130 71, tab 5
  text "Stats Version:", 45, 15 25 37 8, tab 5
  edit "" 46, 49 24 76 10, tab 5
  text "Install Verz.:", 47, 15 37 36 8, tab 5
  edit "" 48, 49 36 76 10, tab 5 
  text "installiert am:" 49, 15 49 38 8, tab 5
  edit "" 50, 49 48 76 10, tab 5 
  text "benutzt:", 51, 15 61 37 8, tab 5
  edit "" 52, 49 60 76 10, tab 5 
  text "System:", 53, 15 73 35 8, tab 5
  edit "" 54, 49 72 76 10, tab 5 
  list 55, 146 24 116 58, tab 5 size
  button "Einstellungen zurücksetzen", 56, 20 108 100 10, tab 5
  button "Jetzt Starten", 57, 20 130 46 10, tab 5, disable
  button "Zurück", 58, 74 130 46 10, tab 5 disable
  button "Stats deinstallieren", 59, 155 108 100 10, tab 5
  button "Jetzt Starten", 60, 155 130 46 10, tab 5, disable
  button "Zurück", 61, 210 130 46 10, tab 5 disable
}
on *:dialog:stats.option:*:*:{
  if ($devent = init) { 
    var %farben = 00 Weiss,01 Schwarz,02 Dunkel Blau,03 Grün,04 Rot,05 Braun,06 Lila,07 Orange,08 Gelb,09 Hell Grün,10 Zyan,11 Hell Zyan,12 Blau,13 Pink,14 Grau,15 Hell Grau
    var %neu = Neu: ADSL2 fähig, Neu: MeProtection, Update: XDCC Browser, Neu: Movie Info, Neu: Änderungen der Anordnung, Neu: Switchbar Addon, Neu: Funny Script Addon, Neu: Azureus Plugin, Neu: Last Seen, Neu: XDCC-BrowserUpdate,Neu: MSN Plugin, Neu: Autoidentify, Neu: Autoaway, Neu: OPp Control, Neu: Channel Statistik, Neu: System Infos, Neu: OP Status, Neu: Statistik, Neu: Flash FXP Support, Neu: IRC Send Kurzinfo, Neu: Speed IRC, $&
      Neu: Traffic Anzeige,Neu: IRC Down Kurzinfo, Neu: Nick Alert, Neu: Start Check,Neu: Multi Info Fenster, Neu: Options-Menü,Neu: Designauswahl Grafik,Neu: Active Help,Neu: IRC Upload Details,Neu: Gesamtbandbreite als Text,Neu: Leitungsauslastung und Traffic,Neu: eMule Announcer Setup,Neu: Unterstützung für eMule 0.22-0.28
    var %verbindung = ADSL 768 kbit / 128 kBit ,ADSL 1024 kBit  / 256 kBit ,ADSL 1024 kBit  / 384 kBit ,ADSL 1024 kBit  / 512 kBit , $&
      ADSL 2048 kBit  / 192 kBit ,ADSL 2048 kBit  / 384 kBit,ADSL 2048 kBit  / 512 kBit,ADSL 3072 kBit  / 192 kBit, ADSL 3072 kBit  / 384 kBit, ADSL 3072 kBit  / 512 kBit,ADSL 4096 kBit  / 256 kBit , ADSL 4096 kBit  / 384 kBit ,ADSL 4096 kBit  / 512 kBit , $&
      ADSL 5120 kBit  / 512 kBit ,ADSL 6144 kBit  / 256 kBit ,ADSL 6144 kBit  / 384 kBit ,ADSL 6144 kBit  / 512 kBit ,ADSL 6144 kBit  / 1024 kBit ,ADSL 6144 kBit  / 1536 kBit ,ADSL2 12288 kBit  / 512 kBit ,ADSL2 12288 kBit  / 1024 kBit ,ADSL2 12288 kBit  / 2048 kBit , $&
      ADSL2 12288 kBit  / 3072 kBit ,ADSL2 12288 kBit  / 4096 kBit ,ADSL2 16384 kBit  / 512 kBit ,ADSL2 16384 kBit  / 1024 kBit ,ADSL2 16384 kBit  / 2048 kBit ,ADSL2 16384 kBit  / 3072 kBit ,ADSL2 16384 kBit  / 4096 kBit ,SDSL 768 kBit / 768 kBit, SDSL 1536 kBit / 1536 kBit
    var %zeichen = • ,º ,¤ ,‡ , $chr(124)
    if ($lese(emule.dir)) { option o 12 1 Emule Pfad: ( $+ $longfn($left($lese(emule.dir),25)) $+ ) }
    if ($lese(flash.dir)) { option o 80 1 Flash Pfad: ( $+ $longfn($left($lese(flash.dir),25)) $+ ) }
    if ($lese(crypt.check)) { option o 13 1 Crypting: an }
    if ($lese(multi.check)) { option o 14 1 Multi Info: an }
    listen stats.option 15 %verbindung
    option c 15 $lese(verbindung)
    option o 16 1 Max. Down: $max.down kb - Max Up: $max.up kb
    listen stats.option 17,18,24,25,28,29,38,39 %farben
    option c 17 $calc($lese(text.farbe1) + 1) 
    option c 18 $calc($lese(text.farbe2) + 1)
    if ($lese(logo.check)) { option c 19 }
    listen stats.option 23 %zeichen
    option c 23 $didwm($dname,23,$lese(speed.option))
    option c 24 $calc($lese(speed.farbe1) + 1)
    option c 25 $calc($lese(speed.farbe2) + 1)
    option c 28 $calc($lese(fortschritt.farbe1) + 1)
    option c 29 $calc($lese(fortschritt.farbe2) + 1)
    option c 38 $calc($lese(multi.farbe1) + 1)
    option c 39 $calc($lese(multi.farbe2) + 1)
    option a 46 OPPStats %stats.version
    option a 48 $longfn($lese(stats.dir))
    option a 50 $lese(instal.datum)
    option a 52 $lese(used) mal
    option a 54 $lese(prozessor)
    listen stats.option 55 %neu
    option o 65 1 $lese(multi.freq) sek.
    var %ct = 1 
    while (%ct <= 6) { if ($lese(multiz.anzeige $+ %ct)) { option c $calc(%ct + 67) } | inc %ct }
    option o 92 1 IRC Traffic $asctime(mmm yyyy)
    if ($lese(flash.dir)) { 
      flash.traffic
      option o 93 1 FlashFXP Traffic seit %flash.datum.date 
    }
    else { option o 93 1 FlashFXP Traffic }
    option a 95 $rate(%stats.down.gesamt)
    option a 97 $rate(%stats.up.gesamt)
    if (%stats.down.anzahl) { option a 99 %stats.down.anzahl }
    else { option a 99 0 }
    if (%stats.up.anzahl) { option a 101 %stats.up.anzahl }
    else { option a 101 0 }
    option a 103 $rate($calc(%stats.down.gesamt + %stats.up.gesamt))
    option a 105 $rate(%stats.down.monat. [ $+ [ $asctime(mm) ] ] )
    option a 107 $rate(%stats.up.monat. [ $+ [ $asctime(mm) ] ] )
    option a 109 $rate($calc(%stats.down.monat. [ $+ [ $asctime(mm) ] ] + %stats.up.monat. [ $+ [ $asctime(mm) ] ] ))
    option a 111 $rate(%flash.download)
    option a 113 $rate(%flash.upload)
    option a 115 $rate(%flash.traffic.monat)
    option a 117 $rate(%flash.traffic.tag)
    option a 119 $rate(%flash.total.traffic)
    if (!%flash.schnitt) { var %flash.schnitt = 0.00 kb }
    option a 121 %flash.schnitt
    .timertitlebar -io 0 7 /titlebar
    unset %flash.*
  }
  elseif ($devent = close) { .timerst.help off | titlebar }
  elseif ($devent = mouse) { .timerst.help -iom 1 200 active.help $mouse.x $mouse.y  }
  elseif ($devent = sclick) {
    if ($did = 81) { hsave -o stats $lese(stats.dir) $+ settings.sav }
    elseif ($did = 12) {
      add emule.dir $shortfn($$sdir(c:,Wähle den Emule Pfad zb. C:\Programme\eMule))
      text.win OPPStats.by.OppTupacShakur 420 100 10
      if ($findfile($lese(emule.dir),emule.exe,1,1)) { 
        option o 12 1 Emule Pfad: $chr(40) $+ $longfn($left($lese(emule.dir),25)) $+ $chr(41)
        emule.preferences 
        emule.onlinesig 
      }
      else { 
        aline -ph @OPPStats.by.OppTupacShakur 4Achtung: keine Emule.exe im Ordner $longfn($lese(emule.dir))
        aline -ph @OPPStats.by.OppTupacShakur 4Bitte den gewählten Ordner überprüfen.
        option o 12 1 Emule Pfad wählen 
        del emule.dir
      }
    }
    elseif ($did = 13) {
      if ($gotmircryption != $true) { option o 13 1 Kein Mircrypt installiert | .timer -o 1 2 / option o 13 1 Crypting: aus | return }
      if (!$lese(crypt.check)) { option o 13 1 Crypting: an | add crypt.check an  }
      else { option o 13 1 Crypting: aus | del crypt.check } 
    }
    elseif ($did = 14) {
      if (!$exists($lese(stats.dir) $+ MultiInfo.dll)) { option o 14 1 MultiInfo.dll fehlt ! | .timer -o 1 2 / option o 14 1 Mulit Info: aus | return }
      if (!$lese(multi.check)) { s.dcc.an | option o 14 1 Multi Info: an | add multi.check an }
      else { s.dcc.aus | option o 14 1 Multi Info: aus | del multi.check } 
    }
    elseif ($did = 15) {
      var %dn = $calc($tok(15,2,32) * 128 - 3072) | var %up = $calc($tok(15,5,32) * 128 + 3072)
      add max.down %dn | add max.up %up  | add verbindung $did($dname,15).sel
      option o 16 1 Max. Down: $max.down kb - Max Up: $max.up kb
    }
    elseif (($did = 17) || ($did = 18)) { 
      var %farbe = $tok($did,1,32) | add text.farbe $+ $calc($did - 16) %farbe
      if (($did = 17) && ($lese(logo.check))) { add logo.farbe %farbe }
    }
    elseif ($did = 19) {
      if (!$lese(logo.check)) { add logo.check an | add logo.farbe $tok(17,1,32) }
      else { del logo.check | add logo.farbe 04 } 
    }
    elseif (($did >= 23) && ($did <= 25)) {
      if ($did = 23) { speed.balken.opt }
      elseif ($did = 24) { speed.balken.farbe 1 }
      else { speed.balken.farbe 2 }
      vorschau speed | option g 26 $lese(stats.dir) $+ speed.bmp
    }
    elseif ($did = 27) { 
      option c 23 $rand(1,5) | option c 24 $rand(4,16) | option c 25 $rand(4,16)
      speed.balken.opt | speed.balken.farbe 1 | speed.balken.farbe 2 | vorschau speed 
      option g 26 $lese(stats.dir) $+ speed.bmp
    }
    elseif (($did = 28) || ($did = 29)) { fortschritt.balken.farbe $calc($did - 27) | vorschau fortschritt | option g 30 $lese(stats.dir) $+ fortschritt.bmp }
    elseif ($did = 31) { 
      option c 28 $rand(4,16) | option c 29 $rand(4,16) | fortschritt.balken.farbe 1 | fortschritt.balken.farbe 2
      vorschau fortschritt | option g 30 $lese(stats.dir) $+ fortschritt.bmp
    }
    elseif (($did = 38) || ($did = 39)) { add multi.farbe $+ $calc($did - 37) $tok($did,1,32) }
    elseif ($did = 56) { option b 56 | option e 57,58 | option f 57  }
    elseif ($did = 57) { dialog -c stats.option stats.option | if ($timer(s.dcc)) { s.dcc.aus } | unset %stats.* | stats.check }
    elseif ($did = 58) { option e 56 | option b 57,58 | option f 56 }
    elseif ($did = 59) { option b 59 | option e 60,61 | option f 60 }
    elseif ($did = 60) { dialog -c stats.option stats.option | .unload -rs $script }
    elseif ($did = 61) { option e 59 | option b 60,61 | option f 59 }
    elseif ($did = 66) { add multi.freq $calc($lese(multi.freq) - 15) | if ($lese(multi.freq) < 15) { add multi.freq 5 } | option o 65 1 $lese(multi.freq) sek. } 
    elseif ($did = 67) { if ($lese(multi.freq) = 5) { add multi.freq 0 }  | add multi.freq $calc($lese(multi.freq) + 15) | option o 65 1 $lese(multi.freq) sek. } 
    elseif (($did >= 68) && ($did <= 73)) { 
      if (!$lese(multiz.anzeige $+ $calc($did - 67))) { add multiz.anzeige $+ $calc($did - 67) an } | else { del multiz.anzeige $+ $calc($did - 67) }
    }
    elseif ($did = 80) {
      add flash.dir $shortfn($$sdir(c:,Wähle den FlashFXP Pfad zb. C:\Programme\FlashFXP))
      if ($findfile($lese(flash.dir),flashfxp.exe,1,1)) { 
        option o 80 1 Flash Pfad: $chr(40) $+ $longfn($left($lese(flash.dir),25)) $+ $chr(41)
      }
      else { 
        text.win OPPStats.by.OppTupacShakur 420 100 10
        aline -ph @OPPStats.by.OppTupacShakur 4Achtung: keine FlashFXP.exe im Ordner $longfn($lese(flash.dir))
        aline -ph @OPPStats.by.OppTupacShakur 4Bitte den gewählten Ordner überprüfen.
        del flash.dir 
        option o 80 1 FlashFXP Pfad wählen
      }
    }
  }
}
alias -l titlebar {
  if ($dialog(stats.option)) {
    if (!%title.change) {
      set %title.change 1
      dialog -t stats.option OPPStats Final by OppTupacShakur
    }
    else {
      unset %title.change 
      dialog -t stats.option based on Stats FINAL by ACID4u
    }
  }
  else { unset %title.change | .timertitlebar off }
}

; ##########################  alias section ############################# 
;-----------------------------------------  allgemein --------------------------------------------
alias -l add { if ($1 isnum) { hadd -u $+ $1 stats $2- } | else { hadd stats $1- } }
alias -l crypt { if (!$lese(crypt.check)) { add 5 mg msg $active } | else { add 5 mg emsg $active } }
alias -l del { hdel stats $1 }  
alias -l f1 { var %tmp = $1- | return  $+ $lese(text.farbe1) $+ %tmp } 
alias -l f2 { var %tmp = $1- | return  $+ $lese(text.farbe2) $+ %tmp } 
alias -l grafik.win { window -Bphf +d @ $+ $1 1 0 0 1 1 | dll $multiinfo Attach @ $+ $1 | window -a @ $+ $1 $2 $3 $4 $5 }
alias -l mg { $lese(mg) $1- }
alias -l lese { return $hget(stats,$1) }
alias -l listen { if ($3 != $null) { var %ct = 1 | while (%ct <= $numtok($3-,44)) { did -a $1 $2 $gettok($3-,%ct,44) | inc %ct 1  } } }
alias -l logo {
  var %f1 = $lese(logo.farbe)
  var %version = $gettok(%stats.version,1,46)
  return  $+ $s.hr(logo.farbe) $+ 12—00O $+ $s.hr(logo.farbe) $+ 12-15p $+ $s.hr(logo.farbe) $+ 12-00p $+ $s.hr(logo.farbe) $+ 12-00S $+ $s.hr(logo.farbe) $+ 12-15t $+ $s.hr(logo.farbe) $+ 12-00a $+ $s.hr(logo.farbe) $&
    $+ 12-15t $+ $s.hr(logo.farbe) $+ 12-00s $+ $s.hr(logo.farbe) $+ 12—00F15i00n15a00l15™ $+ $s.hr(logo.farbe) $+ 12— $iif($1,« $+ $1- $+ 12»,) 
}
alias -l opp {
  return  $+ $s.hr(logo.farbe) $+ 12——15© $+ $s.hr(logo.farbe) $+ 12—00O $+ $s.hr(logo.farbe) $+ 12-15p $+ $s.hr(logo.farbe) $+ 12-00p $+ $s.hr(logo.farbe) $+ 12-00T $+ $s.hr(logo.farbe) $+ 12-15u $+ $s.hr(logo.farbe) $+ 12-00p $+ $s.hr(logo.farbe) $&
    $+ 12-15a $+ $s.hr(logo.farbe) $+ 12-00c $+ $s.hr(logo.farbe) $+ 12-00S $+ $s.hr(logo.farbe) $+ 12-15h $+ $s.hr(logo.farbe) $+ 12-00a $+ $s.hr(logo.farbe) $+ 12-15k $+ $s.hr(logo.farbe) $+ 12-00u $+ $s.hr(logo.farbe) $+ 12-15r $+ $s.hr(logo.farbe) $+ 12——
}
alias -l max.down { return $int($calc(($lese(max.down) + 3072) / 1024)) }
alias -l max.up { return $int($calc(($lese(max.up) - 3072) / 1024)) }
alias -l multiinfo { return $lese(stats.dir) $+ MultiInfo.dll }
alias -l option { did - $+ $1 stats.option $2- }
alias -l script.check {
  var %ct = 1
  while ($script(%ct)) { 
    if ((stats isin $nopath($script(%ct))) && ($script(%ct) != $script)) { 
      set -u15 %script.found 1 
      set -u15 %script.version $script(%ct) 
    } 
    inc %ct 
  }
}
alias -l sec { return $calc(($asctime(HH) * 3600) + ($asctime(nn) * 60) + $asctime(ss)) }
alias -l sys { return $dll($scriptdirsysteminfo.dll,$1,_) }
alias -l text.win { 
  if ($window(@ $+ $1) == $null) { window -dCafhok0 +Le @ $+ $1 1 1 $2 $3 } 
  else { clear @ $+ $1 } 
  .timer $+ $1 -o 1 $4 /window -c @ $+ $1 
}
alias -l traffic {
  var %tmp = %stats.down.monat. [ $+ [ $asctime(mm) ] ]
  unset %stats.down.monat.*
  set %stats.down.monat. [ $+ [ $asctime(mm) ] ] %tmp
  var %tmp = %stats.up.monat. [ $+ [ $asctime(mm) ] ]
  unset %stats.up.monat.*
  set %stats.up.monat. [ $+ [ $asctime(mm) ] ] %tmp
}
alias -l tok { return $gettok($did($dname,$1,$did($dname,$1).sel).text,$2,$3) }
alias -l used { hinc stats used }
alias -l zeit {
  %h = $int($calc($1 / 3600)) 
  %m = $int($calc(($1 - %h * 3600) / 60)) 
  %s = $calc($1 % 60)
  if ($2 = analog) {
    %h = %h Std 
    %m = %m min 
    %s = %s sek 
    return %h %m %s 
  }
  if (%h >= 24) { var %h = $calc(%h - 24) } 
  if (%h < 10) { %h = 0 $+ %h } 
  if (%m < 10) { %m = 0 $+ %m } 
  if (%s < 10) { %s = 0 $+ %s }
  return %h $+ : $+ %m $+ : $+ %s
}
;-----------------------------------------------  designs -------------------------------------------
alias -l fortschritt.balken {
  var %akt = $round($calc(($1  / $2) * $3),0) 
  var %übrig = $calc($3 - %akt)
  if ($1 > $2) { return  $+ $lese(fortschritt.farbe2) $+ , $+ $lese(fortschritt.farbe2) $+ $str(_,$3) }
  return  $+ $lese(fortschritt.farbe2) $+ , $+ $lese(fortschritt.farbe2) $+ $str(_,%akt) $+  $+ $lese(fortschritt.farbe1) $+ , $+ $lese(fortschritt.farbe1) $+ $str(_,%übrig) 
}
alias -l fortschritt.balken.farbe { add fortschritt.farbe $+ $1 $tok($calc($1 + 27),1,32) }
alias -l speed.balken {
  var %akt = $round($calc(($1  / $2) * $3),0) 
  var %übrig = $calc($3 - %akt)
  if ($1 > $2) { return  $+ $lese(speed.farbe2) $+ $str($lese(speed.option),$3) }
  return  $+ $lese(speed.farbe2) $+ $str($lese(speed.option),%akt) $+  $+ $lese(speed.farbe1) $+ $str($lese(speed.option),%übrig)
}
alias -l speed.balken.farbe { add speed.farbe $+ $1 $tok($calc($1 + 23),1,32) }
alias -l speed.balken.opt { add speed.option $tok(23,1,32) }
alias -l vorschau {
  window -afhp @sf 0 0 176 85 
  drawtext @sf 11 verdana 13 55 2 Vorschau 
  drawtext @sf 11 verdana 13 3 15 $str(-,24) 
  drawtext @sf 11 verdana 13 3 47 $str(-,24) 
  drawtext @sf 11 verdana 13 3 31 0%: 
  drawtext @sf 11 verdana 13 3 62 100%:
  if ($1 = fortschritt) {
    drawrect -f @sf $lese(fortschritt.farbe1) 1 50 31 110 16 
    drawrect -f @sf $lese(fortschritt.farbe2) 1 50 62 110 16
  }
  elseif ($1 = speed) {
    drawtext @sf $lese(speed.farbe1) verdana 13 50 32 $str($lese(speed.option),15)
    drawtext @sf $lese(speed.farbe2) verdana 13 50 63 $str($lese(speed.option),15)
  }
  drawsave @sf $lese(stats.dir) $+ $1 $+ .bmp 
  window -c @sf
}
;-------------------------------------------------  emule --------------------------------------------
alias -l emule { return $readini($lese(emule.dir) $+ $lese(emule.pref),$1,$2) }
alias -l emule.aus { 
  if ($calc($ctime - $file($lese(emule.dir) $+ onlinesig.dat).mtime) > 20) {
    echo -a 4-- Emule ist aus oder die Onlinesignatur deaktiviert -- $logo
    halt 
  }
}
alias -l emule.server {
  if ($read($lese(emule.dir) $+ onlinesig.dat,2) == $null) {
    echo -a 4-- Emule ist mit keinem Server verbunden -- $logo 
    halt 
  }
}
alias emule.speed { 
  add 5 emule.down $nkm($replace($gettok($read($lese(emule.dir) $+ onlinesig.dat,2),1,124),$chr(44),$chr(46)))
  add 5 emule.up $nkm($replace($gettok($read($lese(emule.dir) $+ onlinesig.dat,2),2,124),$chr(44),$chr(46)))
  if (!$lese(emule.down)) { add 5 emule.down 0.00 }
  if (!$lese(emule.up)) { add 5 emule.up 0.00 }
}
alias -l emule.onlinesig {
  if ($emule(emule,OnlineSignature) == 0) {
    aline -ph @OPPStats.by.OppTupacShakur 4Online-Signatur war ausgestellt. 
    aline -ph @OPPStats.by.OppTupacShakur  9Aktivere Online-Signatur in Emule. Erledigt.
    writeini $lese(emule.dir) $+ $lese(emule.pref) emule OnlineSignature 1
  }
  elseif ($emule(emule,OnlineSignature) == 1) { aline -ph @OPPStats.by.OppTupacShakur 9Online-Signatur ist aktiviert. }
}
alias -l emule.preferences {
  if ($readini($lese(emule.dir) $+ config\preferences.ini,emule,appversion)) { 
    aline -ph @OPPStats.by.OppTupacShakur 9Emule Version: $ifmatch
    add emule.pref config\preferences.ini
  }
  elseif ($readini($lese(emule.dir) $+ preferences.ini,emule,appversion)) { 
    aline -ph @OPPStats.by.OppTupacShakur  9Emule Version: $ifmatch 
    add emule.pref preferences.ini
  }
  else { add emule.pref preferences.ini }
  aline -ph @OPPStats.by.OppTupacShakur  9 $+ $longfn($lese(emule.dir)) $+ \emule.exe
  aline -ph @OPPStats.by.OppTupacShakur  9Stelle OPPStats ein auf: $longfn($lese(emule.dir)) 
}
;-----------------------------------------------  irc -------------------------------------------
alias -l gdown { 
  var %d-g = 0 
  var %d-ct = 0  
  :start 
  inc %d-ct
  if (!$get(%d-ct)) { return %d-g } 
  else {
    inc %d-g $get(%d-ct).cps 
    goto start 
  } 
}
alias -l gup {
  var %u-g = 0 
  var %u-ct = 0 
  :start 
  inc %u-ct 
  if (!$send(%u-ct)) { return %u-g } 
  else { 
    inc %u-g $send(%u-ct).cps 
    goto start 
  }
}
alias -l get.server { return $scid($get($1).cid).network }
alias -l get.schnitt { return $calc(($get($1).rcvd - $get($1).resume) / $get($1).secs) }
alias -l get.verbleibend { return $calc($get($1).size - $get($1).rcvd) }
alias -l get.übrig { return $round($calc($get.verbleibend($1) / $get.schnitt($1)),0) }
alias -l get.gesamtzeit { return $zeit($round($calc($get.übrig($1) + $get($1).secs),0),analog) }
alias -l get.ankunftzeit { return $zeit($round($calc($get.übrig($1) + $sec),0),digital) }
alias -l nkm {
  var %nk = $gettok($1,2,46)
  if (!%nk) || (%nk = 0)  { return $int($1) $+ .00 }
  if ($len(%nk) = 1) { return $1 $+ 0 } 
  return $int($1) $+ . $+ $left(%nk,2)
}
alias -l rate {
  if ($calc($1 / 1073741824) >= 1) { return $nkm($ifmatch) GB }
  if ($calc($1 / 1048576) >= 1) { return $nkm($ifmatch) MB }
  if ($calc($1 / 1024) > 0 ) { return $nkm($ifmatch) kb }
  return 0.00 kb
}
alias -l send.server { return $scid($send($1).cid).network }
alias -l send.schnitt { return $calc(($send($1).sent - $send($1).resume) / $send($1).secs) }
alias -l send.verbleibend { return $calc($send($1).size - $send($1).sent) }
alias -l send.übrig { return $round($calc($send.verbleibend($1) / $send.schnitt($1)),0) }
alias -l send.gesamtzeit { return $zeit($round($calc($send.übrig($1) + $send($1).secs),0),analog) }
alias -l send.ankunftzeit { return $zeit($round($calc($send.übrig($1) + $sec),0),digital) }
alias -l size { return $calc($replace($file($1-).size,-,2^32-)) }

; ###########################  speed total - irc - emule  ########################### 
alias -l speed {
  used 
  crypt 
  if ($1 = total) {
    if (!%stats.speed.erstbenutzung) {
      set %stats.speed.erstbenutzung 1
      echo 10 $+ $str(-,60)
      echo 11Hinweis bei erster Benutzung der Total Speed Anzeige:
      echo 10Die Bandbreite wird aus den Netzwerkadaptern der Systemsteuerung ausgelesen. 
      echo 10Dieses kann je nach System zw. 2-5 sek. dauern. Also nicht wundern. ^^
      echo 10 $+ $str(-,60)
      echo 10Lese nun aus der Systemsteuerung...
    }
    else { echo 10Lese aus Systemsteuerung.. }
    var %download = $nkm($calc($sys(banddown) + ($gdown / 1024)))
    var %upload = $nkm($calc($sys(bandup) + ($gup / 1024)))
    var %download.pc = $nkm($calc((%download / ($lese(max.down) / 1024)) * 100))
    var %upload.pc = $nkm($calc((%upload / ($lese(max.up) / 1024)) * 100))
    if (%download.pc > 100) { var %download.pc = 100 }
    if (%upload.pc > 100) { var %upload.pc = 100 }
    if ($2 = text) {
      mg $f1 $+ $logo(14All Total Speed)
      mg $f1 $+ Download: $f2 $+ 11 %download kb/s 4 ( $+ %download.pc % $+ ) $speed.balken(%download,$calc($lese(max.down) / 1024),15)
      mg $f1 $+ 3Upload: $chr(160) $chr(160) $f2 $+ 11 %upload kb/s 4 ( $+ %upload.pc % $+ ) $speed.balken(%upload,$calc($lese(max.up) / 1024),15)
      mg $f1 $+ 7On: $f2 $+ 14 $sys(adapter)
      mg $f1 $+ $opp
    }
    elseif ($2 = grafik) {
      var %traffic.std = $calc(%download * 3600 * 1024) 
      var %traffic.tag = $calc(%traffic.std * 24)
      mg $f1 $+ $logo(14Bandbreite)
      mg $f1 $+ Traffic: $f2 $+ $rate(%traffic.std) $+ /h - $rate(%traffic.tag) $+ /d @ $+ %download kb
      mg $f1 $+ $opp
    }
  }
  elseif ($1 = irc) {
    $emule.speed
    var %irc.download = $gdown 
    var %irc.upload = $gup
    var %gesamt.download = $nkm($calc($lese(emule.down) + (%irc.download / 1024)))
    var %gesamt.upload = $nkm($calc($lese(emule.up) + (%irc.upload / 1024)))
    var %auslastung = $round($calc((%gesamt.download  / ($lese(max.down) / 1024)) * 100),1) $+ $chr(37)
    if ($2 = download) {
      var %pc = $round($calc((%irc.download / $lese(max.down)) *100),0)
      mg $f1 $+ $logo(14IRC DownSpeed)
      mg $f1 $+ Download: 14<===4  $f2 $+ 11 $+ $rate(%irc.download) $+ /s 4 ( $+ %pc $+ % $+ )
      mg $f1 $+ $opp
    }
    elseif ($2 = upload) {
      var %pc = $round($calc((%irc.upload / $lese(max.up)) *100),0)
      mg $f1 $+ $logo(14IRC UpSpeed)
      mg $f1 $+ 3Upload: 14===>4  $f2 $+ 11 $+ $rate(%irc.upload) $+ /s 4 ( $+ %pc $+ % $+ )
      mg $f1 $+ $opp
    }
    elseif ($2 = download.upload) {
      mg $logo(14All IRC Speed)
      mg $f1 Download: $f2 $+ 11 $+  $rate(%irc.download) $+ /s  $speed.balken(%irc.download,$lese(max.down),18)
      mg $f1 3Upload: $chr(160) $chr(160) $f2 $+ 11 $+  $rate(%irc.upload) $+ /s  $speed.balken(%irc.upload,$lese(max.up),18)
      mg $f1 $+ $opp
    }
    elseif ($2 = gesamt.grafik) {
      var %traffic.std = $calc(%gesamt.download * 3600 * 1024) 
      var %traffic.tag = $calc(%traffic.std * 24)
      mg $logo(14eMule + IRC Speed) 
      mg $f1 Totale Bandbreite: $f2 $+ <--11 %gesamt.download kb/s 4 --> %gesamt.upload kb/s 
      mg $f1 14Traffic: $f2 $+ Stunde $rate(%traffic.std) - Tag: $rate(%traffic.tag)
      mg $f2 $+ $str(-,50)
      mg $f1 $chr(160) $+ $chr(160) IRC: $f2 $+ <--11 DOWN: $rate(%irc.download) $+ /s 4--> UP: $rate(%irc.upload) $+ /s 
      mg $f1 Emule: $+ $f2 <--11 DOWN: $lese(emule.down) kb/s 4--> UP: $lese(emule.up) kb/s 
      mg $f2 $+ $str(-,50)
      mg $f1 7Leitungs-Auslastung: $speed.balken(%gesamt.download,$calc($lese(max.down) / 1024),17) $f1 $+ ( $+ %auslastung $+ )
      mg $f1 $+ $opp
    }
    elseif ($2 = gesamt.text) {
      mg $logo(14eMule + IRC Speed)
      mg $f1 $+ 3Ich lade momentan mit $f2 $+ 11 $+ %gesamt.download kb/s $f1 $+ 3und gebe $f2 $+ 4 %gesamt.upload kb/s $+ $f1 $+ . $&
        3Im 9IRC: $f2 $+ 11 $rate(%irc.download) $+ /s down $f1 $+ 3und $f2 $+ 4 $rate(%irc.upload) $+ /s up $+ $f1 $+ . 3Bei 9eMule: $f2 $+ 11 $&
        $lese(emule.down) kb/s down $f1 $+ 3und $f2 $+ 4 $lese(emule.up) kb/s up $+ $f1 $+ . 3Meine Leitung wird zu $f2 $+ 7 %auslastung $f1 $+ 3genutzt.
      mg $f1 $+ $opp
    }
  }
  elseif ($1 = total.set) { $sys(change_adapter) }
}
; #################################  emule funktion  ############################## 
alias -l emule.stats {
  used 
  crypt
  emule.server
  emule.aus 
  emule.speed
  add 5 emule.download.kapazität $emule(emule,DownloadCapacity)
  add 5 emule.total.download $bytes($emule(Statistics,TotalDownloadedBytes),g)
  add 5 emule.total.upload $bytes($emule(Statistics,TotalUploadedBytes),g)
  add 5 emule.upload.maximal $emule(emule,MaxUpload)
  add 5 emule.upload.kapazität $emule(emule,UploadCapacity)
  add 5 emule.version $emule(emule,AppVersion)
  add 5 emule.nick $emule(emule,Nick)
  add 5 emule.avg.connec $emule(Statistics,ConnAvgConnections)
  mg $logo(14eMule Speed)
  var %down.transfer = $sys(total_down)
  if (%down.transfer) {
    mg $f1 Down: $f2 $+ $+ $lese(emule.down) kb/s ( $+ %down.transfer mb session $+ )
    mg $f1 3Up: $f2 $+ $lese(emule.up) kb/s ( $+ $sys(total_up) mb session $+ )
    mg $f1 $+ $opp
  }
  else { mg $f1 Down: $f2 $+ 11 $+ $lese(emule.down) kb/s 4 $+ $f1 - Up: $f2 $+ $lese(emule.up) kb/s }
  mg $f1 Speed: $speed.balken($lese(emule.down),$lese(emule.download.kapazität),23) 
  if ($2 = lang) { 
    mg $f2 $+ $str(-,47)
    mg $f1 Gesamt Down: $f2 $+ $lese(emule.total.download) GB $f1 Gesamt Up: $f2 $+ $lese(emule.total.upload) GB
    add 5 emule.up.down $round($calc($lese(emule.total.download) / $lese(emule.total.upload)),2)
    if ($lese(emule.avg.connec)) { add 5 emule.avg.txt $f1 Verbindungen: $f2 $+ $lese(emule.avg.connec) $f1 UL/DL Ratio: $f2 }
    else { add 5 emule.avg.txt $f1 Upload/Download Ratio: $f2 }
    if ($lese(emule.up.down) > 1) { mg $lese(emule.avg.txt) $+ 1: $+ $lese(emule.up.down) }
    elseif ($lese(emule.up.down) == 1) { mg $lese(emule.avg.txt) $+ 1:1 }
    else { mg $lese(emule.avg.txt) $lese(emule.up.down) $+ :1 }
    mg $f1 Version: $f2 $+ $lese(emule.version)  $f1 Nick: $f2 $+ $lese(emule.nick) 
    mg $f1 running on: $f2 $+ $lese(prozessor)
    mg $f1 Server: $f2 $+ $gettok($read($lese(emule.dir) $+ onlinesig.dat,1),2,124) ( $+ $gettok($read($lese(emule.dir) $+ onlinesig.dat,1),3,124) $+ )
    mg $f2 $+ $str(-,47)
    add 5 emule.upquote $round($calc(($lese(emule.upload.maximal) / $lese(emule.upload.kapazität)) * 100),0)
    mg $f1 Mein Up: $f2 $+ $lese(emule.upload.maximal) kb $f1 $+ von $f2 $+ $lese(emule.upload.kapazität) kb ( $+ $lese(emule.upquote) $+ $chr(37) $+ )
    mg $f1 Sharing Rate: $speed.balken($lese(emule.upload.maximal),$lese(emule.upload.kapazität),23) 
    mg $f1 $+ $opp
  }
}

; ##############################  emule announcer #################################
dialog emule.announcer {
  title "Emule Announcer"
  size -1 -1 105 118
  option dbu
  icon $lese(stats.dir) $+ stats.ico, 0
  text "", 3, 7 11 78 8
  button "Starten", 1, 5 102 38 12, disable
  button "Cancel", 4, 62 102 38 12
  box "Emule Speed zeigen in Channel:", 2, 4 2 97 21
  list 6, 26 39 51 50, size
  box "Pause zw. den Anzeigen (Intervall): ", 5, 4 28 97 68
}
on *:dialog:emule.announcer :*:*: {
  if ($devent = init) {
    set %announcer.chan $active 
    did -o announcer 3 1 %announcer.chan
    var %int = 1 Minute, 5 Minuten, 10 Minuten, 20 Minuten, 30 Minuten, 45 Minuten, 60 Minuten
    listen announcer 6 %int
  }
  elseif ($devent = close) { if (!$timer(announcer. $+ $active)) { unset %announcer.* } }
  elseif ($devent = sclick) {
    if ($did = 1) { 
      announcer.an 
      dialog -c emule.announcer emule.announcer
    }
    elseif ($did = 4) { dialog -c emule.announcer emule.announcer }
    elseif ($did = 6) { 
      did -e annonouncer 1 
      set %announcer.freq $calc($tok(6,1,32) * 60)
    }
  }
}
alias -l announcer {  
  emule.speed
  if (!$lese(crypt.check)) { var %announcer.mg = msg }
  else { var %announcer.mg = emsg }
  var %emule.download.kapazität = $emule(emule,DownloadCapacity)
  %announcer.mg $1 $logo(14eMule Speed)
  var %down.transfer = $sys(total_down)
  if (%down.transfer) {
    %announcer.mg $1 $f1 Down: $f2 $+ $lese(emule.down) kb/s ( $+ %down.transfer mb session $+ )
    %announcer.mg $1 $f1 3Up: $f2 $+ $lese(emule.up) kb/s  ( $+ $sys(total_up) mb session $+ )
    %announcer.mg $1 $f1 $+ $opp
  }
  else { %announcer.mg  $1 $f1 Down: $f2 $+ 11 $+ $lese(emule.down) kb/s 4 $f1 $+ - Up: $f2 $+ $lese(emule.up) kb/s }
  %announcer.mg $1 $f1 Speed: $speed.balken($lese(emule.down),%emule.download.kapazität,20) 
  %announcer.mg $1 $f1 $+ $opp 
}
alias -l announcer.an {
  used 
  .timerannouncer. $+ $active -io 0 %announcer.freq /announcer %announcer.chan
  echo -a 4*** Emule-Announcer aktiviert $logo  
  echo -a 4*** Intervall: $calc(%announcer.freq / 60 ) Minute(n) - Channel: %announcer.chan
  unset %announcer.*
}
alias -l announcer.aus { .timerannouncer. $+ $active off | echo -a 4*** Emule-Announcer beendet für Channel $active  $logo }

; ##############################  irc download #################################
alias -l download {
  used 
  crypt
  if ($get(0) = 0) { 
    echo 4*** Es läuft kein Download, $me $+ . *** $logo 
    return 
  }
  elseif ($get(0) = 1) { var %downs = Download } 
  else { var %downs = Downloads }
  mg $logo(14IRC Download) 
  var %gdown = $gdown
  if ($1 == grafik) || ($1 == detail)  {
    mg $f1 Gesamt Speed: $f2 $+ 11 $+ $rate(%gdown) $+ /s $+ 4, $get(0) %downs $+  $chr(160) $speed.balken(%gdown,$lese(max.down),14)
    mg $f2 $str(-,57)
  }
  elseif ($1 = kurzinfo) {
    mg $f1 Gesamt Speed: $f2 $+ 11 $+ $rate(%gdown) $+ /s $+ 4, $get(0) %downs $+  $chr(160) 
  }
  var %ct = 1
  while (%ct <= $get(0)) { 
    var %dl.speed = $rate($get(%ct).cps)
    var %dl.schnitt = $rate($get.schnitt(%ct))
    var %dl.dateiname = $get(%ct).file
    var %dl.dateigrösse = $rate($get(%ct).size)
    var %dl.heruntergeladen = $rate($get(%ct).rcvd)
    var %dl.resumed = $get(%ct).resume
    var %dl.verbleibend = $rate($get.verbleibend(%ct))
    var %dl.verbunden = $zeit($get(%ct).secs,analog)
    var %dl.übrig = $zeit($get.übrig(%ct),analog)
    var %dl.gesamtzeit = $get.gesamtzeit(%ct)
    var %dl.ankunftszeit = $get.ankunftzeit(%ct)
    var %dl.server = $get.server(%ct)
    if ($1 == grafik) {
      mg $f1 Download %ct $+ : $f2 $+ %dl.dateiname $f2 ( $+ %dl.dateigrösse $+ )
      mg $f1 7Akt. Speed: $chr(160) $+ $f2 $+ 11 $+ %dl.speed $+ /s $f2 4( $+ $chr(216) %dl.schnitt $+ /s $+ )
      mg $f1 Erhalten: $chr(160) $chr(160) $f2 $+ 11 $+ %dl.heruntergeladen $f2 4( $+ %dl.verbleibend $+ , %dl.übrig übrig)
      mg $f1 12Fortschritt:  $chr(160) $+ $f2 $+ $get(%ct).pc $+ $chr(37) $chr(160) $fortschritt.balken($get(%ct).pc,100,31)
      mg $f1 14Ankunftszeit: $chr(160) $+ $f2 %dl.ankunftszeit Uhr 
      mg $f2 $+ $str(-,57)
      mg $f1 $+ $opp
      inc %ct
    }
    if ($1 == grafik+quelle) {
      mg $f1 Download %ct $+ : $f2 $+ %dl.dateiname $f2 ( $+ %dl.dateigrösse $+ )
      mg $f1 7Akt. Speed: $chr(160) $+ $f2 $+ 11 $+ %dl.speed $+ /s $f2 4( $+ $chr(216) %dl.schnitt $+ /s $+ )
      mg $f1 Erhalten: $chr(160) $chr(160) $f2 $+ 11 $+ %dl.heruntergeladen $f2 4( $+ %dl.verbleibend $+ , %dl.übrig übrig)
      mg $f1 12Fortschritt:  $chr(160) $+ $f2 $+ $get(%ct).pc $+ $chr(37) $chr(160) $fortschritt.balken($get(%ct).pc,100,31)
      mg $f1 14Ankunftszeit: $chr(160) $+ $f2 %dl.ankunftszeit Uhr 
      mg $f1 14Quelle: $chr(160) $+ $f2 $get(%ct)
      mg $f2 $+ $str(-,57)
      mg $f1 $+ $opp
      inc %ct
    }
    elseif ($1 == text) {  
      mg $f1 Ich lade grade $f2 $+ %dl.dateiname $f1 $+ von $+ $f2 $get(%ct) $f1 $+ $&
        - Speed: $f2 $+ 11 $+ %dl.speed $+ /s 4( $+ $chr(216) %dl.schnitt $+ /s $+ ) $f1 $+ - Habe schon $f2 $+ %dl.heruntergeladen $& 
        $f1 $+ von $+ $f2 %dl.dateigrösse $+  $f1 $+ fertig $+ $f2 ( $+ $round($get(%ct).pc,1) $chr(37) $+ ) $+ $f1 - $&
        In $f2 $+ %dl.übrig $f1 $+ ist der Download beendet - Kalkulierte Ankunftszeit: $+ $f2 %dl.ankunftszeit Uhr.
      mg $f1 $+ $opp
      if (%ct != $get(0)) { mg $f2 $+ $str(-,57) }
      inc %ct 1
    }
    elseif ($1 == kurzinfo) {  
      mg $f1 Get %ct $+ : $f2 $+ $get(%ct).file $f1 @ $f2 $+ 11 $+ %dl.speed $+ /s $f1 erhalten: $f2 $+ $&
        %dl.heruntergeladen $f1 übrig: $f2 $+ %dl.verbleibend $f1 fertig um $f2 $+ %dl.ankunftszeit Uhr
      mg $f1 $+ $opp
      inc %ct
    }
    elseif ($1 == detail) {
      mg $f2 [DATEI INFO] 
      mg $f1 Download %ct $+ : $f2 $+ $get(%ct).file
      mg $f1 Speicherort: $f2 $+ $get(%ct).path
      mg $f1 Größe: $f2 $+ %dl.dateigrösse $f1 $+ erhalten: $f2 $+ %dl.heruntergeladen $f1 $+ übrig: $f2 $+ %dl.verbleibend
      mg $f2 [SPEED INFO] 
      mg $f1 Speed: $f2 $+ 11 $+ %dl.speed $+ /s $f1 $+ Schnitt: $f2 $+ $chr(216) %dl.schnitt $+ /s $f1 $+ Fertig: $f2 $+ $get(%ct).pc $chr(37) 
      mg $f2 [ZEIT INFO]
      mg $f1 Verbunden: $f2 $+ %dl.verbunden $f1 $+ übrig: $f2 $+ %dl.übrig 
      if (%dl.resumed > 0)  { var %dl.res = Ja, bei $rate(%dl.resumed) } | else { var %dl.res = Nein }
      mg $f1 Kalk. Dauer: $f2 $+ %dl.gesamtzeit $f1 $+ Resumed: $f2 $+ %dl.res 
      mg $f1 fertig um: $f2 $+ %dl.ankunftszeit Uhr 
      mg $f2 [BOT INFO] 
      mg $f1 Bot: $f2 $+ $get(%ct) $f1 $+ IP: $f2 $+ $get(%ct).ip $f1 $+ Net: $f2 $+ %dl.server
      mg $f1 Befehl: $f2 $+ /msg $get(%ct) xdcc send $chr(35) $+ X 
      mg $f1 $+ $opp
      if (%ct != $get(0)) { mg $f2 $+ $str(-,57) }
      inc %ct 1
    }
  }
}

; ##############################  irc upload #################################
alias -l upload {
  used 
  crypt
  if ($send(0) = 0) { 
    echo 4*** Es läuft kein Upload, $me $+ . *** $logo
    return
  }
  elseif ($send(0) = 1) { var %upload = Upload } 
  else { var %upload = Uploads }
  mg $logo(14IRC Upload)
  var %gup = $gup
  if ($1 == grafik) || ($1 == detail) {
    mg $f1 Gesamt Speed: $f2 $+ 11 $+ $rate(%gup) $+ /s $+ 4, $send(0) %upload $+  $chr(160) $speed.balken(%gup,$lese(max.up),14)
    mg $f2 $+ $str(-,57)
  }
  elseif ($1 = kurzinfo) {
    mg $f1 Gesamt Speed: $f2 $+ 11 $+ $rate(%gup) $+ /s $+ 4, $send(0) %upload $+  $chr(160) 
  }
  var %ct = 1
  while (%ct <= $send(0)) {  
    var %ul.speed = $rate($send(%ct).cps)
    var %ul.schnitt = $rate($send.schnitt(%ct))
    var %ul.dateiname = $send(%ct).file
    var %ul.dateigrösse = $rate($send(%ct).size)
    var %ul.gesendet = $rate($send(%ct).sent)
    var %ul.resumed = $send(%ct).resume
    var %ul.verbleibend = $rate($send.verbleibend(%ct))
    var %ul.verbunden = $zeit($send(%ct).secs,analog)
    var %ul.übrig = $zeit($send.übrig(%ct),analog)
    var %ul.gesamtzeit = $send.gesamtzeit(%ct)
    var %ul.ankunftszeit = $send.ankunftzeit(%ct)
    var %ul.server = $send.server(%ct)
    if ($1 == grafik) { 
      mg $f1 Upload %ct $+ : $chr(160) $chr(160) $+ $f2 $+ %ul.dateiname $f2 ( $+ %ul.dateigrösse $+ )
      mg $f1 7Akt. Speed: $f2 $+ 11 $+ %ul.speed $+ /s $+ 4 $f1 $+ $f2 ( $+ $chr(216) %ul.schnitt $+ /s $+ )
      mg $f1 Gesendet: $f2 $chr(160) $+%ul.gesendet $f2 ( $+  $+ %ul.verbleibend $+ ,  %ul.übrig $f2 $+ übrig)
      mg $f1 12Fortschritt:  $chr(160) $+ $f2 $+ $round($send(%ct).pc,1) $+ $chr(37) $chr(160) $fortschritt.balken($send(%ct).pc,100,31)
      mg $f1 14Ankunftszeit: $chr(160) $+ $f2 %ul.ankunftszeit Uhr
      mg $f2 $+ $str(-,57)
      mg $f1 $+ $opp
      inc %ct 1
    }
    if ($1 == grafik+opfer) { 
      mg $f1 Upload %ct $+ : $chr(160) $chr(160) $+ $f2 $+ %ul.dateiname $f2 ( $+ %ul.dateigrösse $+ )
      mg $f1 7Akt. Speed: $f2 $+ 11 $+ %ul.speed $+ /s $+ 4 $f1 $+ $f2 ( $+ $chr(216) %ul.schnitt $+ /s $+ )
      mg $f1 Gesendet: $f2 $chr(160) $+%ul.gesendet $f2 ( $+  $+ %ul.verbleibend $+ ,  %ul.übrig $f2 $+ übrig)
      mg $f1 12Fortschritt:  $chr(160) $+ $f2 $+ $round($send(%ct).pc,1) $+ $chr(37) $chr(160) $fortschritt.balken($send(%ct).pc,100,31)
      mg $f1 14Ankunftszeit: $chr(160) $+ $f2 %ul.ankunftszeit Uhr
      mg $f1 14Empfänger: $chr(160) $+ $f2 $send(%ct)
      mg $f2 $+ $str(-,57)
      mg $f1 $+ $opp
      inc %ct 1
    }
    elseif ($1 == text) { 
      mg $f1 Ich lade grade $f2 $+ %ul.dateiname $f1 $+ hoch zu $+ $f2 $send(%ct) $f1 $+ $&
        - Speed: $f2 $+ 11 $+ %ul.speed $+ /s $+ 4 $f1 $+ $f2 ( $+ $chr(216) %ul.schnitt $+ /s $+ ) $f1 $+ - Habe schon $f2 $+ %ul.gesendet $&
        $f1 $+ von $+ $f2 %ul.dateigrösse  $f1 $+ geupt $+ $f2 ( $+ $round($send(%ct).pc,1) $chr(37) $+ ) $+ $f1 - $&
        In $f2 $+ %ul.übrig $f1 $+ ist der Upload beendet. - Kalkulierte Ankunftszeit: $+ $f2 %ul.ankunftszeit Uhr.
      mg $f1 $+ $opp
      if (%ct != $send(0)) { mg $f2 $+ $str(-,57) }
      inc %ct
    }
    elseif ($1 == kurzinfo) {  
      mg $f1 Send %ct $+ : $f2 $+ $send(%ct).file $f1 @ $f2 $+ 11 $+ %ul.speed $+ /s $f1 gesendet: $f2 $+ $&
        %ul.gesendet $f1 übrig: $f2 $+ %ul.verbleibend $f1 fertig um $f2 $+ %ul.ankunftszeit Uhr
      mg $f1 $+ $opp
      inc %ct
    }
    elseif ($1 == detail) {
      mg $f2  [DATEI INFO] 
      mg $f1 Upload %ct $+ : $f2 $+ %ul.dateiname 
      mg $f1 Speicherort: $f2 $+ $send(%ct).path
      mg $f1 Größe: $f2 $+ %ul.dateigrösse $f1 $+ gesendet: $f2 $+ %ul.gesendet $f1 $+ übrig: $f2 $+ %ul.verbleibend
      mg $f2 [SPEED INFO] 
      mg $f1 Speed: $f2 $+ 11 $+ %ul.speed $+ /s $f1 $+ Schnitt: $f2 $+ $chr(216) %ul.schnitt $+ /s $f1 $+ Fertig: $f2 $+ $send(%ct).pc $chr(37) 
      mg $f2 [ZEIT INFO]
      mg $f1 Verbunden: $f2 $+ %ul.verbunden $f1 $+ übrig: $f2 $+ %ul.übrig 
      if (%ul.resumed > 0)  { var %ul.res = Ja, bei $rate(%ul.resumed) } | else { var %ul.res = Nein }
      mg $f1 Kalk. Dauer: $f2 $+ %ul.gesamtzeit $f1 $+ Resumed: $f2 $+ %ul.res
      mg $f1 fertig um: $f2 $+ %ul.ankunftszeit Uhr 
      mg $f2 [USER INFO] 
      mg $f1 User: $f2 $+ $send(%ct) $f1 $+ IP: $f2 $+ $send(%ct).ip $f1 $+ Netzwerk: $f2 $+ %ul.server
      mg $f1 $+ $opp
      if (%ct != $send(0)) { mg $f2 $+ $str(-,57) }
      inc %ct 1
    }
  }
}

; ##############################  irc traffic #################################
alias -l s.traffic {
  used 
  crypt
  if (!%stats.down.anzahl) { set %stats.down.anzahl 0 } | if (!%stats.up.anzahl) { set %stats.up.anzahl 0 } 
  mg $logo(14IRC Traffic) 
  var %ges.monat = $rate($calc(%stats.down.monat. [ $+ [ $asctime(mm) ] ] + %stats.up.monat. [ $+ [ $asctime(mm) ] ] ))
  var %ges.gesamt = $rate($calc(%stats.down.gesamt + %stats.up.gesamt))
  if ($1 = monat) {  
    mg $f1 Traffic für $asctime(mmmm yyyy) $+ : $f2 $+ %ges.monat
    mg $f2 $+ $str(-,35)
    mg $f1 Down $+ : $f2 $+ $rate(%stats.down.monat. [ $+ [ $asctime(mm) ] ] ) $f1 Up $+ : $f2 $+ $rate(%stats.up.monat. [ $+ [ $asctime(mm) ] ] )
    mg $f1 $+ $opp
  }
  elseif ($1 = gesamt) {  
    mg $f1 Gesamt Traffic seit dem $f2 $+  $left($lese(traffic.datum),10)
    mg $f2 $+ $str(-,38)
    mg $f1 Download $+ : $f2 $+ $rate(%stats.down.gesamt) ( $+ %stats.down.anzahl gets $+ )
    mg $f1 Upload $+ : $chr(160) $chr(160) $f2 $+ $rate(%stats.up.gesamt) ( $+ %stats.up.anzahl sends $+ )
    if (%stats.down.gesamt) {
      var %up-down = $nkm($calc((%stats.up.gesamt / %stats.down.gesamt * 100)))
      if (%up-down > 100) { var %up-down = >100 }
      mg $f1 Up/Down: $f2 %up-down %
    }
    mg $f2 $+ $str(-,38)
    mg $f1 Total $+ : $f2 $+ %ges.gesamt - $chr(216) $f2 $+ $rate($calc(%stats.down.speed / %stats.down.anzahl))
    mg $f1 $+ $opp
  }
  elseif ($1 = text) {  
    if ($asctime(dd) > $left($lese(traffic.datum),2)) { var %tage = $calc($asctime(dd) - $left($lese(traffic.datum),2)) }
    elseif ($asctime(dd) = $left($lese(traffic.datum),2)) { var %tage = 0 }
    else { var %tage = $asctime(dd) }
    if ($asctime(mm) > $mid($lese(traffic.datum),4,2)) { var %monate = $calc($asctime(mm) - $mid($lese(traffic.datum),4,2)) }
    elseif ($asctime(mm) = $mid($lese(traffic.datum),4,2)) { var %monate = 0 }
    else { var %monate = $asctime(mm) }
    mg $f1 $+ Ich habe bereits $f2 $+ $rate(%stats.down.gesamt) $f1 $+ geleecht und $f2 $+ $rate(%stats.up.gesamt) $+ $f1 $&
      verteilt in  $f2 $+ %monate Monate(n) und %tage Tage(n). $f1 $+ Seit dem $f2 $+ $left($lese(traffic.datum),10) $f1 $+ wurden durchschnittlich $f2 $+ $rate($calc(%stats.down.speed / %stats.down.anzahl))  $&
      $f1 $+ durch meine Leitung gejagt bei $f2 $+ %stats.down.anzahl $f2 $+ gets.
    mg $f1 $+ $opp
  }
}

; #################################  flashfxp #####################################
alias -l flash.traffic {
  set %flash.datum.count $calc(($left($readini " $+ $lese(flash.dir) $+ stats.dat" #Total# LR,5) - 25569) * 86400) 
  set %flash.datum.date $asctime(%flash.datum.count,dd.mm.yyyy)
  set %flash.upload $readini " $+ $lese(flash.dir) $+ stats.dat" #Total# FU
  set %flash.download $readini " $+ $lese(flash.dir) $+ stats.dat" #Total# FD
  set %flash.total.traffic $calc(%flash.upload + %flash.download)
  set %flash.traffic.tag $calc(%flash.total.traffic / ($ctime - %flash.datum.count) * 86400)
  set %flash.traffic.monat $calc(%flash.total.traffic / ($ctime - %flash.datum.count) * 2592000)
  set %flash.schnitt $rate($calc(%flash.total.traffic / ($ctime - %flash.datum.count)))
}
alias -l flash {
  if (!$lese(flash.dir)) { echo -a 4-- Kein FlashFXP Pfad gewählt -- $logo | halt }
  used 
  crypt
  flash.traffic
  mg $logo(14FlashFXP) 
  if ($1 = grafik) {
    var %ges.monat = $rate($calc(%stats.down.monat. [ $+ [ $asctime(mm) ] ] + %stats.up.monat. [ $+ [ $asctime(mm) ] ] ))
    var %ges.gesamt = $rate($calc(%stats.down.gesamt + %stats.up.gesamt))
    mg $f1 Traffic seit dem %flash.datum.date
    mg $f2 $str(-,40)
    mg $f1 Download $+ : $f2 $+ $rate(%flash.download)) $f1 Upload $+ : $f2 $rate(%flash.upload))
    mg $f1 täglich: $chr(160) $+ $chr(160) $f2  $rate(%flash.traffic.tag) $f1 monat:  $f2  $rate(%flash.traffic.monat)
    mg $f2 $+ $str(-,40)
    mg $f1 Total: $f2 $rate(%flash.total.traffic)  ( $+ $chr(216) %flash.schnitt $+ /s $+ )
    mg $f1 $+ $opp
  }
  elseif ($1 = text) {
    mg $f1 $+ Ich habe bereits $f2 $+  $rate(%flash.download)) $f1 $+ geleecht und $f2 $+  $rate(%flash.upload)) $+ $f1 $&
      verteilt seit dem $f2 $+  %flash.datum.date $+ . $f1 $+ Insgesamt wurden $f2 $rate(%flash.total.traffic) $f1 durch meine Leitung gejagt mit $&
      $f2 $+  $chr(216) $+ %flash.schnitt $+ /s $+ .
    mg $f1 $+ $opp
  }
  elseif ($1 = kurzinfo) {
    mg $f1 Leeched $+ : $f2 $+ $rate(%flash.download)) $f1 day $+ : $f2 $+ $rate(%flash.traffic.tag)) $f1 $+ (since  $f2 $+ %flash.datum.date $+ $f1 $+ )
    mg $f1 $+ $opp
  }
  unset %flash.*
}

; #####################################  system infos #####################################  
alias -l driveinfo {
  var %ct = 67
  while (%ct <= 90) {
    if (($disk($chr(%ct)) == $true) && ($disk($chr(%ct)).type == fixed)) {
      if ($1 = detail) { set -15 %drive. $+ %ct $f1 $+ Laufwerk $chr(%ct) $+ : $f2 $+ $rate($disk($chr(%ct)).size) $+ , $f1 $+ frei: $f2 $+ $rate($disk($chr(%ct)).free) $chr(160) $speed.balken($calc($disk($chr(%ct)).size - $disk($chr(%ct)).free),$disk($chr(%ct)).size,11))) }
      inc %drive.space $disk($chr(%ct)).size 
      inc %drive.free $disk($chr(%ct)).free
    }
    inc %ct 1
  }
  set -u15 %drive.free %drive.free
  set -u15 %drive.space %drive.space
  set -u15 %drive.used $calc(%drive.space - %drive.free)
}
alias -l format { if ($1 isnum) { return $replace($duration($1),wk, Woche,day, Tag,hr, Stunde,min, Minute,sec, Sekunde,es,en,gs,ge) } | else { return n/a } }
alias -l record {
  if ((!$lese(rekord.zeit) || ($lese(rekord.zeit) <= $uptime(system,3)))) { add rekord.zeit $uptime(system,3) }
  if ($r.glob(Invision,UTRecord) > $lese(rekord.zeit)) { add rekord.zeit $r.glob(Invision,UTRecord) }
}
alias -l systeminfo.alles {
  used 
  crypt
  driveinfo
  record
  var %ram.total = $sys(totalphysicalmem) 
  var %ram.used = $sys(usedphysicalmem)
  var %vram.total $sys(totalvirtualmem)
  var %vram.used $sys(usedvirtualmem)
  mg $f1 $+ $logo(14System Info)
  mg $f1 $+ Betriebssystem: $f2 $+ $sys(os)
  mg $f1 $+ Up: $f2 $+ $format($uptime(system,3))
  mg $f1 $+ Rekord: $f2 $+ $format($lese(rekord.zeit))
  mg $f1 $+ mIRC:  $f2 $+ $version $iif(($ilogo), $f1 $+ - Invision: $f2 $+ $r.static(Script,Version) Build $r.static(Script,build), $f1 $+ - Invision: $f2 $+ nicht installiert)
  mg $f1 $+ $str(-,60)
  mg $f1 $+ CPU: $f2 $+ $sys(cpuinfo) $+ , $sys(cpuspeed) $+ , $sys(cpuL2cache) L2
  mg $f1 $+ RAM: $f2 $+ %ram.total MB $+ , %ram.used MB belegt $speed.balken(%ram.used,%ram.total ,18)
  mg $f1 $+ VRAM: $f2 $+ %vram.total MB $+ , %vram.used MB belegt $speed.balken(%vram.used,%vram.total ,18)
  mg $f1 $+ Drive: $f2 $+ $rate(%drive.space) $+ , $rate(%drive.used) belegt $speed.balken(%drive.used,%drive.space,18) 
  mg $f1 $+ Grafik:  $f2 $+ $sys(videocard) $+ , $gettok($sys(res),1,32)
  mg $f1 $+ Sound:  $f2 $+ $sys(soundcard)
  mg $f1 $+ $str(-,60)
  var %down.transfer = $sys(total_down)
  if (%down.transfer) {
    mg $f1 $+ Connection: $f2 $+ $sys(conn)
    mg $f1 $+ Session Traffic: $f2 $+ %down.transfer mb $f1 $+ down - $f2 $+ $sys(total_up) mb $f1 $+ up 
  }
  else { mg $f1 $+ Connection:  $f2 $+ not found, using Router ? ^^ }
  unset %drive.* 
  mg $f1 $+ $opp
}
alias -l systeminfo.cpu {
  used 
  crypt
  var %load = $remove($sys(cpuload),$chr(37))
  mg $f1 $+ $logo(14CPU Info)
  mg $f1 $+ Prozessor: $f2 $+ $sys(cpuinfo) $+ , $sys(cpuspeed) $+ , $sys(cpuL2cache) L2
  mg $f1 $+ Details: $f2 $+ $sys(cpudetails) 
  mg $f1 $+ Bios: $f2 $+ $sys(biosname) 
  mg $f1 $+ Auslastung: $f2 $+ %load % $speed.balken(%load,100,20)
  mg $f1 $+ $opp
}
alias -l systeminfo.cpuauslastung {
  used 
  crypt
  var %load = $remove($sys(cpuload),$chr(37))
  mg $f1 $+ $logo(14CPU Last)
  mg $f1 $+ CPU-Auslastung: $f2 $+ %load %  $+ $speed.balken(%load,100,15)
  mg $f1 $+ $opp
}
alias -l systeminfo.grafik {
  used 
  crypt
  mg $f1 $+ $logo(14Grafik Info)
  mg $f1 $+ Grafikkarte:  $f2 $+ $sys(videocard)
  mg $f1 $+ Auflösung: $f2 $+ $gettok($sys(res),1,32)
  mg $f1 $+ $opp
}
alias -l systeminfo.platte {
  used 
  crypt
  driveinfo detail
  var %ct = 67 
  mg $f1 $+ $logo(14Festplatten Kapazität)
  mg $f1 $+ $str(-,48)
  var %ct = 67
  while (%ct <= 90) { if (%drive. [ $+ [ %ct ] ] ) { mg $ifmatch } | inc %ct  }
  mg $f1 $+ $str(-,48)
  mg $f1 $+ Total: $f2 $+ $rate(%drive.space) $f1 belegt: $f2 $+ $rate(%drive.used) ( $+ $nkm($calc((%drive.used / %drive.space) * 100)) % $+ )
  unset %drive.* 
  mg $f1 $+ $opp
}
alias -l systeminfo.ram {
  used 
  crypt
  var %ram.total = $sys(totalphysicalmem)
  var %ram.bel = $sys(usedphysicalmem) 
  var %ram.pc = $nkm($calc((%ram.bel / %ram.total) * 100))
  mg $f1 $+ $logo(14Hauptspeicher)
  mg $f1 $+ Ram: $f2 $+ %ram.total MB $f1 $+ - belegt: $f2 $+ %ram.bel MB $speed.balken(%ram.pc,100,10)
  mg $f1 $+ $opp
}
alias -l systeminfo.vram {
  used 
  crypt
  var %vram.total = $sys(totalvirtualmem)
  var %vram.bel = $sys(usedvirtualmem) 
  var %vram.pc = $nkm($calc((%vram.bel / %vram.total) * 100))
  mg $f1 $+ $logo(14Virtueller Hauptspeicher)
  mg $f1 $+ VRam: $f2 $+ %vram.total MB $f1 $+ - belegt: $f2 $+ %vram.bel MB $speed.balken(%vram.pc,100,10)
  mg $f1 $+ $opp
}

alias -l systeminfo.system {
  used 
  crypt
  record
  mg $f1 $+ $logo(14Betriebssystem)
  mg $f1 $+ Software: $f2 $+ $sys(os)
  mg $f1 $+ Uptime: $f2 $+ $format($uptime(system,3))
  mg $f1 $+ Rekord: $f2 $+ $format($lese(rekord.zeit))
  mg $f1 $+ $opp
}
alias -l systeminfo.verbindung {
  used 
  crypt
  mg $f1 $+ $logo(14Verbindung)
  var %down.transfer = $sys(total_down)
  if (%down.transfer) {
    mg $f1 $+ Connection: $f2 $+ $sys(conn)
    mg $f1 $+ Session Traffic: $f2 $+ %down.transfer mb $f1 $+ down - $f2 $+ $sys(total_up) mb $f1 $+ up 
  }
  else { mg $f1 $+ Connection:  $f2 $+ not found, using Router ? ^^ }
  mg $f1 $+ $opp
}

; ######################### online zeit - power status -server verbindung ############################  
alias -l onlinezeit {
  used 
  crypt
  record
  var %sys.zeit = $format($uptime(system,3))
  var %online.zeit = $format($uptime(mirc,3))
  mg $logo(14Online Zeit)
  mg $f1 $+ mIRC online seit: $f2 $+ %online.zeit
  mg $f1 $+ System Uptime: $f2 $+ %sys.zeit
  mg $f1 $+ Rekord: $f2 $+ $format($lese(rekord.zeit))
  mg $f1 $+ $opp

}
alias -l powerstatus { 
  var %op = 0, %own = 0, %prot = 0, %hop = 0, %voice = 0, %reg = 0, %visit = 0, %slave = 0, %ch = 0, %query = 0, %check = 1 
  while (%check <= $scon(0)) { 
    if ($scon(%check).network != $null) { 
      scid $scon(%check) 
      var %ch.total = $chan(0) 
      inc %query $query(0) 
      inc %ch %ch.total 
      var %ch.count = 1 
      while (%ch.count <= %ch.total) { 
        if ($isowner($chan(%ch.count),$me) == $true) { inc %own 1 | var %slave = $calc(%slave + $nick($chan(%ch.count),0)), %visit = $calc(%visit + $nick($chan(%ch.count),0)) } 
        elseif ($isowner2($chan(%ch.count),$me) == $true) { inc %own 1 | var %slave = $calc(%slave + $nick($chan(%ch.count),0)), %visit = $calc(%visit + $nick($chan(%ch.count),0)) } 
        elseif ($isprotect($chan(%ch.count),$me) == $true) { inc %prot 1 | var %slave = $calc(%slave + $nick($chan(%ch.count),0)), %visit = $calc(%visit + $nick($chan(%ch.count),0)) } 
        elseif ($isprotect2($chan(%ch.count),$me) == $true) { inc %prot 1 | var %slave = $calc(%slave + $nick($chan(%ch.count),0)), %visit = $calc(%visit + $nick($chan(%ch.count),0)) } 
        elseif ($me isop $chan(%ch.count)) { inc %op 1 | var %slave = $calc(%slave + $nick($chan(%ch.count),0)), %visit = $calc(%visit + $nick($chan(%ch.count),0)) } 
        elseif ($me ishop $chan(%ch.count)) { inc %hop 1 | var %slave = $calc(%slave + $nick($chan(%ch.count),0)), %visit = $calc(%visit + $nick($chan(%ch.count),0)) } 
        elseif ($me isvoice $chan(%ch.count)) { inc %voice 1 | var %visit = $calc(%visit + $nick($chan(%ch.count),0)) } 
        elseif ($me isreg $chan(%ch.count)) { inc %reg 1 | var %visit = $calc(%visit + $nick($chan(%ch.count),0)) } 
        inc %ch.count 1 
      } 
    } 
    inc %check 1 
  } 
  scon -r 
  say 9 $logo(14OP Status)
  say 9 Ich bin momentan $iif(%own != 0,4Owner in %own 9 $+ $iif(%own == 1,Chan,Chans)) $iif(%prot != 0,4Protected in %prot 9 $+ $iif(%prot == 1,Chan,Chans)) $iif(%op != 0,4OP in %op 9 $+ $iif(%op == 1,Chan,Chans)) $iif(%hop != 0,4HalfOP in %hop 9 $+ $iif(%hop == 1,Chan,Chans))
  say 9 $iif(%voice != 0,4Voice in %voice 9 $+ $iif(%voice == 1,Chan,Chans)) $iif(%reg != 0,4und Normaler User in %reg 9 $+ $iif(%reg == 1,Chan,Chans)) auf $scon(0) $iif($scon(0) == 1,Netzwerk,Netzwerken).
  say 9 Von insgesamt4 %visit Usern 9stehen4 %slave User 9unter4 $me $+ ´s 9Fuchtel.
  say 9 $opp
}
alias -l prozent { if ($$1 <= $$2) { return $+($round($calc($$1 / ($$2 / 100)),1),%) } } 
alias -l isowner { return $iif($chr(33) isin $nick($1,$2).pnick,$true,$false) } 
alias -l isprotect { return $iif($chr(42) isin $nick($1,$2).pnick,$true,$false) } 
alias -l isowner2 { return $iif($chr(126) isin $nick($1,$2).pnick,$true,$false) } 
alias -l isprotect2 { return $iif($chr(38) isin $nick($1,$2).pnick,$true,$false) } 

alias -l serverstatus {
  used 
  crypt
  mg $logo(14Server Info)
  var %ct = 1
  while (%ct <= $scon(0)) {
    mg  $f1 $+ Server $f2  $+ %ct $f1 $+ ist $f2 $+ $scon(%ct).server $f1 $+ IP: $f2 $+ $server(%ct) $f1 $+ Port: $f2 $+ $scon(%ct).port $f1 $+ auf $f2 $+ $scon(%ct).network $c(1)
    mg $f1 $+ $opp
    inc %ct 1
  }
}

; #####################################  winamp #####################################  
alias -l winamp { return $scriptdir $+ winamp.dll }
alias -l winamp.get {
  if ($1 == title) { var %info = $dll($winamp, WA_Link_Raw_Stats, TITLE) }
  elseif  ($1 == artist) { var %info = $dll($winamp, WA_Link_Raw_Stats, ARTIST) }
  elseif  ($1 == album) { var %info = $dll($winamp, WA_Link_Raw_Stats, ALBUM) }
  elseif  ($1 == genre) { var %info = $dll($winamp, WA_Link_Raw_Stats, GENRE)  }
  elseif  ($1 == year) { var %info = $dll($winamp, WA_Link_Raw_Stats, YEAR) }
  elseif  ($1 == comment) { var %info = $dll($winamp, WA_Link_Raw_Stats, COMMENT) }
  elseif  ($1 == tracksec) { var %info = $dll($winamp, WA_Link_Raw_Stats, TRACKSEC) }
  elseif  ($1 == possec) { var %info = $dll($winamp, WA_Link_Raw_Stats, POSSEC) }
  elseif  ($1 == channels) { var %info = $dll($winamp, WA_Link_Raw_Stats, CHANNELS) }
  elseif  ($1 == bitrate) { var %info = $dll($winamp, WA_Link_Raw_Stats, BITRATE) }
  elseif  ($1 == samplerate) { var %info = $dll($winamp, WA_Link_Raw_Stats, SAMPLERATE) }
  elseif  ($1 == tracksize) { var %info = $dll($winamp, WA_Link_Raw_Stats, TRACKSIZE) }
  elseif  ($1 == version) { var %info = $dll($winamp, WA_Link_Raw_Stats, VERSION) }
  if (%info = $false) { var %info = n/a }
  return %info
}
alias -l winamp.info {
  used 
  crypt
  if (!%stats.winamp.erstbenutzung) {
    set %stats.winamp.erstbenutzung 1
    echo 10 $+ $str(-,65)
    echo 11Hinweis bei erster Benutzung der Winamp Anzeige:
    echo 10Sollten keine Infos angezeigt werden, das Winamp Programm Fenster kurz maximieren.
    echo 10 $+ $str(-,65)
  }
  var %chk = $dll($winamp, WA_Link_Raw_Stats, TITLE)
  if (%chk = $false ) { echo 10Anzeige Fehler. Bitte Winamp maximieren. | return }
  mg $logo(14WinAMP Status)
  if ($1 = kurz)  {
    var %pc = $s.sbalken($s.wamp.get(possec),$s.wamp.get(tracksec),14)
    msg $active $f1 $+ Listening to: $f1 $+ Artist: $f2 $+ $winamp.get(artist) $f1 $+ Title: $f2 $+ $winamp.get(title) ( $+ $rate($winamp.get(tracksize)) $+ ) $f1 $+ Album: $f2 $+ $winamp.get(album) $f1 $+ Track Info:  $f1 $+ $& 
      $f2 $+ $winamp.get(bitrate) kBit, $winamp.get(samplerate) $+ kHz, $winamp.get(channels) chn $f1 $+ Elapsed: $f2 $+ $zeit($winamp.get(possec),digital) / $zeit($winamp.get(tracksec),digital) %pc $f1 $+ WinAMP: $f2 v $+ $winamp.get(version)
    halt
  }
  elseif ($1 = lang)  {
    var %playbar = $speed.balken($winamp.get(possec),$winamp.get(tracksec),21)
    var %remaining = $zeit($calc($winamp.get(tracksec) - $winamp.get(possec)),digital)
    mg $f1 $+ [SONG ID3 INFO] 
    mg $f1 $+ Title: $f2 $+ $winamp.get(title) $f1 $+ - Album: $f2 $+ $winamp.get(album) 
    mg $f1 $+ Artist: $f2 $+ $winamp.get(artist) $f1 $+ - Genre: $f2 $+ $winamp.get(genre) $f1 $+ - Jahr: $f2 $+ $winamp.get(year) 
    mg $f1 $+ ID3 Comment: $f2 $+  $winamp.get(comment)
    mg $f1 $+ [TRACK INFO]
    mg $f1 $+ Bitrate: $f2 $+ $winamp.get(bitrate) kBit $f1 $+ - kHz: $f2 $+ $winamp.get(samplerate) kHz $&
      $f1 $+ - Channel: $f2 $+ $winamp.get(channels) $f1 $+ - Size: $f2 $+ $rate($winamp.get(tracksize))
    mg $f1 $+ [TIME INFO]
    mg $f1 $+ elapsed: $f2 $+ $zeit($winamp.get(possec),digital) $f1 $+ - remaining: $f2 $+ %remaining $f1 $+ - total: $f2 $+ $zeit($winamp.get(tracksec),digital)
    mg $f1 $+ Playbar: %playbar
    msg $active $f1 [WinAMP INFO]
    msg $active $f1 $+ WinAMP: $f2 v $+ $winamp.get(version)
    mg $f1 $+ $opp
  }
}

; ##################################  virtualdub & zoomplayer ##################################  
alias -l multimedia { return $scriptdir $+ multimedia.dll }
alias -l zoomplayer {
  used
  crypt
  if (!%stats.zoomplayer.erstbenutzung) {
    set %stats.zoomplayer.erstbenutzung 1
    echo 10 $+ $str(-,65)
    echo 11Hinweis bei erster Benutzung der Movie Infos:
    echo 10Stats unterstützt zum Anzeigen von Avis und MPEG1/2 Filmen
    echo 10den Zoomplayer v.3.0 und höher
    echo 10 $+ $str(-,65)
  }
  var %zoomplayer.info = $dll($multimedia,GetOpenVideo,_))
  if (!%zoomplayer.info) { echo 4--- Zoomplayer ist nicht aktiv --- $logo | return }
  var %title = $gettok(%zoomplayer.info,3,1)
  var %elapsed = $gettok(%zoomplayer.info,4,1)
  var %elapsed.sek = $calc($gettok(%elapsed,1,58) * 60 + $gettok(%elapsed,2,58))
  var %total = $gettok(%zoomplayer.info,5,1)
  var %total.sek = $calc($gettok(%total,1,58) * 60 + $gettok(%total,2,58))
  var %grösse = $rate($gettok(%zoomplayer.info,6,1)) 
  var %res = $gettok(%zoomplayer.info,7,1)
  var %fps = $gettok(%zoomplayer.info,8,1)
  var %bit = $rate($gettok(%zoomplayer.info,9,1))
  var %type = $upper($gettok(%zoomplayer.info,11,1))
  mg $logo(14Movie Info)
  if ($1 = kurz)  {
    mg $f1 $+ guckt gerade: $f2 $+ %title $f1 $+ - Stream: $f2 $+ %type $+ , %res $+ , %fps fps $f1 $+ - Elapsed:  $f2 $+  %elapsed / %total $speed.balken(%elapsed.sek,%total.sek,14)
    mg $f1 $+ $opp
  }
  elseif ($1 = lang)  {
    mg $f1 $+ [MEDIA INFO] 
    mg $f1 $+ Film: $f2 $+ %title $f1 $+ - Grösse: $f2 $+ %grösse
    mg $f1 $+ [STREAM INFO]
    if (%type = xvid) { var %type = XViD Mpeg 4 Codec }
    elseif (%type = div3) { var %type = DivX 3 Codec }
    elseif (%type = dx50) { var %type = DivX 5 Codec }
    elseif (%type = mpeg) { var %type = MPEG Video }
    mg $f1 $+ Compression: $f2 $+ %type $f1 $+ - kBit/s: $f2 $+ %bit
    mg $f1 $+ Auflösung: $f2 $+ %res $f1 $+ - fps: $f2 $+ %fps
    mg $f1 $+ [TIME INFO]
    mg $f1 $+ elapsed: $f2 $+ %elapsed min $f1 $+ - total: $f2 $+ %total min
    mg $f1 $+ Playbar: $speed.balken(%elapsed.sek,%total.sek,28)
    mg $f1 $+ $opp
  }
}

; ##############################  multi info grafik ##############################  
alias -l s.dcc {
  add 2 txt drawtext -no @s.dcc | add 2 rec drawrect -fn @s.dcc | clear -n @s.dcc
  if (%stats.stop) { return }
  if ($dcc.ct <= $dcc.freq(1)) { s.dcc.irc }
  elseif (($dcc.ct > $dcc.freq(1)) && ($dcc.ct <= $dcc.freq(9))) { 
    if ($lese(multiz.anzeige1)) { s.dcc.dcc } | else { dcc.inc 10 }
  }
  if (($dcc.ct > $dcc.freq(9)) && ($dcc.ct <= $dcc.freq(10))) { 
    if ($lese(multiz.anzeige2)) { s.dcc.emule } | else { dcc.inc 10 }
  }
  if (($dcc.ct > $dcc.freq(10)) && ($dcc.ct <= $dcc.freq(11))) {
    if ($lese(multiz.anzeige3)) { s.dcc.laufzeit } | else { dcc.inc 11 }
  }
  if (($dcc.ct > $dcc.freq(11)) && ($dcc.ct <= $dcc.freq(12))) { 
    if ($lese(multiz.anzeige4)) { s.dcc.system } | else { dcc.inc 12 }
  }
  if (($dcc.ct > $dcc.freq(12)) && ($dcc.ct <= $dcc.freq(13))) {
    if ($lese(multiz.anzeige5)) { s.dcc.ram } | else { dcc.inc 13 }
  }
  if (($dcc.ct > $dcc.freq(13)) && ($dcc.ct <= $dcc.freq(14))) {
    if ($lese(multiz.anzeige6)) { s.dcc.drive } | else { add dcc.ct 1 | s.dcc.irc }
  }
  hinc stats dcc.ct 1
  if ($dcc.ct > $dcc.freq(14)) { add dcc.ct 1 }
}
alias -l dcc.ct { return $lese(dcc.ct) }
alias -l dcc.freq { return $calc($lese(multi.freq) * $1 + $2) }
alias -l dcc.inc { add dcc.ct $dcc.freq($1,1) }
alias -l s.dcc.fit { return $round($calc($lese(dcc.win.breite) / (1000 / $1)),0) }
alias -l s.dcc.pos { 
  if ($prop = 1) { return $round($calc(($1 - $2) / $3),0) }
  elseif ($prop = 2) { return $round($calc(($1 - $2) / $3 + $2 + 15),0) }
}
alias -l s.dcc.width { return $width($1,Arial,-10,1) }
alias -l s.dcc.irc {
  var %dcc.txt = Stats Multi Info  - on $scid($activecid).network - Channel: $active -
  if (!$get(0)) && (!$send(0)) { var %dcc.txt = %dcc.txt kein DCC File Transfer }
  elseif ($get(0)) && (!$send(0)) { var %dcc.txt = %dcc.txt $get(0) Get(s) @ $rate($gdown) }
  elseif (!$get(0)) && ($send(0)) { var %dcc.txt = %dcc.txt $send(0) Send(s) @ $rate($gup) }
  elseif ($get(0)) && ($send(0)) { var %dcc.txt = %dcc.txt $get(0) Get(s) @ $rate($gdown) $+ , $send(0) Send(s) @ $rate($gup) }
  var %dcc.width = $s.dcc.width(%dcc.txt)
  $lese(txt) $lese(multi.farbe1) arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
  s.dcc.rahmen
}
alias -l s.dcc.dcc {
  if (($dcc.ct > $dcc.freq(1)) && ($dcc.ct <= $dcc.freq(2))) {
    if ($get(1)) { s.dcc.dcc.down 1 | s.dcc.dcc.akt speed | s.dcc.rahmen ohne }
    else { dcc.inc 5 } 
  }
  elseif (($dcc.ct > $dcc.freq(2)) && ($dcc.ct <= $dcc.freq(3))) { 
    if ($get(1)) { s.dcc.dcc.down 1 | s.dcc.dcc.akt left | s.dcc.rahmen ohne }
    else { dcc.inc 5 } 
  }
  elseif (($dcc.ct > $dcc.freq(3)) && ($dcc.ct <= $dcc.freq(4))) { 
    if ($get(2)) { s.dcc.dcc.down 2 | s.dcc.dcc.akt speed | s.dcc.rahmen ohne }
    else { dcc.inc 5 } 
  }
  elseif (($dcc.ct > $dcc.freq(4)) && ($dcc.ct <= $dcc.freq(5)))  {
    if ($get(2)) { s.dcc.dcc.down 2 | s.dcc.dcc.akt left | s.dcc.rahmen ohne }
    else { dcc.inc 5 } 
  }
  if (($dcc.ct > $dcc.freq(5)) && ($dcc.ct <= $dcc.freq(6))) {
    if ($send(1)) { s.dcc.dcc.up 1 | s.dcc.dcc.akt speed | s.dcc.rahmen ohne }
    else { dcc.inc 9 } 
  }
  elseif (($dcc.ct > $dcc.freq(6)) && ($dcc.ct <= $dcc.freq(7))) {
    if ($send(1)) { s.dcc.dcc.up 1 | s.dcc.dcc.akt left | s.dcc.rahmen ohne }
    else { dcc.inc 9 } 
  }
  elseif (($dcc.ct > $dcc.freq(7)) && ($dcc.ct <= $dcc.freq(8))) { 
    if ($send(2)) { s.dcc.dcc.up 2 | s.dcc.dcc.akt speed | s.dcc.rahmen ohne }
    else { dcc.inc 9 } 
  }
  elseif (($dcc.ct > $dcc.freq(8)) && ($dcc.ct <= $dcc.freq(9))) {
    if ($send(2)) { s.dcc.dcc.up 2 | s.dcc.dcc.akt left | s.dcc.rahmen ohne }
    else { dcc.inc 9 } 
  }
}
alias -l s.dcc.dcc.akt {
  drawtext -con @s.dcc $lese(multi.farbe1) Arial -10 10 6 $s.dcc.fit(205) 20 $lese(dcc.name)
  if ($1 = speed) {
    var %wt = $calc($s.dcc.width(fertig um: $lese(dcc.ankunftszeit) Uhr) + 10)
    drawtext -con @s.dcc $lese(multi.farbe2) Arial -10 $s.dcc.fit(230) 6 $s.dcc.fit(85) 20 @ $rate($lese(dcc.speed))
    drawtext -con @s.dcc $lese(multi.farbe2) Arial -10 $s.dcc.fit(539) 6 $s.dcc.fit(115) 20 $chr(216) $+ $lese(dcc.schnitt)
    drawtext -con @s.dcc $lese(multi.farbe1) Arial -10 $s.dcc.fit(666) 6 $s.dcc.fit(145) 20 $lese(dcc.zeit.übrig) übrig
    drawtext -on @s.dcc $lese(multi.farbe1) Arial -10 $calc($lese(dcc.win.breite) - %wt) 6 fertig um: $lese(dcc.ankunftszeit) Uhr
    if ($dcc.ct <= $dcc.freq(5)) { var %balken = $lese(max.down) }
    else { var %balken = $lese(max.up) }
    add 2 dcc.balken $round($calc(($lese(dcc.speed) / %balken) * $s.dcc.fit(190)),0)
  }
  elseif ($1 = left) {
    var %wt = $calc($s.dcc.width(übrig: $lese(dcc.verbleibend)) + 10)
    drawtext -con @s.dcc $lese(multi.farbe2) Arial -10 $s.dcc.fit(235) 6 $s.dcc.fit(85) 20 @ $lese(dcc.prozent) $chr(37)
    drawtext -con @s.dcc $lese(multi.farbe2) Arial -10 $s.dcc.fit(539) 6 $s.dcc.fit(115) 20 $lese(dcc.verbunden)
    drawtext -con @s.dcc $lese(multi.farbe1) Arial -10 $s.dcc.fit(671) 6 $s.dcc.fit(155) 20 fertig: $lese(dcc.erhalten)
    drawtext -on @s.dcc $lese(multi.farbe1) Arial -10 $calc($lese(dcc.win.breite) - %wt) 6 übrig: $lese(dcc.verbleibend)´
    add 2 dcc.balken $round($calc(($lese(dcc.prozent) / 100) * $s.dcc.fit(190)),0)
  }
  $lese(rec) 10 1 $s.dcc.fit(322) 10 $s.dcc.fit(190) 9
  if ($lese(dcc.balken) > $s.dcc.fit(190)) { add 2 dcc.balken $s.dcc.fit(190) }
  $lese(rec) $lese(multi.farbe2) 1 $s.dcc.fit(322) 10 $lese(dcc.balken) 9
}
alias -l s.dcc.dcc.down {
  add 2 dcc.name Get $1 $+ : $get($1).file
  add 2 dcc.speed $get($1).cps
  add 2 dcc.schnitt $rate($get.schnitt($1))
  add 2 dcc.erhalten $rate($get($1).rcvd)
  add 2 dcc.verbleibend $rate($get.verbleibend($1))
  add 2 dcc.prozent $nkm($calc(($get($1).rcvd / $get($1).size) * 100))
  add 2 dcc.verbunden $zeit($get($1).secs,digital)
  add 2 dcc.ankunftszeit $get.ankunftzeit($1)
  add 2 dcc.zeit.übrig $zeit($get.übrig($1),digital)
}
alias -l s.dcc.dcc.up {
  add 2 dcc.name Send $1 $+ : $send($1).file
  add 2 dcc.speed $send($1).cps
  add 2 dcc.schnitt $rate($send.schnitt($1))
  add 2 dcc.erhalten $rate($send($1).sent)
  add 2 dcc.verbleibend $rate($send.verbleibend($1))
  add 2 dcc.prozent $nkm($calc(($send($1).sent / $send($1).size) * 100))
  add 2 dcc.verbunden $zeit($send($1).secs,digital)
  add 2 dcc.ankunftszeit $send.ankunftzeit($1)
  add 2 dcc.zeit.übrig $zeit($send.übrig($1),digital)
}
alias -l s.dcc.emule {
  if ($calc($ctime - $file($lese(emule.dir) $+ onlinesig.dat).mtime) > 20) {
    var %dcc.txt = Emule Status: momentan aus 
    var %dcc.width = $s.dcc.width(%dcc.txt)
    $lese(txt) $lese(multi.farbe1) arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
    s.dcc.rahmen 
  }
  else {
    $emule.speed
    var %dcc.txt = Emule Status: $lese(emule.down) kb down - $lese(emule.up) kb up
    var %dcc.width = $s.dcc.width(%dcc.txt)
    var %downbalken = $round($calc(($lese(emule.down) / ($lese(max.down) / 1024)) * $s.dcc.fit(190)),0)
    var %upbalken = $round($calc(($lese(emule.up) / ($lese(max.up) / 1024)) * $s.dcc.fit(190)),0)
    if (%downbalken = 0) && (%upbalken = 0)  { 
      var %dcc.txt = Emule Status: keine Serververbindung !
      var %dcc.width = $s.dcc.width(%dcc.txt)
      var %dcc.width = $s.dcc.width(%dcc.txt)
      $lese(txt) $lese(multi.farbe1) arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
      s.dcc.rahmen 
      halt
    }
    if (%downbalken > $s.dcc.fit(190)) { var %downbalken = $s.dcc.fit(190) }
    if (%upbalken > $s.dcc.fit(190)) { var %upbalken = $s.dcc.fit(190) }
    $lese(txt) $lese(multi.farbe1) arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).1 6 %dcc.txt
    $lese(rec) 10 1 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).2 7 $s.dcc.fit(190) 7
    $lese(rec) 10 1 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).2 15 $s.dcc.fit(190) 7
    $lese(rec) $lese(multi.farbe1) 1 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).2 7 %downbalken 7
    $lese(rec) $lese(multi.farbe2) 1 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).2 15 %upbalken 7
    s.dcc.rahmen 
  }
}
alias -l s.dcc.laufzeit {
  var %dcc.txt = System Laufzeit: $zeit($uptime(system,3),digital) h - Online Zeit: $zeit($uptime(mirc,3),digital) h
  var %dcc.width = $s.dcc.width(%dcc.txt)
  $lese(txt) $lese(multi.farbe1) arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
  s.dcc.rahmen 
}
alias -l s.dcc.system {
  var %dcc.txt = mIRC: $version - System: Windows $os - CPU: $lese(prozessor)
  var %dcc.width = $s.dcc.width(%dcc.txt)
  $lese(txt) $lese(multi.farbe1) arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,2).1 6 %dcc.txt
  s.dcc.rahmen 
}
alias -l s.dcc.ram {
  var %ram.total = $sys(totalphysicalmem)
  var %ram.bel = $sys(usedphysicalmem) 
  var %ram.pc = $nkm($calc((%ram.bel / %ram.total) * 100))
  var %dcc.txt = Hauptspeicher: %ram.total MB - %ram.bel MB belegt ( $+ %ram.pc $+ $chr(37) $+ )
  var %dcc.width = $s.dcc.width(%dcc.txt)
  var %balken = $calc((%ram.pc / 100) * $s.dcc.fit(180))
  if (%balken > $s.dcc.fit(180)) { var %balken = $s.dcc.fit(180) }
  $lese(txt) $lese(multi.farbe1) arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).1 6 %dcc.txt
  $lese(rec) 10 1 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).2 9 $s.dcc.fit(180) 10
  $lese(rec) $lese(multi.farbe2) 1 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).2 9 %balken 10
  s.dcc.rahmen 
}
alias -l s.dcc.drive {
  driveinfo
  var %drive.pc = $calc((%drive.used / %drive.space) * 100) 
  var %dcc.txt = Festplatte: $rate(%drive.space) - $rate(%drive.used) belegt ( $+ $nkm(%drive.pc) $+ $chr(37) $+ )
  var %dcc.width = $s.dcc.width(%dcc.txt)
  var %balken = $calc((%drive.pc / 100) * $s.dcc.fit(180))
  if (%balken > $s.dcc.fit(180)) { var %balken = $s.dcc.fit(180) }
  $lese(txt) $lese(multi.farbe1) arial -10 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).1 6 %dcc.txt
  $lese(rec) 10 1 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).2 9 $s.dcc.fit(180) 10
  $lese(rec) $lese(multi.farbe2) 1 $s.dcc.pos($lese(dcc.win.breite),%dcc.width,3).2 9 %balken 10
  s.dcc.rahmen
  unset %drive.*
}
alias -l s.dcc.rahmen {
  if (!$1) {
    $lese(txt) $lese(multi.farbe1) arial -10 10 6 $asctime(dd.mm.yyyy)
    $lese(txt) $lese(multi.farbe1) arial -10 $calc($lese(dcc.win.breite) - 78) 6 $asctime(HH:nn) Uhr
  }
  drawtext @s.dcc
}
alias -l s.dcc.an {
  if (!$exists($lese(stats.dir) $+ MultiInfo.dll)) { echo -a 4MultiInfo.dll fehlt. Multi Info Fenster kann nicht gestartet werden. | return }
  add dcc.win.breite $gettok($dll($multiinfo,GetTBInfo,.),1,32)
  add dcc.win.höhe $gettok($dll($multiinfo,GetTBInfo,.),2,32)
  add dcc.ct 1
  grafik.win s.dcc 0 0 $lese(dcc.win.breite) $lese(dcc.win.höhe)
  dll $multiinfo OnMouse uclick /s.dcc.next | dll $multiinfo OnSize /s.dcc.size
  used | s.dcc 
  .timers.dcc -io 0 1 /s.dcc
}
alias s.dcc.next { 
  if ($dcc.ct <= $dcc.freq(13))  { hinc stats dcc.ct $dcc.freq(1,1)) }
  else { add dcc.ct 1 }
  s.dcc | hdec stats dcc.ct 
}
alias s.dcc.size {
  if (%stats.stop) { unset %stats.stop }
  add dcc.win.breite $gettok($dll($multiinfo,GetTBInfo,.),1,32)
  add dcc.win.höhe $gettok($dll($multiinfo,GetTBInfo,.),2,32)
  window -a @s.dcc 0 0 $lese(dcc.win.breite) $lese(dcc.win.höhe) 
  hdec stats dcc.ct 1 | s.dcc
}
alias -l s.dcc.aus { .timers.dcc off | window -c @s.dcc }

; ################################  active help ################################  
alias -l active.help { 
  var %ox = $1 
  var %oy = $2 
  var %tab = $dialog(stats.option).tab
  if ((%ox >= 4) && (%ox <= 544)) && ((%oy >= 340) && (%oy <= 363)) { 
    var %help = Save Settings und Exit: Schließt das Optionsmenü und speichert alle gewählten Einstellungen ab. 
  }
  else { var %help = OPPStats %stats.version - by OppTupacShakur - Last Update: %stats.update }
  if (%tab = 1) {
    if ((%ox >= 42) && (%ox <= 236)) && ((%oy >= 49) && (%oy <= 68)) {
      var %help = Emule Pfad: Wähle deinen Emule Ordner aus. Stats überprüft den Ordner und aktiviert gegebenenfalls auch die Online Signatur. OPPStats %stats.version unterstützt auch die älteren eMule Versionen 0.22-0.28.
    }
    elseif ((%ox >= 42) && (%ox <= 236)) && ((%oy >= 77) && (%oy <= 97)) {
      var %help = FlashFXP Pfad: Wähle deinen FlashFXP Ordner aus, um die FTP Traffic Funktion zu aktivieren.
    }
    elseif ((%ox >= 42) && (%ox <= 236)) && ((%oy >= 108) && (%oy <= 127)) {
      var %help = Crypting: Ist Mircryption installiert, werden die Infos gecrypted. OPPStats überprüft automatisch, ob für einen Channel crypting aktiviert ist. Mircryption Homepage: http://mircryption.sourceforge.net
    }
    elseif ((%ox >= 42) && (%ox <= 236)) && ((%oy >= 140) && (%oy <= 160)) { 
      var %help = Multi Info Fenster: Zeigt Informationen zu IRC, Emule oder Sytem an (Box "Multi Info Setup"). Die Anzeige wechselt automatisch oder auch durch Mausklick im Info-Fenster.
    }
    elseif ((%ox >= 279) && (%ox <= 539)) && ((%oy >= 35) && (%oy <= 169)) { 
      var %help = Internet Verbindung: Wähle deine Verbindungs Geschwindigkeit. Die Auswahl ist notwendig für korrekte Grafikanzeigen, Speedberechnung und das Multi Info Fenster.
    }
    elseif ((%ox >= 76) && (%ox <= 197)) && ((%oy >= 291) && (%oy <= 304)) { 
      var %help = Logo Farbe anpassen: Durch Aktivieren dieser Option wird das OPPStats Logo, welches in den Speed Anzeigen verwendet wird, in derselben Farbe wie der Text dargestellt.
    }
    elseif ((%ox >= 10) && (%ox <= 535)) && ((%oy >= 180) && (%oy <= 312)) { 
      var %help = Text Farbe Eins und Zwei: Lege die Script Farben fest, mit denen die verschiedenen Infos im Channel dargestellt werden sollen. Für eine optimale Anzeige sollten zwei verschiedene Farben gewählt werden.
    }
  }
  elseif (%tab = 2) { 
    if ((%ox >= 10) && (%ox <= 535)) && ((%oy >= 35) && (%oy <= 169)) { 
      var %help = Speed Grafik: Hiermit wird das Aussehen des Speed Balken bestimmt. Der Speed Balken wird in der Emule Anzeige und IRC Gesamtbandbreite benutzt. Festgelegt wird das Einheiten-Zeichen (•,º,..) und die Farben.
    } 
    elseif ((%ox >= 10) && (%ox <= 535)) && ((%oy >= 179) && (%oy <= 314)) { 
      var %help = Fortschritt Grafik: Hiermit wird das Aussehen des Fortschritt Balken bestimmt. Der Fortschritt Balken wird in den IRC Downloads und IRC Uploads benutzt. Festgelegt werden die beiden Farben.
    } 
  }
  elseif (%tab = 3) {
    if ((%ox >= 190) && (%ox <= 365)) && ((%oy >= 129) && (%oy <= 150)) {
      var %help = Intervall: Legt fest, in welchen Abständen die verschiedenen Anzeigen im Info Fenster gewechselt werden. Empfehlenswert sind 30 sek.
    }
    elseif ((%ox >= 12) && (%ox <= 540)) && ((%oy >= 12) && (%oy <= 173)) {
      var %help = Multi Info Setup: Wähle, welche Informationen im Info Fenster gezeigt werden.
    } 
    elseif ((%ox >= 12) && (%ox <= 537)) && ((%oy >= 180) && (%oy <= 314)) {
      var %help = Multi Info Farben: Lege die Farben fest, mit denen der Text und die Grafik im Multi Info Fenster dargestellt werden soll. Farbe 1 stellt den Info Text dar, Farbe 2 die DCC- und Emule Grafiken.
    } 
  }
  elseif (%tab = 5) {
    if ((%ox >= 10) && (%ox <= 268)) && ((%oy >= 36) && (%oy <= 169)) { var %help = Script Info: Information zur OPPStats Version und System. }
    elseif ((%ox >= 279) && (%ox <= 535)) && ((%oy >= 36) && (%oy <= 169)) { var %help = Was ist neu: Die neuen Funktion von OPPStats Version %stats.version. }
    elseif ((%ox >= 10) && (%ox <= 268)) && ((%oy >= 180) && (%oy <= 312)) { var %help = OPPStats Reset: Setzt alle Einstellungen & Daten auf die Standardwerte zurück und führt den System Check erneut aus. }
    elseif ((%ox >= 279) && (%ox <= 535)) && ((%oy >= 180) && (%oy <= 312)) { var %help = OPPStats Uninstall: Script vollständig deinstallieren. }
  }
  option ra 7 %help
}

; ##############################  verschiedenes ##############################  
alias -l about {
  text.win About 415 200 30
  aline -ph @About $logo 7,2by OppTupacShakur
  aline -ph @About 9Created on 15.06.2004 
  aline -ph @About 9Last update %stats.update
  aline -ph @About 9Du hast OPPStats bisher $lese(used) mal benutzt.
  aline -ph @About 9 $+ $str(-,57)
  aline -ph @About 9Installierte Version: %stats.version
  aline -ph @About 9Install Verzeichnis: $lese(stats.dir) $+ 
  aline -ph @About 9installiert am: $lese(instal.datum)
  aline -ph @About 9 $+ $str(-,57)
  aline -ph @About 11System: $lese(prozessor) 
  aline -ph @About 11mIRC Version $version
  if ($ilogo) { aline -ph @About 11Invision $r.static(Script,Version) Build $r.static(Script,build) installiert. }
  if ($gotmircryption = $true) { aline -ph @About 11Mircryption installiert. }
  else { aline -ph @About 11Mircryption nicht installiert. }
}
alias s.bug {
  var %bug =  $$input(Bitte den Fehler beschreiben:,ev,Bug Meldung - OPPStats Final -)
  .msg memoserv send OppTupacShakur Bugmeldung $nopath($script) $+ : %bug
  echo 9--- Fehler Bericht wurde versendet. OppTupacShakur wird sich umgehend bei dir melden. $logo
  .ignore memoserv | .timerunignore -io 1 3 /.ignore -r memoserv
}
alias -l advertise { 
  crypt 
  mg $f1 Ich benutze $f2 $+ OPPStats %stats.version $f1 mit $f2 $+ Stats zu XDCC, FTP, Azureus(Bittorrent), eMule und zum System, inkl. Auto Away Plugin, MSN Plugin, Funny Script, Switchbar, !seen Plugin $f1 von $f2 $+ OppTupacShakur $&
    $f1 unter $f2 $+ mIRC $version $f1 auf einem $f2 $+ $lese(prozessor) $f1 System. Downloadbar unter 4http://oppserver.ath.cx/downloads/irc/scripte/oppstats/oppstatsfinal.rar9. Und natürlich auf 4http://opp-site.6x.to9. Have Fun!!! $logo
}

;---------------------------------------------------------------------------------------------------
;---------------------------------------------------------------------------------------------------
;---------------------------------------------- Info Massage ---------------------------------------
;---------------------------------------------------------------------------------------------------

dialog tmsg {
  size -1 -1 225 180
  title "Info Message (in alle Chans!!!)"
  button "Ok",1, 160 140 60 20, OK
  button "Cancel",2, 160 160 60 20, CANCEL
  box "",15, 3 2 220 65
  text "Info Message :",3, 10 15 90 20
  edit "",4, 10 35 200 20, autohs
  button "Start Timer",5, 20 100 75 20
  button "Stop Timer",6, 130 100 75 20
  text "Zeit-interval:",7, 10 130 65 20
  edit "",8, 10 150 45 20
  text "sec.",9, 60 152 55 20
  box "",10, -40 80 600 400
}
on *:dialog:tmsg:edit:*: {
  if ($did == 4) { set %time.msg $did(4) }
  if ($did == 8) { set %time.delay $did(8) }
}
on *:dialog:tmsg:init:0: {
  did -o tmsg 4 1 %time.msg $did(4).multi
  did -o tmsg 8 1 %time.delay $did(8)
}
on *:dialog:tmsg:sclick:*: {
  if ($did == 5) { time.msg.on | set %timed_msg on } 
  if ($did == 6) { time.msg.off | set %timed_msg off }
}
alias time.msg.on { 
  if (%time.delay == $null) { echo -a %c2 $+ $+ %c1 $+ $+ %c2 $+ %c1 $+ [Du must den Zeit-Interval angeben!] | halt }
  if (%time.msg == $null) { echo -a %c2 $+ $+ %c1 $+ $+ %c2 $+ %c1 $+ [Du must zuerst die message eingeben!] | halt }
  .timermsg 0 %time.delay /amsg $TimeAd | /amsg $TimeAd | echo -a  %c2 $+ $+ %c1 $+ $+ %c2 $+ %c1 $+ 9[4Info Message wurde gestartet9] 
}
alias TimeAd { return %c2 $+ $+ %c1 $+ $+ %c2 $+ %time.msg  $+ %c1 $+ 9[4by OPp-Control9] $+ %c2 $+ }
alias time.msg.off { .timermsg off | echo -a %c2 $+ $+ %c1 $+ $+ %c2 $+ %c1 $+ 9[4Info Message wurde angehalten9]  }
alias saytime { 
  if (%time.delay == $null) { echo -a %c2 $+ $+ %c1 $+  $+ %c2 $+ %c1 $+ [Du must den Zeit-Interval angeben!] | halt }
  if (%time.msg == $null) { echo -a %c2 $+ $+ %c1 $+ $+ %c2 $+ %c1 $+ [Du must zuerst die Massage eingeben!] | halt }
  msg $active %c2 $+ $chr(91) $+ %c1 $+ 1,128Info Message $+ %c2 $+ $chr(93) %time.msg × $+ %c1 $+ 9[4by OPp-Control9] $+ %c2 $+ × 
}

alias Banpop {
  if $2 != $null {
    unset %KBuseZeit %KBZeit %KBmsg
    set %KBZeit $$?="Gib die Dauer für den Ban ein. Z.B.: 30s für 30 Sekunden, 15m für 15 Minuten, etc.. (Voreingestellt sind Minuten)"
    :start
    if $right(%KBZeit,1) == s && %KBZeit != s { 
      set %KBuseZeit $left(%KBZeit,-1)
    }
    else {
      if $right(%KBZeit,1) == m && %KBZeit != m { 
        set %KBuseZeit $calc($left(%KBZeit,-1) * 60)
      }
      if $right(%KBZeit,1) isnum {
        set %KBuseZeit $calc(%KBZeit * 60)
      }
    }
    if %KBuseZeit == $null { set %KBZeit $$?="Die Dauer, die Du eingegeben hast ist ungültig. Gib bitte eine gültige Dauer an. Z.B.: 30s für 30 Sekunden, 15m für 15 Minuten, etc.. (Voreingestellt sind Minuten)" | goto start } 
    set %KBmsg $?="Gib bitte einen Grund für den Ban ein:"
    .timer -o 1 %KBuseZeit mode $1 -b $address($2,3)
    if ($2 != $null) && ($1 != $null) { mode $1 +b $address($2,3) }
    if $2 ison $1 { kick $1 $2 Temp Ban %KBZeit wegen %KBmsg }
  }
  :leave
}

alias filterk {
  if ($3 != $null) {
    var %ct = 1
    while (%ct <= $nick($3,0)) {
      if ($1 == Ops) { 
        if (($nick($3,%ct) isop $3) && ($nick($3,%ct) != $me)) {
          if ($2 == bk) { .mode $3 +b $address($nick($3,%ct),3) }
          kick $3 $nick($3,%ct) $4-
        }
      }
      if ($1 == NonOps) { 
        if (($nick($3,%ct) !isop $3) && ($nick($3,%ct) != $me)) {
          if ($2 == bk) { .mode $3 +b $address($nick($3,%ct),3) }
          kick $3 $nick($3,%ct) $4-
        }
      }
      if ($1 == Voice) { 
        if (($nick($3,%ct) isvo $3) && ($nick($3,%ct) != $me)) {
          if ($2 == bk) { .mode $3 +b $address($nick($3,%ct),3) }
          kick $3 $nick($3,%ct) $4-
        }
      }
      if ($1 == Commons) { 
        if (($nick($3,%ct) !isvo $3) && ($nick($3,%ct) !isop $3) && ($nick($3,%ct) != $me)) {
          if ($2 == bk) { .mode $3 +b $address($nick($3,%ct),3) }
          kick $3 $nick($3,%ct) $4-
        }
      }
      if ($1 == OpsVoices) { 
        if ((($nick($3,%ct) isvo $3) || ($nick($3,%ct) isop $3)) && ($nick($3,%ct) != $me)) {
          if ($2 == bk) { .mode $3 +b $address($nick($3,%ct),3) }
          kick $3 $nick($3,%ct) $4-
        }
      }
      if ($1 == All) { 
        if ($nick($3,%ct) != $me) {
          if ($2 == bk) { .mode $3 +b $address($nick($3,%ct),3) }
          kick $3 $nick($3,%ct) $4-
        }
      }
      if ($1 == UL) { 
        if (($nick($3,%ct) != $me) && ($level($address($nick($3,%ct),5)) <= 14)) {
          if ($2 == bk) { .mode $3 +b $address($nick($3,%ct),3) }
          kick $3 $nick($3,%ct) $4-
        }
      }
      inc %ct 1 
    }
  }
}