[AutoIT]Farbe von Pixel ändern

06/13/2010 12:55 TheDextrox#1
also wie der überschrift schon sagt möchte ich gerne wissen wie man die farbe von einem pixel verändert!!

Der Script:

warum:
naja ich mache einen bot für ein shooter spiel und bei der sniper gibt es kein zielvisier (ohne zoom) und daher möchte ich gerne sowas machen

freue mich auf eure antworten
06/13/2010 13:04 HardCore.1337#2
Das geht denk ich mal nur über D3D hooking
06/13/2010 13:07 TheDextrox#3
für was ist dann der befhel:
PixelGetColor??
06/13/2010 13:09 henkj1#4
um die farbe eines pixels herauszukriegen
06/13/2010 13:14 HardCore.1337#5
Get = bekommen
Bekomm die Farbe eines Pixel´s
06/13/2010 13:22 TheDextrox#6
also das mit dem benützerbild soll so sein!!
(vielleicht mach ich irgendwann n neues)

und wie kann ich jetzt so n kreuz machen ????
06/13/2010 13:29 HardCore.1337#7
D3D Hooking wie bereits gesagt.
Dazu musst du C++ oder eine andere Hochsprache können und damit eine Dll erstellen, die du dann injected
06/13/2010 13:33 Σternαl.#8
Hat das Spiel denn ein Fadenkreuz oder nicht?
€dit: Sry, dumme Frage, selbst wenn du es per GUI hinzufügen würdest, müsstest du hooken.
06/13/2010 13:37 HardCore.1337#9
ja, es geht nicht anderes, da DirectX...
06/13/2010 13:43 | Moep |#10
Mach es einfach Oldschool mäßig, mitn Klebestreifen mit Fadenkreuz aufn Monitor... :D
06/13/2010 13:57 TheDextrox#11
lol ok mach ich ...danke

CLOSE PLS
06/13/2010 16:00 bassbanane#12
Game im Window Mode starten
Mitte des fensters mithilfe der ausgelesenen Koordinaten aus dem Speicher errechnen.
z.B. ein PNG mit transparentem Hintergrund und einem Kreuz drarauf an die richtige Stelle mithilfe von GDI+ zeichnen und im Vordergrund behalten.

Sollte ( rein theoretisch) funktionieren. Aber ka
06/13/2010 17:46 | Moep |#13
Quote:
Originally Posted by bassbanane View Post
Game im Window Mode starten
Mitte des fensters mithilfe der ausgelesenen Koordinaten aus dem Speicher errechnen.
z.B. ein PNG mit transparentem Hintergrund und einem Kreuz drarauf an die richtige Stelle mithilfe von GDI+ zeichnen und im Vordergrund behalten.

Sollte ( rein theoretisch) funktionieren. Aber ka
Vielleicht kannst du ja daraus irgendwas basteln...

Code:
#include <GDIPlus.au3>
#include <WinAPI.au3>
#include <WindowsConstants.au3>
#include <StaticConstants.au3>

$hGui = GUICreate("", 300, 100, -1, -1, -1,$WS_EX_LAYERED )
GUISetBkColor(0xABCDEF)
$hLabel = GUICtrlCreateLabel("X", 5, 5, 290, 90, BitOR($SS_CENTER, $SS_CENTERIMAGE ))
GUICtrlSetFont($hLabel, 60)
GUICtrlSetColor($hLabel, 0x00FF00)
GUICtrlSetBkColor($hLabel, 0xABCDEF)
_WinAPI_SetLayeredWindowAttributes($hGui, 0xABCDEF, 255)
GUISetState()

While GUIGetMsg() <> -3
    Sleep(5)
WEnd
06/13/2010 19:02 bassbanane#14
Also ich habe es gerade mithilfe der AlphaBlend.au3 aus den Examples recht gut gelöst.
Jetzt muss man halt nur noch im Window Mode starten und das Kreuz richtig positionieren^^
06/14/2010 17:40 black_byte#15
Habe das jetzt mal so gemacht, ich muss es in ner While schleife laufen lassen, da es sonst immer nur 0.1 sek oder so da ist ... Da die spiele ja ständig aktuallisiert werden, und dann bei mir gdi+ überdecken.

PHP Code:
#include <GDIPlus.au3>

Local $hWnd$hGraphics$pos$Name 'Counter-Strike Source'

$hWnd WinGetHandle($Name)

_GDIPlus_Startup()
$hGraphics _GDIPlus_GraphicsCreateFromHWND($hWnd)

$pos WinGetPos($Name)

While 
1
    _GDIPlus_GraphicsDrawLine
($hGraphics$pos[2]/20$pos[3]/2$pos[2]/20$pos[3]/2)
    
_GDIPlus_GraphicsDrawLine($hGraphics$pos[2]/2$pos[3]/20$pos[2]/2$pos[3]/20)
WEnd 
MfG Xxx Daniel xxX

PS: Mein bsp. war css, must halt nur dein fensternamen rein schreiben ^^