Wie Skript warten lassen?

11/01/2010 21:01 lolkop#16
1. ich habe dich nicht als noob hingestellt, sondern wollte nur sagen, das ich bezweifle das du da irgendwelche hochkomplexen algorythmen für deinen bot herleitest -.-

2. habe ich dir am beispiel gezeigt wie du das was du machen willst machen kannst.

3. kannst du nichts ohne timer timen...
du solltest dir mal klar machen, das TimerInit() einfach nur GetTickCount() ist. TimerInit() gibt die die laufzeit deines pcs in milisekunden zurück. TimerDiff() ist quasi das gleiche, nur rechnet der dir gleich die aktuelle laufzeit minus der vorher durch TimerInit() gespeicherten zeit.

das auslesen der pc laufzeit kann absolut nichts verzögern oder ausbremsen.
jeder send befehl bremst dein script 1000 mal mehr aus als ein timer. selbes gilt übrigens für abfragen.

guck dir einfach mal den code an, den ich nun schon mehrfach gepostet habe. du wirst feststellen, dass das genau das ist, was du suchst...
11/01/2010 21:47 FizzeBu#17
Quote:
Originally Posted by lolkop View Post
1. ich habe dich nicht als noob hingestellt, sondern wollte nur sagen, das ich bezweifle das du da irgendwelche hochkomplexen algorythmen für deinen bot herleitest -.-

2. habe ich dir am beispiel gezeigt wie du das was du machen willst machen kannst.

3. kannst du nichts ohne timer timen...
du solltest dir mal klar machen, das TimerInit() einfach nur GetTickCount() ist. TimerInit() gibt die die laufzeit deines pcs in milisekunden zurück. TimerDiff() ist quasi das gleiche, nur rechnet der dir gleich die aktuelle laufzeit minus der vorher durch TimerInit() gespeicherten zeit.

das auslesen der pc laufzeit kann absolut nichts verzögern oder ausbremsen.
jeder send befehl bremst dein script 1000 mal mehr aus als ein timer. selbes gilt übrigens für abfragen.

guck dir einfach mal den code an, den ich nun schon mehrfach gepostet habe. du wirst feststellen, dass das genau das ist, was du suchst...
Ich bin dir ja auch dankbar, dass du mir versuchst zu helfen=), aber ich will das alles ohne If machen, weil If das ganze kurz stoppt und wenn es die ganze Zeit kurz stoppt, dann ist das nicht ganz das was ich suche
11/01/2010 21:52 lolkop#18
Quote:
Originally Posted by FizzeBu View Post
Ich bin dir ja auch dankbar, dass du mir versuchst zu helfen=), aber ich will das alles ohne If machen, weil If das ganze kurz stoppt und wenn es die ganze Zeit kurz stoppt, dann ist das nicht ganz das was ich suche
eine abfrage hat eine bearbeitungszeit von weniger als einer millisekunde -.-

selbst wenn da 10000 abfragen in einer schleife laufen würden, wäre das für den user nicht merkbar...

zeig uns dochmal dein script und ich zeige dir wie du das mit timern und abfragen ganz leicht realisieren kannst (auch wenn ich eigentlich schon mehr als genug code gepostet habe, der das ganze erklärt)
11/01/2010 23:00 FizzeBu#19
Quote:
Originally Posted by lolkop View Post
eine abfrage hat eine bearbeitungszeit von weniger als einer millisekunde -.-

selbst wenn da 10000 abfragen in einer schleife laufen würden, wäre das für den user nicht merkbar...

zeig uns dochmal dein script und ich zeige dir wie du das mit timern und abfragen ganz leicht realisieren kannst (auch wenn ich eigentlich schon mehr als genug code gepostet habe, der das ganze erklärt)
ICh weiß wie ich das realisieren kann=) Mein Problem ist nur, dass die Buttons keine Reaktion mehr hatten.
11/01/2010 23:23 PenGuin :O#20
Ja dann liegt der Fehler aber bei dir und nicht bei unserer Theorie.
11/01/2010 23:30 lolkop#21
Quote:
Originally Posted by FizzeBu View Post
ICh weiß wie ich das realisieren kann=) Mein Problem ist nur, dass die Buttons keine Reaktion mehr hatten.
du sagst in einem satz, du kannst es realisieren, und im nächsten satz sagst du, das du es nicht kannst...

