IRC ve mIRC Kullanıcılarının Buluşma Noktası
  Reklam Ver


Forum tutkunlarının tek adresi Türkiye Sohbet Odaları Sohbetteyiz herkes burda

ayna chat muhabbetbayilik veren firmalar

Şeker Shell  Sohbet


TCL Scriptler

TCL Scriptler, kullanımları, işleyiş ve modifikasyonları



Yeni Konu aç Cevapla
 
LinkBack Seçenekler Stil
Alt 13 Nisan 2009, 21:49   #21
Çevrimdışı
Cevap: dovus.tcl oyun botu (yeni)




SabIrrr Edin SabIrrrr

  Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
Alt 10 Mayıs 2009, 19:54   #22
Çevrimdışı
Cevap: dovus.tcl oyun botu (yeni)




PHP- Kodu:   Kodu kopyalamak için üzerine çift tıklayın!
set myversion    "1.001"

#########################################################################################################################
#########################################################################################################################
##### 
##### greetings and welcome to dFight: a 1 or 2 player fighting game for eggdrop tcl
##### 
##### it has been designed to work in irc chatrooms where the bot is present; it currently does not
##### work in the partyline, but this could change if enuff peopls aks for it.
##### 
##### this script is written by dLux@PhatNet
##### if you need help, you can email questions and comments to 
Bu forumdaki linkleri ve resimleri görebilmek için en az 20 mesajınız olması gerekir.

##### or find me on irc PhatNet; i'm generally sitting in #dopeMaster
##### since this is the first public release of this script, it's online home, http://dsub.net/dfight
##### currently lacks content, but should mature with time..
##### 
##### 
##### setup:
##### - add this script to your eggdrop.conf scripts section, as you would any other script, and rehash
##### - add a user named "boss" to your bot, or else the boss's stats won't be recorded.
#####     do this in the bot console (telnet):
#####         .+user boss
#####     set an obscure password for the boss, so nobody causes trouble with this username on ur bot.
#####     again in the bot console (telnet):
#####         .chpass boss <password>
##### - get !fhelp and start a !fight
##### 
##### 
##### readme:
##### - this game produces a lot of channel text
#####     be aware that this could annoy some peopl, so you might direct peopl to a more appropriate room to play.
##### - this game uses the bot's userfile to save player statistics
#####     for this reason, players must be registered with the bot to play. if you don't want new users
#####     on your bot, then leave the INTROCMD blank "" below.. ('guest player' is a feature on my todo list)
##### - each user's record is supplemented with 4 additional XTRA fields; mylvl/mywin/mylos/mydra
#####     you shouldn't need to concern yourself with these, but i'm putting it out in the open in the
#####     unlikely event your bot's userfile allready contains these XTRAs.
##### - if you have other bots in your bot's user list, you can set their autofighting style so that they may 
#####     be fought against in an autofight. the following will only work if you have enabled the .tcl command 
#####     in your eggdrop.conf, which as the .conf suggests, should be safe to do if you choose your owners wisely.
#####     i endorse this line of thinking, since in this script, the bot owner has the ability to reset the 
#####     game as well as player stats. perform the following in the bot console (telnet):
#####         .tcl setuser <username> XTRA myafs random
#####     replace <username> with the name of the bot whose afs ur trying to set. you may also substitute
#####     random with one of the following autofighting styles: agro/mello/psycho/safe. to undo this:
#####         .tcl setuser <username> XTRA myafs ""
#####     this will set the afs to empty, and the player will not autofight.
##### - review the user configurations settings below. they should work as-is, but u may wish to customize them.
#####     in my experience, some peopl prefer no color or style, for this reason you can switch to the unstyled
#####     set of settings below.
##### - changing the color and styles:
#####     only change a color to another color, and a style to anther style, or else the output could be
#####     severely mangled due to how styles are toggles, and color needs termination.
##### - "high score" server load:
#####     this is an unnoticable blip in my environment (around 15 users), but i imagine this might be noticable,
#####     perhaps even problematic if your bot has hundreds or thousands of users.. try !fhis once, and if it
#####     is a problem, use this script on a bot with a smaller userlist; be considerate of your bot's host!
##### 
##### 
##### tips for fighting:
##### -    the best way to level up is by fighting the boss, since it's health is up to 25% more than urs,
#####     however this also makes the boss a formidable opponent.
##### -    the safest way to level up is against a weaker autofighter, but this won't win u as much of a level up
##### - beyond this, everything is random (with variable odds), so i really can't tell you how to be a better
#####     fighter; there are no secrets that will give you an edge, and in fact the boss has been kicking my ass.
#####     if you find a strategy that works, share it with me! i'll include it here and give u credit for it.
##### 
##### 
##### todo:
##### -    inform the player at the end of a match if they've set a new high score
##### -    guest fighter: let peopl play if they're not registered with the bot, just don't save their stats
##### -    defensive output could make better sense
##### - powerups
##### 
##### 
##### known bugs:
##### - player 1 can't suicide on 1st turn (they can, but it's not fatal)
##### - player 2's 1st turn suicide isn't reported as intended
##### 
##### 
##### version history:
#####  1.001 - 05.11.08 - first public release
##### 
##### 
##### acknowledgements:
#####     GOD-EMPEROR for sitestat; urs was the reason i first setup an eggdrop, and ur themeing was an inspiration
#####     perplexa; ur rss script is aces, and u showed me that one doesn't hafta be a dick to code tcl
##### 
#########################################################################################################################
#########################################################################################################################
##### 
##### DISCLAIMER:
#####     this script is for entertainment purposes only.
#####     i accept no liability for damages incurred, however i honestly don't think it's capable of causing any.
#####     this script has been tested to run safely, but no gaurentee is offered; if you are concerened
#####         about it's possible affects, test it in a sandbox first.
#####     the only file this script modifies is the bot's userfile; it does so using the 'setuser' command,
#####         which seems to be the kosher way to do it. this is my 2nd tcl script; so you tell me where i'm wrong.
#####     this game will not improve your phsyique, nor will it prepare you for real world fighting. it might
#####         improve your reaction time and typing skills, but i doubt it =P
#####     i don't support beating up weaker peopl unless they've genuinely aksed for it.
#####     lastly, while beating up the boss is fun and challenging, in real life it will almost certainly get 
#####         you fired, and i won't be held responsible for this outcome.
##### 
#########################################################################################################################
#########################################################################################################################
###
### user configuration settings:
###

set CHALLENGESECS    "20"
set ROUNDLENGSECS    "35"
### CHALLENGESECS "20" ### when a challenge is made, it will last unanswered for 20 secs.
### ROUNDLENGSECS "35" ### when a fight is in progress, there is a 35 sec pause for players to enter their move,
###                        35 ends up being more like 30 secs with the bot's buffered output and irc lag

set INTROCMD        ""
### the command used in your eggdrop.conf to introduce urself to the bot, as in:
###  /msg $botname <INTROCMD>
### or in my case:
###  /msg dopeMaster yoyodope
### leave empty "" if u don't want to mention this to folks who are not registered with the bot when they try and fight

set BOSSAFS            "random"
### set the boss's autofighting style. must be one of: random/agro/mello/psycho/safe
### 

#### mirc color legend
### 00 white                06 purple                12 blue
### 01 black                07 orange                13 pink
### 02 dark blue            08 yellow                14 dark grey
### 03 dark green            09 light green            15 light grey
### 04 red                    10 teal (medium light blue)
### 05 dark red                11 cyan (light blue)
###
#### eggdrop color & style characters
### \003xx,yy    xx colored text, on a yy colored background
### \003            color off
### \002            bold
### \037            underline

### here's a nice default colored and styled set of options
set FMTBASICCOLOR        "\00315,01"        ;# \00315,01 = light grey on black background
set FMTNAMECOLOR        "\00300,01"        ;# \00300,01 = white on black
set FMTNAMESTYLE        "\002"            ;# \002 = bold
set FMTSTATCOLOR        $FMTNAMECOLOR
set FMTSTATSTYLE        
"\002"
set FMTSTATDELTA        "\037"
set FMTCMDCOLOR            "\00311,01"        ;# \00311,01 = cyan (light blue) on black
set FMTCMDSTYLE            "\002"
set FMTCOLOROFF            "\003"            ;# don't change this except to empty "" when removing all color
set FMTBULLET            "\00314,01\002 -- \002\003"            ;# used as a separator for visual style

### use this set instead if you don't want any color or style (bold/underline) at all 
#set FMTBASICCOLOR        ""
#set FMTNAMECOLOR        ""
#set FMTNAMESTYLE        ""
#set FMTSTATCOLOR        ""
#set FMTSTATSTYLE        ""
#set FMTSTATDELTA        ""
#set FMTCMDCOLOR            ""
#set FMTCMDSTYLE            ""
#set FMTCOLOROFF            ""
#set FMTBULLET            " -- "

###
### end of user configuration settings!
### editing below here is discouraged unless you really know what you're doing!
#########################################################################################################################
#########################################################################################################################














#########################################################################################################################
### formatoutput - color/style it and say it
###

