Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 02:02

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Q] Wenn ein Counter so viel erreicht hat, dann Counter wieder resetten

Discussion on [Q] Wenn ein Counter so viel erreicht hat, dann Counter wieder resetten within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
puzzlr's Avatar
 
elite*gold: 29
Join Date: Nov 2010
Posts: 502
Received Thanks: 127
[Q] Wenn ein Counter so viel erreicht hat, dann Counter wieder resetten

Hallo.

Ich möchte gerne einen Script schreiben, der einen Counter resettet nachdem der einen bestimmten wert erreicht hat.

Code:
                       $zaehler = 0
                        While $zaehler < 5 
			MouseClick ("left", 683, 439)
			$zaehler = $zaehler +1
			Sleep (2000)
			MouseClick ("left", 682, 673)
			Sleep(1000)
		WEnd
		While $zaehler > 5 
			MouseClick ("left", 0, 0)
			$zaehler = $zaehler +1 
			Sleep (10000) 
		WEnd
jetzt hätte ich gern, dass sich der counter, wenn er bei 183 angelangt ist, wieder resettet.

geht das?
puzzlr is offline  
Old 12/08/2010, 18:10   #2
 
LwT^'s Avatar
 
elite*gold: 0
Join Date: Apr 2008
Posts: 159
Received Thanks: 9
Quote:
Originally Posted by u_failed View Post
Hallo.

Ich möchte gerne einen Script schreiben, der einen Counter resettet nachdem der einen bestimmten wert erreicht hat.

Code:
While 1

                 $zaehler = 0
                 While $zaehler < 5 
			MouseClick ("left", 683, 439)
			$zaehler = $zaehler +1
			Sleep (2000)
			MouseClick ("left", 682, 673)
			Sleep(1000)
		WEnd
		While $zaehler  < 183 
			MouseClick ("left", 0, 0)
			$zaehler = $zaehler +1 
			Sleep (10000) 
		WEnd
WEnd
jetzt hätte ich gern, dass sich der counter, wenn er bei 183 angelangt ist, wieder resettet.

geht das?
Oder <= :P
LwT^ is offline  
Old 12/08/2010, 18:16   #3
 
puzzlr's Avatar
 
elite*gold: 29
Join Date: Nov 2010
Posts: 502
Received Thanks: 127
Quote:
Originally Posted by Ch1ll3n View Post
Oder <= :P
neh. ich hätte das gern so, dass der bis 5 das eine macht. ab 5 das eine macht bis 183. und das ganze dann wieder von vorne los geht .
puzzlr is offline  
Old 12/08/2010, 18:47   #4
 
omer36's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
so ?

PHP Code:
While 1
for $i 1 to 5
MouseClick 
("left"683439)
Sleep (2000)
MouseClick ("left"682673)
Sleep(1000)
Next
For $I 1 to 178
MouseClick 
("left"00)
Sleep (10000)
Next
WEnd 
omer36 is offline  
Old 12/08/2010, 19:23   #5
 
Memphiisto's Avatar
 
elite*gold: 115
Join Date: Feb 2009
Posts: 353
Received Thanks: 44
Einfach so (wenn man dein Script Verwendet ^^)

PHP Code:
$zaehler 0


       
While $zaehler 

                    
If $zaehler 183 Then
                          $zaehler 
0
                    
Endif

            
MouseClick ("left"683439)
            
$zaehler $zaehler +1
            Sleep 
(2000)
            
MouseClick ("left"682673)
            
Sleep(1000)
    
WEnd
        
        
While $zaehler 

                    
If $zaehler 183 Then
                      $zaehler 
0
                    
Endif

            
MouseClick ("left"00)
            
$zaehler $zaehler +
            Sleep 
