This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.


For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.

Top 10 adding

Help for those learning Tcl or writing their own scripts.
Post Reply
h
haferbrei
Voice
Posts: 24
Joined: Wed Apr 08, 2020 8:57 pm

Top 10 adding

Post by haferbrei »

Hi!
I've a trivial gaming-script. How can i add a score to the users, who are gaming?

Code: Select all

bind PUBM -|- * mondgesichtparser

set mond(sprueche1) {
    "WAHNSINN! Ein Punkt! Was soll ich denn jetz damit? Oder wird das mal ein Mondgesicht? "
    "Hals und Bauch hat er auch, Arme noch und Beine dran, fertig ist der kleine Mann! "
    "Das war höchstens ein Pickel du Flachzange! Ich will einen PUNKT sehen!"
    "Punkt Punkt Punkt... Ach so! Mondgesicht soll das werden! Dann mach ma jemand hier weiter! "
    "Soll dieser Punkt jetzt das Ende eines Satzes darstellen oder den Anfang von einem Mondgesichts? "
    "So Loidde, es geht wieder ma rund! Ein Mondgesicht wurde angefangen... Gibt mir wer nen zweiten Punkt? "
    "Noch 'n Punkt, sonst wird das kein Mondgesicht! "
    "Oben komme Haare dran und Ohren, dass er hören kann! "
    }

set mond(sprueche2) {
    "Hmm.. Noch ein Punkt! Jetzt wird's ernst! Macht ma' das Mondgesicht hier fertig! "
    "Ein Hals wie eine Flasche, ein Bauch wie eine Tasche! Den Rest packt ihr auch noch! "
    "Die Punktepest zieht wieder über's Land!"
    "Das wird ja immer doller hier! Jetzt haben wir schon zwei Punkte! "
    "Komma klar jetzt."
    "NOCH EIN PUNKT! Unglaublich dass ihr es so weit bringt! Jetzt müsst ihr ein KOMMA machen, Info vom Bot für Mensch! "
    "Wird's heute noch was? Jetzt noch ein Komma und 'n Strich und wir sind alle glücklich! "
    }

set mond(sprueche3) {
    "So... und nun? Jetzt noch nen STRICH bitte, dann wird hier endlich nich mehr gespamt... "
    "Knöpfchen, Knöpfchen, Knopf. Hütchen auf den Kopf. Aber Strich fehlt trotzdem immernoch! "
    "Dein Komma hängt ja wie dein ewig schlaffer Freund! Jetzt zeig mir noch jemand seine Latte!"
    "Ein KOMMA! Ganz richtig! Und jetzt noch nen Strich und fertig ist der ganze Mann. "
    "Und nu?? Wo bleibt der STRICH? "
    "LOS LOS! Nur noch ein STRICH und die Sache hier is endlich gegessen! "
    "Glückwunsch dass ihr es so weit gebracht habt... Jetzt, was fehlt noch? Hm? Nachdenken! - DER STRICH! "
}

setudef flag mondgesicht
setudef str  mondgesicht_count

proc mondgesichtparser { nickname hostname handle channel arguments } {

    if { ![channel get $channel mondgesicht] } { return 0 }
    if { [info exists ::mond(flood,$channel)] } { return 0 }

    if { ![info exists ::mond(hosts,$channel)] } {
        set ::mond(hosts,$channel) ""
    }

    if { [string match "*$hostname*" $::mond(hosts,$channel)] } { return 0 }

    if { ![info exists ::mond(status,$channel)] && $arguments == "." } {
        set ::mond(anfang) [clock seconds]
        set spruch [lindex $::mond(sprueche1) [rand [expr [llength $::mond(sprueche1)] - 1]]]
        putquick "privmsg $channel :$spruch ($nickname)"
        set ::mond(status,$channel) 2
        lappend ::mond(hosts,$channel) $hostname
        lappend ::mond(nicks,$channel) $nickname
        return 0
    }

    if { [info exists ::mond(status,$channel)] && $arguments == "." && $::mond(status,$channel) == 2 } {
        set spruch [lindex $::mond(sprueche2) [rand [expr [llength $::mond(sprueche2)] - 1]]]
        putquick "privmsg $channel :$spruch ($nickname)"
        set ::mond(status,$channel) 3
        lappend ::mond(hosts,$channel) $hostname
        lappend ::mond(nicks,$channel) $nickname
        return 0
    }

    if { [info exists ::mond(status,$channel)] && $arguments == "," && $::mond(status,$channel) == 3 } {
        set spruch [lindex $::mond(sprueche3) [rand [expr [llength $::mond(sprueche3)] - 1]]]
        putquick "privmsg $channel :$spruch ($nickname)"
        set ::mond(status,$channel) 4
        lappend ::mond(hosts,$channel) $hostname
        lappend ::mond(nicks,$channel) $nickname
        return 0
    }

    if { [info exists ::mond(status,$channel)] && $arguments == "-" && $::mond(status,$channel) == 4 } {
        set ende [clock seconds]
        set time [expr $ende - $::mond(anfang)]
        lappend ::mond(nicks,$channel) $nickname
        set count [expr [channel get $channel mondgesicht_count] + 1]
        if { $count == "" } {
            set count 1
        }
        channel set $channel mondgesicht_count $count

        putquick "privmsg $channel : Ritze-ratze, ritze-ratze,fertig ist die Miezekatze. \\o/ - das hat $time Sekunden gedauert - Hände in die Luft!"
#Punkt Punkt Komma Strich - fertig ist das MoOnGESICHT \\o/ - das hat $time Sekunden lang gedauert - Ihr seid mir Schlafmützen!"
        putquick "privmsg $channel :Das Mondgesicht Nr. $count wurde von den Superusern [join $::mond(nicks,$channel) ", "] gemalt!"

        set ::mond(flood,$channel) 1
        timer 1 [list unset ::mond(flood,$channel)]

        unset ::mond(hosts,$channel)
        unset ::mond(nicks,$channel)
        unset ::mond(status,$channel)
    }
}

putlog "Mondgesicht.loaded"
Post Reply