|
You last visited: Today at 08:27
Advertisement
Problem mit Script
Discussion on Problem mit Script within the AutoIt forum part of the Coders Den category.
12/13/2013, 15:52
|
#1
|
elite*gold: 0
Join Date: May 2013
Posts: 85
Received Thanks: 0
|
Problem mit Script
Hallo,
habe ein Problem mit einem Script welches leider nur teilweise funktioniert.
Es hakt bei Select. Alles was sich zwischen Select und Endselect befindet
wird ignoriert da ich etwas falsch gemacht habe. Vllt wird es ja auch nicht
ignoriert jedenfalls wird nicht auf die entsprechende Farbe geklickt.
Da es sonst zu lang werden würde poste ich nur einen Teil des Scripts:
Code:
#include <GUIConstantsEx.au3>
GUICreate("Part1", 500, 100)
GUICtrlCreateLabel("[F1] - Start", 8, 8)
GUICtrlCreateLabel("[ESC] - Ende", 8, 48)
GUISetState(@SW_SHOW)
HotKeySet("{F1}", "Start")
HotKeySet("{ESC}", "Ende")
While 1
Sleep(500)
WEnd
Func Ende()
Exit
EndFunc
Func Start()
$PixelPosColorMark = PixelSearch(38 ,119 ,809 ,602 ,0x0B39FF ,4 )
$PixelPosColorBanker = PixelSearch(38 ,119 ,809 ,602 ,0x31264A ,4 )
MouseClick("Left",845, 267)
Sleep(2000)
(......)
MouseClick("Left",1013, 200)
Sleep(10000)
Select
Case IsArray($PixelPosColorMark)
MouseClick("left", $PixelPosColorMark[0], $PixelPosColorMark[1], 1, 0)
EndSelect
Sleep(5000)
Select
Case IsArray($PixelPosColorBanker)
MouseClick("left", $PixelPosColorBanker[0], $PixelPosColorBanker[1], 1, 0)
EndSelect
Sleep(3000)
Send("{Space}")
(......)
Sleep(30000)
EndFunc
Ideen?
Danke fürs lesen
|
|
|
12/13/2013, 16:18
|
#2
|
elite*gold: 95
Join Date: May 2011
Posts: 982
Received Thanks: 189
|
select case brauch wie if eine abfrage, die True oder false liefert. schau dir das doch mal in der hilfe an (google oder f1 in scite)
|
|
|
12/13/2013, 17:01
|
#3
|
elite*gold: 0
Join Date: May 2013
Posts: 85
Received Thanks: 0
|
Sicher?
Denn ich habe auch dieses Script welches funktioniert:
Code:
Func Start()
While 1
$PixelPos = PixelSearch(0,0,@DesktopWidth, @DesktopHeight, 0xD9D9BD, 0)
Select
Case IsArray($PixelPos)
MouseClick("left", $PixelPos[0], $PixelPos[1], 1, 0)
Sleep(35000)
Send ("{left}")
EndSelect
WEnd
EndFunc
|
|
|
12/13/2013, 17:35
|
#4
|
elite*gold: 95
Join Date: May 2011
Posts: 982
Received Thanks: 189
|
isarray liefert auch true oder false zurück
|
|
|
12/13/2013, 18:29
|
#5
|
elite*gold: 0
Join Date: May 2013
Posts: 85
Received Thanks: 0
|
Aber wo liegt der Unterschied zwischen den beiden Beispielen?
|
|
|
12/13/2013, 19:24
|
#6
|
elite*gold: 95
Join Date: May 2011
Posts: 982
Received Thanks: 189
|
ohh sorry peinlich, hab ich wohl nicht genau gelesen.
weiß spontan dann nicht worans liegt. probiers vllt mit ner if abfrage anstatt select
|
|
|
12/13/2013, 20:02
|
#7
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Select kann er schon verwenden dann müsste er aber folgendes verwenden
Code:
Select
IsArray($a) = 1
Eine If-Abfrage bietet sich aber besser an
Code:
If IsArray($a) Then ;...
|
|
|
12/13/2013, 21:14
|
#8
|
elite*gold: 0
Join Date: May 2013
Posts: 85
Received Thanks: 0
|
Ich werds mal ausprobieren danke
|
|
|
12/13/2013, 21:19
|
#9
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Switch würde sogar auch funktionieren, da würde es so aussehen
Code:
Switch IsArray($a)
Case 1
;Wenn es ein Array ist.
Case 0
;Wenn es kein Array ist.
EndSwitch
hier als Select
Code:
$iResult = IsArray($a)
Select
Case $iResult = 1
;Wenn es ein Array ist.
Case $iResult = 0
;Wenn es kein Array ist.
EndSelect
und zuletzt als If
Code:
If IsArray($a) Then
;Wenn es ein Array ist.
Else
;Wenn es kein Array ist.
EndIf
Es gibt verschiedene Möglichkeiten die Verzweigungen zu verwenden, aber bei IsArray würde ich auf jeden Fall die If-Verzweigung nutzen.
|
|
|
12/13/2013, 22:41
|
#10
|
elite*gold: 0
Join Date: May 2013
Posts: 85
Received Thanks: 0
|
Mit If hats geklappt, danke
Kurze Frage vllt noch:
Ist es möglich das Script, falls "Else" die Antwort ist, erst etwas
machen zu lassen z.B. einen Klick und danach wieder zurückgehen
zu lassen zu dem Punkt an dem die If Abfrage beginnt?
|
|
|
12/13/2013, 22:46
|
#11
|
elite*gold: 0
Join Date: Nov 2013
Posts: 442
Received Thanks: 29
|
Kann dich per Skype melden.
|
|
|
12/13/2013, 23:07
|
#12
|
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,149
|
Quote:
Originally Posted by RF1T2
Mit If hats geklappt, danke
Kurze Frage vllt noch:
Ist es möglich das Script, falls "Else" die Antwort ist, erst etwas
machen zu lassen z.B. einen Klick und danach wieder zurückgehen
zu lassen zu dem Punkt an dem die If Abfrage beginnt?
|
Einfach weitere Bedingungen verwenden (sofern nötig) und die Schleife durchlaufen lassen. Einen "goto" Befehl gibt es in AutoIt nicht.
|
|
|
12/15/2013, 07:06
|
#13
|
elite*gold: 0
Join Date: Nov 2013
Posts: 36
Received Thanks: 6
|
Quote:
Originally Posted by RF1T2
Mit If hats geklappt, danke
Kurze Frage vllt noch:
Ist es möglich das Script, falls "Else" die Antwort ist, erst etwas
machen zu lassen z.B. einen Klick und danach wieder zurückgehen
zu lassen zu dem Punkt an dem die If Abfrage beginnt?
|
Jaa ist möglich
Code:
Func _Array()
If IsArray($a) Then
;Wenn es ein Array ist.
Else
;Wenn es kein Array ist.
MouseClick("left",0,0,1,1)
_Array()
EndIf
EndFunc
Dann musst du aber noch irgendwo in deinem Script einfügen außer du machst es mit einem
Code:
HotKeySet("{F5}","_Array"
das heißt wenn du F5 drückst wird _Array abgespielt... und wenn du einfachso _Array() schreibst wird es einfachso abgespielt.
Wenn du willst das es erst passiert wenn man einen Button drückt musst du bei
Code:
Case $Button1
_Array()
einfügen  )
|
|
|
12/15/2013, 22:33
|
#14
|
elite*gold: 0
Join Date: May 2013
Posts: 85
Received Thanks: 0
|
Quote:
Originally Posted by Claiver
Jaa ist möglich
Code:
Func _Array()
If IsArray($a) Then
;Wenn es ein Array ist.
Else
;Wenn es kein Array ist.
MouseClick("left",0,0,1,1)
_Array()
EndIf
EndFunc
(...)
|
DANKE!
Funktionert gut
|
|
|
12/15/2013, 22:38
|
#15
|
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
|
Code:
Func _Array()
If IsArray($a) Then
;Wenn es ein Array ist.
Else
;Wenn es kein Array ist.
MouseClick("left",0,0,1,1)
_Array()
EndIf
EndFunc
Recursion-Error missile launched. Impact in 3, 2, 1...
Ich würde die Funktion anders formulieren.
|
|
|
 |
