Thread: [Request script] TCL Script Pt Testerii
View Single Post
Old 08-09-2006, 12:06   #17 (permalink)
arcade
TCB & Ratings projects Member, #Mythic representative
 
arcade's Avatar
 
Join Date: Jun 2004
Location: In fatza calculatorului!!
Age: 19
Posts: 218
Rep Power: 37
arcade is on a distinguished road
Send a message via Yahoo to arcade
Default

eu as sugera ceva mai interesant:
Code:
proc pub:start {nick uhost hand chan arg} {
global ask
    bind time - "* * * * *" timed:ask
    puthelp "PRIVMSG $chan :$ask(welcome)"
    puthelp "PRIVMSG $chan :$ask(reguli)"
}
Code:
proc pub:stop {nick uhost hand chan arg} {

    unbind time - "* * * * *" timed:ask
    puthelp "PRIVMSG $chan :stopping questions"

}
si

Code:
proc timed:ask {min hour day month year} {
global ask

  if {![info exists ask(start)]} { set ask(start) 0 }
  if {$ask(start)} {
    if {$ask(q) < [expr $ask(qmax)+1]} {
      pushmode $ask(chan) +m
      flushmode $ask(chan)
      utimer 2[list puthelp "PRIVMSG $ask(chan) :$ask(question$ask(q))"]
      utimer 10[list pushmode $ask(chan) -m]
      incr ask(q)
    } else {
      unbind time - "*****" timed:ask
      set ask(q) 1
  }
}
}
Deci mie in principiu nu imi place sa am un timer care sa ruleze un proces care nu se executa decat dak setam noi o variabila, asa ca mi se pare mai fiabil sa punem bindul pe time in interiorul la start, si ca sa o oprim, punem un unbind la stop, si in timed:ask, in caz ca se termina intrebarile.

Mentionez ca ati uitat sa resetati numarul de intrebari puse atunci cand se termina lista, si asta nu e bine pt ca atunci tot scriptul asta va rula o singura data, iar in rest pauza pt k nr de intrebari va ajunge la maxim si asa va ramane.

O chestie pe care nu o consider optima avand in vedere ca este un script de teste e timpul mic de raspuns (50 secunde dupa cum a facut krimson timerul de la +m), dar in fine asta nu ma priveste
__________________
Fuck oFF!
arcade is offline   Reply With Quote