"installation"

10/11/2010 07:03 eagly200#16
so jez noch eine Frage:
Wie schaffe ich es das bei Pixelsearch ich mehrere Farben suchen kann?
brauche ich wirklich dringend.
hab mir jez die anderen Befehle für ne bot gegoogelt (oder von euch abgefragtXD)
aber jez fehlt mir halt noch, das ich mehrere Farben mit EINER Variablen suchen kann.
10/11/2010 09:31 lolkop#17
mehrere farben in einer variablen suchen, ist meiner meinung nach absolut nutzlos...
aber auch das kann man recht leicht umsetzen, indem man zb ein farbarray so lange durchsucht, bis man die eine farbe gefunden hat.

bsp:
Code:
Dim $farbe[4] = [0, 0x123456, 0x654321, 0xFFFFFF]
For $i=0 To 3
	$pos = PixelSearch(0, 0, @DesktopWidth, @DesktopHeight, $farbe[$i])
	If IsArray($pos) Then ExitLoop
Next
ConsoleWrite($pos[0] & '  ' & $pos[1] & @crlf)
10/11/2010 14:41 eagly200#18
ich versteh das jetzt nicht ganz 0.o, ich möchte in metin2 (P-server) mir nen bot basteln der automatisch feststehende Objekte angreift.
Und da diese Objekte rot/weiß sind, aber jedes Objekt nicht die gleiche Piixelfarbe hat UND halt 3-Dimensional ist muss ich mehrere Farben haben.

PS: geht es wenn ich einfach das so mache:
Code:
$metine [1] = PixelSearch (1,1,1,1,0xFA7959)
$metine [2] = Pixelsearch (1,1,1,1,0xFA7960)

While 1
If IsArray ($metine) = True Then
		MouseClick ("left",$metine[0],$metine[1],1,1)
		EndIf
WEnd
original:
Code:
$metine = PixeSearch (1,1,1,1,0xFA7959)
If IsArray ($metine) = True Then
		MouseClick ("left",$metine[0],$metine[1],1,1)
		EndIf
10/11/2010 15:34 omer36#19
wenn es im grunde die selbe farbe hatt aber nur einbischen abweicht, mach an ende die shade-variation...

also ps(1,1,1,1,0xFA7959,20)
10/11/2010 15:47 lolkop#20
Quote:
Originally Posted by eagly200 View Post
ich versteh das jetzt nicht ganz 0.o, ich möchte in metin2 (P-server) mir nen bot basteln der automatisch feststehende Objekte angreift.
Und da diese Objekte rot/weiß sind, aber jedes Objekt nicht die gleiche Piixelfarbe hat UND halt 3-Dimensional ist muss ich mehrere Farben haben.

PS: geht es wenn ich einfach das so mache:
Code:
$metine [1] = PixelSearch (1,1,1,1,0xFA7959)
$metine [2] = Pixelsearch (1,1,1,1,0xFA7960)

While 1
If IsArray ($metine) = True Then
		MouseClick ("left",$metine[0],$metine[1],1,1)
		EndIf
WEnd
original:
Code:
$metine = PixeSearch (1,1,1,1,0xFA7959)
If IsArray ($metine) = True Then
		MouseClick ("left",$metine[0],$metine[1],1,1)
		EndIf
du willst also in einem array ein anderes array abspeichern und damit das eigentliche array löschen und dann noch prüfen ob das array was du bereits als array deklariert hat ein array ist?

wenn du dir den Pixelsearch befehl mal anschaust wirst du sehen, das das was er zurück gibt immer ein 1d array ist. damit sollte schonmal klar sein, das man pixelsearch nicht so wie du es getan hast einfach in ein array schreiben lassen kann.

und wenn du eine variable als array deklarierst, macht es doch wohl schon garkeinen sinn, noch zu gucken ob es sich bei der variable um ein array handelt...

ohne jegliche art von schleifen/rekursion wäre das ganze also nicht nur viel schwerer umzusetzen, sondern auch nur unnötige schreibarbeit...
10/11/2010 21:13 eagly200#21
Quote:
Originally Posted by lolkop View Post
du willst also in einem array ein anderes array abspeichern und damit das eigentliche array löschen und dann noch prüfen ob das array was du bereits als array deklariert hat ein array ist?

wenn du dir den Pixelsearch befehl mal anschaust wirst du sehen, das das was er zurück gibt immer ein 1d array ist. damit sollte schonmal klar sein, das man pixelsearch nicht so wie du es getan hast einfach in ein array schreiben lassen kann.

und wenn du eine variable als array deklarierst, macht es doch wohl schon garkeinen sinn, noch zu gucken ob es sich bei der variable um ein array handelt...

ohne jegliche art von schleifen/rekursion wäre das ganze also nicht nur viel schwerer umzusetzen, sondern auch nur unnötige schreibarbeit...
also ich hab grad Null Plan was du meinst Xd, aber so wie ich das geschrieben habe funktioniert das Einwandfrei.