|
Similar Threads
|
HP Script Problem
09/24/2011 - Metin2 Private Server - 2 Replies
Also hab nochn älteres Hp Script..
Und wollte mal fragen, was ich umstellen muss, damit das Kästchen nicht leer bleibt?
http://h3.abload.de/img/catsueke.jpg
Darunter ist dann noch ein 2. Wo was drin steht, wenn ich aber z.b das 1 Oben löschen will, lässt es sich nicht wirklich löschen, weil die Ränder immer da bleiben ect, oder der Platz bleibt frei blabla..
Was genau muss ich in der Index ändern das da ein Bild drin ist oder sonst was?
|
SQL Script Problem
07/03/2011 - Shaiya - 0 Replies
Fixed sorry for post
|
Problem VB 10 Patcher Script Problem
09/20/2010 - .NET Languages - 8 Replies
Hayho liebe Com.
ich habe mal wieder einen ganz netten Patcher gescriptet, für einen metin2 P Server,
da es nicht mein erster is, hab ich echt kp was da vorliegt, Hier der Script an sich:
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As System.Windows.Forms.WebBrowserDocumentCompletedEv entArgs) Handles...
|
[HOW-TO]Hp-Script+Admin-script (weekly-updatet) problem!
06/21/2010 - Metin2 Private Server - 11 Replies
hallo leute ich hab ein problem und zwar bei dem hp script von masterboss kommt der fehler :
http://img541.imageshack.us/img541/8140/24955249. png
und wenn ich dann die datei öffne und in die zeile gehe kommt:
while($row = mysql_fetch_array($ergebnis))
kann mir jmd helfen?
|
Problem Script
02/05/2009 - Cabal Online - 4 Replies
Ok i have a problem, i use a the script bot from camp.
My problem is i can run the script on my pc starting it up from cabal without a bypass and run the script/bot this is with GG running as well.
But when i try the same thing on my laptop it doesn't work i need to have a bypass up and because the bypass makes you d/c(i think its the programme am using) i can't seem to run the script/bot.
Anyone got any ideas of how to make it work on my laptop with having to bypass it.
The bot does work...
|
All times are GMT +1. The time now is 08:27.
|
|