proc formatoutput {type text} {

    global 
botnick INTROCMD FMTCMDCOLOR FMTCMDSTYLE FMTBULLET
    
global FMTBASICCOLOR FMTCOLOROFF FMTNAMECOLOR FMTNAMESTYLE FMTSTATCOLOR FMTSTATSTYLE FMTSTATDELTA

    set myout 
""
    
if {$type == "stranger"} {
        
set nick    [lindex $text 0]
        
set chan    [lindex $text 1]

        
set tmessage "$nick, Senin kim oldugunu bilmiyorum."
        
append myout $FMTBASICCOLOR $tmessage $FMTCOLOROFF
        
if {$INTROCMD != ""} {
            
append myout " " $FMTCMDCOLOR $FMTCMDSTYLE "/msg $botnick $INTROCMD$FMTCMDSTYLE $FMTCOLOROFF
        
} else {
            
append myout "$FMTBASICCOLOR Biz Aciklamadan Kavga edemezsiniz.$FMTCOLOROFF"
        
}

    } elseif {
$type == "simple"} {
        
set nick    [lindex $text 0]
        
set chan    [lindex $text 1]
        
set info    [lindex $text 2]

        
append myout $FMTBASICCOLOR $info $FMTCOLOROFF

    
} elseif {$type == "simplecolr"} {
        
set nick    [lindex $text 0]
        
set chan    [lindex $text 1]
        
set info    [lindex $text 2]
        
set color    [lindex $text 3]

        
append myout $color $info $FMTCOLOROFF

    
} elseif {($type == "error")||($type == "sorry")} {
        
set nick    [lindex $text 0]
        
set chan    [lindex $text 1]
        
set info    [lindex $text 2]

        
set tmessage "$type $nick$info"
        
append myout $FMTBASICCOLOR $tmessage $FMTCOLOROFF

    
} elseif {$type == "stat"} {
        
set nick    [lindex [lindex $text 00]
        
set chan    [lindex [lindex $text 01]
        
set mylvl    [lindex [lindex $text 10]
        
set mylvld    [lindex [lindex $text 11]
        
set mywin    [lindex [lindex $text 20]
        
set mywind    [lindex [lindex $text 21]
        
set mylos    [lindex [lindex $text 30]
        
set mylosd    [lindex [lindex $text 31]
        
set mydra    [lindex [lindex $text 40]
        
set mydrad    [lindex [lindex $text 41]
        
set myafs    [lindex [lindex $text 50]
        
set myafsd    [lindex [lindex $text 51]

        
append myout $FMTNAMECOLOR$FMTNAMESTYLE $nick $FMTNAMESTYLE$FMTCOLOROFF " " $FMTSTATCOLOR (
        if {
$mylvld != "hide"} { append myout H $FMTSTATSTYLE $mylvl $FMTSTATSTYLE / }
        if {
$mywind != "hide"} { append myout $FMTSTATSTYLE $mywin $FMTSTATSTYLE W / }
        if {
$mylosd != "hide"} { append myout $FMTSTATSTYLE $mylos $FMTSTATSTYLE L / }
        if {
$mydrad != "hide"} { append myout $FMTSTATSTYLE $mydra $FMTSTATSTYLE D }
        if {(
$myafs != "")&&($myafsd != "hide")&&($myafsd != "solo")} {    append myout $myafs
        
} elseif {$myafsd == "solo"} { append myout $myafs }
        
append myout $FMTCOLOROFF

    
} elseif {$type == "turnsimple"} {
        
set chan    [lindex $text 0]

        
set p1nick    [lindex $text {1 0}]
        
set p1hea    [lindex $text {1 1}]

        
set p2nick    [lindex $text {2 0}]
        
set p2hea    [lindex $text {2 1}]
        
set p2afs    [lindex $text {2 2}]

        
append myout $FMTBULLET $FMTNAMECOLOR $FMTNAMESTYLE $p1nick $FMTNAMESTYLE $FMTBASICCOLOR " " $FMTSTATCOLOR $FMTSTATSTYLE $p1hea $FMTSTATSTYLE $FMTBASICCOLOR " " $FMTCOLOROFF
        append myout $FMTBULLET $FMTBASICCOLOR 
"vs" $FMTCOLOROFF $FMTBULLET $FMTNAMECOLOR
        
if            {$p2afs != "null"} {append myout $p2afs}
        
append myout $FMTNAMESTYLE $p2nick $FMTNAMESTYLE $FMTBASICCOLOR " " $FMTSTATCOLOR $FMTSTATSTYLE $p2hea $FMTSTATSTYLE $FMTBASICCOLOR $FMTCOLOROFF $FMTBULLET

    
} elseif {$type == "turnstat"} {
        
set chan    [lindex $text 0]

        
set p1nick    [lindex $text {1 0}]
        
set p1lvl    [lindex $text {1 1}]
        
set p1lvld    [lindex $text {1 2}]
        
set p1win    [lindex $text {1 3}]
        
set p1wind    [lindex $text {1 4}]
        
set p1los    [lindex $text {1 5}]
        
set p1losd    [lindex $text {1 6}]
        
set p1dra    [lindex $text {1 7}]
        
set p1drad    [lindex $text {1 8}]

        
set descrp    [lindex $text 2]

        
set p2nick    [lindex $text {3 0}]
        
set p2lvl    [lindex $text {3 1}]
        
set p2lvld    [lindex $text {3 2}]
        
set p2win    [lindex $text {3 3}]
        
set p2wind    [lindex $text {3 4}]
        
set p2los    [lindex $text {3 5}]
        
set p2losd    [lindex $text {3 6}]
        
set p2dra    [lindex $text {3 7}]
        
set p2drad    [lindex $text {3 8}]
        
set p2afs    [lindex $text {3 9}]

        
append myout $FMTBULLET $FMTNAMECOLOR $FMTNAMESTYLE $p1nick $FMTNAMESTYLE $FMTBASICCOLOR " " (

        if {
$p1lvld == "null"} {
            
append myout $FMTSTATCOLOR H $FMTSTATSTYLE $p1lvl $FMTSTATSTYLE $FMTBASICCOLOR /
        } else {
            
append myout $FMTSTATCOLOR $p1lvld $FMTSTATDELTA H $FMTSTATSTYLE $p1lvl $FMTSTATSTYLE $FMTSTATDELTA $FMTBASICCOLOR /
        }
        if            {
$p1wind == "null"} { append myout $FMTSTATCOLOR $FMTSTATSTYLE $p1win $FMTSTATSTYLE W $FMTBASICCOLOR /
        } elseif    {
$p1wind == "diff"} { append myout $FMTSTATCOLOR $FMTSTATDELTA $FMTSTATSTYLE $p1win $FMTSTATSTYLE W $FMTSTATDELTA $FMTBASICCOLOR / }
        if            {
$p1losd == "null"} { append myout $FMTSTATCOLOR $FMTSTATSTYLE $p1los $FMTSTATSTYLE L $FMTBASICCOLOR /
        } elseif    {
$p1losd == "diff"} { append myout $FMTSTATCOLOR $FMTSTATDELTA $FMTSTATSTYLE $p1los $FMTSTATSTYLE L $FMTSTATDELTA $FMTBASICCOLOR / }
        if            {
$p1drad == "null"} { append myout $FMTSTATCOLOR $FMTSTATSTYLE $p1dra $FMTSTATSTYLE D $FMTBASICCOLOR )
        } elseif    {
$p1drad == "diff"} { append myout $FMTSTATCOLOR $FMTSTATDELTA $FMTSTATSTYLE $p1dra $FMTSTATSTYLE D $FMTSTATDELTA $FMTBASICCOLOR ) }

        
append myout $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "$descrp$FMTCOLOROFF $FMTBULLET $FMTNAMECOLOR
        
if            {$p2afs != "null"} {append myout $p2afs}
        
append myout $FMTNAMESTYLE $p2nick $FMTNAMESTYLE $FMTCOLOROFF " " $FMTBASICCOLOR (

        if {
$p2lvld == "null"} {
            
append myout $FMTSTATCOLOR H $FMTSTATSTYLE $p2lvl $FMTSTATSTYLE $FMTBASICCOLOR 
        } elseif {
$p2lvld == "hide"} {
        } else {
            
append myout $FMTSTATCOLOR $p2lvld $FMTSTATDELTA H $FMTSTATSTYLE $p2lvl $FMTSTATSTYLE $FMTSTATDELTA $FMTBASICCOLOR 
        }
        if            {
$p2wind == "null"} { append myout $FMTSTATCOLOR $FMTSTATSTYLE $p2win $FMTSTATSTYLE W $FMTBASICCOLOR /
        } elseif    {
$p2wind == "diff"} { append myout $FMTSTATCOLOR $FMTSTATDELTA $FMTSTATSTYLE $p2win $FMTSTATSTYLE W $FMTSTATDELTA $FMTBASICCOLOR / }
        if            {
$p2losd == "null"} { append myout $FMTSTATCOLOR $FMTSTATSTYLE $p2los $FMTSTATSTYLE L $FMTBASICCOLOR /
        } elseif    {
$p2losd == "diff"} { append myout $FMTSTATCOLOR $FMTSTATDELTA $FMTSTATSTYLE $p2los $FMTSTATSTYLE L $FMTSTATDELTA $FMTBASICCOLOR / }
        if            {
$p2drad == "null"} { append myout $FMTSTATCOLOR $FMTSTATSTYLE $p2dra $FMTSTATSTYLE D $FMTBASICCOLOR )
        } elseif    {
$p2drad == "diff"} { append myout $FMTSTATCOLOR $FMTSTATDELTA $FMTSTATSTYLE $p2dra $FMTSTATSTYLE D $FMTSTATDELTA $FMTBASICCOLOR ) }
        
append myout $FMTCOLOROFF $FMTBULLET 

    
} elseif {$type == "roundcmd"} {
        
set chan    [lindex $text 0]
        
set curr    [lindex $text 1]
        
set cmds    [lindex $text {2 0}]
        
set cmdsll    [llength [lindex $text {2 0}]]
        
set cmdsmo    [expr {$cmdsll 1}]

        
append myout $FMTBULLET $FMTNAMECOLOR $FMTNAMESTYLE "round " $curr ": FIGHT" $FMTNAMESTYLE $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "\[ "
        
for {set i 0} {$i $cmdsll} {incr i} {
            
set tdiv " | "
            
if {$i == $cmdsmo} {set tdiv " "}
            
append myout $FMTCMDCOLOR $FMTCMDSTYLE "!" [lindex $cmds $i$FMTCMDSTYLE $FMTBASICCOLOR "$tdiv"
        
}
        
append myout "\]" $FMTCOLOROFF $FMTBULLET

    
} elseif {$type == "challenge"} {
        
set p1            [lindex $text 0]
        
set p2            [lindex $text 1]
        
set chan        [lindex $text 2]
        
set chalsecs    [lindex $text {3 0}]
        
set whatAF        [lindex $text {3 1}]

        
append myout $FMTNAMECOLOR $FMTNAMESTYLE $p1 $FMTNAMESTYLE $FMTBASICCOLOR " karsilasmalar " $FMTNAMECOLOR $FMTNAMESTYLE $p2 $FMTNAMESTYLE $FMTBASICCOLOR
        
if {($whatAF == "noAF")||($whatAF == "thenAF")} {
            
append myout ", " $FMTSTATSTYLE $chalsecs $FMTSTATSTYLE " kabul icin kalan sure " $FMTCMDCOLOR $FMTCMDSTYLE "!fight" $FMTCMDSTYLE $FMTBASICCOLOR
            
if {$whatAF == "noAF"} {append myout "."}
            if {
$whatAF == "thenAF"} {append myout " before autofight." }
        } elseif {
$whatAF == "doAF"}    { append myout " to an " $FMTNAMECOLOR auto $FMTNAMESTYLE fight $FMTNAMESTYLE $FMTBASICCOLOR "!"
        
}
        
append myout $FMTCOLOROFF

    
}
    
puthelp "PRIVMSG $chan :$myout"
}


#########################################################################################################################
### info related
###

###
### fhelp
###
###
proc fhelpmsg {nick host handle text} {
    
fhelp $nick $host $handle $nick $text
}
proc fhelp {nick host handle chan text} {
    global 
FIGHTINPROGRESS PLAYER1 PLAYER2
    
if {($FIGHTINPROGRESS == 0)||($FIGHTINPROGRESS == "")} {
        
### do help
        
fhelpshow $nick $chan $text
    
} elseif {$FIGHTINPROGRESS == 1} {
        if {
$nick == $PLAYER1} {
            
formatoutput sorry "$nick $chan {Bir kapisma(karsilasma) talep ettiniz, Eger nasil dovuseceginizi bilmiyorsaniz, Lutfen sureyi bekleyiniz ve [lindex [utimers] {0 0}] saniye icinde !fhelp komutu ile yardim aliniz.}"
        
} elseif {$nick == $PLAYER2} {
            
formatoutput sorry "$nick $chan {Bir kapisma(karsilasma) size karsi baslatildi, Eger ki nasil dovuseceginiz hakkinda kesin bir bilgiye sahip degilseniz, karsilasmayi kabul etmeyiniz ve [lindex [utimers] {0 0}] saniye icinde !fhelp komutu ile yardim aliniz.}"
        
} else {
            
formatoutput sorry "$nick $chan {Bir kapisma(karsilasma) bekliyor, Eger ki dovus baslamazsa [lindex [utimers] {0 0}] saniye icinde !fhelp komutu ile yardim aliniz.}"
        
}
    } elseif {
$FIGHTINPROGRESS 1} {
        
### no help, a fight is in progress
        ##### UNLESS ur one of the fighters, in which case fhelp fight actions
        
formatoutput sorry "$nick $chan {Bir dovus halen ($PLAYER1 vs $PLAYER2) arasinda devam etmekte, bu dovus bittigi zaman !fhelp komutu ile yardim aliniz.}"
    
} else {
        
formatoutput sorry "$nick $chan {oyunun durumu hakkinda bir hata tespit edildi.}"
    
}
}
proc fhelpshow {nick chan text} {
    global 
botnick owner myversion FMTCMDCOLOR FMTCMDSTYLE FMTBULLET CHALLENGESECS
    
global FMTBASICCOLOR FMTCOLOROFF FMTNAMECOLOR FMTNAMESTYLE FMTSTATCOLOR FMTSTATSTYLE FMTSTATDELTA
    
if {$text == ""} {
        
set chan "$nick"

        
set toutput ""
        
set toutput [append toutput $FMTNAMECOLOR $FMTNAMESTYLE "Dovus $myversion$FMTNAMESTYLE $FMTBASICCOLOR " by kemik" $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE !fhelp $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE fight $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE action $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE basic $FMTCMDSTYLE $FMTBASICCOLOR]
        if {
$nick == $owner} {
            
set toutput [append toutput " | " $FMTCMDCOLOR $FMTCMDSTYLE admin $FMTCMDSTYLE $FMTBASICCOLOR]
        }
        
set toutput [append toutput "\]" $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR  "Baskabir dovuscu ile dovusmeye basla, veya otodovuse basla. " $FMTCMDCOLOR $FMTCMDSTYLE "!fhelp fight" $FMTCMDSTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR  "Bir Dovus basladi veya baslattiniz, Dovusmek icin aksiyon komutlarini uygulayiniz. " $FMTCMDCOLOR $FMTCMDSTYLE "!fhelp action" $FMTCMDSTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBASICCOLOR  "Bakiniz: " $FMTCMDCOLOR $FMTCMDSTYLE !fhelp $FMTCMDSTYLE $FMTBASICCOLOR " <" $FMTCMDCOLOR $FMTCMDSTYLE topic $FMTCMDSTYLE $FMTBASICCOLOR "> " $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBASICCOLOR  " Ornek: " $FMTCMDCOLOR $FMTCMDSTYLE "!fhelp basic" $FMTCMDSTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"


        
set toutput ""
        
set toutput [append toutput $FMTNAMECOLOR $FMTNAMESTYLE "Mesaj Komutu:" $FMTNAMESTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE "/msg $botnick$FMTCMDSTYLE $FMTBASICCOLOR " " $FMTCMDCOLOR $FMTCMDSTYLE fhelp $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE topic $FMTCMDSTYLE $FMTBASICCOLOR "\]" $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

    
} elseif {$text == "fight"} {
        
set chan "$nick"

        
set toutput ""
        
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE "!fight nick " $FMTCMDSTYLE $FMTBASICCOLOR "\[" $FMTCMDCOLOR $FMTCMDSTYLE noauto $FMTCMDSTYLE $FMTBASICCOLOR "\]" $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "Kapisma icin bir Nickname belirttiyseniz, Sadece o nickname sahibi kabul ettiginde dovus baslayacaktir." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR  "Bir Kapisma(Karsilasma) istendiginde, dovusun baslamasi icin, Karsi taraf mutlaka karsilasmayi kabul etmek zorundadir, Soyle Yazarak : " $FMTCMDCOLOR $FMTCMDSTYLE "!fight" $FMTCMDSTYLE $FMTBASICCOLOR " ( ayni zaman dilimi ve ayni kanal icerisinde yazmalidir )." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR  "Egerki oto dovus seciminde secilen nick kanalda degil ise, baska bir oto dovus hemen baslayacaktir." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR  "Eger ki Nickname Patron yani boss degil ise, Kazanan Taraf kaybeden tarafin 10% luk baslangic Canini yani health ini alir." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR  "Patrondan baska hic kimseye karsi kaybeden tarafin cezai bir islem uygulamasina gerek yoktur." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR  "Patron(boss)un cani 100-125% arasindadir, kazanan/kaybeden icin, odul/penalti  +/- her zaman patronun avantajinadir." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBASICCOLOR  "Bakiniz: " $FMTCMDCOLOR $FMTCMDSTYLE "!fhelp action" $FMTCMDSTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

    
} elseif {$text == "basic"} {
        
set chan "$nick"

        
set toutput ""
        
set toutput [append toutput $FMTNAMECOLOR $FMTNAMESTYLE "basic komutlar:" $FMTNAMESTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE !fstat $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE nick $FMTCMDSTYLE $FMTBASICCOLOR "\]" $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "kendi nickinizin veya \[nick\]'inin dovus bilgileri ve listesini goruntuler." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE !fauto $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE agro $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE mello $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE psycho $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE safe $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE none $FMTCMDSTYLE $FMTBASICCOLOR "\]" $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "OtoDovus StiLinizi goruntuler \[veya ayarlar.\] " $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE !fight $FMTCMDSTYLE $FMTBASICCOLOR $FMTCMDCOLOR $FMTCMDSTYLE " nick " $FMTCMDSTYLE $FMTBASICCOLOR "\[" $FMTCMDCOLOR $FMTCMDSTYLE noauto $FMTCMDSTYLE $FMTBASICCOLOR "\]" $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "Bu komutla Kapisma icin bir nick tayin edersiniz, Opsiyon : Sadece karsi taraf kabul ederse." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE !fhis $FMTCMDSTYLE $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "SkorLari Listeler Ve Goruntuler." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"


        
set toutput ""
        
set toutput [append toutput $FMTNAMECOLOR $FMTNAMESTYLE "MesaJ Komutlar:" $FMTNAMESTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE "/msg $botnick$FMTCMDSTYLE $FMTBASICCOLOR " " $FMTCMDCOLOR $FMTCMDSTYLE fstat $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE nick $FMTCMDSTYLE $FMTBASICCOLOR "\] | " $FMTCMDCOLOR $FMTCMDSTYLE fauto $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE style $FMTCMDSTYLE $FMTBASICCOLOR "\] | " $FMTCMDCOLOR $FMTCMDSTYLE fhis $FMTCMDSTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

    
} elseif {$text == "action"} {
        
set chan "$nick"

        
set toutput ""
        
set toutput [append toutput $FMTNAMECOLOR $FMTNAMESTYLE "Dovus Aksiyonlari:" $FMTNAMESTYLE $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR "Saldırgan bir dovus aksiyonunuzun etkisi rastgele sizin baslangic sagliginiz olan <damage>% a kadardir." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR "Kacmak veya Korunmak ( dodge ve guard ) Savunma amacli aksiyonlardir ki : Rakibinizin Saldiri hareketini hesaplamak icin ayni metodu kullanarak rakibinizin hamlesini geri puskurtun veya azaltin." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set toutput ""
        
set toutput [append toutput $FMTBULLET $FMTBASICCOLOR "Sansli bir saldiri savunmasiz bir bonus saldirisidir, bu saldiri teknigi karsinizdakine 25% e kadar basarili bir hasar verir. Eger Basarisiz olursaniz anlayinki o kadarda sansli degilmissiniz." $FMTCOLOROFF]
        
puthelp "PRIVMSG $chan :$toutput"

        
set cmdshort    [actionlookup all 1]
        
set cmdslong    [actionlookup all 0]
        
set cmdstype    [actionlookup all 2]
        
set cmdspoin    [actionlookup all 3]
        
set cmdssucc    [actionlookup all 4]
        
set cmdsluck    [actionlookup all 5]
        
set cmdsll    [llength $cmdslong]

        for {
set i 0} {$i $cmdsll} {incr i} {
            
set toutput ""
            
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE "!" [lindex $cmdshort $i$FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE "!" [lindex $cmdslong $i$FMTCMDSTYLE $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR]
            if {[
lindex $cmdslong $i] != "suicide"} {
                
set toutput [append toutput [lindex $cmdspoin $i"% hasar, " [lindex $cmdssucc $i"% basari, " [lindex $cmdsluck $i"% sansli." $FMTCOLOROFF]
            } else {
                
set toutput [append toutput "kamakazi Saldirisi; kendinizde olursunuz fakat, eger basarili olursaniz karsinizdakine de bayagi bir hasar verirsiniz. " [lindex $cmdssucc $i" vereceginiz hasar : % ve sanslilik durumunuz : " [lindex $cmdsluck $i"%." $FMTCOLOROFF]
            }
            
puthelp "PRIVMSG $chan :$toutput"
        
}

    } elseif {
$text == "admin"} {
        
set chan "$nick"

        
if {$nick == $owner} {
            
set toutput ""
            
set toutput [append toutput $FMTNAMECOLOR $FMTNAMESTYLE "admin komutlari ( Sadece $owner ):" $FMTNAMESTYLE $FMTCOLOROFF]
            
puthelp "PRIVMSG $chan :$toutput"
    
            
set toutput ""
            
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE !freset $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE "nick" $FMTCMDSTYLE $FMTBASICCOLOR "\]" $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "Oyunu Resetler \[Nickinin Leveli 10 Lvl olana kadar olan kisilerin durumlarini resetler, win/los/dra: 0\]" $FMTCOLOROFF]
            
puthelp "PRIVMSG $chan :$toutput"
    
            
set toutput ""
            
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE !fdebug $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE 1 $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE 2 $FMTCMDSTYLE $FMTBASICCOLOR "\]" $FMTCOLOROFF $FMTBULLET $FMTBASICCOLOR "view verbose math" $FMTCOLOROFF]
            
puthelp "PRIVMSG $chan :$toutput"
        
    
            
set toutput ""
            
set toutput [append toutput $FMTNAMECOLOR $FMTNAMESTYLE "MesaJ Komutlari ( Sadece $owner ):" $FMTNAMESTYLE $FMTCOLOROFF]
            
puthelp "PRIVMSG $chan :$toutput"
    
            
set toutput ""
            
set toutput [append toutput $FMTCMDCOLOR $FMTCMDSTYLE "/msg $botnick$FMTCMDSTYLE $FMTBASICCOLOR " " $FMTCMDCOLOR $FMTCMDSTYLE freset $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE nick $FMTCMDSTYLE $FMTBASICCOLOR "\] | " $FMTCMDCOLOR $FMTCMDSTYLE fdebug $FMTCMDSTYLE $FMTBASICCOLOR " \[" $FMTCMDCOLOR $FMTCMDSTYLE 1 $FMTCMDSTYLE $FMTBASICCOLOR "|" $FMTCMDCOLOR $FMTCMDSTYLE 2 $FMTCMDSTYLE $FMTBASICCOLOR "\]" $FMTCOLOROFF]
            
puthelp "PRIVMSG $chan :$toutput"
        
} else {
            
set toutput ""
            
set toutput [append toutput $FMTBASICCOLOR "Uzgunum $nick, Bu komut Sadece Sahibim icin :)." $FMTNAMESTYLE $FMTCOLOROFF]
            
puthelp "PRIVMSG $chan :$toutput"
        
}

    } else {
        
set toutput ""
        
set toutput [append toutput "Uzgunum $nick, Sana \"$text\ bununla yardim veremem"Yalnizca Su komutla Yardim verebilirim ve baslayabilirsin $FMTCMDCOLOR $FMTCMDSTYLE !fhelp $FMTCMDSTYLE $FMTCOLOROFF]
        puthelp "
PRIVMSG $chan :$toutput"
    }
}

###
### fhis
###
###
proc fhismsg {nick host handle text} {
    fhis 
$nick $host $handle $nick $text
}
proc fhis {nick host handle chan text} {
    global FMTCMDCOLOR FMTCMDSTYLE FMTBULLET
    global FMTBASICCOLOR FMTCOLOROFF FMTNAMECOLOR FMTNAMESTYLE FMTSTATCOLOR FMTSTATSTYLE FMTSTATDELTA
    set FIGHTERS [userlist]
    set nFIGHTERS [llength 
$FIGHTERS]
    
    set TOPAer ""
    set TOPBer ""
    set TOPCer ""

    set TOPAed ""
    set TOPBed ""
    set TOPCed ""

    set MWINer ""
    set MLOSer ""
    set MPLAer ""
    
    set MWINed "
0"
    set MLOSed "
0"
    set MPLAed "
0"
    
    for {set i 0} 
{$i $nFIGHTERS} {incr i} {
        set MYNIC [lindex 
$FIGHTERS $i]
        set MYLVL [getuser [lindex 
$FIGHTERS $i] XTRA mylvl]
        set MYWIN [getuser [lindex 
$FIGHTERS $i] XTRA mywin]
        set MYLOS [getuser [lindex 
$FIGHTERS $i] XTRA mylos]
        set MYDRA [getuser [lindex 
$FIGHTERS $i] XTRA mydra]

        if {(
$MYNIC != "boss")&&($MYLVL != "")} {
            if 
{$MYLVL $TOPAed} {
                set TOPCer 
$TOPBer
                set TOPCed 
$TOPBed
                set TOPBer 
$TOPAer
                set TOPBed 
$TOPAed
                set TOPAer [lindex 
$FIGHTERS $i]
                set TOPAed 
$MYLVL
            } elseif {(
$MYLVL <= $TOPAed)&&($MYLVL > $TOPBed)} {
                set TOPCer 
$TOPBer
                set TOPCed 
$TOPBed
                set TOPBer [lindex 
$FIGHTERS $i]
                set TOPBed 
$MYLVL
            } elseif {(
$MYLVL <= $TOPBed)&&($MYLVL > $TOPCed)} {
                set TOPCer [lindex 
$FIGHTERS $i]
                set TOPCed 
$MYLVL
            }
        }

        if 
{$MYWIN == ""} {set MYWIN "0"}
        if 
{$MYLOS == ""} {set MYLOS "0"}
        if 
{$MYDRA == ""} {set MYDRA "0"}
        set MYPLA [expr 
{$MYWIN $MYLOS $MYDRA}]

        if 
{$MYWIN $MWINed} {
            set MWINer [lindex 
$FIGHTERS $i]
            set MWINed 
$MYWIN
        }
        if 
{$MYLOS $MLOSed} {
            set MLOSer [lindex 
$FIGHTERS $i]
            set MLOSed 
$MYLOS
        }
        if 
{$MYPLA $MPLAed} {
            set MPLAer [lindex 
$FIGHTERS $i]
            set MPLAed 
$MYPLA
        }
    }
    if 
{$TOPAed != ""} {
        
        set toutput ""
        set toutput [append toutput 
$FMTBASICCOLOR "En GucLu Dovusculer:$FMTNAMESTYLE]
        puthelp "
PRIVMSG $chan :$toutput"
        set toutput ""
        set toutput [append toutput 
$FMTNAMECOLOR "$TOPAed$FMTNAMESTYLE $FMTNAMECOLOR "$TOPAer$FMTNAMESTYLE $FMTCOLOROFF]
        puthelp "
PRIVMSG $chan :$toutput"
        if 
{$TOPBed != ""} {
            set toutput ""
            set toutput [append toutput 
$FMTNAMECOLOR "$TOPBed$FMTNAMESTYLE $FMTNAMECOLOR "$TOPBer$FMTNAMESTYLE $FMTCOLOROFF]
            puthelp "
PRIVMSG $chan :$toutput"
            if 
{$TOPCed != ""} {
                set toutput ""
                set toutput [append toutput 
$FMTNAMECOLOR "$TOPCed$FMTNAMESTYLE $FMTNAMECOLOR "$TOPCer$FMTNAMESTYLE $FMTCOLOROFF]
                puthelp "
PRIVMSG $chan :$toutput"
            }
        }
    }
    if 
{$MPLAed != "0"} {
        set toutput ""
        set toutput [append toutput 
$FMTBASICCOLOR "En Cok Oynayanlar$FMTNAMECOLOR "$MPLAer $FMTSTATCOLOR $FMTSTATSTYLE "$MPLAed$FMTSTATSTYLE x $FMTCOLOROFF]
        puthelp "
PRIVMSG $chan :$toutput"
    }
    if 
{$MWINed != "0"} {
        set toutput ""
        set toutput [append toutput 
$FMTBASICCOLOR "En Cok Kazananlar$FMTNAMECOLOR "$MWINer $FMTSTATCOLOR $FMTSTATSTYLE "$MWINed$FMTSTATSTYLE W $FMTCOLOROFF]
        puthelp "
PRIVMSG $chan :$toutput"
    }
    if 
{$MLOSed != "0"} {
        set toutput ""
        set toutput [append toutput 
$FMTBASICCOLOR "En Cok Kaybedenler$FMTNAMECOLOR "$MLOSer $FMTSTATCOLOR $FMTSTATSTYLE "$MLOSed$FMTSTATSTYLE L $FMTCOLOROFF]
        puthelp "
PRIVMSG $chan :$toutput"
    }
}
proc fstatshow {nick chan target} {
    set MYLVL [getuser 
$target XTRA mylvl]
    set MYWIN [getuser 
$target XTRA mywin]
    set MYLOS [getuser 
$target XTRA mylos]
    set MYDRA [getuser 
$target XTRA mydra]
    set MYAFS [getuser 
$target XTRA myafs]

    if 
{$MYLVL == ""} {set MYLVL "10"}
    if 
{$MYWIN == ""} {set MYWIN "0"}
    if 
{$MYLOS == ""} {set MYLOS "0"}
    if 
{$MYDRA == ""} {set MYDRA "0"}

    if 
{$target == "boss"} {
        set MYAFS 
$BOSSAFS
        formatoutput stat "
{$target $chan} {$MYLVL hide$MYWIN $MYLOS $MYDRA $MYAFS"
    } else {
        formatoutput stat "
{$target $chan$MYLVL $MYWIN $MYLOS $MYDRA $MYAFS"
    }
}

###
### !fstat [nick]
###
###
proc fstatmsg {nick host handle text} {
    fstat 
$nick $host $handle $nick $text
}
proc fstat {nick host handle chan text} {
    set STATTARGET ""
    if {[validuser 
$nick]} {
        set STATTARGET [lindex 
$text 0]
        if 
{$STATTARGET != ""} {
            if {[validuser 
$STATTARGET]} {
                fstatshow 
$nick $chan $STATTARGET
            } else {
                formatoutput error "
$nick $chan { \"$STATTARGET\" bunu tanimiyorum.}"
            
}
        } else {
        
fstatshow $nick $chan $nick
        
}
    } else {
        
formatoutput stranger "$nick $chan"
    
}
}
proc fstatshow {nick chan target} {
    global 
BOSSAFS
    set MYLVL 
[getuser $target XTRA mylvl]
    
set MYWIN [getuser $target XTRA mywin]
    
set MYLOS [getuser $target XTRA mylos]
    
set MYDRA [getuser $target XTRA mydra]
    
set MYAFS [getuser $target XTRA myafs]

    if {
$MYLVL == ""} {set MYLVL "10"}
    if {
$MYWIN == ""} {set MYWIN "0"}
    if {
$MYLOS == ""} {set MYLOS "0"}
    if {
$MYDRA == ""} {set MYDRA "0"}

    if {
$target == "boss"} {
        
set MYAFS $BOSSAFS
        formatoutput stat 
"{$target $chan} {$MYLVL hide} $MYWIN $MYLOS $MYDRA $MYAFS"
    
} else {
        
formatoutput stat "{$target $chan} $MYLVL $MYWIN $MYLOS $MYDRA $MYAFS"
    
}
}

###
### !fauto [afs]
###
###
proc fautomsg {nick host handle text} {
    
fauto $nick $host $handle $nick $text
}
proc fauto {nick host handle chan text} {
    global 
FMTBASICCOLOR FMTCMDCOLOR FMTCMDSTYLE FMTCOLOROFF
    
if {[validuser $nick]} {
        if {
$text != ""} {
            
set MYAFS [string tolower [lindex $text 0]]
            switch 
$MYAFS {
                
none        -
                
psycho        -
                
agro        -
                
mello        -
                
safe {        setuser $nick XTRA myafs $MYAFS
                            set $MYAFS 
""
                            
set MYAFS [getuser $nick XTRA myafs]
                            
formatoutput stat "{$nick $chan} {lvl hide} {win hide} {los hide} {dra hide} {$MYAFS solo}"
                
}
                
random {    formatoutput sorry "$nick $chan {\"$MYAFS\" dovus bicimi yalnizca patron(lar) ve bot(lar) icin tasarlanmistir.}"
                
}
                default    {    
append myout "\"$MYAFS\" buna benzer Dovus bicimi ile alakam yok. " $FMTCMDCOLOR $FMTCMDSTYLE !fauto $FMTCMDSTYLE $FMTBASICCOLOR " \[ " $FMTCMDCOLOR $FMTCMDSTYLE psycho $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE agro $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE mello $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE safe $FMTCMDSTYLE $FMTBASICCOLOR " | " $FMTCMDCOLOR $FMTCMDSTYLE none $FMTCMDSTYLE $FMTBASICCOLOR " \]"
                            
formatoutput error "$nick $chan {$myout}"
                
}
            }
        } else {
            
set MYAFS [getuser $nick XTRA myafs]
            if {
$MYAFS == ""} {
                
set MYAFS "unspecified"
            
}
            
formatoutput stat "{$nick $chan} {lvl hide} {win hide} {los hide} {dra hide} {$MYAFS solo}"
        
}
    } else {
        
formatoutput stranger "$nick $chan"
    
}    
}

#########################################################################################################################
### maintenance
###
proc versioninfo {nick host handle chan text} {
    global 
myversion
    puthelp 
"PRIVMSG $chan :Dovus $myversion"
}

proc foutput {source chan text} {
    
puthelp "PRIVMSG $chan :$text"
}


###
### !freset [nick]
###  reset is used to reinitialize the game, or a player's stats.
###  when called manually it also kills the timer.
###
###
proc fresetmanualmsg {nick host handle text} {
    
fresetmanual $nick $host $handle $nick $text
}
proc fresetmanual {nick host handle chan text} {
    global 
CHALLENGECHAN
    
if {$CHALLENGECHAN == ""} {
        
set tCHAN $chan
    
} else {
        
set tCHAN $CHALLENGECHAN
    
}
    if {
$text == ""} {
        
set deathtimer ""
        
set deathresult ""
        
set deathtimer "[lindex "[lindex "[utimers]" 0]" 2]"
        
if {$deathtimer != ""} {
            
killutimer $deathtimer
            set deathresult 
"killutimer($deathtimer) and"
        
}
        
freset $nick
        set myout 
[concat "$deathresult" "freset($nick)."]
        
formatoutput simple "$nick $tCHAN {$myout}"
    
} elseif {[validuser $text]} {
        
setuser $text XTRA mylvl 10
        setuser $text XTRA mywin 0
        setuser $text XTRA mylos 0
        setuser $text XTRA mydra 0
        fstat $text $host $handle $chan $text
    
}
}
proc freset {nick} {
    global 
FIGHTINPROGRESS CHALLENGETIMERID CHALLENGECHAN CURRENTROUND ROUNDTIMERID ROUNDWASIDLE 
    
global PLA1COM P1FX P1FXB P1HEAMAX P1HEAINI P1HEAVIC PLAYER1 P1AFS P1LVL P1WIN P1LOS P1DRA P1HEA P1MOD
    
global PLA2COM P2FX P2FXB P2HEAMAX P2HEAINI P2HEAVIC PLAYER2 P2AFS P2AFSwr P2LVL P2WIN P2LOS P2DRA P2HEA P2MOD
    
global P2Aaction P2Apoints P2Asuccess P2Aluck
    
global jlimit plimit klimit ulimit glimit dlimit slimit

    initglobalvars
}

###
### !fdebug [1|2]
###
###
proc fdebugmsg {nick host handle text} {
    
fdebug $nick $host $handle $nick $text
}
proc fdebug {nick host handle chan text} {
    global 
CHALLENGESECS ROUNDLENGSECS
    
global FIGHTINPROGRESS CHALLENGETIMERID CHALLENGECHAN CURRENTROUND ROUNDTIMERID ROUNDWASIDLE
    
global PLA1COM P1MNAME P1MTYPE P1FX P1FXB P1HEAMAX P1HEAINI P1HEAVIC PLAYER1 P1AFS P1LVL P1WIN P1LOS P1DRA P1HEA P1MOD
    
global PLA2COM P2MNAME P2MTYPE P2FX P2FXB P2HEAMAX P2HEAINI P2HEAVIC PLAYER2 P2AFS P2AFSwr P2LVL P2WIN P2LOS P2DRA P2HEA P2MOD
    
global jlimit plimit klimit ulimit glimit dlimit slimit

    set myout1 
""
    
set myout2 ""
    
set myout3 ""
    
set myout4 ""
    
set myout5 ""
    
set myout6 ""
    
if {($text == 1)||($text == "")||($text == "all")} {
    
foutput $nick $chan "nick($nick) chan($chan) text($text)"
        
lappend myout1 "FIGHTINPROGRESS($FIGHTINPROGRESS)" "CHTIMERID($CHALLENGETIMERID)" "CHCHAN($CHALLENGECHAN)" "CURRENTROUND($CURRENTROUND)" "ROUNDTIMERID($ROUNDTIMERID)" "chsecs($CHALLENGESECS)" "rlsecs($ROUNDLENGSECS)"
        
lappend myout2 "PLAYER1($PLAYER1)" "COM($PLA1COM)" "HEA($P1HEA)" "P1MOD($P1MOD)" "P1FX($P1FX)" "P1FXB($P1FXB)" "AFS($P1AFS)" "L($P1LVL)" "($P1WIN)W" "($P1LOS)L" "($P1DRA)D" "HINI($P1HEAINI)" "HMAX($P1HEAMAX)"
        
lappend myout3 "PLAYER2($PLAYER2)" "COM($PLA2COM)" "HEA($P2HEA)" "P2MOD($P2MOD)" "P2FX($P2FX)" "P2FXB($P2FXB)" "AFS($P2AFS)" "L($P2LVL)" "($P2WIN)W" "($P2LOS)L" "($P2DRA)D" "HINI($P2HEAINI)" "HMAX($P2HEAMAX)" "P2AFSwr($P2AFSwr)"
    
}
    if {(
$text == "2")||($text == "all")} {
#        lappend myout4 "P2Aaction($P2Aaction)" "P2Apoints($P2Apoints)" "P2Asuccess($P2Asuccess)" "P2Aluck($P2Aluck)"
#        lappend myout5 "com(points/success/luck)" "j($jpoints/$jsuccess/$jluck)" "p($ppoints/$psuccess/$pluck)" "k($kpoints/$ksuccess/$kluck)" "u($upoints/$usuccess/$uluck)" "g($gpoints/$gsuccess/$gluck)" "d($dpoints/$dsuccess/$dluck)" "s($spoints/$ssuccess/$sluck)"
#        lappend myout6 "jlimit($jlimit)" "plimit($plimit)" "klimit($klimit)" "ulimit($ulimit)" "glimit($glimit)" "dlimit($dlimit)" "slimit($slimit)"
        
lappend myout4 "$PLAYER1" "COM($PLA1COM)" "MNAME($P1MNAME)" "MTYPE($P1MTYPE)" "HEA($P1HEA)" "MOD($P1MOD)" "FX($P1FX)" "FXB($P1FXB)" "HINI($P1HEAINI)" "HMAX($P1HEAMAX)"
        
lappend myout5 "$PLAYER2" "COM($PLA2COM)" "MNAME($P2MNAME)" "MTYPE($P2MTYPE)" "HEA($P2HEA)" "MOD($P2MOD)" "FX($P2FX)" "FXB($P2FXB)" "HINI($P2HEAINI)" "HMAX($P2HEAMAX)"
    
}
    if {(
$myout1 != "")} {foutput $nick $chan "$myout1"}
    if {(
$myout2 != "")} {foutput $nick $chan "$myout2"}
    if {(
$myout3 != "")} {foutput $nick $chan "$myout3"}
    if {(
$myout4 != "")} {foutput $nick $chan "$myout4"}
    if {(
$myout5 != "")} {foutput $nick $chan "$myout5"}
    if {(
$myout6 != "")} {foutput $nick $chan "$myout6"}
}

###
### initialize global variables
###
###
proc initglobalvars {} {
    global 
FIGHTINPROGRESS CHALLENGETIMERID CHALLENGECHAN CURRENTROUND ROUNDTIMERID ROUNDWASIDLE 
    
global PLA1COM P1MNAME P1MTYPE P1FX P1FXB P1HEAMAX P1HEAINI P1HEAVIC PLAYER1 P1AFS P1LVL P1WIN P1LOS P1DRA P1HEA P1MOD
    
global PLA2COM P2MNAME P2MTYPE P2FX P2FXB P2HEAMAX P2HEAINI P2HEAVIC PLAYER2 P2AFS P2AFSwr P2LVL P2WIN P2LOS P2DRA P2HEA P2MOD
    
global P2Aaction P2Apoints P2Asuccess P2Aluck
    
global jlimit plimit klimit ulimit glimit dlimit slimit

    set FIGHTINPROGRESS        
""
    
set CHALLENGETIMERID    ""
    
set CHALLENGECHAN        ""
    
set CURRENTROUND        ""
    
set ROUNDTIMERID        ""
    
set ROUNDWASIDLE        ""
    
    
set PLAYER1            ""
    
set PLA1COM            ""
    
set P1MTYPE            ""
    
set P1MNAME            ""
    
set P1FX            ""
    
set P1FXB            ""
    
set P1HEAMAX        ""
    
set P1HEAINI        ""
    
set P1HEAVIC        ""
    
set P1AFS            ""
    
set P1LVL            ""
    
set P1WIN            ""
    
set P1LOS            ""
    
set P1DRA            ""
    
set P1HEA            ""
    
set P1MOD            ""
    
    
set PLAYER2            ""
    
set PLA2COM            ""
    
set P2MTYPE            ""
    
set P2MNAME            ""
    
set P2FX            ""
    
set P2FXB            ""
    
set P2HEAMAX        ""
    
set P2HEAINI        ""
    
set P2HEAVIC        ""
    
set P2AFS            ""
    
set P2AFSwr    ""
    
set P2LVL            ""
    
set P2WIN            ""
    
set P2LOS            ""
    
set P2DRA            ""
    
set P2HEA            ""
    
set P2MOD            ""
    
    
set P2Aaction    ""
    
set P2Apoints    ""
    
set P2Asuccess    ""
    
set P2Aluck        ""
    
    
set jlimit ""
    
set plimit ""
    
set klimit ""
    
set ulimit ""
    
set glimit ""
    
set dlimit ""
    
set slimit ""
}

###
### initialize stats and health
###
###
proc initstat {player sname vname} {
    global 
PLAYER1 P1AFS P1LVL P1WIN P1LOS P1DRA PLAYER2 P2AFS P2LVL P2WIN P2LOS P2DRA P2HEAVIC BOSSAFS
    
if {($player == "boss")&&($sname == "mylvl")} {
        
set tbfact [expr {(([rand 25]) * .01 ) + 1}]
        
set P2LVL [expr {round ($P1LVL $tbfact)}]
        
set P2HEAVIC [expr {$P2LVL $P1LVL}]
    } elseif {(
$player == "boss")&&($sname == "myafs")} {
        
set $vname $BOSSAFS
    
} else {
        
set tempvalue [getuser $player XTRA $sname]
        if {
$sname == "myafs"} {
            if {
$tempvalue == ""} {
                
set $vname "none"
            
} else {
                
set $vname $tempvalue
            
}
        } elseif {
$sname == "mylvl"} {
            if {
$tempvalue == ""} {
                
set $vname "10"
            
} else {
                
set $vname $tempvalue
            
}
        } else {
            if {
$tempvalue == ""} {
                
set $vname "0"
            
} else {
                
set $vname $tempvalue
            
}
        }
    }
}
proc inithealth {pxnum pxlvl} {
    global 
P1HEA P2HEA P1HEAINI P2HEAINI P1HEAMAX P2HEAMAX P1HEAVIC P2HEAVIC PLAYER2
    set pxhea 
""
    
if {($pxlvl == "")||($pxlvl == "0")} {
        
set pxhea 10
    
} else {
        
set pxhea $pxlvl
    
}
    if {
$pxnum == } {
        
set P1HEAMAX [expr {$pxhea .55}]
        
set P1HEAINI $pxhea
        set P1HEA $pxhea
        
if {($PLAYER2 != "boss")} {
            
set P2HEAVIC [expr {$P1HEAINI .10}]
        }
    } elseif {
$pxnum == } {
        
set P2HEAMAX [expr {$pxhea .55}]
        
set P2HEAINI $pxhea
        set P2HEA $pxhea
        set P1HEAVIC 
[expr {$P2HEAINI .10}]
    } else {
            
formatoutput error "$PLAYER1 $CHALLENGECHAN {an error occured calculating healths.}"
    
}
}

#########################################################################################################################
### game-time
###

###
### !fight <nick>
###  initiate a challenge
###
proc fightM {nick host handle chan text} {
    global 
FIGHTINPROGRESS CHALLENGETIMERID CURRENTROUND CHALLENGESECS CHALLENGECHAN PLAYER1 PLAYER2 P1AFS P2AFS
    
if {($FIGHTINPROGRESS == 0)||($FIGHTINPROGRESS == "")} {
        
set PLAYER1 $nick
        set PLAYER2 
[lindex $text 0]
        
set lnick [string tolower $nick]
        
set lPLAYER2 [string tolower $PLAYER2]
        
set optional [lindex $text 1]
        if {
$lPLAYER2 == ""} {
            
formatoutput sorry "$PLAYER1 $chan {bir rakip belirlemediniz.}"
        
} elseif {$lPLAYER2 == $lnick} {
            
formatoutput sorry "$PLAYER1 $chan {kendinizle dovusemezsiniz.}"
        
} elseif {([validuser $PLAYER1])&&([validuser $PLAYER2])&&($lPLAYER2 != "boss")} {
            
set P1AFS [getuser $PLAYER1 XTRA myafs]
            
set P2AFS [getuser $PLAYER2 XTRA myafs]
            if {([
onchan $PLAYER2 $chan]) && ($PLAYER2 != "boss")} {
                if {(
$P2AFS == "none")||($P2AFS == "")||($optional == "noauto")} {
                    
set CHALLENGECHAN $chan
                    set FIGHTINPROGRESS 1
                    formatoutput challenge 
"$PLAYER1 $PLAYER2 $chan {$CHALLENGESECS noAF}"
                    
set CHALLENGETIMERID [utimer $CHALLENGESECS challengefailA]
                } else {
                    
set CHALLENGECHAN $chan
                    set FIGHTINPROGRESS 1
                    formatoutput challenge 
"$PLAYER1 $PLAYER2 $chan {$CHALLENGESECS thenAF}"
                    
set CHALLENGETIMERID [utimer $CHALLENGESECS {challengepass 1}]
                }
            } else {    ;
# p2 isn't onchan
                
if {(($P2AFS != "none")&&($P2AFS != ""))&&($optional != "noauto")} {
                    
set CHALLENGECHAN $chan
                    set FIGHTINPROGRESS 3
                    formatoutput challenge 
"$PLAYER1 $PLAYER2 $chan {null doAF}"
                    
challengepass 1
                
} elseif {(($P2AFS == "none")||($P2AFS == ""))||($optional != "noauto")} {
                    
formatoutput sorry "$PLAYER1 $chan {$PLAYER2 adli oyuncu otodovuscu olmasina ragmen burada degil.}"
                
} else {
                    
formatoutput sorry "$PLAYER1 $chan {$PLAYER2 adli oyuncu burda degil.}"
                
}
            }
        } elseif {(
$PLAYER2 == "boss")&&($optional != "noauto")} {
            
set CHALLENGECHAN $chan
            set FIGHTINPROGRESS 3
            formatoutput challenge 
"$PLAYER1 $PLAYER2 $chan {null doAF}"
            
challengepass 1
        
} elseif {($PLAYER2 == "boss")&&($optional == "noauto")} { 
            
formatoutput sorry "$PLAYER1 $chan {$PLAYER2 adli oyuncu sadece bir otodovuscudur.}"
        
} elseif {[validuser $PLAYER1]} {
            
formatoutput error "$PLAYER1 $chan {\"$PLAYER2\" adli oyuncunun kim oldugunu bilmiyorum.}"
        
} else {
            
formatoutput stranger "$PLAYER1 $chan"
        
}
    } elseif {
$FIGHTINPROGRESS == 1} {
        
set lnick "[string tolower $nick]"
        
set lPLAYER2 "[string tolower $PLAYER2]"
        
if {($lPLAYER2 == $lnick)&&($CHALLENGECHAN == $chan)} {
            
killutimer $CHALLENGETIMERID
            challengepass 2
        
} elseif {($lPLAYER2 == $lnick)&&($CHALLENGECHAN != $chan)} {
            
formatoutput sorry "$nick $chan {Kapisma/karsilasma $CHALLENGECHAN adli kanalda basladi.}"
        
} elseif {$lPLAYER2 != $lnick} {
            
formatoutput sorry "$nick $chan {($PLAYER1 vs. $PLAYER2) Arasinda bir kapisma/karsilasma bekleniyor.}"
        
}
    } elseif {
$FIGHTINPROGRESS == 2} {
            
formatoutput sorry "$nick $chan {Ayni zaman diliminde Tek Dovus ($PLAYER1 vs. $PLAYER2) arasindadir.}"
    
}
}

###
### pass or fail the challenge
###
###
proc challengefailA {} {
    global 
FIGHTINPROGRESS PLAYER1 PLAYER2 CHALLENGECHAN
    formatoutput sorry 
"$PLAYER1 $CHALLENGECHAN {$PLAYER2 karsilasma/kapisma talebini reddetti.}"
    
freset $PLAYER1
    set FIGHTINPROGRESS 0    
}
proc challengepass {fOOT} {
    global 
FIGHTINPROGRESS FONEORTWO
    set FIGHTINPROGRESS 0
    set FONEORTWO $fOOT
    startfight $FONEORTWO
}

###
### start the fight
###  either by accepting challenge or autofight
###
proc startfight {X} {
    global 
FMTNAMESTYLE
    
global FIGHTINPROGRESS CHALLENGECHAN CURRENTROUND ROUNDTIMERID ROUNDLENGSECS
    
global PLAYER1 P1AFS P1LVL P1WIN P1LOS P1DRA P1HEA PLAYER2 P2AFS P2LVL P2WIN P2LOS P2DRA P2HEA

    initstat $PLAYER1 mylvl P1LVL
    initstat $PLAYER1 mywin P1WIN
    initstat $PLAYER1 mylos P1LOS
    initstat $PLAYER1 mydra P1DRA
    initstat $PLAYER1 myafs P1AFS
    initstat $PLAYER2 mylvl P2LVL
    initstat $PLAYER2 mywin P2WIN
    initstat $PLAYER2 mylos P2LOS
    initstat $PLAYER2 mydra P2DRA
    initstat $PLAYER2 myafs P2AFS
    inithealth 1 $P1LVL
    inithealth 2 $P2LVL

    set CURRENTROUND 
"1"

    
if {$X == 1} {
        
set FIGHTINPROGRESS 3
        set tmyout 
""
        
append tmyout $FMTNAMESTYLE "auto fight!" $FMTNAMESTYLE " auto fight!"
        
formatoutput simple "$PLAYER1 $CHALLENGECHAN {$tmyout}"
        
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $P1LVL null $P1WIN null $P1LOS null $P1DRA null} {vs} {$PLAYER2 $P2LVL null $P2WIN null $P2LOS null $P2DRA null $P2AFS}"
    
} elseif {$X == 2} {
        
set FIGHTINPROGRESS 2
        set tmyout 
""
        
append tmyout $FMTNAMESTYLE "fight!" $FMTNAMESTYLE " fight fight!"
        
formatoutput simple "$PLAYER1 $CHALLENGECHAN {$tmyout}"
        
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $P1LVL null $P1WIN null $P1LOS null $P1DRA null} {vs} {$PLAYER2 $P2LVL null $P2WIN null $P2LOS null $P2DRA null null}"
    
} else {
        
formatoutput error "$PLAYER1 $CHALLENGECHAN {oyunu Baslatan oyunculari saydiriyor.}"
        
freset $PLAYER1
    
}
    
formatoutput roundcmd "$CHALLENGECHAN $CURRENTROUND {{[actionlookup all 0]}}"
    
set ROUNDTIMERID [utimer $ROUNDLENGSECS startnextturn ]
}

###
###    start next turn
###     called from timers; this is where most of the magic happens, or is called to happen
###
proc startnextturn {} {
    global 
FIGHTINPROGRESS CHALLENGECHAN CURRENTROUND ROUNDTIMERID ROUNDLENGSECS 
    
global PLAYER1 P1AFS P1LVL P1WIN P1LOS P1DRA P1HEA P1HEAMAX P1HEAINI P1HEAVIC P1FX P1FXB
    
global PLAYER2 P2AFS P2LVL P2WIN P2LOS P2DRA P2HEA P2HEAMAX P2HEAINI P2HEAVIC P2FX P2FXB P2AFSwr
    
global ROUNDWASIDLE P1MOD P2MOD PLA1COM P1MNAME P1MTYPE PLA2COM P2MNAME P2MTYPE FONEORTWO
    
global FMTCOLOROFF FMTNAMECOLOR FMTNAMESTYLE
    set p1heanew 
""
    
set p2heanew ""
    
if {($FONEORTWO == "2")&&($PLA1COM == "")&&($PLA2COM == "")} {
        
formatoutput simple "$PLAYER1 $CHALLENGECHAN {Dovus zaman asimina ugradi.}"
        
freset $PLAYER1
    
} else {
        if {
$P1FX  == ""} { set P1FX  "0" }
        if {
$P1FXB == ""} { set P1FXB "0" }
        if {
$P2FX  == ""} { set P2FX  "0" }
        if {
$P2FXB == ""} { set P2FXB "0" }


        if {
$P1MTYPE == ""} { set P1MTYPE "non" }
        if {
$P2MTYPE == ""} { set P2MTYPE "non" }

        
set tp1fx ""
        
set tp2fx ""
        
set P1FXSUM ""
        
set P2FXSUM ""
        
        
set p1outcome ""
        
set p2outcome ""

        
set p1luper ""
        
set p2luper ""

##### DAMAGE TO P1'S SELF #####
        
if {$P1MTYPE == "off"} {
            if {
$P1FX != "0"} {set p1ocper [expr {round(($P1FX $P2HEAINI) * 100)}] } else { set p1ocper "0"}
            
set p1ocper [append p1ocper "%"]
            
set p1outcome "$PLAYER1's $P1MNAME"
            
if {($P1MOD == "lucky")} {
                if {
$P1FXB != "0"} { set p1luper [expr {round(($P1FXB $P2HEAINI) * 100)}] } else { set p1luper "0"}
                if {
$p1luper 0} {
                    
set p1luper [append p1luper "%"]
                    
set p1outcome "$p1outcome Sebeb oldu : $p1ocper hasara (+Sansli bir vurus : $p1luper),"
                
} else {
                    
set p1outcome "$p1outcome Sebeb oldu : $p1ocper hasara,"
                
}
            } elseif {(
$P1MOD == "missed")} {
                
set p1outcome "$p1outcome iskaladi,"
            
} else {
                
set p1outcome "$p1outcome Sebeb oldu : $p1ocper hasara,"
            
}
        } elseif {(
$P1MTYPE == "sui")} {
            if {(
$P1MOD == "lucky")} {
                if {
$P1FXB != "0"} { set p1luper [expr {round(($P1FXB $P2HEAINI) * 100)}] } else { set p1luper "0"}
                
set p1luper [append p1luper "%"]
                
set p1outcome "$p1outcome $PLAYER1'in $P1MNAME Sebep oldu $p1luper hasara (+Sansli bir vurus $p1luper),"
            
} else {
                
set p1outcome "$p1outcome $PLAYER1 intihar etti,"
            
}
        } elseif {
$P1MTYPE == "def"} {
            if {((
$P2MTYPE == "def")&&($P2MOD != "lucky"))||(($P2MNAME == "suicide")&&($P2MOD != "lucky"))} {
                
set p1deper "100"
            
} elseif {($P1FX != "0")&&($P2FX != "0")} {set p1deper [expr {round(($P1FX $P1HEAINI) * 100)}] } else { set p1deper "0"}
            
set p1deper [append p1deper "%"]
            
set p1outcome "$PLAYER1'in $P1MNAME"
            
if {($P1MOD == "lucky")} {
                if {
$P1FXB != "0"} { set p1luper [expr {round(($P1FXB $P2HEAINI) * 100)}] } else { set p1luper "0"}
                if {
$p1luper 0} {
                    
set p1luper [append p1luper "%"]
                    
set p1outcome "$p1outcome Degistirdi $p1deper hasarini (+Sansli bir vurus : $p1luper),"
                
} else {
                    
set p1outcome "$p1outcome Degistirdi $p1deper hasarini,"
                
}
            } elseif {(
$P1MOD == "missed")} {
                
set p1outcome "$p1outcome iskaladi,"
            
} else {
                
set p1outcome "$p1outcome degistirdi $p1deper hasarini,"
            
}
        } else {
            
set p1outcome "$PLAYER1 hicbir sey yapmadi,"
            
if {($FONEORTWO == "1")} {
                
calcaction $PLAYER1 non
                fightauto
            
}
        }

##### DAMAGE TO P2'S SELF #####
        
if {$P2MTYPE == "off"} {
            if {
$P2FX != "0"} {set p2ocper [expr {round(($P2FX $P1HEAINI) * 100)}] } else { set p2ocper "0"}
            
set p2ocper [append p2ocper "%"]
            
set p2outcome "$PLAYER2's $P2MNAME"
            
if {($P2MOD == "lucky")} {
                if {
$P2FXB != "0"} { set p2luper [expr {round(($P2FXB $P1HEAINI) * 100)}] } else { set p2luper "0"}
                if {
$p2luper 0} {
                    
set p2luper [append p2luper "%"]
                    
set p2outcome "$p2outcome $p2ocper hasara sebebiyet verdi (+Sansli bir vurus : $p2luper)."
                
} else {
                    
set p2outcome "$p2outcome $p2ocper hasara sebebiyet verdi."
                
}
            } elseif {(
$P2MOD == "missed")} {
                
set p2outcome "$p2outcome iskaladi."
            
} else {
                
set p2outcome "$p2outcome $p2ocper hasara sebebiyet verdi."
            
}
        } elseif {(
$P2MTYPE == "sui")} {
            if {(
$P2MOD == "lucky")} {
                if {
$P2FXB != "0"} { set p2luper [expr {round(($P2FXB $P1HEAINI) * 100)}] } else { set p2luper "0"}
                
set p2luper [append p2luper "%"]
                
set p2outcome "$p2outcome $PLAYER2'nin $P2MNAME sebep oldu $p2luper hasara (+Sansli bir vurus : $p2luper)."
            
} else {
                
set p2outcome "$p2outcome $PLAYER2 intihar etti."
            
}
        } elseif {
$P2MTYPE == "def"} {
            if {((
$P1MTYPE == "def")&&($P1MOD != "lucky"))||(($P1MNAME == "suicide")&&($P1MOD != "lucky"))} {
                
set p2deper "100"
            
} elseif {($P2FX != "0")&&($P1FX != "0")} { set p2deper [expr {round(($P2FX $P2HEAINI) * 100)}] } else { set p2deper "0"}
            
set p2deper [append p2deper "%"]
            
set p2outcome "$PLAYER2'nin $P2MNAME"
            
if {($P2MOD == "lucky")} {
                if {
$P2FXB != "0"} { set p2luper [expr {round(($P2FXB $P1HEAINI) * 100)}] } else { set p2luper "0"}
                if {
$p2luper 0} {
                    
set p2luper [append p2luper "%"]
                    
set p2outcome "$p1outcome Degistirdi $p1deper hasarini (+Sansli bir vurus : $p1luper), (+Sansli bir vurus : $p1luper)."
                
} else {
                    
set p2outcome "$p1outcome Degistirdi $p1deper hasarini."
                
}
            } elseif {(
$P2MOD == "missed")} {
                
set p2outcome "$p2outcome iskaladi."
            
} else {
                
set p2outcome "$p1outcome Degistirdi $p1deper hasarini."
            
}
        } else {
            
set p2outcome "$PLAYER2 hicbirsey yapmadi."
        
}
        
formatoutput simple "$PLAYER1 $CHALLENGECHAN {$p1outcome ve $p2outcome}"



##### RESULTS FOR P1 #####
        
if {
            (
$P1MTYPE != "sui")&&
            ((
$P2MNAME == "")||($P2MOD == "missed"))||
            ((
$P2MTYPE == "def")&&($P2MOD != "lucky"))
            } {
            
### if u didn't suicide, they did nothing or missed, or their defense was unlucky, it didn't hurt
            
set p1heanew "$P1HEA"
        
} elseif {
            (
$P2MTYPE != "def")||
            ((
$P2MTYPE == "def")&&($P2MOD == "lucky"))||
            ((
$P2MTYPE == "sui")&&($P2MOD == "lucky"))||
            (
$P1MTYPE == "sui")} {
            
### ur due for a successful offensive, lucky defensive, lucky suicide, or ur own suicide
            ### in other words something happened that will cause u harm
            
if {($P1MTYPE == "def")&&($P1MOD != "missed")} {
                
### if ur defenseive move didn't miss, reduce their successful effectiveness
                
if {$P1FX >= $P2FX} {    ;# if urs is bigger, nullify theirs
                    
set tp2fx "0"
                
} else {                ;# otherwise reduce their effectiveness
                    
set tp2fx "[expr {$P2FX $P1FX}]"
                
}
            } elseif {(
$P2MOD == "missed")} {
                
### if theirs missed, don't hurt urself
                
set tp2fx "0"
            
} else {
                
### no defensive effect
                
set tp2fx "$P2FX"
            
}
            
set P2FXSUM "[expr {$tp2fx $P2FXB}]"
            
if {(($P2MTYPE == "off")&&($P1HEA <= $P2FXSUM))||
                (((
$P2MTYPE == "def")&&($P2MOD == "lucky"))&&($P1HEA <= $P2FXB))||
                (
$P1MTYPE == "sui")} {
                
set p1heanew "0"
                
set FIGHTINPROGRESS "0"
                
set toutput ""
                
set toutput [append toutput $FMTNAMESTYLE $PLAYER1 $FMTNAMESTYLE " is KO!"]
                
formatoutput simplecolr "$PLAYER1 $CHALLENGECHAN {$toutput} $FMTNAMECOLOR"
###    PLAYER ONE IS DEAD!!!
            
} else {
                
### at this point u can honestly and safely do ur own math, cuz it won't kill u
                
if {(($P2MTYPE == "def")&&($P2MOD == "lucky"))} {
                    
### but if theirs was a lucky defensive, do it special
                    
set p1heanew "[expr {$P1HEA $P2FXB}]"
                
} elseif {(($P2MTYPE == "def")&&($P2MOD != "lucky"))} {
                    
### if their defensive was not lucky, don't affect urself
                    
set p1heanew "$P1HEA"
                
} else {
                    
set p1heanew "[expr {$P1HEA $tp2fx $P2FXB}]"
                
}
            }
        }


##### RESULTS FOR P2 #####
        
if {
            (
$P2MTYPE != "sui")&&
            ((
$P1MNAME == "")||($P1MOD == "missed"))||
            ((
$P1MTYPE == "def")&&($P1MOD != "lucky"))
            } {
            
set p2heanew "$P2HEA"
        
} elseif {
            (
$P1MTYPE != "def")||
            ((
$P1MTYPE == "def")&&($P1MOD == "lucky"))||
            ((
$P1MTYPE == "sui")&&($P1MOD == "lucky"))||
            (
$P2MTYPE == "sui")} {
            if {(
$P2MTYPE == "def")&&($P2MOD != "missed")} {
                if {
$P2FX >= $P1FX} {
                    
set tp1fx "0"
                
} else {
                    
set tp1fx "[expr {$P1FX $P2FX}]"
                
}
            } elseif {(
$P1MOD == "missed")} {
                
### if theirs missed, don't hurt urself
                
set tp1fx "0"
            
} else {
                
set tp1fx "$P1FX"
            
}
            
set P1FXSUM "[expr {$tp1fx $P1FXB}]"
            
if {(($P1MTYPE == "off")&&($P2HEA <= $P1FXSUM))||
                (((
$P1MTYPE == "def")&&($P1MOD == "lucky"))&&($P2HEA <= $P1FXB))||
                (
$P2MTYPE == "sui")} {
                
set p2heanew "0"
                
set FIGHTINPROGRESS "0"
                
set toutput ""
                
set toutput [append toutput $FMTNAMESTYLE $PLAYER2 $FMTNAMESTYLE " is KO!"]
                
formatoutput simplecolr "$PLAYER1 $CHALLENGECHAN {$toutput} $FMTNAMECOLOR"
###    PLAYER TWO IS DEAD!!!
            
} else {
                if {((
$P1MTYPE == "def")&&($P1MOD == "lucky"))} {
                    
set p2heanew "[expr {$P2HEA $P1FXB}]"
                
} elseif {(($P1MTYPE == "def")&&($P1MOD != "lucky"))} {
                    
set p2heanew "$P2HEA"
                
} else {
                    
set p2heanew "[expr {$P2HEA $tp1fx $P1FXB}]"
                
}
            }
        }



        if {(
$p1heanew == "0")||($p2heanew == "0")} {
        
### STATSAVE HERE
            
set mysout1 ""
            
set mysout2 ""
            
set mysdra1 ""
            
set mysdra2 ""
            
set myswin1 ""
            
set myswin2 ""
            
set myslos1 ""
            
set myslos2 ""
            
set myslvl1 ""
            
set myslvl2 ""
            
            
if {($FONEORTWO == 1)&&($P2AFSwr == "random")} {
                
set P2AFS "random"
            
}
            

##### OUTPUT REPORTING #####
            
if {($p1heanew == "0")&&($p2heanew == "0")} {
            
### p1 & p2 draw
                
set mysdra1 [expr {$P1DRA 1}]
                
set mysdra2 [expr {$P2DRA 1}]
                
savestat $PLAYER1 mydra $mysdra1
                savestat $PLAYER2 mydra $mysdra2
                
if {$PLAYER2 == "boss"} {
                    
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $P1LVL null $P1WIN null $P1LOS null $mysdra1 diff} {Beraberlik} {$PLAYER2 $P2LVL hide $P2WIN null $P2LOS null $mysdra2 diff $P2AFS}"
                
} else {
                    if {
$FONEORTWO == } {
                        
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $P1LVL null $P1WIN null $P1LOS null $mysdra1 diff} {Beraberlik} {$PLAYER2 $P2LVL null $P2WIN null $P2LOS null $mysdra2 diff $P2AFS}"
                    
} elseif {$FONEORTWO == 2} {
                        
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $P1LVL null $P1WIN null $P1LOS null $mysdra1 diff} {Beraberlik} {$PLAYER2 $P2LVL null $P2WIN null $P2LOS null $mysdra2 diff null}"
                    
} else {
                        
foutputsorry $PLAYER1 "" $CHALLENGECHAN "Oyuncular listesini saymada hata verildi."
                    
}
                }
            } elseif {(
$p1heanew == "0")} {
            
### p1 lose, p2 win
                
set myslos1 [expr {$P1LOS 1}]
                
savestat $PLAYER1 mylos $myslos1
                set myswin2 
[expr {$P2WIN 1}]
                
savestat $PLAYER2 mywin $myswin2
                set myhvic 
""
                
if {$PLAYER2 == "boss"} {
                    
set myslvl1 [expr {round($P1LVL $P2HEAVIC)}]
                    
savestat $PLAYER1 mylvl $myslvl1
                    set myhvic $P2HEAVIC
                    formatoutput turnstat 
"$CHALLENGECHAN {$PLAYER1 $myslvl1 -$myhvic $P1WIN null $myslos1 diff $P1DRA null} {Tarafindan Dovuldu} {$PLAYER2 $P2LVL hide $myswin2 diff $P2LOS null $P2DRA null $P2AFS}"
                
} else {
                    
set myslvl2 [expr {round($P2LVL $P2HEAVIC)}]
                    
savestat $PLAYER2 mylvl $myslvl2
                    set myhvic $P2HEAVIC
                    
if {$FONEORTWO == } {
                        
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $P1LVL null $P1WIN null $myslos1 diff $P1DRA null} {Tarafindan Dovuldu} {$PLAYER2 $myslvl2 +$myhvic $myswin2 diff $P2LOS null $P2DRA null $P2AFS}"
                    
} elseif {$FONEORTWO == 2} {
                        
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $P1LVL null $P1WIN null $myslos1 diff $P1DRA null} {Tarafindan Dovuldu} {$PLAYER2 $myslvl2 +$myhvic $myswin2 diff $P2LOS null $P2DRA null null}"
                    
} else {
                        
foutputsorry $PLAYER1 "" $CHALLENGECHAN "Hata, p1 lost/p2 won."
                    
}
                }
            } elseif {(
$p2heanew =="0")} {
            
### p2 lose, p1 win
            
set myswin1 [expr {$P1WIN 1}]
            
set myslos2 [expr {$P2LOS 1}]
            
set myslvl1 [expr {round($P1LVL $P1HEAVIC)}]
                
savestat $PLAYER1 mywin $myswin1
                savestat $PLAYER2 mylos $myslos2
                savestat $PLAYER1 mylvl $myslvl1
                set myhvic 
""
                
if {$PLAYER2 == "boss"} {
                    
set myhvic [expr {round ($P2HEAVIC)}]
                    
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $myslvl1 +$myhvic $myswin1 diff $P1LOS null $P1DRA null} {Zafer elde etti} {$PLAYER2 $P2LVL hide $P2WIN null $myslos2 diff $P2DRA null $P2AFS}"
                
} else {
                    
set myhvic [expr {round ($P1HEAVIC)}]
                    if {
$FONEORTWO == } {
                        
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $myslvl1 +$myhvic $myswin1 diff $P1LOS null $P1DRA null} {Zafer elde etti} {$PLAYER2 $P2LVL null $P2WIN null $myslos2 diff $P2DRA null $P2AFS}"
                    
} elseif {$FONEORTWO == 2} {
                        
formatoutput turnstat "$CHALLENGECHAN {$PLAYER1 $myslvl1 +$myhvic $myswin1 diff $P1LOS null $P1DRA null} {Zafer elde etti} {$PLAYER2 $P2LVL null $P2WIN null $myslos2 diff $P2DRA null null}"
                    
} else {
                        
foutputsorry $PLAYER1 "" $CHALLENGECHAN "Hata, p1 won/p2 lost."
                    
}
                }
            }
            
freset $PLAYER1
        
} else {
            
set p1heaper [expr {round($p1heanew $P1HEAINI 100)}]
            
set p2heaper [expr {round($p2heanew $P2HEAINI 100)}]


            
incr CURRENTROUND
            
if {$FONEORTWO == } {
                
formatoutput turnsimple "$CHALLENGECHAN {$PLAYER1 $p1heaper} {$PLAYER2 $p2heaper $P2AFS}"
            
} elseif {$FONEORTWO == 2} {
                
formatoutput turnsimple "$CHALLENGECHAN {$PLAYER1 $p1heaper} {$PLAYER2 $p2heaper null}"
            
} else {
                
foutputsorry $PLAYER1 "" $CHALLENGECHAN "Oyuncularin raundlarinin arasinda bir hata sozkonusu belirdi."
                
freset $PLAYER1
            
}
            
formatoutput roundcmd "$CHALLENGECHAN $CURRENTROUND {{[actionlookup all 1]}}"
            
set P1HEA "$p1heanew"
            
set P2HEA "$p2heanew"
            
set PLA1COM ""
            
set P1MNAME ""
            
set P1MTYPE ""
            
set PLA2COM ""
            
set P2MNAME ""
            
set P2MTYPE ""
            
set ROUNDTIMERID [utimer $ROUNDLENGSECS startnextturn ]
        }
    }
}


###
###    fightaction: triggered from the different bind'ed user fighting commands
###  makes sure the right person is trying to fight at the right time, and advances the game
###
proc fightaction {nick chan action} {
    global 
FMTSTATSTYLE
    
global PLAYER1 P1AFS P1LVL P1WIN P1LOS P1DRA P1HEA P1HEAINI P1HEAMAX P1MOD P1FX P1FXB
    
global PLAYER2 P2AFS P2LVL P2WIN P2LOS P2DRA P2HEA P2HEAINI P2HEAMAX P2MOD P2FX P2FXB
    
global FONEORTWO FIGHTINPROGRESS CHALLENGECHAN CHALLENGETIMERID ROUNDTIMERID PLA1COM P1MNAME P1MTYPE PLA2COM P2MNAME P2MTYPE

    set lnick 
"[string tolower $nick]"
    
set lPLAYER1 "[string tolower $PLAYER1]"
    
set lPLAYER2 "[string tolower $PLAYER2]"
    
if {$FIGHTINPROGRESS == 2} {
        if {
$lnick == $lPLAYER1} {
            
set PLA1COM $action
            
if {$PLA2COM == ""} {
                
calcaction $nick $action
                formatoutput simple 
"$PLAYER1 $CHALLENGECHAN {$PLAYER1 is going to $P1MNAME$PLAYER2 has <$FMTSTATSTYLE[lindex [utimers] {0 0}]$FMTSTATSTYLE secs to decide.}"
            
} else {
                
killutimer $ROUNDTIMERID
                calcaction $nick $action
                startnextturn
            
}
        } elseif {
$lnick == $lPLAYER2} {
            
set PLA2COM $action
            
if {$PLA1COM == ""} {
                
calcaction $nick $action
                formatoutput simple 
"$PLAYER2 $CHALLENGECHAN {$PLAYER2 is going to $P2MNAME$PLAYER1 has <$FMTSTATSTYLE[lindex [utimers] {0 0}]$FMTSTATSTYLE secs to decide.}"
            
} else {
                
killutimer $ROUNDTIMERID
                calcaction $nick $action
                startnextturn
            
}
        } else {
            
formatoutput sorry "$nick $chan {Sadece 2 kisi Dovus edebilir : ($PLAYER1 vs. $PLAYER2).}"
        
}
    } elseif {
$FIGHTINPROGRESS == 3} {
        if {
$lnick == $lPLAYER1} {
            
killutimer $ROUNDTIMERID
            set PLA1COM $action
            calcaction $nick $action
            fightauto
            calcaction $PLAYER2 $PLA2COM
            startnextturn
        
} else {
            
formatoutput sorry "$nick $chan {Bu siin otodovusunuz degildir : ($PLAYER1 vs. $PLAYER2).}"
        
}
    } elseif {
$FIGHTINPROGRESS == 1} {
        if {
$lnick == $lPLAYER1} {
            
formatoutput sorry "$nick $chan {Dovus Henuz Baslamadi, $PLAYER2 karsilasmayi henuz kabul etmedi.}"
        
} elseif {$lnick == $lPLAYER2} {
            
killutimer $CHALLENGETIMERID
            set FIGHTINPROGRESS 0
            set FONEORTWO 2
            startfight $FONEORTWO
            set PLA2COM $action
            calcaction $nick $action
            formatoutput simple 
"$PLAYER2 $CHALLENGECHAN {$PLAYER2 is going to $P2MNAME$PLAYER1 has <$FMTSTATSTYLE[lindex [utimers] {0 0}]$FMTSTATSTYLE secs to decide.}"
        
}
    } elseif {([
validuser $nick])} {
        
formatoutput sorry "$nick $chan {Dovus icin baslatmalisiniz.}"
    
}
}

###
###    calcaction: called within fightaction
###  to determine the value of ur move, if it was lucky, and if it missed
###
proc calcaction {nick actionid} {
    global 
PLAYER1 P1MOD P1FX P1FXB P1MTYPE P1MNAME P1HEAINI
    
global PLAYER2 P2MOD P2FX P2FXB P2MTYPE P2MNAME P2HEAINI
    set THEMOD 
""
    
set THEFX "0"
    
set THEFXB "0"
    
set vsuccess ""
    
set rpoints ""
    
set vpoints ""
    
set lnick [string tolower $nick]
    
set lPLAYER1 [string tolower $PLAYER1]
    
set lPLAYER2 [string tolower $PLAYER2]

    
set taname    ""
    
set tatype    ""
    
set points    ""
    
set success    ""
    
set luck    ""

    
if {$actionid == "non"} {
        
set taname    ""
        
set tatype    "non"
        
set vsuccess "0"
        
set vpoints "0"
        
set THEMOD ""
    
} else {
        
set taname    [actionlookup $actionid 0]
        
set tatype    [actionlookup $actionid 2]
        
set points    [actionlookup $actionid 3]
        
set success    [actionlookup $actionid 4]
        
set luck    [actionlookup $actionid 5]
        if {[
rand 100] <= $success} {
            
set vsuccess "1"
            
set rpoints [rand $points]
            
set rptsthr [expr {round ($points .33)}]
            if {
$rpoints $rptsthr} {
                
set vpoints $rptsthr
            
} else {
                
set vpoints $rpoints
            
}
            if {[
rand 100] <= $luck} {
                
set THEMOD "lucky"
                
set THEFXB [expr {$vpoints * (([rand 4] +1) * .1)}]
            } else {
                
set THEMOD ""
            
}
        } else {
            
set vsuccess "0"
            
set vpoints "0"
            
set THEMOD "missed"
        
}
    }

    
set THEFX $vpoints

    
if {$lnick == $lPLAYER1} {
        if {
$THEMOD == "missed"} {
            
set P1FX "0"
            
set P1FXB "0"
        
} elseif {$tatype == "off"} {
            
set P1FX [expr {$P2HEAINI * ($THEFX .01)}]
            
set P1FXB [expr {$P2HEAINI * ($THEFXB .01)}]
        } elseif {
$tatype == "def"} {
            
set P1FX [expr {$P1HEAINI * ($THEFX .01)}]
            
set P1FXB [expr {$P1HEAINI * ($THEFXB .01)}]
        }
        
set P1MOD $THEMOD
        set P1MTYPE $tatype
        set P1MNAME $taname
    
} elseif {$lnick == $lPLAYER2} {
        if {
$THEMOD == "missed"} {
            
set P2FX "0"
            
set P2FXB "0"
        
} elseif {$tatype == "off"} {
            
set P2FX [expr {$P1HEAINI * ($THEFX .01)}]
            
set P2FXB [expr {$P1HEAINI * ($THEFXB .01)}]
        } elseif {
$tatype == "def"} {
            
set P2FX [expr {$P2HEAINI * ($THEFX .01)}]
            
set P2FXB [expr {$P2HEAINI * ($THEFXB .01)}]
        }
        
set P2MOD $THEMOD
        set P2MTYPE $tatype
        set P2MNAME $taname
    
}
}

###
### fightauto: choose a move on behalf of player 2
###        called at the end of an autofight turn
###
proc fightauto {} {
    global 
P1MNAME P2MNAME P2MTYPE
    
global PLAYER2 PLA2COM P2AFS P2AFSwr

    set autoaidra 
"[rand 99]"
    
set autoactid "[expr {$autoaidra 1}]"

    
set THEAID ""
    
set jlimit ""
    
set plimit ""
    
set klimit ""
    
set ulimit ""
    
set glimit ""
    
set dlimit ""
    
set slimit ""

    
if {$P2AFS == "random"} {
        
set P2AFSwr "random"
        
set p2afsrand "[rand 4]"
        
if {$p2afsrand 1} {
            
set P2AFS "psycho"
        
} elseif {($p2afsrand >= 1)&&($p2afsrand 2)} {
            
set P2AFS "agro"
        
} elseif {($p2afsrand >= 2)&&($p2afsrand 3)} {
            
set P2AFS "mello"
        
} elseif {$p2afsrand >= 3} {
            
set P2AFS "safe"
        
}
    }
    if {
$P2AFS == "psycho"} {
# 15 13 15 20 10 20 7
        
set jlimit "15"
        
set plimit "28"
        
set klimit "43"
        
set ulimit "63"
        
set glimit "73"
        
set dlimit "93"
        
set slimit "100"
    
} elseif {$P2AFS == "agro"} {
# 21 21 21 20 8 8 1
        
set jlimit "21"
        
set plimit "42"
        
set klimit "63"
        
set ulimit "83"
        
set glimit "91"
        
set dlimit "99"
        
set slimit "100"
    
} elseif {$P2AFS == "mello"} {
# 35 15 5 1 35 8 1
        
set jlimit "35"
        
set plimit "50"
        
set klimit "55"
        
set ulimit "56"
        
set glimit "91"
        
set dlimit "99"
        
set slimit "100"
    
} elseif {$P2AFS == "safe"} {
# 33 10 5 1 33 17 1
        
set jlimit "33"
        
set plimit "43"
        
set klimit "48"
        
set ulimit "49"
        
set glimit "82"
        
set dlimit "99"
        
set slimit "100"
    
}

    if {
$autoactid $jlimit} {                                        set THEAID        "0"
    
} elseif {($autoactid >= $jlimit)&&($autoactid $plimit)} {    set THEAID        "1"
    
} elseif {($autoactid >= $plimit)&&($autoactid $klimit)} {    set THEAID        "2"
    
} elseif {($autoactid >= $klimit)&&($autoactid $ulimit)} {    set THEAID        "3"
    
} elseif {($autoactid >= $ulimit)&&($autoactid $glimit)} {    set THEAID        "4"
    
} elseif {($autoactid >= $glimit)&&($autoactid $dlimit)} {    set THEAID        "5"
    
} elseif {($autoactid >= $dlimit)} {                            set THEAID        "6"
    
}

    
set PLA2COM $THEAID
}

#########################################################################################################################
### action points
###
### points    - max attack % possible
### success    - % chance of not missing
### luck    - % chance of lucky strike
###
proc actionlookup {actionid actionix} {

    
set action(0) {    jab            fj    off    20    85    33    }
    
set action(1) {    punch        fp    off    40    70    20    }
    
set action(2) {    kick        fk    off    60    55    15    }
    
set action(3) {    uppercut    fu    off    90    40    10    }
    
set action(4) {    guard        fg    def    75    99    33    }
    
set action(5) {    dodge        fd    def    99    75    50    }
    
set action(6) {    suicide        fs    sui    66    66    66    }

    if {
$actionid == "all"} {
        if {
$actionix == ""} {set $actionix 0}
        
set myout " "
        
for {set i 0} {$i < [array size action]} {incr i} {
            
append myout [lindex $action($i$actionix" "
        
}
    } else {
        
append myout [lindex $action($actionid$actionix]
    }
    return 
$myout
}

proc fightjab {nick host handle chan text} {
    
fightaction $nick $chan 0
}
proc fightpunch {nick host handle chan text} {
    
fightaction $nick $chan 1
}
proc fightkick {nick host handle chan text} {
    
fightaction $nick $chan 2
}
proc fightuppercut {nick host handle chan text} {
    
fightaction $nick $chan 3
}
proc fightguard {nick host handle chan text} {
    
fightaction $nick $chan 4
}
proc fightdodge {nick host handle chan text} {
    
fightaction $nick $chan 5
}
proc fightsuicide {nick host handle chan text} {
    
fightaction $nick $chan 6
}


#########################################################################################################################
### binds
###

bind pub - !fight        fightM

bind pub 
- !jab            fightjab
bind pub 
- !fj            fightjab
bind pub 
- !punch        fightpunch
bind pub 
- !fp            fightpunch
bind pub 
- !kick        fightkick
bind pub 
- !fk            fightkick
bind pub 
- !uppercut    fightuppercut
bind pub 
- !fu            fightuppercut
bind pub 
- !guard        fightguard
bind pub 
- !fg            fightguard
bind pub 
- !dodge        fightdodge
bind pub 
- !fd            fightdodge
bind pub 
- !suicide        fightsuicide
bind pub 
- !fs            fightsuicide

bind pub 
- !fstat        fstat
bind msg 
fstat        fstatmsg
bind pub 
- !fauto        fauto
bind msg 
fauto        fautomsg

bind pub 
- !fversion    versioninfo
bind pub 
- !fv            versioninfo
bind pub o 
!fdebug        fdebug
bind msg o fdebug        fdebugmsg
bind pub o 
!freset        fresetmanual
bind msg o freset        fresetmanualmsg

bind pub 
- !fhelp        fhelp
bind msg 
fhelp        fhelpmsg

bind pub 
- !fhis        fhis
bind msg 
fhis            fhismsg

#########################################################################################################################
### save stats
###
proc savestat {player sname vname} {
    global 
PLAYER1 P1AFS P1LVL P1WIN P1LOS P1DRA PLAYER2 P2AFS P2LVL P2WIN P2LOS P2DRA
    setuser $player XTRA $sname $vname
}    



#########################################################################################################################
### end: script loaded
###

initglobalvars
putlog 
"dFight $myversion loaded" 


ben türkçeleştirmesini yaptım arkadaşlar henüz denemedim görmedim bilmiyorum hata varsada kusuruma bakmayın bot benim değil direk ingilizceden türkçeye çevirdim. çalıştırabilen olursa burdan yazar ve düzeltirse sevinirim.

gecikme için kusura bakmayın.

kolay gelsin.

saygılarımla.

__________________
Gereksiz Eleştiri, Gizli Hayranlıktır...

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...] - irc.Ayna.org
  Alıntı ile Cevapla

Alt 13 Mayıs 2009, 03:37   #23
Çevrimdışı
Cevap: dovus.tcl oyun botu (yeni)




Türkçeleştirmeden orjinal haliyle çalışıyor muydu.

  Alıntı ile Cevapla

Alt 06 Temmuz 2009, 02:07   #24
Çevrimdışı
Cevap: dovus.tcl oyun botu (yeni)




bunu kuran varsa paylaşabilirmi arkadaslar .
Bu forumdaki linkleri ve resimleri görebilmek için en az 20 mesajınız olması gerekir.

  Alıntı ile Cevapla

Alt 24 Temmuz 2009, 20:05   #25
Çevrimdışı
Cevap: dovus.tcl oyun botu (yeni)




Ben Kurdum Servere Soktum Ama Çaliştiramadım

  Alıntı ile Cevapla

Cevapla

Etiketler
botu, dovustcl, oyun, yeni

Seçenekler
Stil

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Açık
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
Kelime botu veya Oyun botu xxmertx Servisler 7 24 Aralık 2012 13:34
KaoS Oyun Botu Download Indir!. [Yeni Sorular Eklendi] nitX Eggdrop, NeoStats, BNC 13 20 Şubat 2012 23:25
Yeni Bir Oyun Botu BeYaZeNCy Eggdrop, NeoStats, BNC 4 24 Mayıs 2009 10:41
tahmin.tcl yeni oyun botu Ayna TCL Scriptler 15 10 Mayıs 2009 19:43