du musst die abfrage einfach in die gui abfrage packen. selbstverständlich brauchst du dort keine extra schleife mehr, da du dich bereits in einer endlosschleife befindest.
11/01/2010 23:31 FizzeBu#22
Quote:
Originally Posted by pinguin94 View Post
Ja dann liegt der Fehler aber bei dir und nicht bei unserer Theorie.
Das hat was mit der Theorie zu tun, dass If das Skript pausiert, wenn auch nur kurz, wird das Skript pausiert. Das wird in einer Schleife abgefragt, also wird die ganze Zeit das Skript kurz pausiert. Genau da funktionieren meine Buttons nicht. Ich wollte nur wissen ob es vll noch ne andere Möglichkeit gibt, das Skript zu pausieren=)
11/01/2010 23:40 PenGuin :O#23
Quote:
Originally Posted by FizzeBu View Post
Das hat was mit der Theorie zu tun, dass If das Skript pausiert, wenn auch nur kurz, wird das Skript pausiert. Das wird in einer Schleife abgefragt, also wird die ganze Zeit das Skript kurz pausiert. Genau da funktionieren meine Buttons nicht. Ich wollte nur wissen ob es vll noch ne andere Möglichkeit gibt, das Skript zu pausieren=)
Ja dann benutz WM_COMMAND ;)
Das geht immer, außer bei Sleeps ;O
11/01/2010 23:51 lolkop#24
pass auf fizzebu...

Code:
While 1
    [...]
    Sleep(500)
    [...]
WEnd
=
Code:
While 1
    [...]
    $timer = TimerInit()
    While TimerDiff($timer<500)
    WEnd
    [...]
WEnd
das ist exact das selbe...
aber
Code:
Dim $timer
While 1
    [...]
    If TimerDiff($timer) > 500 Then
        [...]
        $timer = TimerInit()
    EndIf
    [...]
WEnd
Ist etwas TOTAL anderes. Hier wird neben den ganzen anderen operationen in intervallen von 500ms der code in der abfrage ausgeführt. ([...] steht natürlich für beliebigen code)

selbstverständlich darfst du in der endlosschleife keine andere schleife starten, die darauf wartet das eine zeit abläuft.

eine schleife zu starten, die darauf wartet, das eine zeit abläuft, ist das dümmste was man machen kann. ist im prinziep das selbe wie sleep, nur das der cpu hier nicht idles ausführt, sondern die ganze zeit auf hochtouren läuft.
(will hiermit nicht dagen das du dumm bist, sondern nur das dein cpu quasi maximal ausgelastet wird mit nichtstun, was natürlich vermieden werden sollte.)
11/02/2010 00:02 FizzeBu#25
Danke an alle, bite nicht mehr antworten, ihr wart mir eine große Hilfe=)

Edit: Wenn ihr Thanksgeil seid, sagt es mir, ich gebe euch unter jedem Post ein Thanks;)
11/02/2010 00:05 lolkop#26
hast du denn dein problem nun gelöst?

poste dochmal bitte dein script, um das es ging.
11/02/2010 00:46 FizzeBu#27
Egal, ich hab grad keine Lust auf die Leute, die mir sagen, dass ich nix kann unso:/ Das meint ihr vll nicht so, ich komm mir aber so vor, bin halt bissl eigen;) Ich danke dir trozdem=)
11/02/2010 08:33 | Moep |#28
Die Leute wolln dir nur helfen und sie haben sich echt Mühe gegeben.
Wenn hier aber jetzt jeder an deinem Problem vorbeigeredet hat, dann musst du es besser erklären oder es z.B. anhand eines Scriptes zeigen.
11/02/2010 10:37 omer36#29
wenn autoit dir zu langsamm ist lern c++ oder ne andere hochsprache ...

mehr kann mann hier auch nciht dazu sagen...lolikop hatt dir bestimmt shcon 10bsp srcipt gepostet...

und alles wurde gesagt............
11/02/2010 11:19 FizzeBu#30
Ich habs ja auch hingekriegt=)
Es war auch mehr eine 'Wie' Frage als eine 'Ey, mann gib mal cOde dann mahc ich"s in main atuid rain'Frage;)