(10000
    
WEnd 

Sollte eigentlich gehen
Hab mal (für meine sicht) bissl schöner eingerückt ^^.

Lg Magic
Memphiisto is offline  
Old 12/08/2010, 19:29   #6
 
omer36's Avatar
 
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
in der schleife: While $zaehler < 5 bringt dir das doch nix:
If $zaehler = 183 Then
$zaehler = 0
Endif

2.
While $zaehler < 5 ; mach dies und das,
While $zaehler > 5 ;mach dies und das

und wenn $zaehler 5 passiert was dann??

teste es mal, wenn du nicht drauf kommst

wenn meine funzt (müsste sie eig.)
ist das doch die "beste" variante, würd ich jetz mal behaupten...
omer36 is offline  
Old 12/08/2010, 20:25   #7
 
Memphiisto's Avatar
 
elite*gold: 115
Join Date: Feb 2009
Posts: 353
Received Thanks: 44
Ehm so wie ichs verstanden hab will sie nicht dass es nach dem 183ten mal aufhört,
sondern dass einfach der Zähler wieder auf 0 gestellt wird

Deswegen hab ichs auch so geschrieben

naja mal warten bis sie was sagt ^^ dann wissen wirs..

lg Magic



€dit:
Ah danke habs übersehn ^^ das wird ja nie größer als 5. Weils das ja nur so lange macht
wie $zaehler kleiner 5 ist : DDD
Memphiisto is offline  
Old 12/08/2010, 21:11   #8
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
das ganze könnte man übrigens auch sehr schön rekursiv lösen =)

Code:
Func go($zaehler=0)
	If $zaehler<=5 Then
		MouseClick("left", 683, 439)
		Sleep(2000)
		MouseClick("left", 682, 673)
		Sleep(1000)
		Return go(Mod($zaehler+1,183))
	EndIf
	MouseClick("left", 0, 0)
	Sleep(10000)
	Return go(Mod($zaehler+1,183))
EndFunc

go()
lolkop is offline  
Thanks
1 User
Old 12/09/2010, 06:01   #9
 
puzzlr's Avatar
 
elite*gold: 29
Join Date: Nov 2010
Posts: 502
Received Thanks: 127
Quote:
Originally Posted by lolkop View Post
das ganze könnte man übrigens auch sehr schön rekursiv lösen =)

Code:
Func go($zaehler=0)
	If $zaehler<=5 Then
		MouseClick("left", 683, 439)
		Sleep(2000)
		MouseClick("left", 682, 673)
		Sleep(1000)
		Return go(Mod($zaehler+1,183))
	EndIf
	MouseClick("left", 0, 0)
	Sleep(10000)
	Return go(Mod($zaehler+1,183))
EndFunc

go()
Danke, funktioniert perfekt. Mit den anderen hab ich noch Probleme.
puzzlr is offline  
Old 12/09/2010, 15:58   #10
 
elite*gold: 1
Join Date: Jun 2009
Posts: 570
Received Thanks: 68
Aber die rekursive Methode ist mit Vorsicht zu verwenden. Falls du die Durchgänge von 183 erhöhst, könnte es schnell passieren, dass dein Skript sich mal eben verabschieden wird
Dimension0x00 is offline  
Old 12/09/2010, 19:03   #11
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
Quote:
Originally Posted by Dimension0x00 View Post
Aber die rekursive Methode ist mit Vorsicht zu verwenden. Falls du die Durchgänge von 183 erhöhst, könnte es schnell passieren, dass dein Skript sich mal eben verabschieden wird
das es sich dabei um eine endlosschleife handelt is dir klar? :P

das tool schaft auch nicht mehr als 21 komplette durchgänge...
da allerdings eine sleep zeit von 10sekunden eingebaut ist, schafft das tool so etwa 30min^^

man könnte natürlich auch die rekursion nur auf den ineren teil verschieben, und den äusseren mit einer schleife lösen... dachte allerdings das thema ist schon lange gelöst und wollte nochmal eine version komplett ohne iterative schleifen zeigen =)
lolkop is offline  
Reply


Similar Threads Similar Threads
Wenn man 3 GB Ram hat wie viel dann auf Server?
12/28/2009 - Metin2 Private Server - 10 Replies
huhu, Wenn man 3GB Ram aufm PC hat wie viel GB Ram sollte man dann auf nen Server machen so das das I-Net net laagt? Mfg xCr4nKx



All times are GMT +1. The time now is 02:05.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.